Пт апр 19, 2019 02:03:31
Пт апр 19, 2019 07:29:00
Пт апр 19, 2019 08:53:10
int ledPin = 13;
int ledPin_2 = 12;
volatile char flag = 0; // флаг состояния
#define flag_0 0
#define flag_1 1
const int SHOW = 8; // SHOW это та самая кнопка, "сидит" на 8-ом пине
void setup()
{ // put your setup code here, to run once:
pinMode(SHOW, INPUT_PULLUP);
pinMode(ledPin, OUTPUT);
pinMode(ledPin_2, OUTPUT);
}
void loop()
{ // put your main code here, to run repeatedly:
if(digitalRead(SHOW) == HIGH && ((flag & (1<<(flag_0))) == 0))
{
flag |= (1<<(flag_0));
flag ^= (1<<(flag_1));
}
if(digitalRead(SHOW) == LOW && ((flag & (1<<(flag_0))) != 0))
{
flag &= (~(1<<(flag_0)));
}
if((flag & (1<<(flag_1))) == 0)
{
digitalWrite(ledPin, !digitalRead(ledPin)); // эту строку можно удалить и связанный сней светодиод
// здесь выполняется один код
// опрос остальных кнопок поместить сюда
// либо тут так называемый "выход в void loop()"
}
if((flag & (1<<(flag_1))) != 0)
{
digitalWrite(ledPin_2, !digitalRead(ledPin_2)); // эту строку можно удалить и связанный сней светодиод
// здесь выполняется другой код
// или сюда "опрос остальных кнопок поместить сюда"
// либо тут так называемый "выход в void loop()"
}
}
Сб апр 20, 2019 09:05:57