今天在使用Keil uVision调试STM32F10x系列芯片时Debug的Settings中SW Device一直显示“No target connected”,产生这种现象无外乎以下几种情况:
1.仿真器损坏
2.仿真器驱动未安装
3.仿真器连接线线序不正确
4.仿真器使用的端口被禁用
由于之前调试正常,基本可以排除前3种可能,今天同事使用板卡下载程序后才发生的,基本可以确定应是程序引起即由于程序设置导致仿真器的端口被禁用,板卡的GPIOA 15脚接了LED,而此管脚默认给JTAG使用,所以我们可以采用SWJ调试,通过重映射禁用JTAG功能,使其成为普通的IO管脚,但是由于同事的不小心将SWJ禁用了,这也就禁用了所有调试功能,这下完了,再也不能愉快的玩耍了。
这该怎么办呢,可以通过以下办法解决:
1.配置工程的Debug的settings,选择合适的调试接口SWJ或JTAG
2.板卡上电
3.按住复位键,如果没有复位键,可以将复位管脚接地,但注意计算下功率,不要烧了
4.按下FLASH的Download(所下载的程序不能导致仿真器端口被禁用)或启动Debug随即松开复位按钮
5.如果程序下载成功或进入Debug模式,那么就成功解决了,不能保证每次都成功,如果没有成功,就重复2~4步应该可以解决的。
如果你也碰到此问题,可以尝试以上方法解决,祝你成功!