||
串口作為Air780EPM模塊的核心通信接口,承擔著設備控制、數據傳輸及外設交互等關鍵功能,在物聯網終端、智能設備、工業自動化等場景中不可或缺。
一、概述
串口作為 Air780EPM 模塊最最主要的通信接口,承擔著控制,數據傳輸,外設通信等重要功能。基本上絕大部分的 Cat.1 應用場景都會用到。而 Air780EPM 模塊的串口特性和使用要求上與通常的 MCU 串口會有些不同,導致在第一次用 Air780EPM 模塊做設計時容易踩到一些坑。
特別說明: Air780EPM 不支持AT指令操作,3 個 UART ( UART1 UART2 UART3) 僅用于 LuatOS 二次開發使用;
本文主要從硬件設計的角度,著重講解串口設計中的一些關鍵注意點,軟件開發方面不做深入探討。
二、串口相關管腳
Air780EPM 支持 4 個串口,分別是主串口 UART1(MAIN_UART), UART2(AUX_UART)和UART3, 調試串口 UART0(DBG_UART)。對應的管腳如下:
擴展串口 UART2 和 UART3 從硬件上的電氣特性來說與主串口一樣(但是不能支持休眠喚醒功能)。
調試串口 UART0,用來輸出模塊的運行日志。 調試串口固定波特率 961200 不可更改,不建議連接任何外設,但建議設計時預留測試點。調試串口日志數據有專門的協議,如果用普通的串口工具抓取會顯示亂碼,只有用專用調試工具,如有需要請聯系官方技術人員。 對于 openCPU 二次開發應用來說,調試串口可以配置為一般串口使用,但是要注意,即使配置為一般串口在開機時軟件跑起來前的這段時間內,仍然會輸出調試日志,這就有可能對外接的外設造成誤動作。同理,將調試串口配置為 GPIO 使用時也會有這個問題。因此萬不得已情況下不要使用調試串口做其他功能。
四、硬件設計指導
主串口的型號命名很容易讓人聯想到 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 功能。連接方式如下:
甚至流控管腳也不是必須,就變成了 3 線串口:
Air780EPM 的串口是 TTL 電平串口,TTL 電平串口會有輸入輸出判別門限,如下圖。
同時,外接 MCU 或者外設的 TTL 電平串口同樣有判別門限,一般來說,TTL 電平的判別門限高低取決于 IO 供電電平 VDD 的高低。如果串口雙方的判別門限差別較大,一方的輸出高電平落在對方的高電平判別門限下,就容易出現誤判的現象,雖說 Air780EPM 可以通過 100 管腳來選擇串口電平,但也僅有 1.8V 和 3.3V 兩個檔位,無法覆蓋全部情況,在串口雙方電平不一致的情況,就要增加電平轉換電路來轉換通信電平。
例如,模塊串口電平 3.3V, MCU 串口電平 3.0V。按照上圖判別門限,模塊的輸入高判別門限為 0.7x3.3=2.32V,所以 MCU 串口高電平輸出為 3V,高于模塊的輸入高判別門限,能夠穩定判斷。這種情況下即使 MCU 與模塊的電平不一致,直接連接也不會造成通信問題。通常這種情況下,無需電平轉換,只需要在窗口 TX RX 型號線上串聯限流電阻即可,限流電阻用于減小串口電平不匹配造成的漏電,通常按經驗串聯 1K 電阻即可,注意串聯電阻不宜過大,會影響串口型號的上升下降時間,從而影響串口信號質量。
注意:不要只看判別門限,還要考慮串口的耐壓,即使落在判別門限內,但是一方高電平高于對方的 IO 耐壓值的情況下就不能要串聯電阻的方式,還是老老實實加串口電平轉換。一般來說雙方的電平差不宜超過 0.5V
在串口波特率不高的情況下(如 115200),可以通過 NPN 晶體管的方式進行電平轉換,參考設計如下圖,這種方式的優點:成本低; 劣勢:低電平下會被三極管的飽和管壓降抬高(通常在 0.1v 左右,不影響通信);開關速度不夠,超過 460800 波特率時不建議用這種方式。
設計注意:
對于三極管選型并沒有嚴格要求,通用的3904NPN三極管都能滿足要求
電平轉換芯片方案:
電平轉換芯片,對成本不敏感的話,優先考慮用電平轉換芯片,無論速度,可靠性都很完美。對于設計方面只要注意芯片選型,同時模塊端參考電平注意用 AGPIO3,其他的參考具體芯片參考設計即可,沒有太多注意事項。
考慮到電平轉換芯片價格與通道數量成正相關,也可以采用 TX RX 用雙通道電平轉換芯片,其他流控信號用晶體管或者分壓方式來做電平轉換。兼顧性能和成本。
電平轉換芯片選型:
五、總結
雖然串口這個硬件總線原理簡單,速率低速,設計也不復雜,但是對于 Cat.1 通信系統尤其是低功耗物聯網應用,串口的設計就會牽涉到休眠和功耗,因此在設計中還是要有足夠的重視。