所以当我尝试调试或部署到我的电路板时,我突然被这个错误消息攻击时,我正在使用Atmel-ICE调试器在ATSAM4S8Bu上进行编程。
Failed to launch program
Error: unexpected chip identifier 0x00000000
这个错误有时也会对我大喊:
Could not activate interface, but found DAP with ID 0x2ba01477.
多么粗鲁!我试过用它推理,但它没有任何一个。 但是说真的,这一刻很好,下一次这个错误阻止了我进一步开发,所以它意味着什么,我该如何解决这个问题?
编辑:
此错误似乎只出现在我的机器上。它适用于我的同事,我尝试重新安装atmel-usb和atmel studio 6.2,但没有运气:(
编辑:
屏幕的一些屏幕截图即显示在工具 - >设备编程中,然后尝试读取设备签名:
编辑:
答案 0 :(得分:1)
我也有这个问题,我找到了一些我想分享的解决方案。
我的PCB使用了带有Cortex调试头的ATSAM4E处理器(从未编程过)。当我尝试任何一种方法(SWD或JTAG)时,我收到了错误消息。
注意:在按下重置按钮或按下重置按钮后,我能够在非常短的时间内读取设备ID(感谢Yaro和Yarooo)。通常我会多次尝试尝试击中那个短窗口。这向我证实了我的Cortex Debug头的电路是正确的。
jrb114 quotes in his post SAM3S数据表上有勘误表,要求:
XIN / XOUT上的外部晶体或陶瓷谐振器,或者在旁路模式下使用主振荡器(在XIN上施加时钟)。
...
因此,我所做的使这些电路板工作的是使用信号发生器为XIN提供1 MHz时钟。接通电源,然后使用ATMEL-Ice连接。这很好。之后我设置了GPNVM Bit 1,所以我们从闪存启动,而不是SAMBA,对设备进行编程,运行正常。
我的PCB有一个外部晶体,所以我有点困惑,为什么我的电路板没有工作。所以我将示波器放在XIN线上,发现晶体没有产生波形。
事实证明,在我的大多数电路板上,其中一个电容器(用于晶体)与地之间存在短路。难怪我的时钟不会发生。
在其他电路板上,介于VDD_OUT
和VDD_PLL
之间的电感未正确焊接到PCB上,导致电路开路。
总的来说,这个错误似乎是由于XIN上没有时钟信号,无论是不正确的接线还是没有使用外部晶振/谐振器。