jarrys2 發表於 2019-4-12 16:03:30

請問如何控制多led秒數?

請問如何控制多led秒數?

arduino uno

例如
led1每1秒閃爍
led2每2秒閃爍
led3每3秒閃爍

超新手 發表於 2019-4-12 16:40:41

本帖最後由 超新手 於 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:32

謝謝~
頁: [1]
查看完整版本: 請問如何控制多led秒數?