0.keil5版本号查询

版本号可从 MDK 软件的“Help—>About uVision”选项中查询到。

1.新建工程

1.1桌面新建文件夹

命名为template_CSR(寄存器模板)
image.png

1.2keil5新建工程

将工程存放在template_CSR中,芯片选择STM32F103VE 型号
image.png

用寄存器控制 STM32 时我们不需要在线添加库文件,这里我们点击关掉。

1.3添加启动文件startup.s

image.png
image.png
上图文件所在电脑位置:
G:\开发板学习\野火指南者F103\1-书籍配套例程-F103VE指南者\0【固件库】STM32F10x_StdPeriph_Lib_V3.5.0\【固件库】STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm

复制startup_stm32f10x_hd.s 到template_CSR文件夹中
image.png
在工程中双击文件夹添加文件
image.png

1.4添加main.c

在template_CSR中新建空白txt文档,转化为.c文件
image.png
定义空主函数,编译后抱错
.\Objects\YH-F103.axf: Error: L6218E: Undefined symbol SystemInit (referred from startup_stm32f10x_hd.o).
image.png
添加void SystemInit(void)函数,骗过编译器



image.png
编译后报错,error: #5: No such file or directors #include”core_cm3.h”
image.png
在template_CSR中新建空白stm32f10x.h
image.png
再添加#include”stm32f10x.h”头文件,编译

1.5修改工程名

image.png
点击Target 1,点一下,再慢点一下(不要双击),修改名称
锤子小角标中对应修改
image.png

1.6各文件夹作用

image.png
Listing文件夹
image.png
Objects文件夹
image.png
.axf用于仿真器往芯片中下载程序使用
.hex用于串口往芯片中下载程序使用

C语言小知识

生成HEX文件

hex文件是串口往芯片中下载程序使用的
image.png
点击小锤子图标,在Output中勾选Cteate HEX File,再次编译即可

头文件中引用<>和””区别

include , <>表示引用的头文件在编译器所在目录下搜素

include”stm32f10x.h”, “”表示引用的头文件先在工程所在文件夹目录下搜素,找不到再去编译器所在目录下搜素

把.txt文件转换成.c文件

打开任意文件夹,点击查看选项,勾选上文件扩展名

点击你要修改的txt文件,将其后缀名改为.c即可。
image.png

更改keil5字体

image.png

点击configuration,Encoding选择GB2312,Fonts/C++/text选择幼圆14,有的字体可能乱码
image.png
image.png