0

我按照教程How-To: Shrinkify Your Arduino Projects显示的方式设置了我的 Arduino 和ATtiny45。我希望制作一个连接到我的面包板的 LED 闪烁。

我正在运行 Windows XP,并且我拥有最新版本的 Arduino IDE,并将我的程序员设置为 Arduino 作为 ISP,并将我的板设置为 ATtiny45(8 MHz 内部时钟)。

当我尝试将编译后的代码上传到板上时会出现问题。IDE 返回此错误:

avrdude:stk500_getsync():不同步:resp=0x00

我已经搜索了很长时间的答案,但我一无所获。我如何解决它?

4

4 回答 4

0

这意味着未检测到您的微控制器。检查事项:

  1. 接线:用于芯片编程的引脚是否正确连接(没有交叉?)
  2. 电源:电路板是否正确供电?
  3. PC 配置:Arduino IDE 是否使用了正确的 PC 端口?

并从Arduino 帮助

  1. 如果您有Arduino NG,您是否在选择 Upload 菜单项之前按了 reset?
  2. 是否选择了正确的串口?
  3. 是否安装了正确的驱动程序?
  4. 芯片是否正确插入 Arduino?
  5. 如果您构建了自己的 Arduino 或自己烧录了引导加载程序:芯片上是否有正确的引导加载程序?

Arduino 是基于引导加载程序的。这意味着芯片内部必须有一个小软件,负责与 Arduino IDE 的通信以及将应用程序二进制文件自编程到芯片中。该软件称为“引导加载程序”。如果您的芯片空了(单独出售或错误擦除),则内部没有引导加载程序。

如果不使用外部编程器,就无法将 booloader 编程到芯片中。(或者内部已经有另一个引导加载程序。一些芯片在 ROM 中包含一个低级引导加载程序......)但是,幸运的是,为 AtTiny 构建一个自制的编程器很容易。在谷歌搜索“AtTyny ISP 程序员”。

如果您对此有任何疑问,请在“电气工程 StackExchange”中提问

于 2012-09-20T06:55:37.603 回答
0

就我而言,我购买的 Duemilenove Arduino 兼容板也有同样的问题

我找到了这个修复。

转到\hardware\arduino\boards.txt,找到这一行“uno.name=Arduino Uno uno.upload.protocol=arduino”,将protocol=arduino替换为=stk500。我不知道它是否适用于 Uno,但它确实使我免于与 Duemilanove 类似的问题。

于 2013-07-10T03:08:28.797 回答
0

When you get a virgin ATTiny, you need to set the fuse bits on it. It does not require the Arduino bootloader, but the process is similar to burning the bootloader. This tutorial helped me get my ATTiny85 up and running, take note of the "Configuring the ATtiny to run at 8 MHz (for SoftwareSerial support)" section.

Also, I've noticed there are different 'board drivers': the items that appear in 'Tools > Board' in the Arduino IDE. You may be using a set that does not work, try this, this or have a google around to find more. Just be sure to go through the entire process when you try a new set (i.e. burn the bootloader, reboot, burn your code).

Good luck.

于 2012-09-25T22:29:07.773 回答
0

我在让 attiny85 工作时遇到了同样的问题。就我而言,arduino micro 用于对其进行编程。我深入研究了这个问题,发现最新版本的 arduino IDE(1.8.5) 在使用 avrdude 的配置上略有错误。我假设您已经尝试过刻录引导加载程序,但它因 STK500 同步错误而失败。

怎么修:

  1. 准备一个能够正确编辑 unix 行结束文件的文本编辑器程序。例如)Vim、Emacs、Microsoft Visual Studio、notepad+、atom
  2. 转到 arduino 安装目录。例如)C:\Program Files(x86)\Arduino
  3. 使用您准备的编辑器打开 hardware\arduino\avr\programmers.txt。如果它在程序文件目录下,以管理员身份运行文本编辑器会很有用。
  4. 在第 44 行,您可以找到Arduino as ISP. 继续遵循这些行并编辑这两行,如下所示。 arduinoasisp.protocol=arduino arduinoasisp.program.protocol=arduino
  5. 保存并再次尝试刻录引导加载程序。

它必须具有stk500v1默认值。它基本上应该是相同的,但最新版本的 avrdude(默认情况下也包含在 arduino ide 中)有不同的工作流程。

另一个有用的信息:在 attiny 上刻录引导加载程序也可以熔断。

于 2018-03-30T15:29:03.927 回答