打印
[信息]

[资料] STM32新建工程

[复制链接]
938|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
1.1.1 软件安装
1. 安装MDK


注意:安装的路径不能有中文
2..Download文件夹上的芯片包资料复制到软件安装目录。
路径:..\ARM\Pack\.Download

3.安装芯片包。选择需要使用的具体芯片型号的芯片包,双击安装。
Keil.STM32F4xx_DFP.1.0.8.pack

1. **软件:KEIL_Lic.exe
①利用管理员身份打开安装好的Keil软件
②把File ---- License Management中的CID number复制到**软件中
③选择**模式为ARM
④点击生产序列号
⑤把生产的序列号复制到New License ID Code(LIC)框中,然后点击ADD LIC
⑥**成功标志:软件到期时间为x.2020



使用特权

评论回复
沙发
powerantone|  楼主 | 2021-6-7 15:18 | 只看该作者
2. 安装ST-LINK调试器驱动,安装电脑系统版本安装对应的驱动
路径:\Cortex-M4学习资料\软件安装\MDK\ST-LINK驱动

使用特权

评论回复
板凳
powerantone|  楼主 | 2021-6-7 15:19 | 只看该作者
3. 串口芯片驱动
路径:\Cortex-M4学习资料\软件安装\MDK\CH340_ch341

1.1.2 新建工程
Cortex-M系列工程有两个版本样式,分别是“寄存器”版和“库函数”版。
“寄存器”版:在工程设计中直接操作底层的寄存器去实现驱动芯片的各个外设模块。
“库函数”版:调用ST公司提供的驱动函数,通过调用相关的函数去实现底层寄存器的驱动。

1. “寄存器”版
1)在桌面新建一个文件夹,命名为LED,进去再新建两个文件夹,一个命名为cmsis,一个命名为user.

2)user中新建两个文件夹,一个命名为inc, 一个命名为src.
         
3)准备相关工程文件
①把固件库下的CMSIS文件夹中的Include文件夹复制到工程文件夹存放Cortex-M系列内核接口驱动文件的文件夹(CMSIS)
路径:Cortex-M4学习资料\STM32F4xx固件库\STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS

②把STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Device\ST\STM32F4xx\Include
的两个头文件复制到Cortex-M系列内核接口驱动文件的文件夹(CMSIS)下的Include文件夹中。
stm32f4xx.h  ----  STM32F40x芯片头文件
system_stm32f4xx.h ----  STM32F40x芯片系统时钟头文件

③把STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm
文件下startup_stm32f40_41xxx.s文件复制Cortex-M系列内核接口驱动文件的文件夹(CMSIS)下。
startup_stm32f40_41xxx.s --- STM32F40x芯片启动代码

④把STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates
文件夹下system_stm32f4xx.c文件复制Cortex-M系列内核接口驱动文件的文件夹(CMSIS)下。




使用特权

评论回复
地板
powerantone|  楼主 | 2021-6-7 15:20 | 只看该作者
system_stm32f4xx.c  ---- STM32F40x芯片系统时钟程序文件


第四步:打开Keil ---- project --- Nwe μVision project
第五步:把新建的工程保存在工程文件夹下,并命名。
第六步:选择芯片信号  ---- STM32F407ZG
第七步:配置工程  --- 点击品字形按钮
①第一列:工程名称,双击可以更改工程名
②第二列:工程组别,点击新加按钮设置两个工程组别,主要是把内核文件和用户程序文件关联到新建工程中。工程组别名称自定义,建议命名为CMSIS(内核组)USER(用户组)
③把对应的关联文件添加到相应的工程组别中
CMSIS(内核组)
关联工程文件夹Cortex-M系列内核接口驱动文件的文件夹(CMSIS)下的
        startup_stm32f40_41xxx.ssystem_stm32f4xx.c

使用特权

评论回复
5
powerantone|  楼主 | 2021-6-7 15:22 | 只看该作者
第八步:设置工程 ---- 点击魔法棒按钮
OutPut选项卡:把生产HEX File勾选上
C/C++选项卡:
a)在Define栏中填入:STM32F40_41xxx
b)在Include Paths栏中添加头文件路径
.\Cortex-M系列内核接口驱动文件夹\Include
.\用户程序文件夹\inc

cdebug选项卡:选择硬件调试器类型  --- ST_LINK
dUtilities选项卡:去掉勾选“使用软件仿真”,并选择硬件调试器类型。


使用特权

评论回复
6
powerantone|  楼主 | 2021-6-7 15:23 | 只看该作者
2. “库函数”版新建工程
第一步:新建一个工程文件夹
第二步:在新建工程文件夹下建立1个子文件夹,用于存放用户编写的程序文件,
                                然后在用户程序文件夹下再建立2个子文件夹,用于存放程序文件的.c.h文件。
第三步:准备相关库文件
①把固件库文件夹下的Libraries文件夹复制到工程文件夹目录下
②把STM32F4xx_DSP_StdPeriph_Lib_V1.4.0\Project\STM32F4xx_StdPeriph_Templates文件夹
        下的stm32f4xx_conf.h复制到存放用户程序文件夹下存放inc的文件夹中。
stm32f4xx_conf.h  ---- ST公司提供的所有库函数的头文件

第四步:打开Keil ---- project --- Nwe μVision project
第五步:把新建的工程保存在工程文件夹下,并命名。
第六步:选择芯片信号  ---- STM32F407ZG
第七步:配置工程  --- 点击品字形按钮
①第一列:工程名称,双击可以更改工程名
②第二列:工程组别,点击新加按钮设置三个工程组别,分别是内核组Cmsis、用户组User、固件库函数组Std_Lib
③关联相关文件到对应组别
内核组Cmsis
a\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm\startup_stm32f40_41xxx.s
b\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\system_stm32f4xx.c
固件库函数组Std_Lib
\Libraries\STM32F4xx_StdPeriph_Driver\src下所有的外设库函数文件,或者是用到那个外设库函数文件就添加那个库函数文件。
注意:stm32f4xx_fmc.c这个外设库函数文件是STM32F4243系列才使用到,所以在4041系列中需要把它删除。

使用特权

评论回复
7
powerantone|  楼主 | 2021-6-7 15:23 | 只看该作者
第八步:设置工程 ---- 点击魔法棒按钮
OutPut选项卡:把生产HEX File勾选上
C/C++选项卡:
a)在Define栏中填入:STM32F40_41xxx,USE_STDPERIPH_DRIVER
b)在Include Paths栏中添加头文件路径
.\Libraries\CMSIS\Device\ST\STM32F4xx\Include   ---- 系统时钟头文件
.\Libraries\CMSIS\Include                      ---- 内核接口驱动头文件
.\Libraries\STM32F4xx_StdPeriph_Driver\inc    ---- ST公司外设库函数头文件
.\User\inc                                 ---- 用户程序头文件

cDebug选项卡:选择硬件调试器类型  --- ST_LINK
dUtilities选项卡:去掉勾选“使用软件仿真”,并选择硬件调试器类型。
6)新建工程文件
第一步:点击新建文件命令新建一个编程文件
第二步:把新建的程序文件命名并保存在用户程序文件夹下存放.c文件的文件夹下。
注意:这个文件是程序文件,所有需要后缀名.c
第三步:把新建的程序文件关联到工程中。


使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

505

主题

1963

帖子

4

粉丝