Примечание:
Этот раздел был предоставлен Брайном Дином [ bsd@bsdhome.com ].
Программу avrdude ранее называли avrprog. Название было изменено, чтобы не путь её с программой avrprog, которую Atmel поставляет с AvrStudio.
avrdude
используется
для
модификации
или чтения блоков
памяти flash и EEPROM микроконтроллеров
Atmel AVR на
FreeBSD Unix. Это
поддерживает
Atmel,
программируя
протокол,
используя
параллельный
порт PC и может
передать
необработанный
двоичный
файл или файл
Intel, формата Hex.
Это может
также
использоваться
в
интерактивном
режиме, чтобы
индивидуально
модифицировать
ячейки EEPROM,
фьюз-биты,
и/или биты
блокировки
(если они доступны).
Основная flash-память
команда
AVR может
также быть
запрограммирована
в интерактивном
режиме,
однако это не
очень
полезно, потому
что можно
только
выключить
биты. Включать
перепрограммируемые
биты можно только
предварительно
стерев всю
память (использование
опции -e avrdude's).
avrdude
является
частью FreeBSD системы
портов. Чтобы
устанавливать
её, сделайте
следующее:
# cd /usr/ports/devel/avrdude
# make install
После
установки avrdude
может
программировать
процессоры,
используя
содержание .hex файла,
указанного в
командной
строке. В этом
примере, файл
main
.
hex
прошит
во
флэш-память:
# avrdude -p 2313 -e -m flash -i main.hex
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x1e9101
avrdude: erasing chip
avrdude: done.
avrdude: reading input file "main.hex"
avrdude: input file main.hex auto detected as Intel Hex
avrdude: writing flash:
1749 0x00
avrdude: 1750 bytes of flash written
avrdude: verifying flash memory against main.hex:
avrdude: reading on-chip flash data:
1749а 0x00
avrdude: verifying ...
avrdude: 1750 bytes of flash verified
avrdude done.а Thank you.
Опция
-
p
2313
позволяет avrdude знать,
что мы
оперируем с AT90S2313. Эта
опция
определяет
идентификатор
устройства и
совпадает с
устройством
того же самого
идентификатора
в файле
конфигурации
avrdude's
( /usr/local/etc/avrdude.conf).
Перечислять
допустимые
части,
определите
опцию -
v
.
Опция -
e
инструктирует
avrdude исполнять
стирание
чипа перед
программированием;
это
необходимо
почти всегда
перед
программированием
flash.
Опция flash
-
m
указывает,
что мы хотим
передать
данные во flash-память,
пока -
i main
.
hex
определяет
название
входного
файла.
Данные
в EEPROM передаются
аналогично,
единственное
различие в
том, что
используется
опция -m eeprom (вместо
-
m flash
)
.
Чтобы использовать интерактивный режим, используйте опцию -t:
# avrdude -p 2313 -t
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x1e9101
avrdude>
The '?' command displays a list of valid
commands:
avrdude> ?
>>> ?
Valid commands:
а dumpаа : dump memoryа : dump <memtype> <addr> <N-Bytes>
а readаа : alias for dump
а writeа : write memory : write <memtype> <addr> <b1> <b2> ... <bN>
а eraseа : perform a chip erase
а sigааа : display device signature bytes
а partаа : display the current part information
а sendаа : send a raw command : send <b1> <b2> <b3> <b4>
а helpаа : help
а ?ааааа : help
а quitаа : quit
Use the 'part' command to display valid memory types for use with the
'dump' and 'write' commands.
avrdude>