[爆卦]arduino for迴圈是什麼?優點缺點精華區懶人包

為什麼這篇arduino for迴圈鄉民發文收入到精華區:因為在arduino for迴圈這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者katuski (牙月)看板Electronics標題[問題] arduino的迴圈輸出程式問題...


請教各位先進。

俺已經寫好arduino的三個輸出。

EX

2號
analogWrite(2,a1);
delay(100);
analogWrite(2,0);
delay(100);
以下2000行...

3號
analogWrite(3,a1);
delay(200);
analogWrite(3,0);
delay(250);
以下2000行...

4號
analogWrite(4,a1);
delay(150);
analogWrite(4,0);
delay(500);
以下2000行...

但是因為個別輸出的時間點都不同,就像是合奏的樂譜,
如果只寫在一個loop裡面的話,
用delay去控制要刻很久。

所以想請問有啥偷吃步的寫法,可以合併進loop裡面。

--





NOW LOADING...

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.171.9.172 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Electronics/M.1634806015.A.AA1.html
warfjragon: 把dealy時間紀錄到陣列裡 10/21 17:06
HiJimmy: 定時器控制 時序控制 10/21 18:04
nissptt: 有別人寫好TIMER函數,用millis自己寫,應該也可以 10/21 22:53
nissptt: 用寫好的比較省事! 10/21 22:54
nissptt: 也許讓arduino跑分時多工RTOS也可以 10/21 23:00
nissptt: 下面"不同步"閃爍例子,讓我們延續使用delay的壞習慣, 10/21 23:21
nissptt: 但又不會卡在一個loop的delay上。 10/21 23:21
nissptt: https://youtu.be/BuRGD3x-QDM 10/21 23:21
nissptt: 這是super loop和虛擬多工的差異(閃爍在影片末) 10/21 23:24
nissptt: 只用一個arduino 能"合奏"小星星和小甜甜,應該很香了 10/21 23:30
nissptt: https://youtu.be/m6dq6UovkNE 10/21 23:51
nissptt: 上例是讓arduino多工的例子,當然你要用LED以外輸出呈現 10/21 23:55
nissptt: 也可以。 10/21 23:55
nissptt: 下例LED就和你要的效果幾乎一樣, 10/21 23:55
nissptt: https://youtu.be/_3-HgcARqvY 10/21 23:55
nissptt: "山姆來分享"有教如何上RTOS,他和以上例子都是跑FreeRTO 10/21 23:58
nissptt: S 10/21 23:58
katuski: 大感謝,俺研究一下。 10/22 16:40
mmonkeyboyy: 這叫time division multiplexing tdm 從這找就很多了 10/22 21:00
nissptt: 以下是用millis 的範例,他講解得很清楚 11/04 01:24
nissptt: https://youtu.be/Ol6x5mjeu4w 11/04 01:24

你可能也想看看

搜尋相關網站