Robofun 機器人論壇

標題: 請問如何控制多led秒數? [打印本頁]

作者: jarrys2    時間: 2019-4-12 16:03
標題: 請問如何控制多led秒數?
請問如何控制多led秒數?

arduino uno

例如
led1每1秒閃爍
led2每2秒閃爍
led3每3秒閃爍
作者: 超新手    時間: 2019-4-12 16:40
本帖最後由 超新手 於 2019-4-12 16:43 編輯

最簡單的方法就是
int c1, c2, c3;
void loop() {
    delay(1);
    if(++c1 >= 1000) {
       c1 = 0;
       digital(LED1, HIGH);
    } else if(c1 == 500) {
       digital(LED1, LOW);  
    }
    if(++c2 >= 2000) {
       c2 = 0;
       digital(LED2, HIGH);
    } else if(c2 == 1000) {
       digital(LED2, LOW);  
    }
    if(++c3 >= 3000) {
       c3 = 0;
       digital(LED3, HIGH);
    } else if(c3 == 1500) {
       digital(LED3, LOW);  
    }
}

如果程式很多, 用 delay(1) 時間會不準
可以改用  millis()
或是用計時器中斷也是個方法



作者: jarrys2    時間: 2019-4-13 01:00
謝謝~




歡迎光臨 Robofun 機器人論壇 (https://www.robofun.net/forum/) Powered by Discuz! X3.2