stm32不小心把SWD和JTAG都给关了,程序下载不进去,解决办法
2017-03-03 14:39
411 查看
我们有时候会碰到各种问题导致STM32或者STM8的程序突然就下载不进去板子了。可以按照以下步骤来解决。
2、找到BOOT0引脚,将BOOT0拉高。
方法:在板子上找一个高电平引脚,手动用导线将BOOT0连接到该引脚上即可。
(注意:我的STM32板子供电是3.3V的,所以我找了一个3.3V的引脚,用导线连接到了BOOT0上,千万别弄错了,电平接高了不小心可是要烧坏板子的!)
3、BOOT0拉高以后,保持这个姿势不要动,打开电源,重新给板子上电。
4、插上JLink或者STLink,下载程序。一般这次肯定可以下载进去了。下载完成以后,就可以断开BOOT0了,让他恢复低电平。
OK到这里就全部完成了,板子肯定也回复正常了,继续嗨吧。
所以先将板子供电全部断开(这里包括3.3V电源供电和JLINK等所有能给开发板供上电的设备全断开),再将开发板的BOOT0拉高,重新给开发板上电,把程序中关闭JTAG或者SW的程序删掉,然后下载到开发板中,程序下载完成就好了。
所以,当程序跑起来,两句执行完以后,两个接口都关了,然后程序就再也下载不进去了。~~~
想要恢复正常,我们需要做的事就是想办法打开这两个接口中的任意一个,也就是下载一套不关闭程序下载接口的代码到板子中。
所以,我们要么将程序中上述语句删掉第二句,只保留第一句,重新编译,也就是只关闭JTAG,打开SW,要么重新找一个不关闭JTAG或者SW接口的代码重新下载到板子中即可。
而下载方法如文首第一点步骤所示下载即可。
一、下载方法步骤:
1、将板子供电全部断开,这里包括3.3V电源供电和JLINK等所有能给开发板供上电的设备全断开。2、找到BOOT0引脚,将BOOT0拉高。
方法:在板子上找一个高电平引脚,手动用导线将BOOT0连接到该引脚上即可。
(注意:我的STM32板子供电是3.3V的,所以我找了一个3.3V的引脚,用导线连接到了BOOT0上,千万别弄错了,电平接高了不小心可是要烧坏板子的!)
3、BOOT0拉高以后,保持这个姿势不要动,打开电源,重新给板子上电。
4、插上JLink或者STLink,下载程序。一般这次肯定可以下载进去了。下载完成以后,就可以断开BOOT0了,让他恢复低电平。
OK到这里就全部完成了,板子肯定也回复正常了,继续嗨吧。
二、上述方法原因解释
开发板默认JTAG和SWD接口都是打开的,BOOT0是低电平,当把BOOT0置高时,给板子上电,板子启动的时候程序会卡住,也就是内部flash的程序并未执行,这个时候SW和JTAD接口都是出于默认打开的状态。然后下载一个不关闭JTAG或者SW接口的程序,覆盖之前flash中的程序就好了。所以先将板子供电全部断开(这里包括3.3V电源供电和JLINK等所有能给开发板供上电的设备全断开),再将开发板的BOOT0拉高,重新给开发板上电,把程序中关闭JTAG或者SW的程序删掉,然后下载到开发板中,程序下载完成就好了。
三、SWD和JTAG被关闭原因
正搞板子发现程序下载不进去了,到处查找原因,发现自己在程序中不小心把STM32的SWD和JTAD接口都给关了,如下就是关掉这两个接口的两句程序:GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//关掉JTAG,不关SW GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);//关掉SW
所以,当程序跑起来,两句执行完以后,两个接口都关了,然后程序就再也下载不进去了。~~~
想要恢复正常,我们需要做的事就是想办法打开这两个接口中的任意一个,也就是下载一套不关闭程序下载接口的代码到板子中。
所以,我们要么将程序中上述语句删掉第二句,只保留第一句,重新编译,也就是只关闭JTAG,打开SW,要么重新找一个不关闭JTAG或者SW接口的代码重新下载到板子中即可。
而下载方法如文首第一点步骤所示下载即可。
相关文章推荐
- 偶遇STM32 JTAG和SWD口(调试)被禁用无法下载,已经粗暴解决!
- STM32 禁用swd-jtag下载口后,重新下载程序的方法
- JLINK和ADS1.2配合调试下载程序,及JTAG不能识别CPU核解决办法
- STM32在程序中禁用JTAG功能后不能进行仿真的解决办法
- STM32在程序中禁用JTAG功能后不能进行仿真的解决办法
- 关于 通过jlink使用jtag(或swd)下载程序成功后,keil4 uversion停止运行 的解决方法
- stm32之 GPIO_Remap_SWJ_Disable之后无法使用swd下载 程序解决方法
- 单位监控系统FTP下载程序“数据库连接失败”解决办法
- 解决arm92410下载程序进去出现
- [原创] Keil uVision5 下载程序 add flash programming algorithm选项缺少需要的算法解决办法
- 图解STM32 JLink 采取JTAG 模式和 SWD模式下载时引脚说明
- stm32的两种固件下载模式:JTAG和SWD
- sliverlight 在winserver2003上错误code :2014,无法下载sliverlight程序解决办法
- stm32的两种固件下载模式:JTAG和SWD
- 用DNW软件下载程序时,USB自动断开的解决办法
- stm32程序下载调试之swd
- keil 通过JTAG下载程序 报错:error: flash download failed - "cortex-m3"的解决方法
- 希赛网 > 问答 > 程序开发 > Web开发 > Web前端 > Firefox下载文件中文乱码的一种Server端解决办法 Firefox下载文件中文乱码的一种Server端解决办法
- STM32的JTAG、SWD和串口下载的问题