今天写给小stm32程序,程序可以下载,但是出现出现如下警告
***JLink Error: Bad JTAG communication: Write to IR: Expected 0x1, got 0xF (TAP Command : 10) @ Off 0x5.
/*@@@@@@@@@@@@@@
*** JLink错误:坏JTAG通信:写入IR:预期的0x1,得到0xF(TAP命令:10)@ Off 0x5。
@@@@@@@@@@@@@@*/
个人觉得应该是使用的引脚和jlink引脚有冲突,又试了其他程序(比较简单的程序),并没有警告。
百度了一下,基本有以下几个答案
1. 检查代码,将与硬件电路不相符的代码删除即可(http://blog.sina.com.cn/s/blog_50841dff0101kltl.html)
2. 用的是st官方的hal库,arenascat的博客(http://blog.csdn.net/u012388993/article/details/61912976)
他这个最后说“CUBEMX 如果说是选择STM32F103,默认生成的代码会自动加上这一句以禁用JTAG”。hal库没用过,一直用的3.5的库。
3. 他说的还是比较在理的,stm32和jlink确实不太容易坏(记得当时吧没有FT5v的引脚加5v电,它还是坚挺一个多小时,然后开始冒烟,,,)
但他这个警告是expected 0x1, got 0x7 (TAP Command : 2) @ Off 0x5. 而我遇到的是got0xf,他这个应该是锁了芯片 。锁芯片的问题,没亲手解决过,有空可以试试
(http://blog.csdn.net/liyuanbhu/article/details/9107139)
感觉是引脚冲突,因为别的程序并没有报错(主要是太简单了,用的io口比较少)。而且只是不能仿真,可以下载。讲真,目前基本不用仿真,都是直接烧录。仿真还是可以体现一些细节的,比如按步运行等。但是本着求知的态度试着解决下。
欢迎转载,转载注明出处。