以太網(wǎng)相關(guān)接口主要包括:MII/RMII/SMII以及GMII/RGMII/SGMII接口。
一、MII接口
MII(Media Independent Interface)介質(zhì)無(wú)關(guān)接口或稱(chēng)為媒體獨(dú)立接口,它是IEEE-802.3定義的以太網(wǎng)行業(yè)標(biāo)準(zhǔn)。它包括一個(gè)數(shù)據(jù)接口和一個(gè)MAC和PHY之間的管理接口。“媒體獨(dú)立”表明在不對(duì)MAC硬件重新設(shè)計(jì)或替換的情況下,任何類(lèi)型的PHY設(shè)備都可以正常工作。
MII接口提供了MAC與PHY之間、PHY與STA(Station Management)之間的互聯(lián)技術(shù),該接口支持10Mb/s與100Mb/s的數(shù)據(jù)傳輸速率,數(shù)據(jù)傳輸?shù)奈粚挒?位。
MII接口可分為MAC模式和PHY模式,一般說(shuō)來(lái)MAC和PHY對(duì)接,但是MAC和MAC也是可以對(duì)接的。?以前的10M的MAC層芯片和物理層芯片之間傳送數(shù)據(jù)是通過(guò)一根數(shù)據(jù)線來(lái)進(jìn)行的,其時(shí)鐘是10M,在100M中,如果也用一根數(shù)據(jù)線來(lái)傳送的話(huà),時(shí)鐘需要100M,這會(huì)帶來(lái)一些問(wèn)題,所以定義了MII接口,它是用4根數(shù)據(jù)線來(lái)傳送數(shù)據(jù)的,這樣在傳送100M數(shù)據(jù)時(shí),時(shí)鐘就會(huì)由100M降低為25M,而在傳送10M數(shù)據(jù)時(shí),時(shí)鐘會(huì)降低到2.5M,這樣就實(shí)現(xiàn)了10M和100M的兼容。
MII接口主要包括四個(gè)部分:一是從MAC層到物理層的發(fā)送數(shù)據(jù)接口,二是從物理層到MAC層的接收數(shù)據(jù)接口,三是從物理層到MAC層的狀態(tài)指示信號(hào),四是MAC層和物理層之間傳送控制和狀態(tài)信息的MDIO接口。
MII接口的MAC模式定義:
MII接口PHY模式定義:
MDIO接口包括兩根信號(hào)線:MDC和MDIO,通過(guò)它MAC層芯片(或其它控制芯片)可以訪問(wèn)物理層芯片的寄存器(前面100M物理層芯片中介紹的寄存器組,但不僅限于100M物理層芯片,10M物理層芯片也可以擁有這些寄存器),并通過(guò)這些寄存器來(lái)對(duì)物理層芯片進(jìn)行控制和管理。
MDIO管理接口如下:
MDC:管理接口的時(shí)鐘,它是一個(gè)非周期信號(hào),信號(hào)的最小周期(實(shí)際是正電平時(shí)間和負(fù)電平時(shí)間之和)為400ns,最小正電平時(shí)間和負(fù)電平時(shí)間為160ns,最大的正負(fù)電平時(shí)間無(wú)限制。它與TX_CLK和RX_CLK無(wú)任何關(guān)系。
MDIO是一根雙向的數(shù)據(jù)線,用來(lái)傳送MAC層的控制信息和物理層的狀態(tài)信息。
二、RMII接口
MII接口也有一些不足之處,主要是其接口信號(hào)線很多,發(fā)送和接收和指示接口有14根數(shù)據(jù)線(不包括MDIO接口的信號(hào)線,因?yàn)槠浔凰蠱II接口所共享),當(dāng)交換芯片的端口數(shù)據(jù)較多時(shí),會(huì)造成芯片的管腳數(shù)目很多的問(wèn)題,這給芯片的設(shè)計(jì)和單板的設(shè)計(jì)都帶來(lái)了一定的問(wèn)題。為了解決這些問(wèn)題,人們?cè)O(shè)計(jì)了兩種新的MII接口,它們是RMII接口(Reduced MII接口)和SMII接口(Serial MII接口)。這兩種接口都減少了MII接口的數(shù)據(jù)線,不過(guò)它們一般只用在以太網(wǎng)交換機(jī)的交換MAC芯片和多口物理層芯片中,而很少用于單口的MAC層芯片和物理層芯片中。RMII接口和SMII接口都可以用于10M以太網(wǎng)和100M以太網(wǎng),但不可能用于1000M以太網(wǎng),因?yàn)榇藭r(shí)時(shí)鐘頻率太高,不可能實(shí)現(xiàn)。
從圖中可以看到,RMII接口相對(duì)于MII接口減少了一半的連接線,只有8根接口線。
TXD[1:0]:數(shù)據(jù)發(fā)送信號(hào)線,數(shù)據(jù)位寬為2,是MII接口的一半;
RXD[1:0]:數(shù)據(jù)接收信號(hào)線,數(shù)據(jù)位寬為2,是MII接口的一半;
TX_EN(Transmit Enable):數(shù)據(jù)發(fā)送使能信號(hào),與MII接口中的該信號(hào)線功能一樣;
RX_ER(Receive Error):數(shù)據(jù)接收錯(cuò)誤提示信號(hào),與MII接口中的該信號(hào)線功能一樣;
CLK_REF:是由外部時(shí)鐘源提供的50MHz參考時(shí)鐘;?與MII接口不同,MII接口中的接收時(shí)鐘和發(fā)送時(shí)鐘是分開(kāi)的,而且都是由PHY芯片提供給MAC芯片的。這里需要注意的是,由于數(shù)據(jù)接收時(shí)鐘是由外部晶振提供而不是由載波信號(hào)提取的,所以在PHY層芯片內(nèi)的數(shù)據(jù)接收部分需要設(shè)計(jì)一個(gè)FIFO,用來(lái)協(xié)調(diào)兩個(gè)不同的時(shí)鐘,在發(fā)送接收的數(shù)據(jù)時(shí)提供緩沖。PHY層芯片的發(fā)送部分則不需要FIFO,它直接將接收到的數(shù)據(jù)發(fā)送到MAC就可以了。
CRS_DV:此信號(hào)是由MII接口中的RX_DV和CRS兩個(gè)信號(hào)合并而成。當(dāng)介質(zhì)不空閑時(shí),CRS_DV和RE_CLK相異步的方式給出。當(dāng)CRS比RX_DV早結(jié)束時(shí)(即載波消失而隊(duì)列中還有數(shù)據(jù)要傳輸時(shí)),就會(huì)出現(xiàn)CRS_DV在半位元組的邊界以25MHz/2.5MHz的頻率在0、1之間的來(lái)回切換。因此,MAC能夠從 CRS_DV中精確的恢復(fù)出RX_DV和CRS。在100Mbps速率時(shí),TX/RX每個(gè)時(shí)鐘周期采樣一個(gè)數(shù)據(jù);在10Mbps速率時(shí),TX/RX每隔10個(gè)周期采樣一個(gè)數(shù)據(jù),因而TX/RX數(shù)據(jù)需要在數(shù)據(jù)線上保留10個(gè)周期,相當(dāng)于一個(gè)數(shù)據(jù)發(fā)送10次。當(dāng)PHY層芯片收到有效的載波信號(hào)后,CRS_DV信號(hào)變?yōu)橛行В藭r(shí)如果FIFO中還沒(méi)有數(shù)據(jù),則它會(huì)發(fā)送出全0的數(shù)據(jù)給MAC,然后當(dāng)FIFO中填入有效的數(shù)據(jù)幀,數(shù)據(jù)幀的開(kāi)頭是“101010---”交叉的前導(dǎo)碼,當(dāng)數(shù)據(jù)中出現(xiàn)“01”的比特時(shí),代表正式數(shù)據(jù)傳輸開(kāi)始,MAC芯片檢測(cè)到這一變化,從而開(kāi)始接收數(shù)據(jù)。當(dāng)外部載波信號(hào)消失后,CRS_DV會(huì)變?yōu)闊o(wú)效,但如果FIFO中還有數(shù)據(jù)要發(fā)送時(shí),CRS_DV在下一周期又會(huì)變?yōu)橛行В缓笤贌o(wú)效再有效,直到FIFO中數(shù)據(jù)發(fā)送完為止。在接收過(guò)程中如果出現(xiàn)無(wú)效的載波信號(hào)或者無(wú)效的數(shù)據(jù)編碼,則RX_ER會(huì)變?yōu)橛行В硎疚锢韺有酒邮粘鲥e(cuò)。
三、SMII接口
SMII即Serial MII,串行MII的意思,跟RMII相比,連線進(jìn)一步減少到4根;
TXD:發(fā)送數(shù)據(jù)信號(hào),位寬為1;
RXD:接收數(shù)據(jù)信號(hào),位寬為1;
SYNC:收發(fā)數(shù)據(jù)同步信號(hào),每10個(gè)時(shí)鐘周期置1次高電平,指示同步。
CLK_REF:所有端口共用的一個(gè)參考時(shí)鐘,頻率為125MHz。?為什么100Mbps速率要用125MHz時(shí)鐘?因?yàn)樵诿?位數(shù)據(jù)中會(huì)插入2位控制信號(hào)。
TXD/RXD以10比特為一組,以SYNC為高電平來(lái)指示一組數(shù)據(jù)的開(kāi)始,在SYNC變高后的10個(gè)時(shí)鐘周期內(nèi),TXD上依次輸出的數(shù)據(jù)是:TXD[7:0]、TX_EN、TX_ER,控制信號(hào)的含義與MII接口中的相同;RXD上依次輸出的數(shù)據(jù)是:RXD[7:0]、RX_DV、CRS,RXD[7:0]的含義與RX_DV有關(guān),當(dāng)RX_DV為有效時(shí)(高電平),RXD[7:0]上傳輸?shù)氖俏锢韺咏邮盏臄?shù)據(jù)。當(dāng)RX_DV為無(wú)效時(shí)(低電平),RXD[7:0]上傳輸?shù)氖俏锢韺拥臓顟B(tài)信息數(shù)據(jù)。
四、SSMII接口
SSMII即Serial Sync MII,叫串行同步接口,跟SMII接口很類(lèi)似,只是收發(fā)使用獨(dú)立的參考時(shí)鐘和同步時(shí)鐘,不再像SMII那樣收發(fā)共用參考時(shí)鐘和同步時(shí)鐘,傳輸距離比SMII更遠(yuǎn)。
五、SSSMII接口
SSSMII即Source Sync Serial MII,叫源同步串行MII接口,SSSMII與SSMII的區(qū)別在于參考時(shí)鐘和同步時(shí)鐘的方向,SSMII的TX/RX參考時(shí)鐘和同步時(shí)鐘都是由PHY芯片提供的,而SSSMII的TX參考時(shí)鐘和同步時(shí)鐘是由MAC芯片提供的,RX參考時(shí)鐘和同步時(shí)鐘是由PHY芯片提供的,所以顧名思義叫源同步串行。
六、GMII接口
與MII接口相比,GMII的數(shù)據(jù)寬度由4位變?yōu)?位,GMII接口中的控制信號(hào)如TX_ER、TX_EN、RX_ER、RX_DV、CRS和COL的作用同MII接口中的一樣,發(fā)送參考時(shí)鐘GTX_CLK和接收參考時(shí)鐘RX_CLK的頻率均為125MHz(1000Mbps/8=125MHz)。
有一點(diǎn)需要特別說(shuō)明下:發(fā)送參考時(shí)鐘GTX_CLK,它和MII接口中的TX_CLK是不同的,MII接口中的TX_CLK是由PHY芯片提供給MAC芯片的,?而GMII接口中的GTX_CLK是由MAC芯片提供給PHY芯片的?,兩者方向不一樣。在實(shí)際應(yīng)用中,絕大多數(shù)GMII接口都是兼容MII接口的,所以,一般的GMII接口都有兩個(gè)發(fā)送參考時(shí)鐘:TX_CLK和GTX_CLK(兩者的方向是不一樣的),在用作MII模式時(shí),使用TX_CLK和8根數(shù)據(jù)線中的4根。
七、RGMII接口
RGMII即Reduced GMII,是GMII的簡(jiǎn)化版本,將接口信號(hào)線數(shù)量從24根減少到14根(COL/CRS端口狀態(tài)指示信號(hào),這里沒(méi)有畫(huà)出),時(shí)鐘頻率仍舊為125MHz,TX/RX數(shù)據(jù)寬度從8位變?yōu)?位,為了保持1000Mbps的傳輸速率不變,RGMII接口在時(shí)鐘的上升沿和下降沿都采樣數(shù)據(jù)。在參考時(shí)鐘的上升沿發(fā)送GMII接口中的TXD[3:0]/RXD[3:0],在參考時(shí)鐘的下降沿發(fā)送GMII接口中的TXD[7:4]/RXD[7:4]。RGMI同時(shí)也兼容100Mbps和10Mbps兩種速率,此時(shí)參考時(shí)鐘速率分別為25MHz和2.5MHz。TX_EN信號(hào)線上傳送TX_EN和TX_ER兩種信息,在TX_CLK的上升沿發(fā)送TX_EN,下降沿發(fā)送TX_ER;同樣的,RX_DV信號(hào)線上也傳送RX_DV和RX_ER兩種信息,在RX_CLK的上升沿發(fā)送RX_DV,下降沿發(fā)送RX_ER。
八、SGMII接口
SGMII即Serial GMII,串行GMII,收發(fā)各一對(duì)差分信號(hào)線,?時(shí)鐘頻率625MHz?,在時(shí)鐘信號(hào)的上升沿和下降沿均采樣,參考時(shí)鐘RX_CLK由PHY提供,是可選的,主要用于MAC側(cè)沒(méi)有時(shí)鐘的情況,一般情況下,RX_CLK不使用,收發(fā)都可以從數(shù)據(jù)中恢復(fù)出時(shí)鐘。在TXD發(fā)送的串行數(shù)據(jù)中,每8比特?cái)?shù)據(jù)會(huì)插入TX_EN/TX_ER 兩比特控制信息,同樣,在RXD接收數(shù)據(jù)中,每8比特?cái)?shù)據(jù)會(huì)插入RX_DV/RX_ER兩比特控制信息,所以總的數(shù)據(jù)速率為1.25Gbps=625Mbps*2。其實(shí),大多數(shù)MAC芯片的SGMII接口都可以配置成SerDes接口(在物理上完全兼容,只需配置寄存器即可),直接外接光模塊,而不需要PHY層芯片,此時(shí)時(shí)鐘速率仍舊是625MHz,不過(guò)此時(shí)跟SGMII接口不同,SGMII接口速率被提高到1.25Gbps是因?yàn)椴迦肓丝刂菩畔ⅲ鳶erDes端口速率被提高是因?yàn)檫M(jìn)行了8B/10B變換,本來(lái)8B/10B變換是PHY芯片的工作,在SerDes接口中,因?yàn)橥饷娌唤覲HY芯片,此時(shí)8B/10B變換在MAC芯片中完成了。
總結(jié)下:
MII接口 | 14根數(shù)據(jù)線 | 分為MAC模式和PHY模式,一般說(shuō)來(lái)MAC和PHY對(duì)接 |
---|---|---|
RMII(Reduced MII)接口 | 8根數(shù)據(jù)線 | 一般只用在以太網(wǎng)交換機(jī)的交換MAC芯片和多口物理層芯片中;可以用于10M以太網(wǎng)和100M以太網(wǎng),但不可能用于1000M以太網(wǎng) |
SMII(Serial MII)接口 | 4根數(shù)據(jù)線 | 一般只用在以太網(wǎng)交換機(jī)的交換MAC芯片和多口物理層芯片中;可以用于10M以太網(wǎng)和100M以太網(wǎng),但不可能用于1000M以太網(wǎng) |
SSMII接口 | ? | 即Serial Sync MII,叫串行同步接口 |
SSSMII接口 | ? | 即Source Sync Serial MII,叫源同步串行MII接口 |
GMII接口 | 24根數(shù)據(jù)線 | 千兆網(wǎng)的MII接口 |
RGMII接口 | 14根數(shù)據(jù)線 | 千兆網(wǎng)的MII接口 |
SGMII接口 | 2根數(shù)據(jù)線 | 千兆網(wǎng)的MII接口 |
淺談串口轉(zhuǎn)以太網(wǎng)技術(shù)
1.概述
串口轉(zhuǎn)以太網(wǎng)目前可以采用串口轉(zhuǎn)以太網(wǎng)模塊來(lái)實(shí)現(xiàn),變得非常簡(jiǎn)單易用,但是在該技術(shù)中出現(xiàn)的一些新問(wèn)題、使用誤區(qū)需要引起注意。串口轉(zhuǎn)以太網(wǎng)并不是簡(jiǎn)單傳輸媒介的變化,而是串口到TCP/IP的協(xié)議轉(zhuǎn)化。其中關(guān)系到的關(guān)鍵技術(shù)包括:TCP/IP的工作模式問(wèn)題、串口分幀技術(shù)、9位技術(shù)。這里詳細(xì)分析這些串口轉(zhuǎn)網(wǎng)口的技術(shù)。
2.澄清一個(gè)概念:到底是串口轉(zhuǎn)以太網(wǎng)還是串口轉(zhuǎn)TCP/IP?
串口一般來(lái)說(shuō)就是UART,它實(shí)際只定義了數(shù)據(jù)鏈路層的規(guī)范,也就是起始位、數(shù)據(jù)位、停止位。但是在不同的物理層又分為:TTL串口、RS232串口、RS485串口等。
TTL串口:它是MCU芯片之間進(jìn)行數(shù)據(jù)通信的串口,它以+5V(或者+3.3V)表示1,以GND表示0。
RS232串口:它是實(shí)現(xiàn)設(shè)備之間通信的串口,其主要將信號(hào)電壓從0~5V的電壓變?yōu)椤?5V(實(shí)際一般為±12V)。電壓的增加,增大了數(shù)據(jù)傳輸?shù)木嚯x和可靠性。
RS485串口:它是實(shí)現(xiàn)遠(yuǎn)距離通信的串口,可以實(shí)現(xiàn)上千米的數(shù)據(jù)傳輸。其主要特征是用差模信號(hào)(A、B兩根線之間的電壓)代替了RS232共模信號(hào)(信號(hào)線和GND之間的電壓),從而能夠抵抗共模干擾,實(shí)現(xiàn)更遠(yuǎn)距離的傳。
如果按照ISO的7層模型(物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層、會(huì)話(huà)層、表示層、應(yīng)用層)來(lái)分的話(huà),串口實(shí)際上只包含了物理層、數(shù)據(jù)鏈路層。而TCP/IP協(xié)議應(yīng)該屬于網(wǎng)絡(luò)層和傳輸層。所以串口轉(zhuǎn)TCP/IP并不準(zhǔn)確。以太網(wǎng)屬于物理層和數(shù)據(jù)鏈路層,所以串口轉(zhuǎn)以太網(wǎng)更加準(zhǔn)確。由于目前在以太網(wǎng)之上運(yùn)行的協(xié)議多半是TCP/IP協(xié)議,所以串口轉(zhuǎn)以太網(wǎng)也可以說(shuō)成是串口轉(zhuǎn)TCP/IP。
3.串口轉(zhuǎn)網(wǎng)口關(guān)鍵技術(shù)一:TCP/IP的工作模式問(wèn)題
串口轉(zhuǎn)以太網(wǎng),并不是簡(jiǎn)單物理層和數(shù)據(jù)鏈路層的轉(zhuǎn)化。由于串口協(xié)議本身不具有網(wǎng)絡(luò)層和傳輸層,串口轉(zhuǎn)以太網(wǎng),實(shí)際是將串口的數(shù)據(jù)作為T(mén)CP/IP的應(yīng)用層數(shù)據(jù),用TCP/IP封裝傳輸?shù)姆绞健CP/IP的應(yīng)用層數(shù)據(jù)是TCP/IP所要傳送的真正有效的數(shù)據(jù)。例如用戶(hù)通過(guò)socket的recv()和send()函數(shù)接收和發(fā)送的實(shí)際是應(yīng)用層數(shù)據(jù)。這樣通過(guò)串口轉(zhuǎn)TCP/IP用戶(hù)就可以用recv()和send()函數(shù)收發(fā)串口數(shù)據(jù)了。但是TCP/IP并不只是recv()和send()這么簡(jiǎn)單,根據(jù)工作模式的不同,它關(guān)系到連接、關(guān)閉、監(jiān)聽(tīng)等,這是串口轉(zhuǎn)網(wǎng)口后需要增加處理的部分。TCP/IP的工作模式可以分為:TCP服務(wù)端模式(TCP Server)、TCP客戶(hù)端模式(TCP Client)、UDP模式。
UDP模式:UDP模式是基于非連接的模式,只要有數(shù)據(jù)發(fā)送即可發(fā)送,不需要事先連接。所以這種模式更加地接近于串口的通信方式。但是UDP協(xié)議無(wú)法保證數(shù)據(jù)不丟失,容易產(chǎn)生誤碼。
TCP模式:TCP模式采用數(shù)據(jù)可靠傳輸機(jī)制,所以可以保證數(shù)據(jù)基本不誤碼、不丟失。在TCP通信中,必然是由通信的兩端構(gòu)成,其中一方是TCP客戶(hù)端,一方是TCP服務(wù)端。TCP客戶(hù)端和TCP服務(wù)端的概念可以用電話(huà)來(lái)類(lèi)比。TCP客戶(hù)端是打電話(huà)的人,而TCP服務(wù)端是接電話(huà)的人。
如何選擇TCP/IP的工作模式?
TCP與UDP的選擇:盡量選擇TCP模式,特別是經(jīng)過(guò)internet的大數(shù)據(jù)量傳輸,udp容易誤碼和丟失。
選擇TCP客戶(hù)端還是TCP服務(wù)器端:請(qǐng)遵循以下原則:原則一:發(fā)起數(shù)據(jù)發(fā)送的一方應(yīng)該選擇為客戶(hù)端。例如一個(gè)數(shù)據(jù)采集系統(tǒng),采集終端應(yīng)該為客戶(hù)端。這是因?yàn)楫?dāng)TCP連接斷開(kāi)的情況下,客戶(hù)端能夠在需要發(fā)送數(shù)據(jù)的時(shí)候主動(dòng)建立連接。而TCP服務(wù)端,只能夠被動(dòng)地接受連接,使得數(shù)據(jù)無(wú)法發(fā)送出去。原則二:IP或者域名固定的一方為服務(wù)器端。例如在有多個(gè)數(shù)據(jù)采集終端,而只有一個(gè)中心服務(wù)器的情況下,中心服務(wù)器應(yīng)該為服務(wù)端。這是因?yàn)椋行姆?wù)器的IP或域名一般是固定的,而采集終端的IP是不斷增加和變化的。中心服務(wù)器難以記住所有的采集終端的IP,所以也難以發(fā)起連接;而采集終端尋找中央服務(wù)器就比較容易。
4.串口轉(zhuǎn)網(wǎng)口關(guān)鍵技術(shù)二:串口分幀技術(shù)
串口數(shù)據(jù)是可以連續(xù)不斷發(fā)送的,而以太網(wǎng)數(shù)據(jù)則是以數(shù)據(jù)包為單位發(fā)送的。這樣就關(guān)系到將多長(zhǎng)的串口數(shù)據(jù)打包后作為一個(gè)以太網(wǎng)數(shù)據(jù)包發(fā)送的問(wèn)題。
數(shù)據(jù)包長(zhǎng)度:以太網(wǎng)數(shù)據(jù)包最長(zhǎng)1500多字節(jié),所以在串口轉(zhuǎn)網(wǎng)口轉(zhuǎn)發(fā)器收到1500字節(jié)后必須將其打包發(fā)送。用戶(hù)可以設(shè)定這個(gè)數(shù)據(jù)包長(zhǎng)度上限。
數(shù)據(jù)包間隔:除了數(shù)據(jù)包長(zhǎng)度作為串口分幀的規(guī)則外,一個(gè)更為符合邏輯的方法是通過(guò)數(shù)據(jù)包間隔。當(dāng)串口轉(zhuǎn)TCP/IP轉(zhuǎn)發(fā)器發(fā)現(xiàn)的串口數(shù)據(jù)流中出現(xiàn)了T毫秒的空閑時(shí)間時(shí),則認(rèn)為之前收到的串口數(shù)據(jù)可以作為一個(gè)以太網(wǎng)數(shù)據(jù)包發(fā)送了。這里的T就是用戶(hù)設(shè)定的數(shù)據(jù)包間隔。
5.串口轉(zhuǎn)網(wǎng)口關(guān)鍵技術(shù)三:9位技術(shù)
以太網(wǎng)數(shù)據(jù)是以字節(jié)Byte計(jì)算的每個(gè)字節(jié)都是8位,但是串口數(shù)據(jù)則有可能出現(xiàn)9位,第9位常常用于區(qū)分是地址幀還是數(shù)據(jù)幀,1表示地址幀0表示數(shù)據(jù)幀。那么在當(dāng)串口轉(zhuǎn)化為以太網(wǎng)之后,如何將第9位也傳送出去就成了一個(gè)關(guān)鍵技術(shù)。
在眾多的串口轉(zhuǎn)網(wǎng)口方案中都是將第9位直接舍棄的,目前據(jù)了解上海卓嵐信息科技的方案具有快速地適應(yīng)9位的功能,其實(shí)現(xiàn)方法中采用了稱(chēng)之為RealCom的協(xié)議。由于增加了第9位,所以串口數(shù)據(jù)不能夠直接透明地轉(zhuǎn)化為T(mén)CP/IP應(yīng)用層數(shù)據(jù),realcom 協(xié)議將串口數(shù)據(jù)打包之后整個(gè)作為T(mén)CP/IP的應(yīng)用數(shù)據(jù)傳輸。這樣可以在realcom協(xié)議的協(xié)議頭部加入該數(shù)據(jù)包的9位是1還是0的信息,從而實(shí)現(xiàn)了9位傳輸技術(shù)。
淺談串口轉(zhuǎn)以太網(wǎng)模塊
一、什么是串口轉(zhuǎn)以太網(wǎng)模塊?
串口轉(zhuǎn)以太網(wǎng)模塊又叫做串口聯(lián)網(wǎng)模塊、TCP模塊、物聯(lián)網(wǎng)模塊、單片機(jī)上網(wǎng)模塊、嵌入式串口服務(wù)器模塊等,是一種網(wǎng)絡(luò)通訊接口轉(zhuǎn)換設(shè)備,實(shí)現(xiàn)單片機(jī)的TTL串口電平通訊轉(zhuǎn)換成TCP/IP網(wǎng)絡(luò)通訊,并實(shí)現(xiàn)雙向數(shù)據(jù)透明傳輸。利用串口轉(zhuǎn)以太網(wǎng)i模塊,為嵌入式系統(tǒng)通過(guò)以太網(wǎng)傳輸數(shù)據(jù)提供了快速的解決方案,用戶(hù)不需要具體的網(wǎng)絡(luò)知識(shí)就可以輕松的將單片機(jī)、串口設(shè)備聯(lián)網(wǎng),從而實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集、遠(yuǎn)程控制等智能化系統(tǒng)的搭建。
?
有人串口轉(zhuǎn)以太網(wǎng)模塊分為:M0系列、M4系列、超級(jí)網(wǎng)口系列。
M0系列是商業(yè)級(jí)串口聯(lián)網(wǎng)模塊、遵循功能簡(jiǎn)單、可靠、價(jià)格合理;
M4系列工業(yè)級(jí)、多功能、多串口、高性能;
超級(jí)網(wǎng)口系列將模塊的功能封裝到網(wǎng)口中。
K2采用M0系列內(nèi)核,是簡(jiǎn)單可靠的商用級(jí)模塊;
K3的定位是工業(yè)級(jí),采用M4系列的TI內(nèi)核,繼承了 M4系列的成熟扎實(shí)的透?jìng)鞴δ埽瑸閿?shù)傳穩(wěn)定性提供保障。
根據(jù)接口類(lèi)型分為:插針式、貼片式;
功能支持:
(1)虛擬串口聯(lián)網(wǎng)模塊:模塊搭配虛擬串口軟件,可以實(shí)現(xiàn)不更改原串口軟件的前提下,與232/485通訊的系統(tǒng)無(wú)縫融合,轉(zhuǎn)換為網(wǎng)絡(luò)甚至遠(yuǎn)程通訊;
(2)云串口聯(lián)網(wǎng)模塊:模塊搭配有人D2D點(diǎn)對(duì)點(diǎn)云服務(wù)平臺(tái),實(shí)現(xiàn)PC到模塊、模塊到模塊的跨網(wǎng)絡(luò)數(shù)據(jù)傳輸,用戶(hù)無(wú)需做路由器端口映射和動(dòng)態(tài)域名,且更穩(wěn)定可靠;
二、串口轉(zhuǎn)以太網(wǎng)模塊廠家
有人物聯(lián)網(wǎng)是專(zhuān)業(yè)生產(chǎn)嵌入式、工業(yè)級(jí)串口轉(zhuǎn)以太網(wǎng)模塊的廠家。產(chǎn)品均經(jīng)過(guò)高低溫測(cè)試,擁有CE、FCC國(guó)際認(rèn)證。有人物聯(lián)網(wǎng)提供應(yīng)用于遠(yuǎn)程控制、數(shù)據(jù)采集的整體解決方案,包括電腦端、網(wǎng)頁(yè)端、手機(jī)APP、服務(wù)器、硬件各個(gè)平臺(tái)定制化服務(wù)。
三、串口轉(zhuǎn)以太網(wǎng)模塊圖片
?
四、串口轉(zhuǎn)以太網(wǎng)模塊選型
串口轉(zhuǎn)以太網(wǎng)模塊系列:
1.實(shí)現(xiàn)串口轉(zhuǎn)有線以太網(wǎng),支持D2D轉(zhuǎn)發(fā)和自動(dòng)虛擬串口;
2.所有產(chǎn)品型號(hào)以“USR-TCP232-”開(kāi)頭,以下省略;(超級(jí)網(wǎng)口系列除外,開(kāi)頭為"USR-")。
系列 | 型號(hào) | 功能 | 特點(diǎn) |
---|---|---|---|
超級(jí)網(wǎng)口系列特點(diǎn):1.單串口轉(zhuǎn)以太網(wǎng)模塊;2.小體積網(wǎng)口一體外殼; | K2 | UART轉(zhuǎn)以太網(wǎng) | 商業(yè)級(jí),多功能,性?xún)r(jià)比 |
K3 | UART轉(zhuǎn)以太網(wǎng) | 工業(yè)級(jí),多功能,高性能,Cortex-M4內(nèi)核 | ? |
串口轉(zhuǎn)以太網(wǎng)模塊 M4系列特點(diǎn):1.多串口服務(wù)器,多串口可同時(shí)使用;2.支持:DHCP、內(nèi)置網(wǎng)頁(yè)、域名解析;3.Cotex-M4內(nèi)核,主頻120MHz,高端性能,更強(qiáng)更可靠,工業(yè)級(jí)溫度 ; | E2 | UART轉(zhuǎn)以太網(wǎng) | 雙串口服務(wù)器,插針式,兼容-T引腳 |
ED2 | UART轉(zhuǎn)以太網(wǎng) | 三串口服務(wù)器,插針式,引腳兼容ZLG產(chǎn)品 | ? |
五、串口轉(zhuǎn)以太網(wǎng)模塊應(yīng)用領(lǐng)域
工業(yè)數(shù)據(jù)傳輸、安防監(jiān)控、物聯(lián)網(wǎng)、公共安防、工業(yè)自動(dòng)化、智能家居、電力控制、環(huán)境監(jiān)測(cè)、智能農(nóng)業(yè)、門(mén)禁考勤系統(tǒng)、POS系統(tǒng)、售飯系統(tǒng)、樓宇自動(dòng)化系統(tǒng)、電力監(jiān)控、自助銀行系統(tǒng)、電信機(jī)房監(jiān)控等。
六、使用方法
應(yīng)用框圖如下圖所示
七、串口以太網(wǎng)常見(jiàn)問(wèn)題
由于用戶(hù)在使用有人物聯(lián)網(wǎng)的串口以太網(wǎng)模塊的時(shí)候,總是會(huì)遇到一些問(wèn)題。本文從幫助用戶(hù)快速運(yùn)用有人串口以太網(wǎng)模塊的角度出發(fā),整理了幾個(gè)用戶(hù)在使用串口以太網(wǎng)模塊的過(guò)程中遇到的常見(jiàn)問(wèn)題,供用戶(hù)參考。
串口以太網(wǎng)模塊能跨網(wǎng)關(guān)嗎?
串口以太網(wǎng)模塊可以跨越網(wǎng)關(guān)工作于外網(wǎng),跨越路由器和交換機(jī)與公網(wǎng)的服務(wù)器進(jìn)行通訊,實(shí)現(xiàn)遠(yuǎn)程的數(shù)據(jù)采集和控制。
網(wǎng)絡(luò)到串口轉(zhuǎn)換是雙向的嗎?
串口以太網(wǎng)模塊實(shí)現(xiàn)的網(wǎng)絡(luò)到串口的轉(zhuǎn)換是雙向全雙工的,和普通串口一樣,收發(fā)可同時(shí)進(jìn)行。
不能通過(guò)串口設(shè)置,串口通訊亂碼,不能通訊
請(qǐng)注意串口以太網(wǎng)模塊是TTL電平,可以直接和單片機(jī)IO口連接,如果要和計(jì)算機(jī)連接需要使用RS232轉(zhuǎn)TTL轉(zhuǎn)換器,注意模塊和單片機(jī)連接時(shí)需要交叉,即是RXD接TXD,TXD接RXD。使用串口方式配置串口以太網(wǎng)模塊,需要將CFG引腳接地后進(jìn)行,網(wǎng)絡(luò)方式配置需要將串口以太網(wǎng)模塊接到計(jì)算機(jī)同一個(gè)局域網(wǎng)內(nèi),或?qū)⒋谝蕴W(wǎng)模塊直接與計(jì)算機(jī)相連。
配置后串口以太網(wǎng)模塊會(huì)保存配置嗎?
串口以太網(wǎng)模塊上有EEPROM芯片,模塊會(huì)保存設(shè)置,如果斷電,下次啟動(dòng)將按保存的設(shè)置工作,不需要重復(fù)配置,用戶(hù)CPU也無(wú)需對(duì)串口以太網(wǎng)模塊進(jìn)行任何的初始化操作,在串口以太網(wǎng)模塊的網(wǎng)絡(luò)建立連接前的數(shù)據(jù)會(huì)緩存在模塊內(nèi)等到網(wǎng)絡(luò)連接時(shí)發(fā)送出去。
八、串口服務(wù)器和串口轉(zhuǎn)以太網(wǎng)模塊的區(qū)別
現(xiàn)在市面上的串口轉(zhuǎn)以太網(wǎng)產(chǎn)品主要有兩種,即串口服務(wù)器和串口轉(zhuǎn)以太網(wǎng)模塊。用戶(hù)在開(kāi)始項(xiàng)目前,首先需要考慮的是選擇串口服務(wù)器還是串口轉(zhuǎn)以太網(wǎng)模塊。
?
USR-TCP232-300
?
USR-TCP232-24
上圖所示,第一個(gè)是串口服務(wù)器,第二個(gè)為串口轉(zhuǎn)以太網(wǎng)模塊。其差別如下:
從外觀上 | 串口服務(wù)器是串口轉(zhuǎn)以太網(wǎng)模塊加一個(gè)外殼,該外殼具電磁隔離的功能。USR-TCP232-300串口服務(wù)器的內(nèi)置串口轉(zhuǎn)以太網(wǎng)模塊就是USR-TCP232-24。 |
---|---|
從體積上 | 串口轉(zhuǎn)以太網(wǎng)模塊的大小在44×32×15mm左右,串口服務(wù)器的在95×84×25mm左右。 |
從價(jià)格上 | 串口轉(zhuǎn)以太網(wǎng)模塊的價(jià)格比串口服務(wù)器的價(jià)格便宜一半、,用戶(hù)一旦通過(guò)測(cè)試,會(huì)大批量地采購(gòu)。串口服務(wù)器USR-TCP232-300的售價(jià)為169元,而串口轉(zhuǎn)以太網(wǎng)模塊USR-TCP232-24的售價(jià)為89元。 |
從功能上 | 串口服務(wù)器和串口轉(zhuǎn)以太網(wǎng)模塊的功能完全一樣。 |
總而言之,如果你的串口設(shè)備是一個(gè)現(xiàn)成的設(shè)備,而且設(shè)備機(jī)殼無(wú)法打開(kāi)并放入模塊的,那么你可以選擇串口服務(wù)器,它可以外置使用。但是價(jià)格相對(duì)較高。如果你是該串口設(shè)備的廠家,具有重新組裝設(shè)計(jì)設(shè)備的能力,且用量較大,需要降低成本的,可以考慮采用串口轉(zhuǎn)以太網(wǎng)模塊,并將該模塊內(nèi)置到你的設(shè)備內(nèi)部。
審核編輯:湯梓紅
評(píng)論