tag 标签: medbg

相关博文
  • 热度 16
    2015-1-5 00:54
    1542 次阅读|
    2 个评论
    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 ,这样也无法找到设备。好在设备栏是可以手工编辑的,自己将它修改过来,就可以连上了。