Есть программа (действующая) для Ардуино (на крайняк можно просто на Си, но для меня наличие digitalRead иже с ними - спасение: нет ни времени ни мозгов учиться обрабатывать биты операциями над байтами), обрабатывает нажатые кнопки. Блок схему пробую прикрепить. Все кнопки, кроме одной, с фиксацией, поэтому логика работы элементарная - пока кнопка нажата выполняется соответсвующий блок. Но одна кнопка без фиксации. Хочется (требуется), чтобы при кратковременном нажатии этой кнопки бесконечно выполнялся соответсвующий ей блок кода, при повторном нажатии - выход в void loop(). "Перекопипэйстил" (ну с "разбором полетов" - попыток адапции под мои нужды) кучу вариантов из серии "Работа с кнопками на Ардуино", но беда в том, что все они ориентированы на включние-выключние светодиода и логика, работающая для этого, не работает в моей программе потому что включение-выключения светодиода обеспечивается просто входом или не входом в соответсвующую часть кода, а мне надо, чтобы.... Блин, пишу и очередной раз понимаю, что, как раз таки, должно работать и в моем случае, но никак не получается у меня.
В общем, вот код (фрагменты, относящиеся к вопросу), работающий на кнопке с фиксацией, помогите, плиз, сделать из него для "БЕЗ фиксации".
.....
const int SHOW = 8; // SHOW это та самая кнопка, "сидит" на 8-ом пине
......
pinMode(SHOW, INPUT_PULLUP);
void loop ()
{
if (digitalRead (SHOW) == 0)
{
здесь - код, выполняемый при нажатой кнопке SHOW
............
............
}
}
- Вложения
-
- Sahulik blok shema.JPG
- (118.01 КБ) 224 скачивания

