avrdude:can';t handle ELF file checkio.hex,未在中编译ELF文件支持

avrdude:can';t handle ELF file checkio.hex,未在中编译ELF文件支持,c,debian,embedded,avr,toolchain,C,Debian,Embedded,Avr,Toolchain,我正在寻找指导我解决AVR Micro controller(OS:Debian 32位)中以下错误的人 avrdude:警告:无法设置sck周期。请检查usbasp固件更新 avrdude:AVR设备已初始化并准备接受指令 3月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支

我正在寻找指导我解决AVR Micro controller(OS:Debian 32位)中以下错误的人

avrdude:警告:无法设置sck周期。请检查usbasp固件更新

avrdude:AVR设备已初始化并准备接受指令

3月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支100%0.01秒

avrdude:设备签名=0x1e9502

avrdude:注意:“闪存”已指定,将执行擦除循环 要禁用此功能,请指定-D选项

擦除芯片

avrdude:警告:无法设置sck周期。请检查usbasp固件 更新

avrdude:读取输入文件“checkio.hex”

avrdude:输入文件checkio.hex自动检测为ELF

avrdude:无法处理ELF文件checkio.hex,ELF文件支持未在中编译

avrdude:从文件“checkio.hex”读取失败


阿弗杜德完成了。谢谢。

问题不在于avrdude无法处理elf文件,而在于.hex文件首先是elf文件,而不是hex文件

objcopy命令应指定输出文件格式:

avr-objcopy -O ihex checkio.elf checkio.hex
            ^^^^^^^
可能是因为明显的输入错误:
GFLAGS3
而不是
CFLAGS3
,但您仍然需要
-O ihex
而不是
ihex

CFLAGS3=-j .text -j .data -O ihex

checkio.hex:checkio.elf
    avr-objcopy $(CFLAGS3) checkio.elf checkio.hex

问题不在于avrdude无法处理elf文件,而在于.hex文件是elf文件,而不是第一个实例中的hex文件

objcopy命令应指定输出文件格式:

avr-objcopy -O ihex checkio.elf checkio.hex
            ^^^^^^^
可能是因为明显的输入错误:
GFLAGS3
而不是
CFLAGS3
,但您仍然需要
-O ihex
而不是
ihex

CFLAGS3=-j .text -j .data -O ihex

checkio.hex:checkio.elf
    avr-objcopy $(CFLAGS3) checkio.elf checkio.hex

输入错误:您已经设置了变量
GFLAGS3
,但在规则中引用了
CFLAGS3
。(我个人称之为
AVRDUDE\u OPTS
)objcopy命令使用
CFLAGS3
,但这并没有定义。您已定义了
GFLAGS3
。键入:您已设置变量
GFLAGS3
,但在规则中引用了
CFLAGS3
。(我个人称之为
AVRDUDE\u OPTS
)objcopy命令使用
CFLAGS3
,但这并没有定义。您已经定义了
GFLAGS3
。@Pravinkable:StackOverflow“方式”当一个答案是一个可接受的解决方案(或您在几个答案中的首选答案)时,将其标记为“已接受”,而不是发表评论或致谢-尽管这是-非常受欢迎的。@Pravinkable:StackOverflow“方式”当一个答案是可接受的解决方案(或者你在几个答案中的首选答案)时,将其标记为“已接受”,而不是发表评论或致谢——尽管这是值得赞赏的——你是最受欢迎的。