mblock第十四課(搖桿)
雙軸按鍵搖桿:
特性:
兩路類比量輸出,一路數位量輸出;
十字搖桿為一個雙向的10K電阻器,隨著搖杆方向不同,X、Y軸的電阻值隨著變化。
向下按搖杆,可以觸動一個開關,為數位輸出。
一、基本操作
搖桿有五個接腳,GND接地,+5V接5V,VRx接類比腳A0輸入,VRy接類比腳A1輸入,SW接類比腳A2輸入(SW也可以接數位輸入)。
將類比腳位A0、A1、A2讀到的值分別用變數x、y、z來表示,方便程式寫作。
操作搖桿移動角色,就會畫出移動的軌跡。
按下按鍵,清除筆跡,重新開始畫軌跡。
理論上不動搖桿時,X、Y軸的值為中間值512,搖動搖桿分別會加或減,最高為1023最低為0,實際上因為材料關係,會有一些變化。
畫圖時要做一些公式轉換,才可以轉換成畫面上的座標位置。
實際畫圖時發現搖桿移動太靈敏(間隔太小)無法控制微調。
程式下載:搖桿.sb2
改成用[如果…就…]來判斷往哪個方向移動。
程式下載:搖桿2.sb2
二、走迷宮
在舞台的背景畫上迷宮圖形。
主要程式同上,多加判斷過關或死掉的指令。
程式下載:搖桿走迷宮.sb2
方向燈
走麵包板上接四顆LED,用搖桿四個方向控制不同燈亮(待補)
三、其他
十字搖桿為一個雙向的10K電阻器,所以請參考第九課(可變電阻)設計相關活動。
延伸:加在自走車上變成線控自走車。
四、遊戲設計
常見的許多電腦遊戲都會運用搖桿來操控腳色移動,我們也可以模仿製作類似的遊戲。
1.如果增加一些飛彈射擊,就可以變成射擊遊戲。
2.如果加一些水果掉下來,就可以變成猴子接水果遊戲。
3.打磚塊遊戲的棍子可以使用搖桿來操控。
4.其他2D(維)的遊戲。
—————————————–
相關連結:
Arduino初級班課程目錄
http://blog.ilc.edu.tw/blog/blog/868/post/93477/605771
Arduino課程準備
http://blog.ilc.edu.tw/blog/blog/868/post/93477/599681
Arduino第一課(概論、連接)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/599732
Arduino第二課(LED)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/599733
Arduino第三課(用鍵盤控制LED)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600369
Arduino第四課(LED紅綠燈)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600422
Arduino第五課(pwm)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600854
Arduino第六課(RGB三色LED)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600855
Arduino第七課(蜂鳴器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602388
Arduino第八課(按鍵)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602288
Arduino第九課(可變電阻)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602290
Arduino第十課(光敏電阻)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602291
Arduino第十一課(伺服馬達)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/605139
Arduino第十二課(離線執行)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/605798
———————————–
Arduino進階班課程目錄
Arduino第十三課(超音波感測器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/620602
Arduino第十四課(搖桿)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/620718
Arduino第十五課(人體紅外線感測器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/620975
Arduino第十六課(主動式紅外線感測器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/621311
Arduino第十七課(繼電器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/622442
Arduino第二十課(電腦裡的馬達)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/614292