ATmega328P Xplained Mini的mEDBG故障分析和修复

作者: shaoziyang
上传时间为: 2015-01-05 09:13 AM
2015-01-05
阅读:

ATmega328P Xplained Mini板载的mEdbg仿真器模块有些bug,容易因为内部的serial number错误造成连接不上仿真器。通常是刚才还是好的,下次插上USB就不正常了。感觉上是因为上电或者掉电过程中,因为干扰造成内部数据被修改,使Serial Number中的一位或者几位变为特殊字符,从而不能被AS6识别。

在开发板的官方文档Atmel-42297-ATmega328P-Xplained-Mini-User-Guide_UserGuide.pdf中,1.5.4小节中推荐的ATmega32U4熔丝位设置中BODLEVEL是禁止的,这样电压异常时MCU就不会被复位保护(禁止BODLEVEL的原因估计是为了适应不同的用户工作电压,因为ATmega328P可以通过外部供电)。在看看开发板的原理图,ATmega328P Xplained Mini上USB通过22欧的电阻连到ATmega32U4上,没有其他的保护了,而SAM4S、SAM R21等开发板上的EDBG模块的USB上都有保护二极管。因此可以预计主要的故障原因就是来自于USB上。

这个问题在Atmel官方网站也有说明

Serial number bug

There is a bug in the serial number on some of the ATmega328P-XMINI boards making them not recognizable by Atmel Studio programming/debugging.

详细见
http://spaces.atmel.com/gf/project/avr_xp_mini/

如果你也不幸遇到这个问题,那么就需要修复序列号才行。atmel提供了一个软件(Change_Serialnumber)可以修改mEDBG的序列号,这个软件在这里可以下载:

http://spaces.atmel.com/gf/project/avr_xp_mini/frs

虽然atmel提供了这个补丁,但是不幸的是,修复了序列号后,在编程器的设备名称又出了一个小问题,它把ATmega328P变为了ATmeÿa328P,这样也无法找到设备。好在设备栏是可以手工编辑的,自己将它修改过来,就可以连上了。

全部评论 ()
条评论
写评论

创建讨论帖子

登录 后参与评论
系统提示