串口數(shù)據(jù)通信,當(dāng)通信速率較快時(shí)可能會出現(xiàn)丟包現(xiàn)象,如計(jì)算機(jī)和單片機(jī)之間,當(dāng)MCU接收端的數(shù)據(jù)緩沖區(qū)已滿,此時(shí)仍然有新的數(shù)據(jù)傳輸過來,接收端已沒有時(shí)間進(jìn)行處理,就會導(dǎo)致丟包(數(shù)據(jù)丟失)。實(shí)際應(yīng)用中經(jīng)常會遇到該類問題,本質(zhì)原因是設(shè)備的通信速率與處理能力不匹配,導(dǎo)致數(shù)據(jù)傳輸時(shí)丟包。
利爾達(dá)Cat.1模組具有硬件流控的功能,用戶可通過該功能來解決通信速率與MCU處理能力匹配失衡造成的丟包問題。硬件流控的原理非常簡單,當(dāng)接收端接收到的數(shù)據(jù)處理不過來時(shí),就向發(fā)送端發(fā)送不再接收的信號,發(fā)送端接收到這個(gè)信號之后會停止發(fā)送,直到收到可以發(fā)送的信號再繼續(xù)發(fā)送。因此硬件流控可以通過是否接收到指示信號防止數(shù)據(jù)丟失。
本文主要針對具有硬件流控功能的利爾達(dá)Cat.1模組,給出了對應(yīng)的時(shí)序邏輯和測試方法,用戶可根據(jù)本文對MCU程序進(jìn)行開發(fā),從而實(shí)現(xiàn)硬件流控串口通信。
環(huán)境搭建
01
軟件環(huán)境
通過AT指令A(yù)T+IFC=2,2開啟硬件流控。
注1:NT35E開啟硬件流控后會自動保存,復(fù)位后硬件流控仍保持開啟狀態(tài);
注2:NT26U和NT90則需要通過AT指令A(yù)T&W進(jìn)行保存。
02
硬件環(huán)境
本次測試使用串口助手SSCOM模擬MCU對模組進(jìn)行控制,USB轉(zhuǎn)串口工具如圖1所示。

圖1 USB轉(zhuǎn)串口工具
模組引腳連接示意圖如圖2所示。

圖2 引腳連接示意圖
硬件流控測試
CTS引腳是模組的輸入端,用于主機(jī)(MCU)通知模組是否準(zhǔn)備好,模組是否可向主機(jī)(MCU)發(fā)送信息,低電平有效。
RTS引腳是模組的輸出端,用于模組通知主機(jī)(MCU)是否準(zhǔn)備好,主機(jī)(MCU)是否可向模組發(fā)送信息,低電平有效。
01
模組CTS引腳測試
注:模組CTS引腳硬件流控測試,模組開啟流控功能,sscom未開啟流控功能。
硬件流控使能測試步驟如下:
1)懸空模組CTS、RTS引腳;
2)發(fā)送指令A(yù)T+IFC=2,2,開啟模組硬件流控;
3)進(jìn)行正常的AT交互;
通過上述流程開啟硬件流控功能后,SSCOM將無法收到模組返回的消息。此時(shí),使用萬用表測量模組的CTS和RTS引腳:
1)CTS引腳為高電平,即模組不會發(fā)送消息;
2)RTS引腳為低電平,即允許主機(jī)(MCU)發(fā)送信息;
未連接模組CTS、RTS引腳時(shí),模組會接收到AT指令并正常執(zhí)行,但是由于模組認(rèn)為主機(jī)沒有做好接收的準(zhǔn)備,AT指令的執(zhí)行結(jié)果將暫存于模組的內(nèi)部緩存中,不會進(jìn)行數(shù)據(jù)發(fā)送,所以SSCOM無法接收模組返回的消息。
拉低模組CTS引腳后,模組會一次性把緩存的數(shù)據(jù)輸出到SSCOM中,此時(shí)通過SSCOM進(jìn)行AT指令通信(模組的CTS引腳接地),能夠立即接收到來自模組返回的消息。
根據(jù)以上的測試過程和結(jié)果可以得出,模組開啟硬件流控功能后CTS引腳功能正常。
02
模組RTS引腳測試
1)連接主機(jī)、模組CTS、RTS引腳;
2)發(fā)送指令A(yù)T+IFC=2,2,開啟模組硬件流控;
3)配置SSCOM,模擬主機(jī)開啟硬件流控;
4)進(jìn)行正常的AT交互;

