本文來源電子發燒友社區,作者:HonestQiao, 帖子地址:https://bbs.elecfans.com/jishu_2289619_1_1.html
在上一篇分享輕松編譯基站和終端的二次開發包并下載到設備?中,我們已經使用官方的二次開發源碼,編譯并下載到了基站(AP)開發板和2塊終端(IOTE)開發板上,現在,我們就可以開始進行通訊測試了。
一、下載專用串口工具
二次開發源碼默認編譯出來的,是AT鏡像,所以需要通過串口工具來進行操作。
好在官方提供了專用的基站和終端串口工具,直接內置了許多AT操作指令,非常方便我們的操作。
要下載專用的基站和終端串口工具,請訪問:WIOTA 串口工具 - UCchip Docs (ucthings.com),其中,ap對應基站,iote對應終端。
二、連線
在測試前,需要先進行連線。給開發板下載好鏡像之后,就可以不使用專用燒寫器了,用microusb數據線,連接各開發板,就能使用對應的串口控制開發板了。
具體連線如下:
3塊開發板,需要3個microusb數據線,我用了一個USB HUB,方便連接。數據線和USB HUB的質量,一定要好,避免使用過程中,出現莫名其妙的問題。
連接好以后,在設備管理器中,會新增三個CH340的串口:
CH340的驅動比較通用,可以在CH341SER下載安裝。如果已經成功識別了,就不用安裝了。
三、確認串口和開發板的對應關系
三個串口連上來以后,可能我們一時不清楚,到底哪個串口,對應的是哪塊開發板。
那么,下面的辦法,就能讓你快速確認了。
首先,打開專用的基站串口工具ap,先任意選擇一個串口,然后找一塊開發板,按一下標注了RST的按鈕。如果是基站(AP)開發板,則兩個RST一起按一下。
如果當前打開的是剛按了RST的開發板對應的串口,那么在串口中,按完按鈕,就會有對應的顯示。如果沒有顯示,那就分別按剩下2塊開發板的RST按鈕,直到有顯示為止。
基站(AP)開發板在按了RST后,串口工具中的顯示如下:
其中 D or M中的M,表示Master,也就是基站。
終端(IOTE)開發板在按了RST后,串口工具中的顯示如下:
可以看到,模式只有D,表示終端。
通過以上方式,我們就能夠確定各串口和開發板對應的關系。
最終,我們打開1個基站ap串口工具,2個終端iote工具,分別連接到對應的串口,以便進行下一步的測試。請務必確保各串口工具,打開的是對應的串口。
四、基站和終端初始化
要進行通訊,首先需要初始化開發板,然后才能進行通訊操作。
在基站ap串口工具,點擊一鍵啟動選項,就能初始化基站了。
一路OK,表示啟動成功。
在第1個終端iote串口工具中,設置uid為0000001,表示第一個終端,然后點擊一鍵啟動選項,就能初始化終端1了:
如法炮制,給第二個終端,設置uid為00000002,然后點擊一鍵啟動選項,就能初始化終端2了:
基站(AP)和終端(IOTE)一路OK,都正常啟動后,就可以開始下面的測試了。
五、終端給基站發送數據:
在終端1對應的串口工具中,點擊發送數據:
然后查看基站對應的串口工具,將會收到對應的信息。
收發信息,需要遵循一定的規則。
發送規則:
-
終端發送數據的格式:
at wiotasend=超時時間,數據長度, 數據內容
-
實際發送的數據:
at wiotasend=10000,14 Hello from 1
其中:- 超時時間:按照默認的,給10000即可,表示10秒,其單位為毫秒。
-
數據長度:包含
及以后內容的字節長度
接收規則:
-
基站收到的數據格式:
WIOTARECV,0,0x終端uid,數據長度,數據內容
-
實際收到的數據:
WIOTARECV,0,0x1,14,Hello from 1
其中:
-
數據長度:包含了
在內的,所以會比實際得到的數據內容的長度多2個
-
數據長度:包含了
使用類似的方法,我們再用終端2,給基站發送數據:
可以看到,基站收到了數據,并且對應的終端uid為2
到這里,已經可以在2個終端上,給基站發送數據了。
六、基站給終端發送數據
在基站(AP)對應的串口工具中,也有發送數據按鈕,發送之前,我們也需要按照規則,編輯一下其內容,再發送:
-
發送數據的格式:
at wiotasend=數據長度,終端uid,1,超時時間 數據內容
-
實際發送的數據:
at wiotasend=13,2,1,10000 Hello to 02
其中:
- 終端uid:為之前啟動終端設備時,給終端設置的uid,沒有前導0x
- 超時時間:和終端給基站發送數據的超時時間用途一樣
-
數據長度:同樣包含了
的長度
安裝上面的規則,在基站串口工具中,先給終端1發送數據:
在終端1的串口工具中,就能接收到對應的數據。
然后,在基站串口工具中,給終端2發送數據:
不管是在終端給基站發送數據中,還是在基站給終端發送數據中,一定要注意好數據長度(包含了
,為2個字節長度)。基站給終端發送數據時,還需要注意用戶編號。
七、基站廣播數據
在上一步的測試操作中,是基站給指定的中的發送數據。
基站同樣可以通過廣播的方式,一次給所有的終端發送數據。
同樣的,廣播數據也有規定的格式:
-
廣播數據的格式:
at wiotabc=數據長度,0,超時時間 數據內容
-
實際發送的數據:
at wiotabc=12,0,10000 AP is here
按照上述規則,我們來發送一次廣播:
廣播發送后,所有終端的串口工具中,都收到了對應的廣播。
八、基站查看連接的終端信息
在基站的串口工具中,還提供了查看連接的終端信息的按鈕,點擊后,具體返回如下:
從中我們可以看到,當前有兩個終端連接上來,分別為0x1和0x2。
九、總結
到這里,我們已經進行了基站和終端互通互聯互發數據的測試了。
在以上的操作中,各串口工具,都會把當前執行的指令,完整的顯示出來,AT開頭的信息,就表示執行的指令。
如果我們要進行二次開發,要在程序中發送AT指令,就可以參考上面的輸出。
關于上述操作中,指令的具體含義,可以查看官方文檔:
在了解了AT指令的基礎上,后續我們就可以投入實際的二次開發,應用AT指令,來收發數據,并進行解析操作處理了。
-
御芯微
+關注
關注
4文章
57瀏覽量
3324
發布評論請先 登錄
相關推薦
評論