【问题标题】:AVRDUDE does not write flashAVRDUDE 不写闪存
【发布时间】:2015-12-31 23:08:38
【问题描述】:

AVRDUDE 有问题。它甚至不尝试将十六进制文件写入 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。

写入保险丝位有效。

这里有什么问题?

【问题讨论】:

    标签: avr avrdude winavr


    【解决方案1】:

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

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

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-02-26
      • 2021-09-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-06
      • 1970-01-01
      相关资源
      最近更新 更多