一、问题描述
用STM32CubeMX生成代码后,下载到芯片里时,出现错误,说没有监测到ST-LINK,但是我们明明已经把ST-LINK连上了,一定是设置出了问题。
按照下图的顺序查看,红框的位置显示是否监测到SW,确实没有检测到SW
二、解决问题
1. 问题的原因
问题出现的程序里,进入main()函数,找到HAL_Init()函数,跳转到定义,再进入HAL_MspInit()函数
问题就出在红框处的代码,没有使能SW
进入__HAL_AFIO_REMAP_SWJ_DISABLE(),这些函数使能/失能调试功能的。我们这里只用SW调试方式,所以替换为__HAL_AFIO_REMAP_SWJ_NOJTAG()。