3 светодиода и 3 кнопки
- Сообщения: 6
- Зарегистрирован: Сб май 10, 2014 20:26:49
Привет всем ! Пишу программу на С под atmega328p и столкнулся с проблемой. Мне все понятно когда нажимаеш на кнопку светодиод загорается, еще раз нажимаеш светодиод погасает, а как бы мне сделать так чтобы нажимая на 1 кнопку светодиод 1 загорался , нажимая на 2 кнопку светодиод 2 загорался а светодиод 1 погас, и все тоже самое с 3 кнопкой и с 3 светодиодом. Помогите пожалуйста я пока новичек в этом деле
- Реклама
- Сообщения: 830
- Зарегистрирован: Пт ноя 16, 2007 11:21:37
Алгоритм простой:
Опрашиваешь кнопки и получаешь код нажатой кнопки.
Примени оператор swich, ненужные светодиоды гаси маской.
Опрашиваешь кнопки и получаешь код нажатой кнопки.
Примени оператор swich, ненужные светодиоды гаси маской.
- Сообщения: 758
- Зарегистрирован: Вс фев 10, 2013 15:26:00
Антидребезг.нажимаеш на кнопку светодиод загорается, еще раз нажимаеш светодиод погасает
Чем помочь-то? Привет!
- Сообщения: 6
- Зарегистрирован: Сб май 10, 2014 20:26:49
а как бы мне сделать так чтобы нажимая на 1 кнопку светодиод 1 загорался , нажимая на 2 кнопку светодиод 2 загорался а светодиод 1 погас, и все тоже самое с 3 кнопкой и с 3 светодиодом. Помогите пожалуйста я пока новичек в этом делеnirq писал(а):Антидребезг.нажимаеш на кнопку светодиод загорается, еще раз нажимаеш светодиод погасает
Чем помочь-то? Привет!
И следом гасить ненужые.winston1777 писал(а):Мне все понятно когда нажимаеш на кнопку светодиод загорается
Код: Выделить всё
void main(void)
{
delay_ms(30);
old_knopka1= knopka1;
old_knopka2= knopka2;
old_knopka3= knopka3;
knopka1= PINa.b;
knopka2= PINc.d;
knopka3= PINe.f;
if(old_knopka1 && !knopka1)
{
LED1= 1;
LED2= 0;
LED3= 0;
}
if(old_knopka2 && !knopka2)
{
LED1= 0;
LED2= 1;
LED3= 0;
}
if(old_knopka && !knopka)
{
LED1= 0;
LED2= 0;
LED3= 1;
}
}Docendo discimus
- Реклама
http://radiokot.ru/forum/viewtopic.php?f=61&t=79801
http://radiokot.ru/forum/viewtopic.php?f=61&t=39341
http://radiokot.ru/forum/viewtopic.php?f=61&t=39341
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]


