Используя скетч предыдущего занятия - Управление сервоприводом и скетч управления яркостью светодиода:
//Определим пины
const int button1 = 9; //Пин для кнопки № 1 – 9
const int button2 = 10; //Пин для кнопки № 2 – 10
const int ledLamp = 11; //Пин для светодиода – 11
int bright = 0; //Здесь будем хранить текущее значение яркости
boolean lastButton1 = LOW; //Последнее значение кнопки № 1 (ВЫКЛ)
boolean lastButton2 = LOW; //Последнее значение кнопки № 2 (ВЫКЛ)
void setup() {
pinMode(button1, INPUT); //Установим кнопку на ввод информации
pinMode(button2, INPUT); //Установим кнопку на ввод информации
pinMode(ledLamp, OUTPUT); //Светодиод на вывод
}
void loop() {
boolean valueButton1 = digitalRead(button1); //Считать значение кнопки №1
boolean valueButton2 = digitalRead(button2); //Считать значение кнопки №2
delay(10); //Программная задержка для избежания дребезга сигнала
if (valueButton1 == HIGH && lastButton1 == LOW)//Если нажали кнопку №1
{
lastButton1 = HIGH; //Последнее значение кнопки № 1 (ВКЛ)
bright = bright + 50; //Увеличим яркость лампочки
}
else if (valueButton2 == HIGH && lastButton2 == LOW)//Кнопка № 2
{
lastButton2 = HIGH; //Последнее значение кнопки № 2 (ВКЛ)
bright = bright - 50; //Уменьшим яркость
}
else //Иначе – нажатий не было, считаем состояние кнопок
{
lastButton1 = valueButton1;
lastButton2 = valueButton2;
}
if (bright < 0) //Если яркость опустилась ниже 0, установим ее в 0
{
bright = 0; //Яркость может быть только от 0 до 255
}
else if (bright > 255) //Если поднялась больше 255
{
bright = 255; //Установим ее в 255
}
analogWrite(ledLamp, bright); //Передадим значение яркости на светодиод
}
напишите скетч управления яркостью светодиода с помощью пульта дистанционного управления.
Соберите схему, состоящую из ИК приёмника и светодиода.
Результат работы в виде скетча для Arduino и фото или видео работы схемы высылайте на почту: shkadov.v@yandex.ru