Значит, для Atmega32 фузы будут такими - H: D1, L: E4.

Команда записи:

Код:

avrdude -p m32 -c stk500 -P /dev/ttyACM0 -V -U lfuse:w:0xe4:m -U hfuse:w:0xd1:m

Фузы вписать один раз и больше не трогать. Запись EEPROM - туда шьется загрузчик фазы 1 (который xboot.asm). При вышеуказанных фузах он не стирается при перезаписи флеша, поэтому его тоже вписать 1 раз и не трогать, пока не захочешь подправить сам код загрузчика.

Код:

avrdude -p m32 -c stk500 -P /dev/ttyACM0 -U eeprom:w:xboot.bin:r

Ну и, наконец, запись флеша - самая длинная операция.

Код:

avrdude -p m32 -c stk500 -P /dev/ttyACM0 -V -U flash:w:extrom.hex:i

Еще позволю себе дать несколько рекомендаций.

  1. Перед вставкой карты обязательно измерь напряжение ее питания. Не знаю, как ты его будешь получать - LM-регулятором, диодами, делителем со стабилитроном, или еще чем… Но на всякий случай проверь, а то от 5в карта мнгновенно дохнет.

  2. Также первый раз заливай фузы-еепром-флеш тоже без вставленной карты. Причем начинай именно с фузов, а потом уже остальное. При последующих перешивках карту можно не вынимать.

  3. Имеется отладочный терминал на ножке TxD Usart. Его параметры - 1000000-8-N-1. Туда много полезного вываливается в процессе работы программы.

  4. Ну и, естественно, перед подключением меги проверь и ее напряжение питания. А то там на разъеме и +12 есть, тут ошибиться раз плюнуть.

Надеюсь, у тебя все получится.

Исходные тексты Тема на zx-pk Архив обсуждения Загрузка из внешнего ПЗУ