[其他ST产品] STM32官方固件库下载并且新建自己的工程

[复制链接]
7259|59
 楼主| 甲虫666 发表于 2023-12-21 12:57 | 显示全部楼层
3、在工程中包含文件
3.1 打开Keil,新建工程,工程保存在Project文件夹下面 738226583c5a25433d.png
 楼主| 甲虫666 发表于 2023-12-21 12:57 | 显示全部楼层
3.2 选择芯片,这里我们选择STM32F103RCT6
 楼主| 甲虫666 发表于 2023-12-21 12:57 | 显示全部楼层
 楼主| 甲虫666 发表于 2023-12-21 13:12 | 显示全部楼层
3.3 新建如图的4个分组,然后添加文件

startup添加文件如下,三个文件都位于Templete\Libraries\CMSIS目录下 85466583c9486f627.png
 楼主| 甲虫666 发表于 2023-12-21 13:13 | 显示全部楼层
 楼主| 甲虫666 发表于 2023-12-21 13:13 | 显示全部楼层
Driver文件夹里面添加所有外设的源文件,文件路径Templete\Libraries\STM32F10x_StdPeriph_Driver\src,源文件里面是ST写好的各个外设的驱动 573486583c966beb72.png
 楼主| 甲虫666 发表于 2023-12-21 13:13 | 显示全部楼层
 楼主| 甲虫666 发表于 2023-12-21 13:13 | 显示全部楼层
User文件夹里面添加文件如下 637486583c97c4a6cf.png
 楼主| 甲虫666 发表于 2023-12-21 13:16 | 显示全部楼层
3.4 点击魔术棒,包含文件头路径 45576583ca197705f.png
 楼主| 甲虫666 发表于 2023-12-21 13:16 | 显示全部楼层
包含头文件路径如图
131466583ca4508103.png
 楼主| 甲虫666 发表于 2023-12-21 13:17 | 显示全部楼层
3.5 把main.c文件里面的内容删除,填入如下内容、
  1. #include "stm32f10x.h"                 

  2. int main(void)
  3. {
  4.         while(1)
  5.         {
  6.        
  7.         }
  8. }
 楼主| 甲虫666 发表于 2023-12-21 13:17 | 显示全部楼层
3.6 对魔术棒所做的一些更改

3.6.1 因为 3.5 版本的库函数在配置和选择外设的时候通过宏定义来选择的,所以我们需要配置一个全局的宏定义变量。定位到魔术棒 c/c++界面,然后填写“STM32F10X_HD,USE_STDPERIPH_DRIVER”到 Define 输入框里面(请注意,两个标识符中间是逗号不是句号),这里解释一下,如果你用的是中容量那么STM32F10X_HD 修改为 STM32F10X_MD,小容量修改为 STM32F10X_LD,然后点击 OK。
 楼主| 甲虫666 发表于 2023-12-21 13:17 | 显示全部楼层
STM32F10X_HD 宏:为了告诉 STM32 标准库,我们使用的芯片类型是大容量的,使 STM32标准库根据我们选定的芯片型号来配置。
 楼主| 甲虫666 发表于 2023-12-21 13:17 | 显示全部楼层
USE_STDPERIPH_DRIVER 宏:为了让 stm32f10x.h 包含 stm32f10x_conf.h 这个头文件。
 楼主| 甲虫666 发表于 2023-12-21 13:17 | 显示全部楼层
 楼主| 甲虫666 发表于 2023-12-21 13:17 | 显示全部楼层
3.6.2 修改输出文件夹路径
打开魔术棒,把输出文件夹选择为我们创建的Output文件夹,顺便创建HEX文件勾选上,这样工程就能产生HEX文件
 楼主| 甲虫666 发表于 2023-12-21 13:17 | 显示全部楼层
 楼主| 甲虫666 发表于 2023-12-21 13:18 | 显示全部楼层
返回Project文件夹,可以看到,在新建了工程以后,里面多了如图的几个文件夹,其中,DebugConfig、Listings 和 Objects 文件夹是 MDK 自动生成的文件夹,Listings 和 Objects 用于存放编译过程产生的中间文件,DebugConfig 文件夹用于存储一些调试配置文件,我们把 Listings 和 Objects 这两个文件夹删除(DebugConfig 文件夹不可以删除),我们用Output文件夹来存放编译产生的中间文件
 楼主| 甲虫666 发表于 2023-12-21 13:18 | 显示全部楼层
 楼主| 甲虫666 发表于 2023-12-21 13:18 | 显示全部楼层
到这里,文件就新建好啦,点击编译,如图
199696583cab0dfcb8.png
636166583ca9c7a89c.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部