Плата ATtiny88. Начало работы

Сабж


Из-за кризиса полупроводников цены на микроконтроллеры очень сильно выросли: 2 бакса с бесплатной доставкой за нашу любимую Arduino Nano превратились в… 8 баксов! Спасением может стать esp8266 (урок про неё), но не всегда она может заменить нанку. И тут на сцену выходит плата на базе МК ATtiny88:

Всего 1.5$, а на вид – полный аналог нанки! Так ли это? Рассмотрим подробнее.

Купить на Aliexpress


Дёшево купить плату на ATtiny88 можно тут: ссылка, ссылка, ссылка, ссылка.

Возможности


Плата:

  • 16 МГц кварц
  • ISP хэдер для программатора
  • USB-UART отсутствует, USB подключен к микроконтроллеру на пины 0 и 1
  • Соответственно прошивка по USB, а также работа в качестве HID устройства

ATtiny88 имеет на борту:

  • Flash память: 8 кБ (6780 Байт с учетом загрузчика)
  • SRAM память: 512 Б
  • EEPROM память: 64 Б
  • Таймеры: 1х 8 Бит без ШИМ + 1х полноценный 16 БИТ
  • GPIO: 26 пинов
  • Прерывания: 2х INT, все пины – PCINT
  • ШИМ: 2 пина
  • АЦП: 8 пинов, внешнего опорного нет
  • Интерфейсы: I2C, SPI

Не имеет на борту:

  • Аппаратный UART, про Serial можно забыть
  • Аппаратное умножение. Вычисления будут медленнее

Начало работы


Нужно установить ядро ATtinyCore:

  • Запустить Arduino IDE, перейти в Файл/Настройки/
  • В окошко “Дополнительные ссылки…” Вставить http://drazzy.com/package_drazzy.com_index.json
  • Нажать ОК
  • Перейти в Инструменты/Плата/Менеджер плат… Начать вводить в поиске “attiny”. Выбрать и установить ATTinyCore
  • Теперь в списке плат Инструменты/Плата/ появится семейство плат ATTinyCore! Выбираем ATtiny88 (Micronucleous, MH-ET t88 w/16MHz CLOCK). Настройки оставляем стандартные, подробнее о них написано на странице ядра (ссылка выше).
  • Также нужно установить драйвера: скачать можно по этой ссылке, на официальном GitHub проекта (в разделе Релизы, вот прямая ссылка на архив), либо с моего FTP. Драйвера есть для Win, MacOS и Linux.
  • Пользователям Linux читать здесь

Прошивка загружается следующим образом: ПЛАТУ НЕ ПОДКЛЮЧАЕМ, ПОРТ НЕ ВЫБИРАЕМ, нажимаем загрузка, ждём компиляции. Появится надпись “подключите плату”. Втыкаем плату в USB и прошивка загружается.

Распиновка


Особенности


  • Нумерация пинов в ядре отличается от привычной Arduino: в программе константы A0.. A7 это числа 0.. 7
    • Цифровые пины – по номеру пина. digitalRead(15) – пин 15digitalRead(17) – пин A6
    • Аналоговые пины – по маркировке на плате или номеру АЦП. Пример с A0: analogRead(A0) или analogRead(0)
  • Для работы Serial придётся использовать встроенный SoftwareSerial (на любые пины) и внешний USB-UART преобразователь
  • Для имитации HID устройства (клавиатура, мышь) можно использовать библиотеку EasyHID, она поддерживает эту плату начиная с версии 2.0
  • Watchdog не работает, если прошит стандартный USB загрузчик

Полезные страницы


  • Набор GyverKIT – большой стартовый набор Arduino моей разработки, продаётся в России
  • Каталог ссылок на дешёвые Ардуины, датчики, модули и прочие железки с AliExpress у проверенных продавцов
  • Подборка библиотек для Arduino, самых интересных и полезных, официальных и не очень
  • Полная документация по языку Ардуино, все встроенные функции и макросы, все доступные типы данных
  • Сборник полезных алгоритмов для написания скетчей: структура кода, таймеры, фильтры, парсинг данных
  • Видео уроки по программированию Arduino с канала “Заметки Ардуинщика” – одни из самых подробных в рунете
  • Поддержать автора за работу над уроками
  • Обратная связь – сообщить об ошибке в уроке или предложить дополнение по тексту (alex@alexgyver.ru)
5/5 - (4 голоса)
Назад Processing. Видео уроки
Подписаться
Уведомить о
guest
18 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии