Найти в Дзене
Радиотехника

ATtiny44 Arduino IDE

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
-2

Далее перейдите во вкладку Инструменты > Плата > Менеджер плат

-3

Выберите и установите пакет новых плат ATtiny45, ATtiny85, ATtiny44, ATtiny84

Далее в Инструменты > Плата выберите плату ATtiny44.

Установите параметры платы как показано на скриншотах:

-4
-5
  • Для прошивки скетча  Вам понадобится программатор USBAsp
-6

Схемы подключения №1

Схемы подключения №2
Схемы подключения №2

Распиновка программатора USBAsp

-8
-9

По умолчанию фьюзы установлены для использования микроконтроллера с внешним тактированием, то есть с использованием кварцевого резонатора. По этому при подключении программатора к микроконтроллеру необходимо использовать схему №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 микроконтроллера.
Для нормальной работы микроконтроллера необходимо подать напряжение VCC через резистор 10 кОм на вход RST микроконтроллера.
ATtiny44 Arduino IDE — rcl-radio.ru