新打的的板子,目前只焊接了电源电路和JTAG电路,但是上电后KEIL下载程序进去的时候显示cannot attach to cpu。之后就上百度参考解决方案,目前能想到的有:
1. 晶振没起振(晶振是外部电路,在第一次上电FLASH里面没有程序的时候应该是不会起振才对)
2. 硬件电路焊接有问题
3. Jtag仿真器本身软硬件问题(之前是使用同一个JTAG在评估板上跑软件,成功识别和下载了,而且这次我使用的也是之前的那个项目,修改了一些代码,配置什么的都没有变)
所以最后就在排查硬件焊接方面的问题:
1. 焊接电阻导致的短/断路
2. 电路图设计本身有问题
3. BOOT电路
我是用20-Pin 的JTAG 仿真器,实际也就是5个Pin脚真正在使用。我在设计电路板的时候开了些大的过孔,就为了调试。用万用表测过孔之间的连接是通的,电阻焊接也没有短路/断路,甚至MCU管脚与JTAG的PIN都是通的,所以暂时排除了由于焊接导致的识别不到CPU。 于是我又对着电路图一个一个看,也没有存在问题,PCB的Pad对应的PIN脚也是正确的。 BOOT电路的焊接我也测试过了,没有虚焊的部分。BOOT0 和 BOOT1 通过短路帽和两个电阻分别拉地。
所以我想求教大神们还有那些地方可以排查或改进的,例如如何检测CPU是否正常上电了,我用万用表测MCU供电引脚的电压(通过过孔)是3.3V 无误。 但就是不确定MCU是否上电成功,用示波器测外部晶振没有起振。或者说JTAG识别CPU的原理大概是什么,软件通过JTAG下载进FLASH里面前需要建立连接吗?然后基于此判断是否识别到了CPU?
还是说初次使用的芯片还需要特殊配置吗?我以前只是用过已经调试好了的开发板,第一次打样自己的板子。还有好多问题,在这里虚心求教了。谢谢大家
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
好的,JTAG与MCU接口部分都是参照开发板原理图画的
一周热门 更多>