Найти в Дзене
RadioMix

Программатор AVRISP-MKII из платы ARDUINO Pro Micro

В статье описывается создание из модуля Arduino Pro Micro 5 В / 16 МГц, приобретенного на AliExpress и дополнительной платы с элементами (шилд) к ней внутрисхемного программатора AVRISP-MKII, предназначенного для внутрисхемного программирования микроконтроллеров компании Atmel. В 2016 году компания Atmel была поглощена одним из своих конкурентов — компанией Microchip Technology, которая продолжает выпускать часть продукции компании Atmel. Модуль совместимый с Arduino Pro Micro 5В/16МГц (на 3,3В/8МГц не подойдет) приобретался на AliExpress. От себя добавлю, что данный программатор работает с протоколами: ISP – для основной массы микроконтроллеров Atmel; PDI - для ATXmega; TPI – для мелких ATtiny, например ATtiny10 . Особенности моего варианта исполнения программатора: напряжение питания внешнего программируемого микроконтроллера +5 В; наличие защитных резисторов величиной 100 Ом для долгой и счастливой жизни модуля Arduino Pro Micro; возможность измерения напряжения питания программиру
В статье описывается создание из модуля Arduino Pro Micro 5 В / 16 МГц, приобретенного на AliExpress и дополнительной платы с элементами (шилд) к ней внутрисхемного программатора AVRISP-MKII, предназначенного для внутрисхемного программирования микроконтроллеров компании Atmel. В 2016 году компания Atmel была поглощена одним из своих конкурентов — компанией Microchip Technology, которая продолжает выпускать часть продукции компании Atmel.

Модуль совместимый с Arduino Pro Micro 5В/16МГц (на 3,3В/8МГц не подойдет) приобретался на AliExpress.

От себя добавлю, что данный программатор работает с протоколами: ISP – для основной массы микроконтроллеров Atmel; PDI - для ATXmega; TPI – для мелких ATtiny, например ATtiny10 .

Особенности моего варианта исполнения программатора: напряжение питания внешнего программируемого микроконтроллера +5 В; наличие защитных резисторов величиной 100 Ом для долгой и счастливой жизни модуля Arduino Pro Micro; возможность измерения напряжения питания программируемого внешнего микроконтроллера; возможность подключения напряжения +5 В на разъем ISP (10 выводов) внутрисхемного программирования; возможность конфигурирования сигнальных цепей разъема внутрисхемного программирования (6 выводов) под протоколы ISP, PDI, TPI; возможность подключения сигнала тактирования 4 МГц для внешнего программируемого микроконтроллера на разъем ISP (10 выводов).

Автор dimax в статье «Делаем программатор AVRISP MKII за 5 минут» подробно поделился своим опытом повторения внутрисхемного программатора AVRISP-MKII из платы ARDUINO Pro Micro и предоставил всю необходимую для этого информацию. Я, в свою очередь, предоставленную информацию адаптировал под свои потребности и результатами хочу поделиться в данной статье.

Процитирую автора: «…В чём плюсы этого программатора - он умеет шить все AVR, работает в разных программах, а главное в atmel студии и конечно с avrdude. Правда были какие-то версии avrdude с которыми он не работает, но с последней 6.3 точно работает. Это нужно учитывать. Последний avrdude так же используется в ArduinoIDE 1.6.12 Так что с ним так-же удобно работать, с тиньками можно просто нажимать кнопку "загрузка" без выбора пункта "загрузить через программатор". Программатор быстрый, и у него нет заморочек с джамперами что б читать медленные МК. Учитывая что дешевая плата промикро стоит сейчас порядка 200 рублей, и кроме неё больше в принципе ничего не нужно -программатор получается ещё и очень дешевым. В общем очевидный конкурент народному программатору USBAsp…».

Прошивку для микроконтроллера ATmega32u4, расположенного на модуле ARDUINO Pro Micro можно скачать у автора dimax в статье «Делаем программатор AVRISP MKII за 5 минут», fuse не меняются, т.е. остаются по умолчанию те, которые были прошиты производителем платы вместе с загрузчиком. Если прошивку заливаете в "голый" мк, то fuse можно посмотреть в файлике boards.txt ArduinoIDE. Драйвера для программатора можно взять у автора https://github.com/abcminiuser из проекта LUFA - the Lightweight USB Framework for AVRs.

Прошивку и драйвер для Windows также можно взять здесь: https://cutt.us/RadioMix10

Схема от автора dimax упомянутой статьи, соответствующая представленной прошивке, изображена ниже.

Номинал резисторов в делителе не принципиален, важно что бы оба были одинаковыми, и желательно с допуском 1%. Корректно установленный программатор выглядит в диспетчере устройств операционной системы WINDOWS вот так:

-2

Фото рабочего эскиза моего варианта исполнения программатора:

-3

Схема рабочего эскиза моего варианта исполнения программатора:

-4
Необходимо уточнить, что сигнал «Clock 4 MHz» подключенный к выводу 22- PB5 микроконтроллера непосредственно не выведен на плату модуля ARDUINO Pro Micro. Поэтому к этому выводу необходимо подпаять проводник. Место пайки проводника сигнала «Clock 4MHz» представлено на схеме расположения выводов Arduino Pro Micro:
-5

Схема электрическая принципиальная модуля ARDUINO Pro Micro взята с https://www.5v.ru/pro-micro.htm

-6

Возможно Вам будут интересны другие мои статьи.