原创
ATmega328P Xplained Mini的mEDBG故障分析和修复
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,这样也无法找到设备。好在设备栏是可以手工编辑的,自己将它修改过来,就可以连上了。
shaoziyang 2015-8-20 00:20
用户1850770 2015-8-18 22:22
coyoo 2009-8-13 11:50
coyoo 2009-8-13 10:13
coyoo 2009-8-13 10:11
coyoo 2009-8-13 09:51
ash_riple_768180695 2009-8-12 11:25
coyoo 2009-8-12 11:10
ash_riple_768180695 2009-8-11 16:50
coyoo 2009-8-11 16:35