1)Keil5安装MDK-ARM版本后,需要安装对应芯片器件库,否则新建工程无芯片可选项。
查看设备管理器 stlink 是否驱动正常,如果是感叹号则需要装驱动
2、插入STLINK后,在keil安装目录下找到安装驱动程序,安装STLINK驱动。
3、插入usb转串口模块后,安装驱动程序(资料文件夹内 工具软件内)。
1、基于寄存器的方式(和51开发相似):这是最底层最直接的方式,使用程序直接配置寄存器,达到所需功能,但STM32结构复杂,寄存器太多所以不建议用此种方式。
2、基于标准库(库函数)的方式:使用官方提供的封装函数,通过调用函数来间接配置寄存器,ST对寄存器封装较好,所以此方式是首选,利于提高开发效率。
3、基于HAL库的方式:用图形化界面快速配置STM32,适合快速上手STM32,此方式隐层底层逻辑,因为太过简单,学完不能深入了解,所以暂不推荐用此方式。
1、建立存放所有工程文件夹
2、打开keil5软件,点击project,new uvision project ,选择第一步新建的文件夹,在此文件夹内创建新文件夹用于存放此次工程文件,名字可以自定义任意,接下来给工程起名-(Project)后,点击保存。
3、选择器件型号,
然后叉掉弹出来的小助手
4、添加工程必要文件(启动文件、外设寄存器描述文件、内核寄存器描述文件)打开固件库文件夹。
这里面就是stm32的 “ 启动文件 ” , 复制后创建Start文件夹,都放在Start文件夹中
转回到“stm32f10x”文件夹
stm32f10x.h是STM 32的外设寄存器描述文件(头文件)描述有哪些寄存器以及对应地址。
两个system文件用来配置时钟,STM32主频72MHZ就是此文件里面的函数配置的
这三个文件都复制粘贴到Start文件夹下
因为STM32是由内核和内核的外围设备组成,内核寄存器描述文件和外围设备寄存器描述文件不在一起,所以需要打开下面的文件夹,添加“内核寄存器描述文件”(复制粘贴到Start文件夹中)
5、转到Keil中,修改第一个组的名字为Start,然后邮件添加已存在文件,文件过滤器选择allfiles
“启动文件”添加md.s后缀的
然后添加剩余的五个 .c 和 .h 文件
这里面的文件都是STM32里面最基本的文件,不需要我们任何修改,添加进来即可;文件图标带小钥匙因为是“只读文件”。
5、添加Start文件夹的头文件路径,要不然编译软件是无法找到头文件
点击右边三个点,新建路径,添加Start的文件路径。
6、新建工程内文件User,存放主函数main
然后再Keil里面右键“target” 添加组
右键“User”添加新文件,选择C文件,名字自定义,然后选择存放路径User文件夹中
在main中最后一行必须是空行,要不然会编译出警告。
注意:最新版Keil默认是v6编译器,需要在option for target里面设置v5.06编译器
为了防止中文出现乱码,编码格式设置为UTF8
7、Keil中配置STLINK调试器,点击option for target,选择debug,选择stlink
再点击右边settings,勾选reset and run,每次调试程序编译完自动下载到板子中。