AVRDUDE不写flash

时间:2014-01-25 20:07:45

标签: avr avrdude winavr

我遇到AVRDUDE的问题。它甚至没有尝试将hex文件写入AVR。在WinAVR中没有问题。 (我不能使用WinAVR,因为我只有hex文件。)

L:\>avrdude -c SAJAT -p t2313 -P COM1 -U flash:w:main.hex

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x1e910a

avrdude: safemode: Fuses OK (E:FF, H:DF, L:E0)

avrdude done.  Thank you.

avrdude.exe,avrdude.conf和main.hex文件位于同一个文件夹中。

SAJAT是我的DASA程序员版本(不同的引脚分配),这很好用。目标是ATtiny2313,外部12 MHz时钟。我在Windows 7 64位上使用AVRDUDE 6.1。

写熔丝位有效。

这里有什么问题?

1 个答案:

答案 0 :(得分:0)

我只上传了一个hex文件,但我不知道这是否也适用于EEPROM文件。

  • 第1步: 在WinAVR中创建一个简单的程序,如LED切换。 根据需要命名。我把它命名为2313.c
  • 第2步: 在WinAVR中编译它。 现在你不仅有2313.c文件,还有2313.hex和其他文件。
  • 第3步: 使用WinAVR将其刻录到目标设备中。这对于未来的步骤很重要。刻录完成后不要关闭程序。
  • 第4步: 将要刻录的hex文件重命名为AVR到2313.hex(myhex_to_burn.hex - > 2313.hex)。复制重命名的十六进制并用它覆盖已编译的十六进制。现在复制AVRDUDE所在的所有这些文件(makefile,.hex,.c,...等)。
  • 第5步: 打开AVRDUDE。 (开始 - > cmd - >转到AVRDUDE位置。) 打开WinAVR并在其Output窗口中选择第一行。你应该找到这样的东西:

    avrdude -p attiny2313 -P com1     -c sajat    –U flash:w:2313.hex
    

    将其复制并粘贴到AVRDUDE中,然后右键单击并插入。

  • 第6步: 准备目标AVR以进行编程(将其连接到ISP编程器,电源等) 按 Enter