Mind+實例5——打地鼠遊戲

*學習目標:

1.元件

      紅外接收模塊LED,蜂鳴器

2.Mind+ 程序模塊
        設置數字引腳輸出
      讀取引腳紅外接收值
      設置引腳喇叭音調
      串口輸出
      變量
3.程序設計
       順序結構
       循環結構
      
條件循環
        
      在我的同齡人中,幾乎所有人都玩過一個很有意思的遊戲,它叫打地鼠。現在我將這個遊戲介紹給你。在你的面前有五六個小洞,洞的裏面藏着地鼠。它們會時不時地躥出來,企圖去周圍的莊稼裏偷吃。這時你就要用手中的小錘子把它們敲回洞裏去,以免莊稼受到傷害。一開始它們一隻一隻地出現,到了後來,它們越來越猖狂,兩三隻同時往外冒,考驗你的反應速度的時候到了……

本節任務
任務 1——打地鼠初步

1. 實現功能
        使用套件中的 3 個 LED 燈代表 3 個洞,當燈亮時代表有地鼠從洞中鑽出。讓遙控器上的 3 個按鍵對應三個洞,按下按鍵即代表用錘子砸向哪個洞。
 
        本任務中要求完成簡單的打地鼠遊戲 —— 一次出現一隻地鼠,玩家要在規定的時間內按下相應按鍵。由於這僅僅是一個初步的遊戲,所以即使玩家沒有在規定的時間內按下相應按鍵,遊戲還是會繼續進行——當前亮着的燈熄滅,又有新的燈亮起。


2. 硬件連接

 

         3 個 LED—8, 9, 10;紅外接收模塊—2
3. 程序編寫

        程序中使用遙控器上的1、2、3按鍵依次控制8、9、10引腳。

任務 2——打地鼠進階

1. 實現功能

        加入聲音,打中高音,打錯低音 。
 
        在打地鼠初步的遊戲中,你可能會發現,有時候,明明按下了對的按鍵,但是對應的 LED 燈還是亮着的。這很有可能是因爲,兩次生成的隨機數是一樣的。也就是說,在你按下按鍵後,燈其實熄滅了,但是進入了下一輪循環後又立刻亮了起來。對於這個問題,有兩種解決辦法,一種是在程序的末尾加一個延時的模塊,讓所有燈保持熄滅狀態一段時間,這樣玩家就能夠注意到下一輪即將開始。
 
        還有一種辦法是,將蜂鳴器與主控板連接,當玩家打中地鼠,就讓蜂鳴器播放一個很短的音,如果沒打中,就播放另外一個音,以此達到向玩家反饋結果的目的。
 
        這兩種方法都能夠達到目的,也有自己的優缺點,用哪一種,請你們自己做決定吧。  
2. 硬件連接
      3 個 LED—8, 9, 10;蜂鳴器—5;紅外接收模塊—2
3. 程序編寫
 蜂鳴器的音高是通過頻率進行調節的,我們實現了讓蜂鳴器根據玩家設定的頻率播放不同聲音的功能。不足之處在於,播放出來的聲音不是很好聽。不過我們至少可以達到播放不同音高的聲音以提醒玩家的目的了。

課後作業

1. 實現功能
        加入闖關計分功能,關卡數和分數在液晶屏上顯示
 
2. 硬件連接
        在任務 2 的硬件連接基礎上增加液晶顯示屏模塊,連接方式參考項目十二(硬件連接)
 
3. 程序編程
         參考本節任務 2 中的程序
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章