如何控制隨機LED燈滅時間

一組隨機亮的LED燈,如下:
(我是用for迴圈做20次隨機,隨機數出來1、2、3、4分別對應控制四顆LED燈)


效果出來是有的,不過和我原先想要的結果有所不同!!!

遇到的問題是:
若是出現連續重複的一個燈,這樣我在前置面板看燈亮的時候就不會發現是重複的燈了。
我是希望可以改善成,亮過一次後的LED燈可以有timing控制讓它熄滅,就算接著隨機又是重複這顆燈時,也可以知道是連續閃第二次的。

1.關於你現有的程式有全部都不亮的狀況(+1之後等於5),是你要的狀況嗎?

2.你只是希望這次亮的燈號與上次相同時先全部都不亮,還是每次都先全部都不亮?還有你希望不亮的Timing是多少?50ms?100ms?200ms?

每次都先全部都不亮是比較好寫,依你現有的程式(等於5時都不亮,你可將x4改為x3就不會有5的狀況)修改給你參考.

![](upload://hOJisMNZDLy0XOnkzFcl3bkoQ0R.jpeg)

[QUOTE=DonWang]

1.關於你現有的程式有全部都不亮的狀況(+1之後等於5),是你要的狀況嗎?

2.你只是希望這次亮的燈號與上次相同時先全部都不亮,還是每次都先全部都不亮?還有你希望不亮的Timing是多少?50ms?100ms?200ms?

[/QUOTE]

1. 是的,有全不亮的狀態。

2. 您這兩種的敘述,呈現的效果應該是類似,可能後者比較像是我需要的情況
主要就是要有區別若連續兩顆燈出現的話,可以有閃動一樣以方便從前置面板就觀察到。能做出這種效果,都可以。
Timing的話我是想可依整個隨機的Timing做調整,像是設定隨機1秒變動一次的話,設定關掉燈的時間可以是0.5秒這樣。

只是希望這次亮的燈號與上次相同時先全部都不亮,建議用布林矩陣的方式比較好寫.底下程式給你參考.不論之前的程式還是底下的程式,都還是有個小瑕疵,就是全不亮的狀況若連續發生了也不易發現,建議取消(改x3)或加燈號5.

![](upload://hMo7kMf4KeWRiUxiqSNSRGki8TM.jpeg)

謝謝DonWang,用您的方法解決此一問題了!!
也聽從您的建議,改成x3讓它不會出現第五種(全不亮)狀態!!
這點我倒是之前都沒有注意到, 以為只有第一次啟動時才有全不亮的狀態!!

謝謝你喔!!