目的:寫一個跑馬燈程序,7個燈從左到右不停的輪流點亮,閃爍間隔由滑動條調節。
一、方法1:使用順序結構
使用順序結構,平鋪式順序結構與創建局部變量實現LED流水燈
具體步驟如下:
第一步,選擇順序結構
?選擇成功之后的界面如下:
此時我們看到我們的鼠標變成了一個小矩形。我們點擊鼠標左鍵,可以拉動這個矩形框。
點擊鼠標之后,在程序框圖的界面,我們可以看到有一個灰色的矩形
我們這個程序,要實現7個流水燈的流動。
它的思路是:第一個LED亮了,經過一段時間,第二個LED燈亮,同時第一個LED燈熄滅;經過相同的時間后,?第三個LED亮,同時第二個LED燈熄滅。以此類推,........
所以,我們應該有7個分支。
那我們如何添加分支呢?
此時,我們會發現后面有一個矩形,用鼠標左鍵拖動這個框,能夠調整它的大小?
?拖動界面:
調整后的大小如下:?
用同樣的方法,我們弄7個框出來:
順序框架搭建之后,我們應該做什么呢?我們實現流水燈如果只實現一次,那么我們這么做就可以了,如果我們要重復很多次的流水燈,這樣做肯定是不太正確的。為此,我們應該添加一個循環結構,例如while循環。
第二步,添加循環結構
選擇while循環的方法如下:
?
此時我們可以看到有一個可以讓我們拖動的小矩形:(這個小矩形的作用是:讓我們拖動,調整while循環的大小)
設置好之后的樣子:
?
為循環添加停止按鈕:
連接:
第三步,選擇圓形指示燈
??用同樣的方法,放置七個圓形指示燈
第四步,創建局部變量
?創建局部變量的目的:在下一個分支中控制上一個LED燈的狀態。
因此,第一個LED燈點亮之后,在第二個分支中,我們應該將第一個LED燈熄滅。因此,我們需要創建對第一個LED燈的局部變量賦值為F。如下圖所示:
?給局部變量復制成功:
在第一個LED燈亮的時候,最后一個LED燈應該是熄滅的,所以第一個分支中,應該放入第七個的LED局部變量并給它賦值為F。
所以,為了實現流水燈的效果,我們需要將此分支的局部變量放到下一位去,最終呈現的結果如下:
其實,有一個地方我們還沒做好,那就是給我們的布爾(LED) 賦值為真。
創建成功之后,我們會發現我們這個布爾連接的是一個F,也就是一個假值。
那我們如何修改其為真(T)呢??
修改后的結果如下:
?最終的效果:
第五步,添加延時:
找到延時:
?
?添加延時:
?最終為每個順序結構中添加延時,如下圖所示:
第六步,添加延時時長控制?
需要延時多長,我們可以添加一個可以控制的滑動桿控制。
?添加之后:
?這里表示的是0-10,那接上我們的延時,也只是0-10ms,時間較短,我們應該將其調大一點,如何調整呢?
我們可以點擊最后一位數字10,雙擊它,將其修改為1000。如下圖所示:
?這樣好像滿足了我們的大致需求,但是如果我想調整精細一些呢?我們該如何修改呢?我們可以將這個滑動桿拉長,就實現了我們大致的一個想法。(如果要精細到某個數字,還是建議使用輸入按鍵)
拉動之后的效果如下:
在程序框圖中,我們也可以看到有一個輸入的滑動桿:
?此時我們將延時與其接起來即可:
我們將滑動桿設置為一定的時間,如下圖所示:
運行程序,即可得到相應的效果: