繼國際暑期兩日營之後,來自各界的迴響真的很多,於是我們決定撰寫藏寶箱與城堡的教學文章來回應大家的期待啦!!
實際課程可參考: [ 國際暑期兩日營 ] BOSON遇上LinkIt 7697程式大冒險
想要先了解不寫程式版本教學文章可參考:[ BOSON 電子積木好好玩 ] 閃亮亮的寶藏箱!
作者/攝影 | 陳俊霖 |
時間 | 約1小時 |
難度 | * * * |
材料表 |
|
我們都有些寶貝不想要跟其他人共享,像是小時候的玩具、爸爸送的生日禮物、媽媽獎勵好成績的玩具…. 這些都是美好回憶,就應該要好好收藏。
那麼,最好的收藏辦法就是把東西放到藏寶箱裡了!
我們今天就來利用手邊的BOSON,以及強大的Linkit7697開發板(以下簡稱Linkit7697)來完成一個只有自己知道密碼的數位藏寶箱吧!!
首先完成好藏寶箱外殼,以及伺服馬達的鎖頭,並把按鈕與旋轉感測器分別至於外箱的兩側。
下一步就開始連接我們的BOSON以及Linkit 7697。
將BOSON 與NANO擴充板 如下圖連接:
按鈕開關連接到NANO擴充板的D6腳位,而伺服馬達連接到NANO擴充板的D5腳位。
旋轉感測器的紅線與黑線要接到2.5V的電壓,否則旋轉感應器會只有一半可以用。
最後,把旋轉感應器的黃色線接到NANO擴充板的A0腳位,這樣我們就完成硬體的接線了!
把硬體設備放到藏寶箱裡看起來就像這樣,左邊是按鈕,右邊是旋轉感應器,下面是伺服馬達
連接完成之後,開啟BlockyDuino,撰寫程式如下:
(還沒下載BlockyDuino的同學可以到這裡下載最新版本)
程式的第一行先用一個名為RotationValue的變數來儲存類比讀取A0的值。
接著,利用if判斷式來判斷旋轉感測器輸入的密碼是不是在我設計的範圍內(舉我的程式為例,密碼就是介於1024到2048之間,大約是中間的位置),同學可以自己改自己的密碼,但是如果範圍太小會很難輸入唷!
接著後面的”且”是用來判斷按鈕是否按下的重要程式,如果旋轉編碼器的值等於我設定的密碼值,還要同時按下按鈕寶箱才會開啟。不然聰明的駭客只要一直調整旋轉感測器就把寶箱破解啦!! 這可不行!!
拉好積木,寫好程式之後,就可以把程式燒錄到Linkit7697上面。
將Linkit7697接上電腦,選取正確的COM埠,按下燒錄按鈕,等待Linkit7697燒錄成功即可。
如果輸入的密碼正確,電子鎖會打開一秒鐘的時間,記得趕快把寶箱的蓋子掀開來。
時間一到鎖就又自己合起來了! 如果想要再放寶物進去,記得要先輸入正確的密碼之後才闔上寶箱唷!!
完成了!!
可以把自己最珍藏的東西保護起來的藏寶箱,是不是很簡單又很安全呢!
大家除了做成藏寶箱的外殼,也不妨做成其他造型,用相同的原理應用在日常生活中的其他地方吧!!