ATtiny44 — низкопотребляющий 8 битный КМОП микроконтроллер с AVR RISC архитектурой. Выполняя команды за один цикл, ATtiny44 достигает производительности 1 MIPS при частоте задающего генератора 1 МГц, что позволяет разработчику оптимизировать отношение потребления к производительности.
Характеристики:
- Высокоэффективные маломощные 8-разрядные микроконтроллеры AVR
- Прогрессивная RISC-архитектура
— Эффективный набор инструкций: 120 инструкций, большинство из которых выполняются за один машинный цикл
— 32 x 8-разр. регистров общего назначения
— Полностью статическая работа - Энергонезависимые памяти программ и данных
— 4 кбайт внутрисистемно-программируемой флэш-памяти программ характеризующейся износостойкостью 10 тысяч циклов чтения/записи
-256 байт внутрисистемно-программируемого ЭСППЗУ , характеризующегося износостойкостью 100000 циклов записи/стирания
— 256 байт встроенного статического ОЗУ
— Программируемая блокировка доступа к данным во флэш-памяти и ЭСППЗУ - Встроенные периферийные устройства
— Два 8 и 16-разрядных таймера-счетчика с двумя каналами ШИМ. 8/16-разрядный таймер-счетчик с предделителем и двумя каналами ШИМ в каждом
— 10-разрядный АЦП
8 несимметричных каналов
12 пар дифференциальных каналов АЦП с программируемым усилением (1x, 20x)
— Программируемый сторожевой таймер с отдельным встроенным генератором
— Встроенный аналоговый компаратор
— Универсальный последовательный интерфейс - Специальные микроконтроллерные функции
— Встроенная отладочная система debugWIRE
— Внутрисистемное программирование через порт SPI
— Внешние и внутренние источники прерываний
— Экономичные режимы работы: холостой ход (Idle), снижение шума АЦП, дежурный (Standby) и снижения потребляемой мощности (Power Down)
— Усовершенствованная схема сброса при подаче питания
— Программируемая схема детектора снижения напряжения питания
— Встроенный калиброванный генератор
— Встроенный датчик температуры - Ввод-вывод и корпуса
— 14-выводные корпуса PDIP и SOIC, 20-выводной корпус QFN/MLF
— 12 программируемых линий ввода-вывода - Рабочее напряжение:
— 1.8 — 5.5В ATtiny44V
— 2.7 — 5.5В для ATtiny44 - Градации по быстродействию:
— ATtiny44V: 0 — 4 МГц при напряжении питания 1.8 — 5.5В, 0 — 10 МГц при напряжении питания 2.7 — 5.5В
— ATtiny44: 0 — 10 МГц при напряжении питания 2.7 — 5.5В, 0 — 20 МГц при напряжении питания 4.5 — 5.5В
Микроконтроллер ATtiny44 отлично подходит для маленьких и дешевых проектов, а поддержка средой программирования Arduino IDE заметно упрощает работу с микроконтроллером.
Для поддержки ATtiny44 в Arduino IDE необходимо выполнить несколько простых операций:
- Добавление поддержки платы
Откройте в Arduino IDE вкладку Файл > Настройки и добавьте ссылку для менеджера плат
https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json
Далее перейдите во вкладку Инструменты > Плата > Менеджер плат
Выберите и установите пакет новых плат ATtiny45, ATtiny85, ATtiny44, ATtiny84
Далее в Инструменты > Плата выберите плату ATtiny44.
Установите параметры платы как показано на скриншотах:
- Для прошивки скетча Вам понадобится программатор USBAsp
Схемы подключения №1
Распиновка программатора USBAsp
По умолчанию фьюзы установлены для использования микроконтроллера с внешним тактированием, то есть с использованием кварцевого резонатора. По этому при подключении программатора к микроконтроллеру необходимо использовать схему №2.
В настройках платы нужно выбрать поддержку Attiny44 и установить частоту 8, 16 или 20 MHz external, в зависимости частоты Вашего кварцевого резонатора.. Далее необходимо выставить нужные фьюзы для микроконтроллера, чтобы он всегда работал на выбранной Вами частоте. Для этого в настройках Arduino IDE выберите программатор USBasb и нажмите Инструменты > Записать загрузчик. Эту операцию необходимо проводить всего один и снова повторить если Вы будете менять частоту работы микроконтроллера.
Для использования внутреннего тактового генератора нужно выбрать параметр 1 или 8 MHz internal, далее нажмите Инструменты > Записать загрузчик. После чего можно отсоединить кварцевый резонатор (схема №1)
Для загрузки скетча в настройках Arduino IDE выберите программатор USBasb и во вкладке Скетч нажмите на Загрузить через программатор.
Для примера, можно загрузить простой скетч мигания светодиода, к выводу 10 (PА3 / D3) контроллера подключите светодиод через резистор 200 Ом.
void setup() { pinMode(3, OUTPUT); } void loop() { digitalWrite(3, HIGH); delay(1000); digitalWrite(3, LOW); delay(1000); }
После загрузки скетча, светодиод начнет мигать.
Для нормальной работы микроконтроллера необходимо подать напряжение VCC через резистор 10 кОм на вход RST микроконтроллера.