流程說明:首先要使esp8266能夠聯網,能聯網就可以控制,使用示例程序,修改WIFI、密鑰等信息即可聯網控制。微信小程序控制是使用http協議完成,通過接口實現對ESP8266的控制。
第一、遠程App控制或手動控制
下載esp8266示例程序
下載地址: 點擊下載
本demo 是利用arduino IDE開發,關於arduino IDE 的ESP8266環境配置可參考:環境配置: 點擊跳轉
程序下載好,需要修改的信息有:
需要修改的信息有WIF名稱,WIFI密碼,用戶私鑰UID,設備主題topic。
//********************需要修改的部分*******************//
//WIFI名稱,區分大小寫,不要寫錯
#define DEFAULT_STASSID "Air_mbs"
//WIFI密碼
#define DEFAULT_STAPSW "air123456"
//用戶私鑰,可在控制台獲取,修改為自己的UID
#define UID "4d9ec352e0376f2110a0c601a2857xxx"
//主題名字,可在控制台新建
#define TOPIC "light002"
//需要控制的單片機LED引腳值
const int LED_Pin = D4;
//**************************************************//
用戶私鑰可以巴法雲控制台點擊跳轉獲取,注冊綁定郵箱即可在巴法創客雲控制台點擊跳轉獲取。
登陸完成后,可在控制台看到自己的私鑰UID,如圖所示:
創建主題,在控制台,可創建主題。
- 第一輸入主題,字母或數字或字母+數字組合。
- 點擊創建主題。
WIFI名稱為自己的路由器WIFI名稱,區分大小寫,寫錯會導致連接不上網絡的。
修改完畢后,下載程序到esp8266即可,可以通過串口調試助手查看通信詳情。
當檢測到消息為on 時,執行開燈,當檢測到消息為off 時,執行關燈。開發者可在控制台推送on或者off,然后查看串口,看esp8266是否收到,如果收到,說明正常可進行下一步微信小程序編寫。
說明:消息不單單局限於on或off,開發者可以張大腦洞隨意定義的,你推送什么消息,在單片機處做什么消息檢測就可以了。
第二、微信小程序開發
在 微信公眾平台注冊小程序賬號,拿到小程序 appid,長的大概是這樣:wx34a2063de5cec04b。
右側點擊 -開發--》開發設置--》下方服務器域名處,點擊修改,在request合法域名處,添加域名https://api.bemfa.com 保存提交即可。如下圖。
下載安裝微信開發者工具。
下載demo示例程序。下載地址: 點擊下載
打開微信開發者工具,小程序項目,導入項目。在目錄處選擇剛剛下載解壓的demo示例程序,AppID處填入你的小程序AppID,然后點擊下方導入即可。如下圖。
本示例程序非常簡單,各位大神可以繼續開發添加各種功能,添加背景,優化色彩等等,如果只是簡單使用,只需修改/pages/index/index.js 文件中uid 和topic 信息為自己的即可,這里的uid和topic需要和esp8266填入的uid和topic相同,如下圖。
修改完畢后,ctrl+s 保存修改。可以點擊左邊屏幕上的按鈕進行調試,如下圖。
console控制台可以查看小程序的調試信息。默認每5秒會自動請求一下服務器,查看esp8266的狀態信息。點擊打開或者關閉按鈕,打開esp8266串口調試助手,可查看esp8266是否收到指令,如果第一步esp8266已聯網,都是可以收到信息的。
如果界面和其他功能都開發完畢。可以點擊微信開發者工具的上面的上傳按鈕,如下圖。
上傳成功后,再登陸剛剛注冊的微信公眾平台,在版本管理處,可以看到自己剛剛上傳的小程序,提交審核即可,等一天左右,一般都會通過,通過后登陸微信公眾平台,提交發布即可。如果是自己使用的,做好加上登陸驗證功能,比如驗證匹配一下某個字符串是否正確等等,不然小程序上線后別人也可以隨意控制了。