Урок 5. Подключение RGB светодиода и кнопок к Ардуино
Добавлено: 08 мар 2018, 22:40
Урок 5. Подключение RGB светодиода и кнопок к Ардуино
Для данного практического занятия нам понадобятся:
1 - плата контроллера Ардуино УНО
2 - RGB светодиод
3 - кнопки 2 шт
4 - макетная плата
5 - монтажные провода
6 - кабель microUSB > USB
Схема подключения на рисунке ниже:
Создаем программу управления RGB светодиодом и считывания данных с кнопок .
За основу берем пример Digital > Button
Задача:
При нажатии на кнопку 1 светодиод мигает 3 раза с интервалом 1 секунду одним цветом.
При нажатии на кнопку 2 светодиод мигает 3 раза с интервалом 1 секунду разными цветами.
Код программы:
Для данного практического занятия нам понадобятся:
1 - плата контроллера Ардуино УНО
2 - RGB светодиод
3 - кнопки 2 шт
4 - макетная плата
5 - монтажные провода
6 - кабель microUSB > USB
Схема подключения на рисунке ниже:
Создаем программу управления RGB светодиодом и считывания данных с кнопок .
За основу берем пример Digital > Button
Задача:
При нажатии на кнопку 1 светодиод мигает 3 раза с интервалом 1 секунду одним цветом.
При нажатии на кнопку 2 светодиод мигает 3 раза с интервалом 1 секунду разными цветами.
Код программы:
- Код: выделить все
// Подключение RGB светодиода и двух кнопок (C) www.forklg.ru
const int button1 = 10;
const int button2 = 11;
const int ledPin1 = 5;
const int ledPin2 = 6;
const int ledPin3 = 7;
int buttonState1 = 0;
int buttonState2 = 0;
void setup() {
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
pinMode(button1, INPUT_PULLUP); // подключаем ко входам внутренний подтягивающий резистор
pinMode(button2, INPUT_PULLUP);
}
void loop() {
buttonState1 = digitalRead(button1);
buttonState2 = digitalRead(button2);
// если нажата кнопка 1 мигаем 3 раза одним цветом
if (buttonState1 == HIGH) {
digitalWrite(ledPin1, LOW);
} else {
digitalWrite(ledPin1, HIGH);
delay(1000);
digitalWrite(ledPin1, LOW);
delay(1000);
digitalWrite(ledPin1, HIGH);
delay(1000);
digitalWrite(ledPin1, LOW);
delay(1000);
digitalWrite(ledPin1, HIGH);
delay(1000);
digitalWrite(ledPin1, LOW);
delay(1000);
}
// если нажата кнопка 1 мигаем 3 раза разными цветами
if (buttonState2 == HIGH) {
digitalWrite(ledPin1, LOW);
} else {
digitalWrite(ledPin1, HIGH);
delay(1000);
digitalWrite(ledPin1, LOW);
delay(1000);
digitalWrite(ledPin2, HIGH);
delay(1000);
digitalWrite(ledPin2, LOW);
delay(1000);
digitalWrite(ledPin3, HIGH);
delay(1000);
digitalWrite(ledPin3, LOW);
delay(1000);
}
}