我有 Adafruit Flora V3 。我想通过红外遥控器更换连接到PIN 6的LED。
我需要Arduino在函数中不断寻找新的IR命令,然后跳转到新选择的函数。
起初我尝试通过制作变量来解决它。在函数结束时,让我们说彩虹,取变量然后加1.在彩虹检查开始时和变量= 10时执行irdecoder()。这导致我的电路板循环并实际上使IDE上的串行监视器崩溃。
我接下来尝试的是编辑我的代码,就像我在网上找到的以下代码一样,但它没有用。
Player(int x, int y)
:x(x), y(y)
{
//Constructor body
}
当我打开电路板时,彩虹会自动启动并在几秒钟后切换到Bouncing Balls功能而不会按遥控器上的某些东西。
这是我目前的代码:
void loop()
{
int blink = 0 /* if you initialize incomingByte somewhere else, you should probably move this one there too */
while (1) /* loop forever */
{
if (Serial.available()) /* read and process commands on the serial line */
{
incomingByte = Serial.read();
switch (incomingByte)
{
case '1' : /* enable blinking */
{
blink = 1;
break;
}
case '2' : /* disable blinking */
{
blink = 0;
break;
}
}
}
if (blink) /* when enabled, blink leds */
{
digitalWrite(led2, HIGH);
delay(300);
digitalWrite(led2, LOW);
digitalWrite(led1, HIGH);
delay(300)
digitalWrite(led1, LOW);
}
}
}