一.软件设计
1.因为是刚开始学习,所以我使用单文件。
2.根据电灯的实现需求:1.电灯亮灯2.单灯闪烁3.跑马灯效果
二.配置(STM32CubeMX)
1.开启调试:我使用的开发板的仿真调试接口是SWD(Serial Wire Debug)。
DAP和SWP:
DAP是一种调试器硬件,是一个物理仿真器。
SWP是一种调试通信协议。
| 对比项 | DAP(CMSIS-DAP / DAPLink) | SWD |
|---|---|---|
| 是什么 | 调试器(硬件/固件) | 调试协议(通信方式) |
| 在哪 | 电脑连的那个小板子/调试器 | 调试器和STM32之间的连线规则 |
| 作用 | 把电脑的调试指令翻译给芯片 | 规定用几根线、怎么传数据 |
| 线数 | 本身是USB设备 | 2根信号线:SWDIO + SWCLK |
| 类比 | 像“翻译官” | 像“翻译官和芯片说的语言” |
| 新手要买/用的 | DAPLink调试器(十几块钱) | STM32上PA13/PA14两个引脚 |
| 概念 | 两句话记住 |
|---|---|
| DAP | 就是那个像小U盘一样的调试器,一头插电脑USB。它负责帮电脑给STM32下载程序、调试。 |
| SWD | 就是DAP和STM32之间连的2根线(SWDIO接PA13、SWCLK接PA14,再加GND)。Keil里选CMSIS-DAP就能用。 |
烧写和调试用的是这两个引脚
2.将引脚PF8设置为输出模式
3.设置UTF8的输出模式
GPIO 输出电平:高
GPIO 模式:开漏输出
GPIO 上拉 / 下拉:无上拉、无下拉
最大输出速度:低速
4.创建形目并打开项目
5.开始电灯
(1)while (1)
{
//整个MCU只会被开发者烧写的程序独占运行,程序必须是一个死循环,防止程序跑飞,同时,这也是常规软件的运行模式。
}
(2)添加HAL库对应的函数
(3)烧录并点灯。