串口擴(kuò)展方案對(duì)比

一、 前言

串口,原名叫做串行接口(Serial Interface),別名叫COM口(串行通訊端口( cluster communication port ))。憑借接口簡(jiǎn)單,控制靈活,占用資源少等優(yōu)點(diǎn),在嵌入式領(lǐng)域被廣泛使用。甚至?xí)泻芏鄰脑O(shè)備都通過(guò)串行接口與主機(jī)進(jìn)行通信,如GPRS MODEM,GPS芯片,各種模塊。開(kāi)發(fā)人員常常面臨嵌入式系統(tǒng)中主機(jī)串行通信接口不足的問(wèn)題,市面上針對(duì)這種需求衍生出幾種方案。對(duì)比過(guò)后,我們自己也推出了高性?xún)r(jià)比的方案。

二、 方案對(duì)比

一些芯片廠商推出了擴(kuò)展串口芯片,如著名品牌TI就推出了TL16C554系列,為開(kāi)微電子WK2124系列,南京沁恒CH344系列。本人工作過(guò)的某大廠曾經(jīng)用FPGA(CPLD)來(lái)擴(kuò)展串口,門(mén)檻略高。還有用軟件來(lái)實(shí)現(xiàn)的做法,目前我們就選擇這種方式,推出了獨(dú)立功能的模塊(PL731)。
目前用芯片擴(kuò)展,研發(fā)自行用軟件擴(kuò)展是主流,一個(gè)是硬件實(shí)現(xiàn),一個(gè)是軟件實(shí)現(xiàn)。按接口分,有的芯片使用SPI或I2C轉(zhuǎn)串口(WK2124),有的芯片使用USB轉(zhuǎn)串口(CH344)。

2.1 SPI擴(kuò)展串口芯片

SPI擴(kuò)展芯片最高速度支持 10M bit/s,支持最長(zhǎng)256字節(jié)連續(xù)收發(fā),每個(gè)子通道UART的波特率,字長(zhǎng),校驗(yàn)格式可以獨(dú)立設(shè)置,最高提供 2Mbps的通信速率。下圖是其中一款芯片的pin腳說(shuō)明,可以看出芯片提供了SPI接口,4路TTL電平的UART接口,還有電源,復(fù)位,中斷,晶振接口。根據(jù)芯片介紹,該款芯片具有低功耗,精簡(jiǎn)的配置寄存器和控制字,操作簡(jiǎn)單等特性,提供工業(yè)級(jí)芯片。


SPI擴(kuò)展串口芯片pin腳說(shuō)明

2.2 USB擴(kuò)展串口芯片

南京沁恒推出多款USB擴(kuò)展串口芯片,覆蓋1USB接口轉(zhuǎn)2口、4口、8口串行接口。與CH340系列需要專(zhuān)有驅(qū)動(dòng)不同,擴(kuò)展串口系列芯片模擬為USB CDC設(shè)備。用戶(hù)亦可選擇安裝廠家提供的VCP驅(qū)動(dòng),以支持更高級(jí)功能。高端系列芯片USB接口支持480MHz,串口最高速率達(dá)到 6Mbps。以下是該芯片的官方介紹:


CH344芯片介紹

2.3 軟件擴(kuò)展串口模塊

我們與許多嵌入式開(kāi)發(fā)人員一樣,項(xiàng)目中有擴(kuò)展串口的需求,在使用過(guò)第三方擴(kuò)展芯片后,嘗試自己使用軟件實(shí)現(xiàn)。經(jīng)過(guò)多個(gè)項(xiàng)目驗(yàn)證成功后,我們把該功能獨(dú)立出來(lái),做成模塊,提供給有類(lèi)似需求的同行。
與沁恒CH344系列芯片類(lèi)似,PL731串口擴(kuò)展模塊使用USB轉(zhuǎn)多路串口的方案,在系統(tǒng)中模擬為USB CDC設(shè)備,windows 10以上自帶驅(qū)動(dòng),Linux 內(nèi)核自帶驅(qū)動(dòng)和源碼。應(yīng)用層開(kāi)發(fā)跟普通串口沒(méi)有差異,使用非常簡(jiǎn)單。模塊通過(guò)軟件模擬,實(shí)現(xiàn)1個(gè)USB接口擴(kuò)展7個(gè)TTL電平串口,每個(gè)串口還帶RS485發(fā)送使能控制pin腳,非常適用于Modbus應(yīng)用,是一個(gè)低成本高性?xún)r(jià)比的方案。


USB轉(zhuǎn)7路串口方案圖

PL731 模塊特性:

  • 12 Mbps全速USB 2.0設(shè)備接口,模塊封裝,硬件只需要連接USB和TTL串口。
  • 4個(gè)標(biāo)準(zhǔn)串口,最高波特率3M bps;3個(gè)模擬串口,最高波特率115200 bps。
  • Windows 10以上操作系統(tǒng)內(nèi)置驅(qū)動(dòng),Linux內(nèi)核自帶USB CDC驅(qū)動(dòng)。
  • 硬件全雙工串口,支持TTL電平,支持硬件外加電平轉(zhuǎn)換RS232或RS485。
  • 串口支持1個(gè)起始位,8個(gè)數(shù)據(jù)位,1-2個(gè)停止位,奇偶校驗(yàn)。
  • 每個(gè)串口內(nèi)置1024字節(jié)的接收FIFO,512字節(jié)的發(fā)送FIFO。
  • 不支持硬件流控。支持基于FIFO的發(fā)送方向軟件流控。
  • 支持半雙工,提供串口正在發(fā)送狀態(tài)指示TNOW,可用于控制RS485收發(fā)切換。
  • 串口接收信號(hào)允許波特率誤差2%,發(fā)送信號(hào)波特率誤差<1.2%。
  • 提供7路串口打開(kāi)關(guān)閉狀態(tài)指示GPIO(LEDx)。
  • 支持批量芯片VID、PID、產(chǎn)品信息以及廠商信息等參數(shù)定制服務(wù)。
  • 通過(guò)USB接口供電(DC 5V)。
  • 超小體積嵌入式封裝,郵票孔接口。
  • 溫度范圍:-40℃~85℃(工業(yè)級(jí))。

三、總結(jié)

專(zhuān)用芯片實(shí)現(xiàn)串口擴(kuò)展可靠性比較高,軟件實(shí)現(xiàn)主打高性?xún)r(jià)比。選用SPI還是USB接口主要看項(xiàng)目硬件方案和研發(fā)人員技術(shù)傾向。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容