Добрый день. С появлением arduino робототехника, автоматика и другие радио изделия стали нам более доступными. Раньше представить было трудно что с такой простотой можно писать прошивки для микроконтроллеров, с появлением arduino заниматься робототехникой могут даже детишки. Простота платформы arduino позволяет забыть о побитовых операциях и регистрах avr которые использовались повсеместно. Но так как платформа универсальная то и микроконтроллер тоже выбран универсальный. Например в arduino uno предусмотрен atmel atmega328p что даволи излишне для простой обработки нажатий на кнопки, а если делать сразу партию устройств то придется заплатить за незадействованную мощь.
Но так как arduino ide свободно распространяемая, любой без труда может написать дополнения и библиотеки, зачастую они могут быть очень полезными. В данной статье пойдет речь о библиотеке плат на основе ATmega8, ATmega48, ATmega88, ATmega168 под названием Mini Core. Данная библиотека позволят писать скетчи arduino под более слабые микроконтроллеры чем atmega328p, а это позволяет удешевить стоимость устройства за счет рационального использования мощности.
Почему именно эти микроконтроллеры:
- Данные микроконтроллеры с теми же выводами и архитектурой и имеют минимальные отличия от atmega328p(заменяемые)
- Они дешевые и популярные(некоторые дешевле доллара)
- Они все имеют DIP и TQFP корпуса
Данная библиотека поддерживает все индексы микросхемы кроме PB (т.е. A, P, PA), например не стоит использовать ATMEGA168PB-AU.
Микросхемы по характеристикам:
Atmeg328 | atmega168 | atmega88 | atmega48 | atmega8 | |
Flash | 32 кб | 16 кб | 8 кб | 4 кб | 8 кб |
ОЗУ | 2 кб | 1 кб | 1 кб | 512 б | 1 кб |
ПЗУ | 1 кб | 512 б | 512 б | 256 б | 512 б |
Каналы ШИМ | 6 | 6 | 6 | 6 | 3 |
Пора от теории перейти к практике установим Mini Core, для установки понадобиться Arduino IDE версии 1.6.4 и выше. Если у вас нет Arduino или она старше качаем ее с оф. Сайта.
1. Для установки делаем следующее:
2. Запускаем Arduino IDE
3. Откройте меню « Файл» ⇒ «Настройки» .
В пункте "Дополнительные ссылки для Менеджера плат" нужно вставить следующее:
4. После вышеупомянутых операций закрываем настройки и переходим в меню Откройте меню « Инструменты» ⇒ «Плата:"........."» ⇒ « Менеджер плат...».
5. В менеджере плат выбираем нашу библеотеку и нажимем установка:
Примечание . Если вы используете Arduino IDE 1.6.6, вам может потребоваться закрыть диспетчер плат, а затем снова открыть его.
После установки в меню « Инструменты» ⇒ «Плата:"........."» появятся варианты плат с нашими микроконтроллерами.
Самый удобный вариант для использование данных микроконтроллеров это взять arduino uno с микросхемой в корпусе dip и заменить на нужную. Также можно собрать плату с несложной обвязкой:
Для тех кому нужна распиновка микросхем фото ниже:
Так же не маловажной особенностью является то что авторы добавили возможность выбора кварцевого резонатора по нескольким частотам и параметры контроля питания, что по умолчанию не доступно для стандартных плат. Все манипуляции с данными параметрами производятся в меню-инструменты.
Настройки тактовой частоты:
- 16 МГц внешний генератор (по умолчанию)
- 20 МГц внешний генератор
- 18.432 Mhz внешний генератор *
- 12 МГц внешний генератор
- 8 МГц внешний генератор
- 8 МГц внутренний генератор **
- 1 МГц встроенный генератор
* - частота 18.432 не рекомендуется использовать в скетчах где нужно измерить точное время, но хорошо подойдет для работы с com-портом.
** - внутренний генератор 8МГц сам по себе не точный и частота может меняться от температуры окружающей среды и рабочего напряжения.
Параметры контроля питания:
Atmega 328 | Atmega 168 | Atmega 88 | Atmega 48 | Atmega 8 |
4.3 В | 4.3 В | 4.3 В | 4.3 В | 4.0 В |
2.7 В | 2.7 В | 2.7 В | 2.7 В | 2.7 В |
1.8 В | 1.8 В | 1.8 В | 1.8 В | - |
Отключено | Отключено | Отключено | Отключено | Отключено |
Сайт проекта на github.