Блок 1. Введение в Arduino
1.1. Устройство платы Arduino. Разные варианты Arduino и совместимых плат. Использование Arduino IDE. Организация каталогов, настройки. Написание простейшего скетча. Использование цифровых портов ввода/вывода.
1.2. Использование аналоговых портов. Работа с аналоговыми датчиками. ШИМ. Управление двигателями.
Блок 2. Продолжение знакомства с Arduino
2.1. Прерывания. Работа с энкодерами. Использование таймера.
2.2. Общие приёмы работы с памятью. Типы данных. Указатели. Работа со строками.
2.3. Организация памяти AVR-контроллеров. Использование программной памяти.
2.4. Использование энергонезависимой памяти EEPROM.
Блок 3. Взаимодействие Arduino с цифровыми устройствами
3.1. Последовательный интерфейс. Аппаратная и программная реализация. Протокол Firmata.
3.2. Интерфейс IIC. Принципы работы. Использование Arduino в качестве ведущего и ведомого устройства.
3.3. Интерфейс SPI. Принципы работы. Примеры использования.
3.4. Программная реализация простых интерфейсов на примере 1-Wire.
Блок 4. Углублённое изучение Arduino
4.1. Arduino IDE изнутри. Как происходит компиляция и загрузка скетча. Ограничения Arduino IDE. Работа без использования Arduino IDE.
4.2. Работа со сложными проектами. Написание библиотек.
4.3. Использование архитектуроспецифичных функций avr-libc. Энергосбережение. Сторожевой таймер.