在另一个功能中根据值更改功能

时间:2017-02-10 22:49:42

标签: arduino

我有 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);
                }
        }
}

0 个答案:

没有答案