目录
1. MDK软件安装
1.1 MDK安装(编程环境)
- MDK是什么?
RealView MDK 是Keil公司开发的,为基于Cortex、ARM7、ARM9等处理器设备提供的一个完整的开发环境。
- 参考资料:
ALIENTEK xxSTM32开发板入门资料\MDK5安装手册.pdf
- 安装过程(略)
1.2 USB串口驱动安装
- USB作用:
1.可以当串口使用。
2.如果USB串口连接到STM32的串口1(STM32ISP下载只能是串口1)的话,那么可以用来串口下载程序。
3.因为要连接到USB,所以可以用来USB供电。(如果开发板功耗较大,例如带液晶、外部连接多个模块,可能会导致供电不足,建议开发板再接外部电源、适配器来供电)
USB串口驱动芯片型号:CH340
串口下载工具:mcuisp(FlyMcu)
- 安装过程(略)
1.3 STLINK驱动安装
- STLINK驱动作用:
安装了驱动之后,就可以在windows下配合MDK进行程序下载和调试
2. 串口程序下载
参考资料:
战舰/精英STM32F1开发板:《STM32F1开发指南-库函数版本》-3.4.2 STM32串口程序下载
2.1 硬件连接

特别注意:
STM32的ISP下载,只能使用串口1,也就是对应串口发送接收引脚PA9,PA10,不能使用其他串口(例如串口2:PA2,PA3)用来ISP下载。
2.2 一键下载方法
环境准备:CH340驱动安装

对于F4板子,波特率(bps)请选择76800(不能过高),对于F1板子,波特率可以任意,这是F1和F4的唯一区别。
常见问题:
- 驱动安装不成功?
- “调入文件失败”-hex文件路径要正确
- “无法打开串口COM1.Not Support Setting(bps/byte size etc)!”确保选中的串口号是CH340虚拟出来的。
- 确保“编程时写选项字节”没有勾上。
- 确保左下方选的“DTR低电平复位,RTS高电平进bootloader”
- 确保PA9,PA10的跳线帽连接了USB串口电路。
2.3 STM32启动模式
STM32直接通过两个引脚Boot0和Boot1设置启动模式
参考资料:
M3《STM32中文参考手册V10》2.4小节 表6
M4《STM32F4中文参考手册》2.4小节 表3

一键下载原理:
一键下载电路,则利用串口的DTR和RTS信号,分别控制STM32的复位和B0,配合上位机软件(mcuisp),设置:DTR的低电平复位,RTS高电平进BootLoader,这样,B0和STM32的复位,完全可以由下载软件自动控制,从而实现一键下载。
3. ST-LINK程序下载
本人买的时候是ST-LINK,视频中有JLINK的讲解,所以这里就写ST-LINK的程序下载。
3.1 ST-LINK与开发板硬件连接
参考视频教程(57秒):https://www.bilibili.com/video/BV1Pi4y157zu
3.2 ST-LINK下载配置过程
3.2.1 驱动安装
首先,需要下载ST-Link 资料包,下载地址为: http://openedv.com/posts/list/0/62552.htm 解压资料包,可以看到,在资料包里面,我们提供了 ST-Link 驱动包: ST-Link 官方驱动.zip 首先,大家解压资料包:

解压后,驱动包里面包含两个可执行 exe 文件: dpinst_x86.exe和dpinst_amd64.exe 64位操作系统就执行dpinst_amd64.exe,32位操作系统就执行dpinst_x86.exe。安装完成后安装界面会提示:

驱动安装成功之后,大家把 ST-Link 通过 usb 连接到电脑,然后打开设备管理器,可以看 到会多出一个设备:

注意 2 点:
1, 各种 windows 版本设备名称和所在设备管理器栏目可能不一样,例如 WIN10 插上 STLINK 后显示的是 STM32 STLINK。
2, 如果设备名称旁边显示的是黄色的叹号,直接点击设备名称,然后在弹出的界面 点击更新设备驱动 至此,ST-Link 驱动已经安装完成。接下来大家只需要在 mdk 工程里面配置一下 ST-Link 即可。
3.2.2 编程软件(MDK)配置
参考视频教程(57秒):https://www.bilibili.com/video/BV1Pi4y157zu
4. 库函数和寄存器的区别
本质上是一样的。我们可以在库函数模板里面,直接操作寄存器,因为官方库相关头文件有寄存器定义,但是不能在寄存器模板调用库函数,因为没用引入库函数相关定义。
了解寄存器基本原理的目的是为了让我们对STM32相关知识有比较深入的理解,这样在开发过程中方可得心应手。底层代码配置出了问题需要调试的话,必须对寄存器有一定的了解才能找到问题,因为调试代码,底层只能查看寄存器相关配置。
5. Keil问题解决
利用STM32创建工程,用Keil5打开后报如下错误:
One or more Device Family Pack Devices are not present



解决方法:
在官网中下载并打开安装(任意路径)

7776

被折叠的 条评论
为什么被折叠?



