[开发工具]stm32 ST-Link下载出现 No target connected解决办法(都是cubeMX的坑)

现在用stm32基本是都是使用cubeMX来建立工程了吧,方便快捷。但是cubeMX也有很多坑的,下面来谈谈用cubeMX建立工程粗心导致ST-link无法下载固件的第一个坑。

第一次下载还好好哒

第二次下载,这是什么鬼

在这里插入图片描述

怎么办?坏了吗,要这么处理?

别急,教你怎么处理:

  1. 把复位脚拉低,然后点击Download图标或是F8进行下载,此时应立刻释放复位脚。(不能拉低不放,否则出现“Core is held in reset”错误),这下可以顺利下载了吧,别急,不想每次都这样的话,继续按下面的步骤来:

  2. 进入main()函数,找到HAL_Init()函数,并跳转到其实现处:
    在这里插入图片描述

  3. 继续进入HAL_MspInit()函数,找到原因了吗,呵呵继续
    在这里插入图片描述

  4. 点击__HAL_AFIO_REMAP_SWJ_DISABLE();进入
    在这里插入图片描述

  5. 把JTAG和SW调试都关闭了,能下载才会见鬼呢,按需要把__HAL_AFIO_REMAP_SWJ_DISABLE();进行替换,我这里只用SW调试方式,所以替换为__HAL_AFIO_REMAP_SWJ_NOJTAG() ;
    在这里插入图片描述

  6. 替换函数,然后编译。注第一次还是要拉低复位脚才能下载,以后直接按download或是F8就可以了。

那原因是什么呢,我们转到cubeMX来看看,是不是把sys忽略了呢,下次记得要选一下调试选项哦

在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章