Микроконтроллер видит мир через АЦП, а управляет мощной нагрузкой через транзисторы. Массивы и константы делают скетч короче и понятнее.
Что нужно знать
- Аналоговый сигнал — любые значения; цифровой — конечный набор. АЦП: дискретизация (через равные промежутки) + квантование (до уровней).
- Разрешение АЦП: 5 В / 1024 ≈ 4,9 мВ на шаг.
- Конденсатор: τ = R · C; за τ — ~63 % заряда, за 5τ — практически полностью.
- Нагрузку (двигатель) — через MOSFET; параллельно обмотке — защитный диод. Ток вывода платы — десятки мА.
- Константы: const int N = 3; #define LED 13. Массив: int notes[] = {262, 294, 330}; перебор for (int i = 0; i < N; i++).
- Длительность мелодии = число нот · (звук + пауза).
- Семисегментный индикатор: сегменты a–g (+ точка); цифра 1 — b и c, цифра 8 — все семь.
- Дребезг — пауза, проверка устойчивости или RC-фильтр. delay блокирует программу — для параллельных задач используют millis() или прерывания.
Где чаще всего ошибаются
- Подключать двигатель прямо к выводу платы без транзистора и диода.
- Считать, что конденсатор заряжается за одну постоянную времени полностью.
- Хранить ноты мелодии в десятке отдельных переменных вместо массива.
- Ставить длинный delay в программе, которая должна реагировать на кнопки.
Проверить себя
По этой же теме курса есть проверочная работа из 15 заданий на 25 минут. Проверка автоматическая, результат виден сразу — и по работе целиком, и по каждой теме.