可以使用 WS2812 燈珠。只需要按照交通燈的時間規則,在不同的時間點,往不同的燈珠里面寫數據就行了。本質就是往 WS2812 數組里面寫入燈的亮度數據。對于紅燈,在全6 態的工作過程中,都是保持常亮的。不需要更改時間或者閃爍方式、所以。我們只需要把紅燈亮燈數據保存到固定數組里,根據6 態的順序,依次賦值給 WS2812 即可。對于綠燈和黃燈,要根據時間來閃爍。WS2812沒有黃燈。我們使用紅加綠來表示黃燈。用定時器來控制亮燈時間(包括閃爍延時),同時控制6 6 個狀態的切換。因為是6 6 狀態,每個狀態亮3 種燈,所以,定義出 18 個模式。定時器控制倒計時,時間等于0了,輪流切換 18 種模式。即可完成全6 態交通燈的控制工作。
A12.png (180.77 KB, 下載次數: 39)
下載附件
2021-1-19 18:54 上傳
A11.png (207.81 KB, 下載次數: 37)
下載附件
2021-1-19 18:54 上傳
A13.png (137.76 KB, 下載次數: 37)
下載附件
2021-1-19 18:54 上傳
A14.png (141.55 KB, 下載次數: 36)
下載附件
2021-1-19 18:54 上傳
A15.png (124.19 KB, 下載次數: 38)
下載附件
2021-1-19 18:54 上傳
A16.png (133.14 KB, 下載次數: 49)
下載附件
2021-1-19 18:54 上傳
A17.png (137.8 KB, 下載次數: 40)
下載附件
2021-1-19 18:54 上傳
A18.png (134.93 KB, 下載次數: 35)
下載附件
2021-1-19 18:54 上傳
A19.png (134.8 KB, 下載次數: 38)
下載附件
2021-1-19 18:54 上傳
A20.png (140.26 KB, 下載次數: 42)
下載附件
2021-1-19 18:54 上傳
A21.png (132.88 KB, 下載次數: 34)
下載附件
2021-1-19 18:54 上傳
|