2017-01-10 79 views
0

我已经使用了makefile来构建我的代码,并生成了一个ELF文件。Avrdude .hex带有保险丝

为了使我的attiny85可以理解,我通常使用avr-objcopy -O ihex -R .eeprom -R .fuse main.elf main_all.hex。我得到一个包含熔丝设置的十六进制文件我用avrdude -p t85 -c avrispmkII -P usb -U flash:w:main_all.hex闪烁十六进制文件。 我正在使用通过工作和测试SPI连接的avrispmkII。

这次我收到一个错误。

ERROR: address 0x820003 out of range 

我猜是因为我在熔丝代码中玩过这个问题。根据Contiki compile error, " ERROR: address 0x820003 out of range at line 1740 of...", 我注意到你可以让avrdude创建一个没有保险丝的十六进制。

avr-objcopy -O ihex -R .eeprom -R. Fuse main.elf main_ohne.hex 

这也工作,现在让attiny85完全正常闪光。

现在真正的问题。

我该如何获得attiny85上的保险丝?

在设置保险丝之前,有什么方法可以查看我设置了哪个保险丝?我之前明确地问过,因为我没有使用12V(HV)闪烁的经验,并且这个arvmkII的同义词是不正确的(是的,我应该查看数据表是否可以)。

我主要关心的是在熔断器上熔断保险丝。我是一名在空闲时间进行编程的毕业电气工程师。所以我很擅长超级链接和神奇的命令。

(从German original粗略的翻译)

+3

Deine Fragenmüssenin Englisch sein。 (你的问题必须用英文) –

回答

1

您可以设置AVRDUDE的命令行熔丝字节。 example

attiny上只有3个熔丝字节:低,高和扩展。他们可以在页面上找到。 datasheet

只需计算熔丝设置为十六进制数,并且包括开关-U像

-U efuse:w:0xff:m -U hfuse:w:0x89:m -U lfuse:w:0x2e:m 

对于扩展,高和低的保险丝。