微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 我好像把ARDUINO UNO玩坏了。。

我好像把ARDUINO UNO玩坏了。。

时间:10-02 整理:3721RD 点击:

昨天下午我测试新买的USBISP下载线,用PROGISP软件,参数选择328P,然后载入了一个HEX文件,烧录FLASH,成功。
下载器是10个孔(5个一排2排)。烧录的时候接线就插了4根, PIN 13,12,11和RESET 引脚 与烧录器连接的。
但是现在发现用ARDUINO IDE无法写入程序了,下载程序进去的时候就一直无响应。
Using Port                    : /dev/cu.usbmodem1441
         Using Programmer              : arduino
         Overriding Baud Rate          : 115200
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00

我以为是USBISP烧录器把328P的BOOTLOADER弄坏了,就扣掉UNO上的328P,换了一片写好BOOTLOADER和LED发光的程序的328P。
换上去以后,UNO上自带的LED灯在闪烁,说明芯片工作正常。
然而用ARDUINO IDE写入程序还是上面的错误。
我怀疑是ATMEGA16U2被USBISP烧录器弄坏了,就进入DFU模式擦写了16U2,从新写入了BOOTLOADER。
用ARDUINO IDE写入程序还是上面的错误。

换另外一块UNO,IDE写入正常。

奇怪,什么样的操作会把UNO搞成现在这个样子呢? 2个关键的芯片,能替换的替换,不能替换的也从新刷过。 还能是哪出问题?

首先说USBISP下载线是可以用PROGISP软件烧写HEX文件的(是作为AVR单片机而言),而不是 ARDUINO。

我搞定了,是熔丝位的问题。从ARDUINO IDE里hardware目录里找对应型号的bootloader.hex ,拿USBISP烧录器载入FLASH,设置好熔丝位烧录。 ARDUINO UNO就恢复正常了,可以用IDE写入程序了。

嗯,我就说嘛ARDUINO还不至于那么脆弱。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top