Arduino独立
Posted
技术标签:
【中文标题】Arduino独立【英文标题】:Arduino Standalone 【发布时间】:2015-09-27 07:13:17 【问题描述】:我有一个 Arduino Uno,我正在使用 arduino 1.0.5 IDE。我关注了他procedures for bootloading an atmega328P-PU on a breadboard。
我首先上传了 ArduinoISP 草图,进行了连接(使用外部振荡器),然后将其接线。然后,我选择了作为 ISP 的 Arduino 编程器,选择了带有 Atmega328P 的 Arduino Duemilanove 开发板。然后我选择了正确的串口并点击了刻录引导加载程序。 我收到以下错误:
avrdude.exe: stk500_program_enable(): 协议错误,expect=0x14, resp=0x50avrdude.exe:初始化失败,rc=-1 Double 检查连接并重试,或使用 -F 覆盖 这个 check.avrdude.exe: stk500_disable(): 协议错误,expect=0x14, 响应=0x51
如何解决这个问题?另外,我可以通过在 Uno 上使用引导加载程序代替原始芯片直接上传引导加载程序吗?如果有,怎么做?
【问题讨论】:
这个问题可能更适合Arduino StackExchange - 它可能是硬件问题 【参考方案1】:据我了解,您遇到的错误表明芯片读取错误。我曾在芯片死机或未正确连接时遇到过这种情况,尤其是与电源连接。
您可以在教程中找到更多详细信息:https://www.arduino.cc/en/Tutorial/ArduinoISP
尤其是那些东西:
Arduino 1.0 的注意事项:您需要对 ArduinoISP 代码。在 heartbeat() 函数中找到表示 “延迟(40);”并将其更改为“延迟(20);”。 选择项目中的 Tools > Board 和 Serial Port 菜单对应于 您的板 正在用作编程器(不是正在编程的板)。【讨论】:
【参考方案2】:只需通过下面的链接而不是 arduino 内置引导加载程序,这将非常适合上传引导加载程序和验证板状态信息
我之所以回复你这个问题,是因为我很久以前就遇到了同样的问题,它救了我。
arduino 引导加载程序的另一件事:对于 atmega328,您需要在 reset 和 gnd 之间放置电容器(以防您错过)
对于 gammon 引导加载程序,您不需要它。
创新。
【讨论】:
【参考方案3】:对于重置行,您可能会使用 100nf(这就是文档中所述)...但有时它不起作用...尝试 4.7uf、22uf 或 47uf 之类的值或关闭值
【讨论】:
【参考方案4】:我遇到了类似的问题,问题是我的程序员有点慢,我使用 -B 标志来降低比特率并开始工作,我设置了 -B20 并且每次都像魅力一样工作,但我使用的是 USBTinyISP 编程器,而不是 stk500 编程器,所以这可能不适合你。
【讨论】:
以上是关于Arduino独立的主要内容,如果未能解决你的问题,请参考以下文章
arduino leonardo r3 和 arduino uno r3 有啥区别
SD卡声音播放代码和舵机代码烧进arduino板卡里不能正常运行?
Arduino UNO 利用3个IO口 + TM1638+驱动8位数码管显示+24个独立按键