大 創 實 驗 室
第三章 科創板-鍵位控制第三章第2課 科創板-鍵位控制 1、學會使用按鍵驅動板載蜂鳴器工作; 2、通過編程實現按鍵控制OLED屏中的方塊移動。 1 1、鍵位發聲 我們首先用按鍵控制蜂鳴器執行簡單的功能:當按鍵上按下時,蜂鳴器播放聲音1秒,然后停止發聲。 認識“結束聲音”代碼塊 “結束聲音”代碼塊位于“執行器”模塊中,它的功能是終止蜂鳴器的發聲。 按鍵控制蜂鳴器發聲程序如下: 將上圖程序下載到科創板,當按鍵上按下時,蜂鳴器播放聲音1秒,然后停止發聲。 2、函數應用 當我們的程序中需要多次用到一組相同的代碼時,我們可以用函數來實現,每次用到這段代碼時調用即可。 認識“創建函數”代碼塊 “創建函數”代碼塊位于“函數”模塊中,它的功能是創建一個不帶輸出值的函數模塊。 在函數中可以設置變量,點擊藍色設置按鈕,彈出參數框,將參數X拖到右邊輸入下邊即可 下面我們以一個實際運用來說明一下“創建函數”代碼塊的使用方法: 上面的函數表示:每間隔x微秒(1秒=1000毫秒=1000000微秒),蜂鳴器電平切換一次,即表示生成頻率為1000000/2x的聲音信號。 當我們創建好函數代碼時,在“函數”模塊中會出現一個新的代碼塊,“執行函數參數X”代碼塊,它的作用是執行用戶自定義參數為X的函數塊。 通過上、下、左、右四個按鍵(對應的管腳分別為:12、23、36、2,其中按鍵左的邏輯是反的),控制蜂鳴器發出不同頻率聲音的程序: 運行上面的程序,我們就可以通過點擊不同按鍵控制蜂鳴器發出不同頻率的聲音了。 3、程序中斷命令 “中斷”是指科創板在運行程序的過程中,由于出現一些特別的情況,停止當前的程序去執行新的程序,等處理完成后再返回原來被暫停的程序繼續執行。 中斷可以類比生活中的例子:比如你正在看電視,突然門口門鈴響起,有快遞送上門,所以你就暫??措娨暼ツ每爝f,等收完快遞后繼續看電視。在這個過程中,看電視是你主要的任務(主程序),而收快遞就是一個中斷過程,門鈴響起就是一個中斷的標志(觸發中斷的條件)。中斷示意圖如下: 認識“中斷”代碼塊 “中斷”代碼塊位于“輸入/輸出”模塊中,它的功能是設置指定管腳的中斷模式為上升、下降或者改變,并執行回調函數。 中斷觸發的條件有三種:上升、下降和改變。上升模式為當管腳由低電平變為高電平時,觸發中斷;下降模式為當管腳由高電平變為低電平時,觸發中斷;改變模式為當管腳的電平發生變化的時候,觸發中斷。 這里我們展示一個實際中斷函數的程序,做完這個,大家就會更深入的了解中斷的含義了,程序如下: 此程序設置的中斷是當檢測到按鍵上被按下時,就會執行回調函數里的程序。將上面的程序下載到科創板后,我們點擊按鍵上,就可以聽到蜂鳴器發出的三種不同聲音了。 二、鍵位控制OLED屏——Technology and Math 我們可以驅動按鍵去控制多彩LED燈以及蜂鳴器工作了,接下來,我們要做的就是要讓按鍵功能更加直觀的體現出來。大家來思考一個問題,我們可不可以通過按鍵移動屏幕上顯示的方塊呢,怎樣去實現這個功能呢? 為了實現上述的功能,我們可以分步進行: 1、繪制方塊 在前面的課程里,我們已經學過用OLED屏顯示矩形,這里用到同樣的代碼塊“繪制矩形”,不過其中的參數需要調整一下(因為我們要控制方塊移動,所以方塊尺寸要合適)。 我們將方塊的邊長定為4,那么 “繪制矩形”代碼塊里關于寬度高度設置的兩個變量要改為4;開始時方塊要顯示在屏幕中央,相對應的起點參數設置x=62,y=30。 上面兩種程序表達方式都可以,第二種里面的“科創板oled初始化”代碼塊 此時繪制的方塊只有四條邊,中間是空的,所以要在“填充”后面打鉤,這樣這個邊長為4的方塊才能填充起來。 運行以上程序,OLED屏中間會顯示一個填充后的小方塊。 2、施加約束 認識“約束”代碼塊 “約束”代碼塊位于“數學”模塊中,它的功能是限制數字或者變量介于兩個指定的數字之間。 因為屏幕的橫向范圍為0~127,縱向范圍為0~63,方塊邊長為4,所以x的范圍為0~124,y的范圍為0~60,可以用以下代碼塊來限定x與y的范圍,這樣方塊就不會超出屏幕了。 3、按鍵控制 右鍵按下讓x增加4,y保持不變(小方塊向右移動4步): 同理,可以推寫出上、下、左鍵按下時的程序塊(需要注意的是左鍵的邏輯是反的,所以左鍵的判定條件是當管腳36的值等于0時)。 我們把確定鍵作為初始化按鍵(讓小方塊回到OLED屏幕中點): 程序分塊到這里就講解完成了,接下來我們只需要把之前編寫好的程序塊結合起來就可以實現按鍵控制小方塊的移動了,程序如下: 運行以上程序,按鍵的上下左右可以控制小方塊的移動方向,確定鍵按下時,小方塊回到屏幕中心。 三、延伸與擴展——Arts 想一想,我們可不可以用屏幕和按鍵做一個貪吃蛇游戲呢,怎樣去實現? 請以小組的形式進行合作,嘗試使用屏幕和按鍵做一個貪吃蛇游戲 。 設計要求: (能夠用按鍵操控貪吃蛇小游戲,其中確定鍵可以暫停與開始游戲; (保證控制方式安全可靠。 上一篇第三章 科創板-聲音采集
下一篇第三章 科創板-按鍵驅動
文章分類:
教學課程
|