LiteOS通信模組教程02-AT指令玩轉2G通信

      網友投稿 954 2022-05-29

      1. 環境準備

      硬件準備

      小熊派開發板

      M26通信模組

      軟件準備

      QCOM串口助手

      文檔準備

      M26 AT命令手冊

      此文檔來自于移遠官方!閱讀本教程時,關于AT指令的詳細說明請參考該文檔!

      切換開關

      小熊派開發板右上角的開關撥到AT-PC一端,則模組直接與PC相連,方便調試。

      所有工具和文檔均在『小熊派開源社區』公眾號回復“通信模組”獲取!

      2. 模組信號查詢與網絡查詢AT指令

      AT

      指令:AT

      功能:測試AT指令功能是否正常

      示例:

      AT OK

      AT+CPIN?

      指令:AT+CPIN?

      功能:查詢SIM卡是否正常,返回ready則表示SIM卡正常

      示例:

      AT+CPIN? +CPIN:?READY OK

      AT+CSQ

      LiteOS通信模組教程02-AT指令玩轉2G通信

      指令:AT+CSQ

      功能:查詢模組的信號強度,第一個值為0-31則正常,99為不正常

      示例:

      AT+CSQ +CSQ:?17,0 OK

      AT+CREG?

      指令:AT+CREG?

      功能:查詢模組是否注冊上GSM網絡,+CREG:0,1 表示已注冊上本地網,+CREG:0,5表示注冊上***網。

      示例:

      AT+CREG? +CREG:?0,1 OK

      AT+CGREG?

      指令:AT+CERGE?

      功能:查詢模組是否注冊上GPRS網絡,+CGREG:0,1 表示已注冊上本地網,+CGREG:0,5表示注冊上***網。

      示例:

      AT+CGREG? +CGREG:?0,1 OK

      3. 激活移動場景,獲取ip地址

      必須在查詢GPRS網絡已正常注冊網絡的情況下進行本節實驗!

      AT+QIFGTCNT=0

      指令:AT+QIFGTCNT=0

      功能:配置當前場景

      示例:

      AT+QIFGCNT=0 OK

      AT+QICSGP=1, "CMNET"

      指令:AT+QICSGP=1, "CMNET"

      功能:設置GPRS的APN,移動CMNET,聯通UNINET

      示例:

      AT+QICSGP=1,?"CMNET"OK

      AT+QIMODE=0

      指令:AT+QIMODE=0

      功能:設置數據傳輸模式,0表示非透傳模式,1表示透傳模式

      示例:

      AT+QIMODE=0 OK

      AT+QIDEACT

      指令:AT+QIDEACT

      功能:在激活GPRS場景之前先關閉GPRS場景,確保連接正確

      示例:

      AT+QIDEACT DEACT?OK

      AT+QIREGAPP

      指令:AT+QIREGAPP

      功能:啟動任務并設置接入點APN、用戶名和密碼

      示例:

      AT+QIREGAPP OK

      AT+QIACT

      指令:AT+QIACT

      功能:激活移動場景

      示例:

      AT+QIACT OK

      AT+QILOCIP

      指令:AT+QILOCIP

      功能:查看模組獲取的IP地址

      示例:

      AT+QILOCIP 100.125.208.23

      4. 基于 TCP 協議連接遠程服務器通信實例

      4.1. 搭建遠程TCP服務器

      首先我們需要搭建一個TCP服務器,有兩種方式:

      在服務器上使用Python、Java、C#等語言自行編寫服務器程序;

      在本地PC上使用網絡調試助手開啟TCP服務器;

      因為M26模組直接注冊的是公網ip地址,所以這里我們使用第一種方式,在Linux服務器上運行一個Python編寫的tcp測試服務器:

      本地PC使用的是局域網,公網不可以直接根據ip地址訪問到本PC,需要進行內網穿透,不推薦使用。

      這里的Python程序如下:

      #?tcp-server.py from?socket?import?* host?=?'' port?=?8000 #?創建server?socket server_socket?=?socket(AF_INET,SOCK_STREAM) #?綁定socket監聽地址 server_addr?=?(host,port) server_socket.bind(server_addr) #?開始監聽,最大允許連接數5 server_socket.listen(5) #?處理連接請求 try: ????while?True: ????????print('waiting?for?connect...') ????????#阻塞等待客戶端的連接? ????????client_socket,?client_addr?=?server_socket.accept() ????????#?連接成功后,打印客戶端信息 ????????print('a?client?connnect?from:',?client_addr) ????????while(True): ????????????#?向客戶端發送數據 ????????????client_socket.send('Hello,?client!'.encode()) ????????????#?接收客戶端的數據 ????????????data?=?client_socket.recv(1024) ????????????print('recv?data?is?',?data.decode()) ????????????#?接收到quit則關閉socket ????????????if?"quit"?in?data.decode(): ????????????????break ???????? ????????#?關閉socket ????????client_socket.close() ????????server_socket.close() ????????print("socket?closed.") ????????break except: ????client_socket.close() ????server_socket.close() ????print("socket?closed.")

      運行:

      python3?tcp-server.py

      效果如下:

      4.2. 模組連接服務器

      查詢ip地址:

      AT+QILOCIP 100.125.208.23

      使用AT命令連接TCP服務器,其中第一個參數是協議類型,“TCP”則表示使用TCP協議,第二個參數是TCP服務器ip地址,也可以使用域名,最一個參數是TCP服務器開啟監聽的端口:

      AT+QIOPEN=,/,

      示例:

      AT+QIOPEN="TCP","122.51.89.94","8000" OK CONNECT?OK

      連接之后,在服務器端也可以看到:

      4.2. 模組接收消息

      模組連接到服務器后,服務器會自動發送消息,模組會打印出收到的信息:

      Hello,?client!

      4.3. 模組主動發送消息

      使用如下的命令即可向TCP服務器發送消息,首先設置要發送數據的字節數,等待模組返回>后,輸入要發送的數據即可,如果發送的數據超過了設置的n個字節,則只發送前n個字節,后面的數據被認為是無效數據,不會發送:

      AT+QISEND >hello<0x1a>

      示例:

      Hello,?client!AT+QISEND >?hello SEND?OK

      發送成功看服務器上運行的TCP服務器是否收到:

      4.4. 關閉TCP連接

      通信完畢之后,可以使用下面的命令關閉TCP連接:

      AT+QICLOSE

      示例:

      AT+QICLOSE CLOSE?OK

      TCP/IP 輕量級操作系統 LiteOS

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:Nginx指南和配置詳解
      下一篇:LiteOS內核源碼分析系列五 LiteOS內核位操作模塊
      相關文章
      亚洲国产一区二区三区青草影视| 国产V亚洲V天堂无码久久久| 亚洲乱色伦图片区小说| 国产亚洲精品成人AA片| 亚洲色婷婷综合久久| 久久精品a亚洲国产v高清不卡| 亚洲免费二区三区| 久久久久久A亚洲欧洲AV冫| 亚洲精品中文字幕麻豆| 亚洲中文字幕久久精品无码喷水| va亚洲va日韩不卡在线观看| 亚洲一二成人精品区| 国产午夜亚洲精品午夜鲁丝片| 亚洲精品9999久久久久无码| 亚洲第一视频网站| 亚洲动漫精品无码av天堂| 亚洲成AV人片一区二区| 亚洲成a人片在线观看中文app| 亚洲av高清在线观看一区二区| 亚洲国产综合人成综合网站00| 亚洲天堂在线播放| 亚洲美女视频网站| 亚洲国色天香视频| 国产亚洲精aa在线看| 亚洲精华国产精华精华液网站| 亚洲爆乳无码专区www| 国产成人精品日本亚洲专区61 | 日韩国产欧美亚洲v片| 色五月五月丁香亚洲综合网| 亚洲AV无码专区在线播放中文| 亚洲精品国产成人片| 亚洲国产精品一区二区第四页 | 亚洲婷婷天堂在线综合| 亚洲午夜精品国产电影在线观看| 亚洲一卡二卡三卡| 亚洲AV日韩AV永久无码绿巨人| 日韩一卡2卡3卡4卡新区亚洲| 亚洲精品无码成人AAA片| 亚洲va久久久噜噜噜久久狠狠| 久久夜色精品国产噜噜噜亚洲AV| 亚洲美女aⅴ久久久91|