Я хочу управлять двумя светодиодами на плате Arduino с помощью программы обработки. Если я нажму любую точку в верхней половине экрана, загорится светодиод (контакт 13), а если я нажму точку в нижней половине экрана, загорится другой светодиод (контакт 12). Итак, я запрограммировал 2 кнопки с 2 светодиодами (контакты 12 и 13), и независимо от того, какую кнопку я нажимаю, всегда включается контакт 13. Я провел отдельный эксперимент, только с одной кнопкой, заменив только контакт 13 на 12. Не работает, всегда включается пин 13.
КОД ARDUINO:
boolean estado;
boolean estado1;
byte a;
void setup()
{
Serial.begin(9600);
pinMode(12, OUTPUT);
digitalWrite(12, LOW);
pinMode (13, OUTPUT);
digitalWrite (13, LOW);
randomSeed(analogRead(0));
estado = false;
estado1 = false;
}
void loop()
{
delay(100);
Serial.write(random(40));
while(Serial.available() > 0)
{
a = Serial.read();
if (a == 0)
{
estado = !estado;
digitalWrite(12, estado);
}
if (a == 1)
{
estado1 = !estado1;
digitalWrite(13, estado1);
}
}
}
КОД ОБРАБОТКИ:
void compruebaBoton()
{
if( mouseY < 640)
{
try
{
ons.write(0);
}
catch(Exception ex)
{
estado = 4;
error = ex.toString();
println(error);
}
}
if( mouseY > 640)
{
try
{
ons.write(1);
}
catch(Exception ex)
{
estado = 4;
error = ex.toString();
println(error);
}
}
}
код, который я реализую, соответствует тому, что я пытаюсь сделать?