Можно сделать Arduino Nano практически из любой микросхемы Atmega, но в данном примере будем использовать Atmega88 (8/48/168/328).
На основе: “github.com/MCUdude/MiniCore”
Возьмем в данном примере Atmega88 в корпусе DIP-28 (схемы подключения для TQFP-32 SMD можно посмотреть в Примечании ниже).
Также для передачи сигналов Tx и Rx между микросхемой Atmega88 и ПК воспользуемся преобразователем USB-UART для Ардуино – HW-597 (на микросхеме CH340) – его также можно собрать самому и не покупать, более подробно как это сделать читайте здесь: “gameforstreet.ru/usb-ttl-usb-uart-preobrazovatel-na-atmega/” (с DTR выходом).
На данном преобразователи USB-UART нету выхода DTR – поэтому придется припаять дополнительный проводок.
В итоге схема будет следующей:
Изображение:
———————————
Загружаем загрузчик на Atmega88
———————————
Как загрузить загрузчик на Atmega88 – для этого я воспользовался программатором USBAsp (AVRasp) – он поддерживается Arduino IDE, вроде такого:
Только я его собирал сам – вот в этой статье описывал как это сделать:
“gameforstreet.ru/usb-programmator-na-atmega88/”
Возможно можно прошить с помощью 5 проводков – попробую сделать это в следующих статьях.
Фьюзы ставил следующие:
То есть галочки на Spein CKSEL3 EESAVE BODLEVEL1 для PonyProg2000 и AVR8 Burn-O-Mat.
Более подробно как прописать фьюзы в Atmega88 с внешним кварцем – “gameforstreet.ru/atmega88-dobavlyaem-kvarc/”
Обязательно перед прошивкой подключаем кварц на 16 МГц и только потом прошиваем – иначе заблокируете атмегу.
———————————–
Далее ставим в Arduino IDE библиотеку MiniCore
———————————–
Установка проста – и указана в описании к каждой библиотеке в отдельности.
Например давайте поставим библиотеку MiniCore.
Заходим на “github.com/MCUdude/MiniCore”
Доходим до пункта How to install (Как установить) и копируем:
https://mcudude.github.io/MiniCore/package_MCUdude_MiniCore_index.json
Далее делаем так:
– Открываем в верхнем меню File > Preferences.
– Вводим в параметре Additional Boards Manager URLs:
“https://mcudude.github.io/MiniCore/package_MCUdude_MiniCore_index.json”
– Открываем Tools > Board > Boards Manager… menu item (Менеджер плат).
– Далее ждем пока появится новая левая панелька, прокручиваем вниз и ищем MiniCore – кликаем и устанавливаем его.
Открываем Tools > Board >
—————————————
И наконец загружаем Загрузчик:
Если через AVRasp и Arduino IDE – то всё легко:
Но можно через любой другой программатор – даже через программатор “5 проводков” – вот его схема:
Программа для прошивки PonyProg2000 – более подробно здесь:
“gameforstreet.ru/avr-prostye-i-prostejshie-programmatory/”
Фьюзы:
Hex файл для Atmega88:
Скачать hex файл для прошивки:
– в zip архиве.
– в tar.gz архиве.
Для прошивки я использовал urboot_atmega88_pr_ee_ce.hex файл брал я из этого архива – в нём есть для всех Атмег 8/48/88/168/328:
Путь до hex загрузчика: Arduino/Ядра/MiniCore-master/avr/bootloaders/urboot/atmega88/watchdog_1_s/autobaud/uart0_rxd0_txd1/urboot_atmega88_pr_ee_ce.hex
– Скачать архив со всеми загрузчиками для Атмег 8/48/88/168/328:
– в формате zip
– в tar.gz формате.
—————————————
Примечание:
Схема для корпуса DIP-28 микроконтроллеры ATmega8/48/88/168/328
Схема для корпуса TQFP-32 SMD ATmega8/48/88/168/328
Схема для корпуса TQFP-32 SMD ATmega48/88/168/328PB
Видео:
“rutube.ru/video/451ca4cd3056d600778b0956ddb76468/”
Примечание 2: Порты Атмеги и пины Arduino Nano: