创建新的工程

官方标准库下载文件解读:

1._htmresc:ST公司的两张图片(不管)

2.Utilities:  实用程序,ST公司写好了的一些程序,比如IIC通信等等,用到的话就可以添加到工程直接用,比较方便

3.Release_Notes.html:STM32F10x标准外设库发行说明,对各个版本的区别,即发行说明

4.stm32f10x_stdperiph_lib_um.chm:此文件包含标准库所有文件,不必打开每一个文件进行查看,相当与一个图书室管理员,要找啥子文件就可以在这里面找到并且点进去看,文件里面的东西


分割线,以上四个文件,很少使用,创建工程的关键在于理解接下来的文件



5.Libraries:库文件,包含了启动文件和库文件,文件结构图如下所示

Libraries文件结构图

文件结构图解读

CMISI:英文全称:Cortex Microcontroller Software Interface Standard(Cortex系列处理器硬件抽象层)可以理解               为cortex内核的软件接口。

CM3:  包含了CoreSupport(内核支持)和DeviceSupport(设备支持)

core_cm3.c和core_cm3.h:其中CoreSupport中的core_cm3.c和.h文件最好不要更改,因为是ST公司提供的                                                     CMISI核心

DeviceSupport:中包含的是(startup)启动文件和系统配置文件(system_stm32f10x.c和system_stm32f10x.h)以及所有外设的头文件(stm32f10x.h)

startup:其中包含了四种不同编译环境的启动文件,但是我们只用arm这种文件,因为我们使用的是keil

点进去之后发现还是有很多文件,目前理解的只有这几个

              文件                                                        含义                                                容量范围

startup_stm32f10x_ld.s                                小容量启动文件                                   FLASH<=32K

startup_stm32f10x_md.s                              中容量启动文件                            64K<=FLASH<=128K

startup_stm32f10x_hd.s                               大容量启动文件                                   256K

芯片启动文件的作用:①程序开始运行后使其进入系统初始化函数(Systemlnit)完成对芯片时钟系统的初始化,                                          各种管脚的初始化等                                         

                                    ②初始化完成后让程序进入main函数执行

STM32F10x_StdPeriph_Driver:包含的是外设源文件(src)和外设头文件(inc),通常是互相搭配使用,对应的.c就有对应的.h,通常工程只添加.c文件


6.   Project文件:包含STM32F10x_StdPeriph_Examples(外设例子)和STM32F10x_StdPeriph_Template(外设模板)


Project文件结构图

文件结构图解读

STM32F10x_StdPeriph_Examples:包含标准库所有外设例程,例程中是由ST公司提供的模块代码,可以根据需要直接使用

STM32F10x_StdPeriph_Template:包含了多个不同编译环境下的库开发工程模板,这个模板根据个人喜好来选择用还是不用,或者是效仿一个模板

stm32f10x_conf.h            是配置文件

stm32f10x_it.c                 是放中断函数的,对应的是.h文件,但是其中只有9个看不懂的中断函数,所以用到其他                                          函数的时候还要去调用函数

system_stm32f10x.c       系统初始化文件


创建工程步骤:

①在桌面新建一个文件夹(命名为led)储存工程

②在led中添加三个文件夹,分别命名为CMISI(内核系统文件以及启动文件(startup))

USER(用户模板文件,包含了main.c),Driver(库文件(src以及inc))

③打开keil5,点击新建工程project→New uVision project

④选择对应的芯片,已经安装好了对应的pack包,所以直接选芯片就行,选好后弹出来的东西×掉

⑤点击下列图标添加文件

⑥点击修改一级目录名称,添加二级目录,并且添加下图所示对应文件

注:只添加对应的文件夹下的.c和.s文件,不要添加.h文件

此处添加,内核系统文件,系统初始化文件以及大容量启动文件


仅添加src中的文件

注:此处目录内不添加system_stm32f10x.c 文件了,否则会报错,可能是因为重复添加了文件,因为之前的CMISI目录下已经添加过了

添加主函数文件和中断文件

⑦点击魔法棒工具→target 修改外部晶振为8Mhz

⑧点击c/c++添加宏定义,在define加这句话:USE_STDPERIPH_DRIVER

   点击include paths添加文件路径,如下图所示,keil有个好处,会自动把选择的绝对路径给修改为相对路径,

   一定要添加完所有文件的路径,不然会因为找不到文件而报错

注:此处添加文件目录时,可以只添加inc,而不添加src,加了也没问题,但是剩下的两个必须添加正确的目录


⑨点击output→点击Create HEX files(生成HEX文件)

⑩删除main.c里面的所有代码,只保留以下几句

#include "stm32f10x.h"

#include

int main(void)

{

           while (1)

          {

           }

}

以上步骤完成后直到编译不出错

对以上步骤的几个问题解读

Q:    桌面新建文件夹名称和工程目录可以随意修改吗?

A:    可以,随便改,但是,最好写成相匹配的,相对应的,不然自己添加文件的时候容易弄混淆工程目录一旦确            定好了,最好不要去再去修改文件名称,因为会导致文件目录和对应的文件名不匹配以产生错误

总结:其实和IAR创建新的工程差不多,都是宏定义添加文件,文件路径的问题,记住并且练习就好了

你可能感兴趣的:(创建新的工程)