前段时间,做了一块板子,调试接口只留了三个口SWD、SWCLK、GND,在使用Jlink的SWD方式调试的时候发现无法连接。使用ST-link的时候可以连接,无奈楼主的ST-link的链接方式相当的不可靠,时而能识别时而不能识别:当然我的ST-link是山寨版的。
通过查阅网上资料发现,jlink的20针,不光有调试的功能还有供电和检测电压的功能。
下面是jlink的接口图
通过上面图片可以发现,jlink的1脚叫做VTref,这个从字面意思理解应该是参考电压的意思,没错,这个管脚就是板子给Jlink内部缓冲芯片供电的接口,这个地方供几伏,缓冲芯片的IO电平就是几伏的。起了一个电平匹配的作用。
20针JTAG的2号针可以提供VCC供电。打开J-Link
Commander输入power on时,发现2号针脚输出的是3.3V电压,那么可以通过直接短路1、2号针来解决问题。
好多板子上的20针调试接口是按下图连接的。
那么短接完成,如果再采用20针调试的时候就要注意了,jlink的3.3V千万不要与开发板上20针接口的3.3V接在一块,否则会有烧坏jlink的可能,这个时候就要设置jlink不给开发板供电了。
/************************************************************/ - ERROR: RAM check failed @ address 0x20000000.
- ERROR: Write: 0x03020100 07060504
- ERROR: Read: 0xAAAAAAAA AAAAAAAA
- ERROR: (0 bytes of RAM have been checked successfully)
- ERROR: Failed to test speed 短接Jtag接口的1 2 脚即可正常烧写,但是之前烧写stm32vet6不需要短接也可以正常烧写,还是比较困惑的,不太清楚根本原因在哪里。
|