這篇是以玩ESP32的心態來玩Halocode,採用的程式軟體是BlocklyDuino(以前是供聯發科的7697用的),但經一些大師的努力後,目前也可以使用Arduino、ESP8266、ESP32的硬體,特別是其在物聯網的應用(連網、MQTT、LINE NOTIFY、IFTTT、Thingspeak、Google試算表...)更是方便。所以,最後再介紹如何利用BlocklyDuino來玩Halocode。
一、BlocklyDuino環境建置
吉哥積木安裝教學
下載法蘭斯擴充積木(對應吉哥積木20210303版),覆蓋Blocklyduino對應資料夾。(內建SimpleDHT與esp32-lcd函式庫)
安裝Webbit(ESP32) USB驅動程式(CH341),或安裝Webbit教育版
Blocklyduino基礎操作
二、Halocode腳位說明
各元件所使用的ESP32腳位
這5個腳位有找出來
其他如LED燈(應該是WS2812)、麥克風、六軸感測器的腳位沒有找出來
按鍵按下的值
腳位2(編號0)按下時,其值為0
腳位15(編號1)按下時,其值為0
腳位26(中間按鈕)按下時,其值為1
類比腳位的值
腳位33(編號2)類比值為0~4095
腳位32(編號3)類比值為0~4095
三、BlocklyDuino的使用
點亮一顆LED燈
程式寫作過程
四、物聯網的應用
MQTT
前面已做過簡單介紹:05 玩MQTT及IFTTT
【遠端控制】:
Halocode當發送端
Web:Bit當訂閱端
Halocode程式(沒有碰到D0或D1也有反應),觸碰時,D0及D1的值為1
Web:Bit的程式
簡易保全系統一:當有人闖入時
此作品與上例相同,手錶當作MQTT的訂閱端
遠端一樣用Web:Bit開發板,但A鍵被按下時,代表有小偷闖入
本端一樣用Halocode開發板,當遠方有人入侵時,halocode會發出警報(燈不會亮,無蜂鳴器,無法發出警報!!)
逹端Web:Bit程式
Line Notify
簡易保全系統二:
當有人闖入時,會發送LINE告知(使用法蘭斯積木)
當作孩子危險通報系統
Google試算表來收集資料(如光敏電阻值)
將光敏電阻模組的信號線接3號(GPIO32,要使用類比值,介於0(最暗)~4095(最亮)間)
使用吉哥積木
先建立一個google試算表,要在【共用】設定為「知道連結的使用者」有「編輯」的權力。
程式:
結果: