||
在工業(yè)通信中,串口擴展的可靠性至關(guān)重要。Air8000多串口解決方案提供無憂擴展能力,但設(shè)計需兼顧技巧與注意事項:從ESD防護到線纜選型,全面解析,助力工程師構(gòu)建穩(wěn)定、安全的通信系統(tǒng)。
本文主要從硬件設(shè)計的角度,分享串口設(shè)計中的一些關(guān)鍵注意點,軟件開發(fā)方面不做深入探討。
Air8000支持4個串口,分別是:
主串口:UART1;
擴展串口:UART3、UART11、UART12;
對應(yīng)的管腳如下:
其中UART3可以復(fù)用,可使用pins_Air8000.json進行復(fù)用。
例如:需要38、39管腳復(fù)用為UART3,可以如下配置。
Air8000系列管腳最新映射表下載:
https://docs.openluat.com/air8000/luatos/hardware/design/uart/
二、串口功能特性
2.1 主串口特性
主串口UART1用于模塊的數(shù)據(jù)傳輸和外部通信及模塊控制,特性包括:
TTL電平串口,電平為3.3V;
待機狀態(tài)下為高電平;
支持模組休眠喚醒功能(LPUART)。
Air8000模組在休眠時,所有串口均為關(guān)閉狀態(tài),只有主串口支持接收串口數(shù)據(jù)喚醒模組。
注意:在非9600的其他波特率下,進行串口收發(fā)數(shù)據(jù)喚醒時,會丟失前幾個字節(jié)。
擴展串口UART3、UART11、UART12,電氣特性與主串口相同,但不支持休眠喚醒功能。
2.3 注意事項UART管腳均可作為485通信,但是需要注意如下區(qū)別。
1)串口ID小于10時:485的控制IO需要選用GPIO ID需要小于128;
2)串口ID大于10時:485控制IO需要選用GPIO ID大于或者等于128。
三、硬件設(shè)計指導(dǎo)
模組串口遵循MODEM串口標準,DTR、DSR、CTS、RTS信號采用直連方式(不要交叉連接),與標準RS232連接方式不同。
在物聯(lián)網(wǎng)串口應(yīng)用中,通常保留TX/RX加流控管腳的5線串口形式,但模組的CTS管腳起標準RTS功能,RTS管腳起標準CTS功能。
流控管腳也可省略,形成3線串口(RX/TX/GND)。 主串口的型號命名很容易讓人聯(lián)想到RS232標準的DB9接口,其實不然,模組的串口連接方式與標準RS232連接方式有所不同。
標準RS232串口連接方式如下圖所示,特點是交叉連接:
而模組串口遵循的是早期賀氏(HAYES)公司制定的MODEM串口標準,在這個標準下,DTR/DSR/CTS/RTS信號的功能有所不同。
MODEM串口標準標準下,DTR/DSR/CTS/RTS采用的是直連方式。
如下圖示:
在逐漸的演變過程中,DCD/DSR/RI逐漸演變?yōu)槠渌莫毩⒐δ,在物?lián)網(wǎng)串口應(yīng)用中僅保留T/RX加流控管腳的5線串口的形式。
但是CTS/RTS的命名規(guī)則保留了下來,雖然CTS/RTS采用直連的方式,但是實際上模組的CTS管腳起到的功能是標準RTS功能;模組RTS管腳起到的功能是標準CTS功能。
5線串口連接方式如下:
甚至流控管腳也不是必須,就變成了3線串口:
Air8000的串口是TTL電平串口,TTL電平串口會有輸入輸出判別門限,如下圖:
同時,外接MCU或者外設(shè)的TTL電平串口同樣有判別門限。
一般來說,TTL電平的判別門限高低取決于IO供電電平VDD的高低。如果串口雙方的判別門限差別較大,一方的輸出高電平落在對方的高電平判別門限下,就容易出現(xiàn)誤判的現(xiàn)象。
在串口雙方電平不一致的情況,就要增加電平轉(zhuǎn)換電路來轉(zhuǎn)換通信電平。
1)雙方模組串口電平差別不大的情況
例如,模組串口電平3.3V,MCU串口電平3.0V。按照上圖判別門限,模組的輸入高判別門限為:
0.7x3.3=2.31V
MCU串口高電平輸出為3V,高于模組的輸入高判別門限,能夠穩(wěn)定判斷。這種情況下即使MCU與模組的電平不一致,直接連接也不會造成通信問題。
通常這種情況下,無需電平轉(zhuǎn)換,只需要在串口TX/RX信號線上串聯(lián)限流電阻即可。
限流電阻用于減小串口電平不匹配造成的漏電,通常按經(jīng)驗串聯(lián)1K電阻即可,注意串聯(lián)電阻不宜過大,會影響串口信號的上升下降時間,從而影響串口信號質(zhì)量。
需要特別注意:
不要只看判別門限,還要考慮串口的耐壓,即使落在判別門限內(nèi),但是一方高電平高于對方的IO耐壓值的情況下就不能要串聯(lián)電阻的方式,還是老老實實加串口電平轉(zhuǎn)換。
一般來說,雙方的電平差不宜超過0.5V。
2)晶體管的電平轉(zhuǎn)方案
在串口波特率不高的情況下(如115200),可以通過NPN晶體管的方式進行電平轉(zhuǎn)換。
優(yōu)點:成本低;
劣勢:低電平下會被三極管的飽和管壓降抬高(通常在0.1V左右,不影響通信);開關(guān)速度不夠,超過460800波特率時不建議用這種方式。
參考設(shè)計及注意事項如下:
3)電平轉(zhuǎn)換芯片方案
對成本不敏感的話,優(yōu)先考慮用電平轉(zhuǎn)換芯片,無論速度,可靠性都很完美。
對于設(shè)計方面只要注意芯片選型,同時模組端參考電平注意用AGPIO3,其他的參考具體芯片參考設(shè)計即可,沒有太多注意事項。
考慮到電平轉(zhuǎn)換芯片價格與通道數(shù)量成正相關(guān),也可以采用TX/RX用雙通道電平轉(zhuǎn)換芯片,其他流控信號用晶體管或者分壓方式來做電平轉(zhuǎn)換,兼顧性能和成本。
今天的內(nèi)容就分享到這里了~