大家是否已經熟悉上次所說明的Loop迴圈控制?
這次探奇教室將針對兩顆觸碰感應器的反應做一說明。
還記得Wait for Touch指令?!這是很直覺的命令方塊。
我們也說明這就是迴圈的條件控制,這裡的條件就是『壓下一號觸碰感應器』(如下圖)
其實應該有比較簡潔的寫法,我們可以學習使用Sensor--Touch 指令,這種Sensor相關的指令專門用來處理感應器的狀態。感應器狀態的值可以藉由資料線傳達,這些值可以拿來作為控制程式的條件。
兩個感應器的值就需要經過處理才能使用,我們可以利用邏輯運算,將感應器的邏輯值合併處理。
下圖使用『AND』邏輯運算。A,B兩方都必須為真值,運算之後才會出現真值。
只要AB感應器有一方條件不是真值,那麼就無法跳出迴圈。
最後是一個應用範例,一開始執行程式後,NXT LCD先顯示一個笑臉,接著不斷地叫著GOOD,
程式進入迴圈中不斷循環,同時壓下兩個觸碰感,
邏輯運算後的結果是真值,程式必須跳出迴圈,繼續執行後面的步驟,說Good Bye!
這樣是不是就能等待兩個觸碰感應器同時壓下的狀況。
上一篇Loop迴圈控制利用直覺的方法完成程式,
當理念清楚之後,就可以使用抽象的概念撰寫簡潔快速的程式。
希望大家玩得愉快!
沒有留言:
張貼留言
探奇歡迎大家留言討論!謝謝分享你的意見。