在工業自動化時代,高效串口通信是提升效率的關鍵。Air8000多串口解決方案簡化了連接,但硬件設計中的細節決定成敗。聚焦關鍵注意點,從接口配置到信號調理,揭示如何通過設計優化,實現穩定、低延遲的串口通信。
本文主要從硬件設計的角度,分享串口設計中的一些關鍵注意點,軟件開發方面不做深入探討。

一、串口相關管腳
Air8000支持4個串口,分別是:
主串口:UART1;
擴展串口:UART3、UART11、UART12;
對應的管腳如下:

其中UART3可以復用,可使用pins_Air8000.json進行復用。
例如:需要38、39管腳復用為UART3,可以如下配置。

Air8000系列管腳最新映射表下載:
https://docs.openluat.com/air8000/luatos/hardware/design/uart/
二、串口功能特性
2.1 主串口特性
主串口UART1用于模塊的數據傳輸和外部通信及模塊控制,特性包括:
TTL電平串口,電平為3.3V;
待機狀態下為高電平;
支持模組休眠喚醒功能(LPUART)。
Air8000模組在休眠時,所有串口均為關閉狀態,只有主串口支持接收串口數據喚醒模組。
注意:在非9600的其他波特率下,進行串口收發數據喚醒時,會丟失前幾個字節。
2.2 擴展串口
擴展串口UART3、UART11、UART12,電氣特性與主串口相同,但不支持休眠喚醒功能。
2.3 注意事項
UART管腳均可作為485通信,但是需要注意如下區別。
1)串口ID小于10時:485的控制IO需要選用GPIO ID需要小于128;
2)串口ID大于10時:485控制IO需要選用GPIO ID大于或者等于128。
三、硬件設計指導
3.1 串口的連接方式
模組串口遵循MODEM串口標準,DTR、DSR、CTS、RTS信號采用直連方式(不要交叉連接),與標準RS232連接方式不同。
在物聯網串口應用中,通常保留TX/RX加流控管腳的5線串口形式,但模組的CTS管腳起標準RTS功能,RTS管腳起標準CTS功能。
流控管腳也可省略,形成3線串口(RX/TX/GND)。 主串口的型號命名很容易讓人聯想到RS232標準的DB9接口,其實不然,模組的串口連接方式與標準RS232連接方式有所不同。
標準RS232串口連接方式如下圖所示,特點是交叉連接:

而模組串口遵循的是早期賀氏(HAYES)公司制定的MODEM串口標準,在這個標準下,DTR/DSR/CTS/RTS信號的功能有所不同。
MODEM串口標準標準下,DTR/DSR/CTS/RTS采用的是直連方式。
如下圖示:

在逐漸的演變過程中,DCD/DSR/RI逐漸演變為其他的獨立功能,在物聯網串口應用中僅保留T/RX加流控管腳的5線串口的形式。
但是CTS/RTS的命名規則保留了下來,雖然CTS/RTS采用直連的方式,但是實際上模組的CTS管腳起到的功能是標準RTS功能;模組RTS管腳起到的功能是標準CTS功能。
5線串口連接方式如下:

甚至流控管腳也不是必須,就變成了3線串口:

3.2 串口的電平轉換
Air8000的串口是TTL電平串口,TTL電平串口會有輸入輸出判別門限,如下圖:

同時,外接MCU或者外設的TTL電平串口同樣有判別門限。
一般來說,TTL電平的判別門限高低取決于IO供電電平VDD的高低。如果串口雙方的判別門限差別較大,一方的輸出高電平落在對方的高電平判別門限下,就容易出現誤判的現象。
在串口雙方電平不一致的情況,就要增加電平轉換電路來轉換通信電平。
1)雙方模組串口電平差別不大的情況
例如,模組串口電平3.3V,MCU串口電平3.0V。按照上圖判別門限,模組的輸入高判別門限為:
0.7x3.3=2.31V
MCU串口高電平輸出為3V,高于模組的輸入高判別門限,能夠穩定判斷。這種情況下即使MCU與模組的電平不一致,直接連接也不會造成通信問題。
通常這種情況下,無需電平轉換,只需要在串口TX/RX信號線上串聯限流電阻即可。
限流電阻用于減小串口電平不匹配造成的漏電,通常按經驗串聯1K電阻即可,注意串聯電阻不宜過大,會影響串口信號的上升下降時間,從而影響串口信號質量。

需要特別注意:
不要只看判別門限,還要考慮串口的耐壓,即使落在判別門限內,但是一方高電平高于對方的IO耐壓值的情況下就不能要串聯電阻的方式,還是老老實實加串口電平轉換。
一般來說,雙方的電平差不宜超過0.5V。
2)晶體管的電平轉方案
在串口波特率不高的情況下(如115200),可以通過NPN晶體管的方式進行電平轉換。
優點:成本低;
劣勢:低電平下會被三極管的飽和管壓降抬高(通常在0.1V左右,不影響通信);開關速度不夠,超過460800波特率時不建議用這種方式。
參考設計及注意事項如下:


3)電平轉換芯片方案
對成本不敏感的話,優先考慮用電平轉換芯片,無論速度,可靠性都很完美。
對于設計方面只要注意芯片選型,同時模組端參考電平注意用AGPIO3,其他的參考具體芯片參考設計即可,沒有太多注意事項。

考慮到電平轉換芯片價格與通道數量成正相關,也可以采用TX/RX用雙通道電平轉換芯片,其他流控信號用晶體管或者分壓方式來做電平轉換,兼顧性能和成本。

今天的內容就分享到這里了~
審核編輯 黃宇
-
串口通信
+關注
關注
34文章
1662瀏覽量
57971 -
硬件設計
+關注
關注
18文章
459瀏覽量
45621
發布評論請先 登錄
Air8000 模塊 CAN 接口實戰開發:從入門到配置的完整流程指南
串口通信基石:Air8000下Modbus RTU串口初始化詳解!
雙 Air8000 核心板構建 BLE 中心模式通信系統全流程
一招破解音頻硬件困局:Air8000參考設計讓開發零門檻
BLE 5.4時代下,Air8000藍牙通知與手機讀寫操作實戰攻略
揭秘Air8000對講黑科技:AirTalk+MQTT開發示例深度解析
是否必須使用LuatIO?Air8000 GPIO配置與設計規范深度解析
高效開發:解鎖Air8000 LuatOS softAP配網功能的核心技術!
如何用Air8000打造無線接入點?AP模式操作指南
LuatOS藍牙配網開發全攻略:以Air8000為核心實戰教學
LuatOS藍牙配網全流程解析:Air8000開發入門必備
Air8000核心板SoftAP配網方案:快速構建無線接入點
Air8000核心板Wi-Fi應用之SoftAP配網方案詳解!
多功能+高擴展能力加持,Air8000開發板最新資料
Air8000 Wi-Fi功能實操指南:固件升級與網絡配置步驟!
高效串口通信的秘密:Air8000硬件設計中的關鍵注意點
評論