圖3 勾選SSCOM左下角的RST選項(xiàng)
圖4 使能sscom硬件流控
SSCOM按照配置完成后,確認(rèn)模組AT通信正常,然后通過大數(shù)據(jù)交互觸發(fā)模組硬件流控功能。如圖5所示,創(chuàng)建一個(gè)txt文檔,內(nèi)部填入大量AT指令。
圖5 創(chuàng)建一個(gè)填入大量AT指令的txt文檔
通過SSCOM發(fā)送文件的功能,可快速向模組發(fā)送AT指令。在發(fā)送文件時(shí)把串口波特率修改為460800bps(AT+IPR=460800)以便觸發(fā)高速率通信下的硬件流控指示。
圖6 打開文件-發(fā)送文件
通過邏輯分析儀抓取模組TX、RX、RTS、CTS引腳波形,模組引腳與邏輯分析儀通道匹配如表1所示:
表1 模組引腳與邏輯分析儀通道匹配表
如圖7所示為發(fā)送文件時(shí)模組引腳波形圖,根據(jù)圖示可知當(dāng)模組的緩存已滿,RTS引腳輸出高電平,模組RX引腳保持高電平,此時(shí)SSCOM不會向模組發(fā)送AT指令;由于SSCOM運(yùn)行在電腦上,速度、緩存遠(yuǎn)高于模組(不會發(fā)生阻塞),因此模組的CTS引腳始終保持低電平。
根據(jù)以上的測試過程和結(jié)果可以得出,模組開啟硬件流控功能后RTS引腳功能正常。
圖7 發(fā)送文件波形
-
硬件
+關(guān)注
關(guān)注
11文章
3464瀏覽量
67254 -
uart
+關(guān)注
關(guān)注
22文章
1270瀏覽量
103366 -
串口通信
+關(guān)注
關(guān)注
34文章
1636瀏覽量
56603 -
利爾達(dá)
+關(guān)注
關(guān)注
1文章
231瀏覽量
10086
發(fā)布評論請先 登錄
Cat.1網(wǎng)絡(luò)會取代NB-IoT技術(shù)嗎?
廣和通LTE Cat.1模組L610通過OpenHarmony兼容性測評
后疫情時(shí)代,利爾達(dá)Cat.1的智慧之路
基于Cat.1模組的共享家電解決方案優(yōu)勢分析
什么是Cat.1 Cat.1如何推動IoT發(fā)展
利爾達(dá)全球首發(fā)基于移芯EC618平臺的Cat1模組
基于移芯EC618平臺的利爾達(dá)模組—Cat.1的新選擇

Cat.1熱度居高不下?利爾達(dá) NT26E系列模組帶來更多新選擇

Cat.1模組再添新選擇,利爾達(dá)推出NT26U提供多元應(yīng)用思路

Cat.1熱度居高不下?利爾達(dá) NT26E系列模組帶來更多新選擇!

Cat.1模組再添新選擇,利爾達(dá)推出NT26U提供多元應(yīng)用思路

付款秒入賬?全靠利爾達(dá)這款Cat.1模組掃碼神器

利爾達(dá)NB-IoT &amp;Cat.1 產(chǎn)測應(yīng)用指導(dǎo)

蜂窩行業(yè)復(fù)蘇,利爾達(dá)Cat.1模組出貨量穩(wěn)步增長

評論