正確答案,串口通信包含了物理層(物理鏈路傳輸,串口線)、數據鏈路層(成幀,起始位、數據位、校驗位、結束位)、應用層(應用數據的打包由串口編程自己制定)三方面的功能。
串口和以太網的關系:是兩種通信方式,實現原理以及應用場景都不相同。
串口轉以太網并不是簡單傳輸媒介的變化,而是串口到TCP/IP的協議轉化。其中關系到的關鍵技術包括:TCP/IP的工作模式問題、串口分幀技術、9位技術。
串口一般來說就是UART,它實際只定義了數據鏈路層的規范,也就是起始位、數據位、停止位。但是在不同的物理層又分為:TTL串口、RS232串口、RS485串口等。
由于串口協議本身不具有網絡層和傳輸層,串口轉以太網口,實際是將串口的數據作為TCP/IP的應用層數據,用TCP/IP封裝傳輸的方式。TCP/IP的應用層數據是TCP/IP所要傳送的真正有效的數據。例如用戶通過socket的recv()和send()函數接收和發送的實際是應用層數據。這樣通過串口轉TCP IP用戶就可以用recv()和send()函數收發串口數據了。
串口服務器的接口并不全是串口。串口服務器,也被成為串口到以太網轉換器、串口設備服務器。它是終端服務器通過TCP/IP服務器的串口進行數據傳輸,然而所有這些名稱都是相同類型的設備,基本是將串行的RS232、RS485或RS422接口鏈接到串口服務器的串口端,傳輸數據到以太網數據包,同時可以將數據包再傳回至RS232、RS485或RS422串口端,實現數據雙向透傳。串口服務器具有自己的實際IP地址,這就是為什么它有時被稱為服務器的原因。