前言:
为了方便查看单片机flash使用地址和情况,所以使用stlink下载和链接单片机,在此记录如何使用STM32CUBEMAX使能STLINK配置和实现下载代码。
一,CUBEMAX配置
1.1设置sys中debug内部Serial Wire
1.2使能HSE时钟:Crystal/Ceramic Resonator
1.3设置串口
串口配置为异步,其余设置配置为默认即可。
二,keil代码部分
2.1 main函数输出日志,下载生成代码
2.2stlink 配置
点击keil,打开文件所在位置,在下面目录下安装stlink驱动口,64位安装dpinst_amd64.exe,32位安装dpinst_x86.exe
安装完成后,打开电脑设备管理器,stlink设备连接usb口,这是stlink驱动接口出现了
2.3 keil配置
点击魔术棒功能,
1
2.这里的配置是生成hex文件,方便后续文件烧录
3
4.这个部分stlink已经被读出来,这样就是正常的,如果没有这个地址在下面添加stlink地址。
5.如果没有读出地址 可以按照如下操作,然后重新上电,在换接口试试。
下载成功效果如下
下载成功,串口显示:
三,错误总结
3.1
不显示stlink地址 这个问题可能原因有①stlink设备链接单片机有个时钟线和数据线,我的板子就是PA13,和PA14 PA13是SWDIO,PA14是SWCLK,链接时,需要与stlink对应,不对应就读不出来地址。
不对应时,显示
3.2对应上还是没地址 多换几个接口 注意stlink不接入3.3V电源时,需要给单片机提供电源,这样才能识别
单片机不接电源,stlink也不接电源
显示:
单片机不接电源,stlink自带3.3V电源
显示:
3.3地址显示正常 下载时候 出现这个错误,还有CMO+
no algorithm found for: 08000000h - 0800275bhno algorithm found for: 08000000h
解决参考博文:关于STM32烧录时遇到No Algorithm found for: 08000000H - 08001E13H的解决办法_no algorithm found for 080000-CSDN博客