为什么要烧bootloader
自己DIY的arduino nano板子,是无法直接用UART进行程序烧录的,需要先用ICSP给板子烧录bootloader。
其流程为:
但是烧录bootloader时报错如下
Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
然后点击 文件->首选项->显示详细输出->编译查看详细报错如下
Arduino:1.6.5 (Windows 8.1), 板:"Arduino Nano, ATmega328"
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x15
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x15
avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x14
avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x01
上传出错。查看页面 http://www.arduino.cc/en/Guide/Troubleshooting#upload 获取建议。
avrdude: stk500_initialize(): (a) protocol error, expect=0x14, resp=0x10
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude: stk500_disable(): unknown response=0x12
学习了这篇博客:Arduino Nano开发板设备描述符无法识别等问题汇总
**
各种调试都没找出错误,是芯片烧坏了
**
给一块现成的arduino nano烧录没有问题,但是给自己的arduino nano烧录会报错,而且电路也检查了没有问题,那么就是芯片烧坏了。
然后发现是芯片焊接时吹太久烧坏了,背面都起泡了。
换个新的芯片,先把锡膏烧融,然后快速贴上去芯片,再烧录bootloader就好了。