2017-01-10 20 views
0

Я использовал make-файл для сборки своего кода, и я создал файл 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. Я использую avrispmkII, подключенный через рабочий и протестированный SPI.

На этот раз у меня есть ошибка.

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 Fragen müssen in Englisch sein. (Ваши вопросы должны быть на английском языке) –

ответ

1

Вы можете установить плавкие байты в командной строке AVRDUDE. example

На чердаке имеется только 3 байта предохранителя: низкий, высокий и расширенный. Их можно найти на стр. 148 of datasheet.

Просто вычислить параметр предохранителя в виде шестнадцатеричного числа и включают в себя переключатели, как -U

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

для расширенного, высоких и низких предохранителей.