我有一个 Arduino Uno,并且正在使用 arduino 1.0.5 IDE。我关注了他procedures for bootloading an atmega328P-PU on a breadboard .
我首先上传了 ArduinoISP 草图,进行了连接(使用外部振荡器),然后将其连接起来。然后,我选择编程器为 Arduino 作为 ISP,选择开发板为 Arduino duemilanove w/Atmega328P。然后我选择了正确的串行端口并单击“刻录引导加载程序”。 我收到以下错误:
avrdude.exe: stk500_program_enable(): protocol error, expect=0x14, resp=0x50avrdude.exe: initialization failed, rc=-1 Double check connections and try again, or use -F to override
this check.avrdude.exe: stk500_disable(): protocol error, expect=0x14, resp=0x51
如何解决这个问题?另外,我可以直接上传引导加载程序,在 Uno 上使用它来代替原始芯片吗?如果是这样,怎么办?
最佳答案
据我了解,您遇到的错误表明芯片读取错误。我经历过这种情况,芯片要么死了,要么连接不正确,尤其是电源。
您可以在教程中找到更多详细信息:https://www.arduino.cc/en/Tutorial/ArduinoISP
特别是那些事情:
- Arduino 1.0 的注意事项:您需要对 ArduinoISP 代码。找到 heartbeat() 函数中显示的行 “延迟(40);”并将其更改为“延迟(20);”。
- 选择项目 与您的开发板相对应的工具 > 开发板和串行端口菜单 用作编程器(不是正在编程的板)。
关于Arduino 独立版,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32805485/