演示視頻
本文檔適合大彩PM 4G系列串口屏產品使用。
1. VisualTFT軟件版本:V3.0.1.1133及以上的版本。
版本查看:
1) 打開VisualTFT軟件啟動頁面如圖2-1軟件版本,右上角會顯示的軟件版本號;
圖2-1軟件版本
2) 打開VisualTFT,在軟件右下角可以查看軟件版本圖2-2軟件版本,最新版本可登錄http://www.bdklxf.com/進行下載。
圖2-2軟件版本
2. 串口屏硬件版本:M系列固件 >= V6.3.257.00。
版本查看:
1) 查看屏幕背面版本號貼紙;
2) VisualTFT與屏幕聯機成功后,右下角顯示的版本號。
阿里云IoT提供的一款針對生活領域的物聯網平臺,以解決家電設備快速智能化的問題。平臺針對家電智能化的設備連接、移動端控制、設備管理、數據統計等問題,提供了一整套配置化方案,大幅減低設備-云-APP的開發成本。了解阿里云平臺更多信息,詳細介紹請參考阿里云官網上《關于生活物聯網平臺》文檔。
本例程主要介紹,PW-4G系列如何用一機一密方式連接阿里云。以空調為例,對空調的溫度、開關機、模式、濾網時間等參數進行數據交互。
1. 《LUA 腳本API V1.4》可通過以下鏈接下載物聯型開發包獲取:
http:/www.bdklxf.com/index.php?s=/List/index/cid/19.html
2.《LUA基礎學習》可通過以下鏈接下載物聯型開發包獲取:
http:/www.bdklxf.com/index.php?s=/List/index/cid/19.html
3. LUA腳本初學者可以通過下面鏈接進行學習。
http://www.runoob.com/lua/lua-arrays.html
本章節主要串口屏-阿里云-APP數據交互的配置流程,將分為以下3個階段講述教程DEMO是如何實現:
1. 準備工程素材;
2. 阿里云平臺配置;
3. 配置串口屏工程;
5.1.1 準備工程素材
在實現例程前需要作以下3個準備:
1. 硬件平臺;
2. 軟件平臺;
3. UI素材;
該例程使用大彩M系列7寸串口屏DC80480M070_1111_0T為驗證開發平臺。如圖5-1所示;
圖5-1 M系列7寸串口屏
其他尺寸的串口屏均可借鑒此教程。
5.1.2 軟件平臺
使用大彩自主研發的上位機軟件VisualTFT配置工程,登錄http://www.bdklxf.com/下載。如圖5-2所示;
圖5-2下載軟件
阿里云生活物聯網平臺配置流程主要包括以下7個步驟:
1. 注冊賬號
2. 創建工程
3. 創建產品
4. 功能定義
5. 設備調試
6. 人機交互
7. 批量投產
詳細到配置流程,可參考我司《WIFI-連接阿里云教程》相應阿里云平臺配置章節說明,或可參考直接登錄阿里云官網,文檔中心查閱更多內容。
(1) 畫面配置
(2) LUA編輯
5.3.1 準備工程素材
在畫面ID0中,信號運營商、APP QR Code、APP交互變量組成。
信號運營商:圖標件ID12表示信號等級、文本控件ID13表示運營商
APP QR Code:二維碼控件,使用手機云智能APP(阿里云公辦APP)掃碼,由于是一型一密,用戶掃碼需要開發者分享授權。
APP 交互的變量:控件ID1~ID10用于顯示、設置開/關機、濾網時間、溫度、設備模式等。畫面配置如圖5-3所示:
注意:其他非關鍵控件不在一一介紹,下文不在累述
圖5-3 畫面配置
5.3.2 LUA編輯
本例程中,屏幕上電執行初始化操作,如加載4G AT 指令的庫、初始化和4G模塊的交互的函數、初始化4G模塊、開啟定時器獲取運營商和信號值。
4G模塊初始化完成后,提交阿里云認證,并設置mqtt相關參數、服務IP和端口等等,屏幕發出請求會話通知。一切就緒后,屏幕和云端可以進行數據交互。
1. 初始化
調用系統函數on_init()執行代碼如程序清單 1所示:
程序清單 1初始化
▲下滑查看
核心API函數
1) dofile (filename)
加載文件:本例程中加載4G AT 指令的庫
- filename :文件名
設置串口3的波特率:串口3為屏幕和4G模塊通訊的串口
- speed :通訊的波特率
串口接收4G模塊的返回數據的回調。
- packet :形參為表,字節數據。
設置4G庫函數的回調。形參類型為函數,參數依次為命令發送函數,命令回調函數、調試信息打印函數,可自定義函數名。
- on_air_send_cb :屏幕向4G模塊發送回調函數
- on_air_resp_callback :4G向屏幕返回數據回調函數
- on_air_log_cb :用戶調試信息回調函數調試
屏幕向4G模塊發送AT指令
- sendstr :屏幕向4G模塊發送AT指令
- ackstr :4G模塊應答屏幕的請求
- timeou :應道超時時間
- retry : 超時重發次數,可選
- callback : 應答回調函數,可選
4G應答屏幕回調函數:屏幕發送AT指令,4G應答后均會回調該函數,本函數如air_set_callback(on_air_send_cb,on_air_resp_callback,on_air_log_cb)函數設置。
- key :屏幕->4G模塊,發送請求的AT指令
- value :4G模塊->屏幕,返回的數據
1) 獲取運營商:
屏幕發送:AT+COPS?
屏幕接收:OK
2) 獲取信號值AT:
屏幕發送:AT+CSQ
屏幕接收:OK
3) 網絡數據是否激活:
屏幕發送:AT+SAPBR=1,1
屏幕接收:OK
當4G初始化完成后,提交阿里云認證(三元組),代碼如程序清單 2所示:
程序清單 1初始化
▲下滑查看
核心API函數
HTTP POST操作,例程中次數用于提交阿里云認證(三元組)。
- url:網頁URL
- content_type:自定義,參數值
- post_data:寫數據
- callback:4G數據回調函數
的mqtt_config()設置MTQQ參數、mqtt_tcp_start()設置服務器IP和端口。
- key:云端恢復的類型
- Value:云端恢復的數據
程序清單 3 設置云端IP和端口
▲下滑查看
設置 MQTT 相關參數,本例程,只需要填寫客戶身份、登陸服務器的用戶名以及密碼,其中這三個參數是有阿里云認證反饋回來的。
- status:客戶身份
- username:登錄服務器的用戶名
- password:登錄服務器的密碼
- will_qos:將要發送的信息的服務質量
- will_retain:保留標志
- will_topic:將要發送的消息的話題
- will_message:將要發送的消息內容
設置服務器的IP、端口
- srvad:服務器 IP 地址或 DNS 地址
- port:服務器端口
- ssl:設置為 true 時,使用SSL鏈接
客戶端向服務器請求會話連接
- clean_session:會話狀態
- keepalive :保持時間
程序清單 4 發起連接請求
▲下滑查看
本命令從客戶端到服務器,用于一個或多個訂閱主題,當向服務器請求
- topic:應用程序消息的主題
- qos:申請消息的服務質量
程序清單 5 接收云端數據
▲下滑查看
核心API函數
接收云端的數據
- payload:Json格式的字符串
當用戶觸碰控件修改值時候,屏幕會自動將數據打包成Json格式發給云端,代碼如程序清單 6所示。
程序清單 6 發送數據到云端
▲下滑查看
核心API函數
發送數據到云端,傳送應用消息
- topic :應用程序消息的主題
- qos :申請消息的服務質量
- retain :保留標志
- message:消息內容
本例程中,假設用戶修改模式,則將數據Json格式上傳到云端,,數據原型如下所示:
圖5-5量產向導
在菜單欄中,文件→打開工程目錄,在‘dciot_build’目錄的‘private’文件夾拷貝到SD卡中,如圖5-6和圖5-7所示;把SD卡接上串口屏后重新上電,等到提示燒錄工程成功后,拔掉SD卡重新上電即可。
圖5-6量產向導
圖5-7拷貝到SD卡