Для своих конструкций, я решил использовать дешевый модуль Arduino Mini Pro.
Программируется он при помощи любого преобразователь USB-> COM, типа (CH340D) который можно приобрести или изготовить самому . Даже при отсутствии в Вашем преобразователе сигнала DTR .программирование можно произвести используя всего 4 шины (GND, +5v, RXD и TXD), а также кнопку Reset на самом модуле Ардуино.
Программирование возможно как из самой среды Arduino Software (IDE),так и при помощи программ для заливки HEX файлов (готовые файлы без исходного кода в HEX формате).
Программа для заливки HEX файла:
XLoader
Пользоваться программой очень просто.После запуска сделать соответствующий выбор в панели управления программы и нажать Upload
Если использовать программатор USBASP -хорошая программа для работы с этим программатором avrdudeprog33:
При замене загрузчика или его восстановлении без внешнего программатора просто не обойтись. Схем программатора USBASP полно в интернете,поэтому я не стану их здесь выкладывать.Может придется восстановить загрузчик для ардуино нано или мини про, вот его вариант:
Подключаем Arduino по IСSP программатор USBASP :
Для Arduino — mini pro:
Для Arduino — nano:
Замыкаем JP3 на USBASP, так как частота нового контроллера слишком мала.
Открываем AVRDUDE_PROG, и сразу переключаемся на вкладку FUSES выставляем все как на картинке
В примере на картинке FUSES установленны для ARDUINO NANO 328!
Вот список для остальных контроллеров:
Фьюзы установленные по умолчанию в Arduino (только с ATmega328)
Arduino Uno
Low Fuse 0xFF
High Fuse 0xDE
Extended Fuse 0x05
Arduino Duemilanove or Nano w/ ATmega328
Low Fuse 0xFF
High Fuse 0xDA
Extended Fuse 0x05
Arduino BT w/ ATmega328
Low Fuse 0xFF
High Fuse 0xD8
Extended Fuse 0x05
LilyPad Arduino w/ ATmega328
Low Fuse 0xFF
High Fuse 0xDA
Extended Fuse 0x05
Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
Low Fuse 0xFF
High Fuse 0xDA
Extended Fuse 0x05
После прошивки FUSES прошиваем загрузчик.
Информация взята из сайта :http://it-chainik.ru/category/arduino-avr/