Тема урока: Программирование Arduino: управление светодиодами
Цель:
- Научить детей основам программирования Arduino для управления светодиодами.
- Создать программу, которая зажигает лампочку, затем заставляет ее моргать, и в конце добавляет вторую лампочку, которая будет моргать асинхронно с первой.
Ход урока:
1. Введение
- Объяснить учащимся, что такое Arduino и как его можно использовать для управления различными устройствами.
- Рассказать о платформе Wokwi.com, где они будут программировать Arduino виртуально.
- Обсудить, как работают светодиоды, и зачем необходимы резисторы для их защиты.
2. Подключение первой лампочки
- Объяснить схему подключения первого светодиода к Arduino:
- Катод (короткая ножка) подключен к GND.
- Анод (длинная ножка) подключен через резистор к цифровому пину 13.
- Пример программы для зажигания светодиода:
void setup() {
pinMode(13, OUTPUT); // Устанавливаем пин 13 как выход
}
void loop() {
digitalWrite(13, HIGH); // Включаем светодиод
}
- Обсудить код и его смысл, акцентировав внимание на функциях
setup()иloop().
3. Лампочка моргает
- Объяснить, как заставить светодиод моргать.
- Добавить в код паузу с помощью функции
delay(). Пример программы для мигания светодиода:
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH); // Включаем светодиод
delay(1000); // Ждем 1 секунду
digitalWrite(13, LOW); // Выключаем светодиод
delay(1000); // Ждем 1 секунду
}
- Запустить код в эмуляторе Wokwi и обсудить, как работает функция
delay().
4. Подключение второй лампочки
- Подключить второй светодиод к пину 12.
- Катод второго светодиода также подключается к GND.
- Анод второго светодиода через резистор подключается к пину 12.
- Изменить программу так, чтобы второй светодиод моргал асинхронно с первым. Пример программы для асинхронного моргания:
void setup() {
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH); // Включаем первый светодиод
delay(1000); // Ждем 1 секунду
digitalWrite(13, LOW); // Выключаем первый светодиод
digitalWrite(12, HIGH); // Включаем второй светодиод
delay(500); // Ждем 0.5 секунды
digitalWrite(12, LOW); // Выключаем второй светодиод
delay(500); // Ждем 0.5 секунды
}
- Запустить код и посмотреть, как оба светодиода работают асинхронно.