串行通訊慨述
串行通訊協議有很多種,像RS232,RS485,RS422,甚至現今流行的USB等都是串行通訊協議。而串行通訊技術的應用無處不在。可能大家見的最多就是電腦的串口與Modem的通訊。記得在PC機剛開始在中國流行起來時(大約是在90年代前五年),那時甚至有人用一條串行線進行兩台電腦之間的數據共享。除了這些,手機,PDA,USB鼠標、鍵盤等等都是以串行通訊的方式與電腦連接。而筆者工作性質的關系,所接觸到的就更多了,像多串口卡,各種種類的具有串口通訊接口的檢測與測量儀器,串口通訊的網絡設備等。
雖然串行通訊有很多種,但筆者所知的在整個電子通訊產品方面,以RS232的通訊方式最為多見。雖然USB接口的電子產品也是層出不窮,但了解一下Java在串行通訊方面的技術還有有必要的,說不定有哪位讀者還想用此技術寫一個PDA與電腦之間數據共享的程序呢。
本文主要以RS232為主來講解Java的串行通訊技術。
RS232通訊基礎
RS-232-C(又稱EIA RS-232-C,以下簡稱RS232)是在1970年由美國電子工業協會(EIA)聯合貝爾系統、調制解調器廠家及計算機終端生產廠家共同制定的用於串行通訊的標准。RS232是一個全雙工的通訊協議,它可以同時進行數據接收和發送的工作。RS232的端口通常有兩種:9針(DB9)和25針(DB25)。
DB9和DB25的常用針腳定義
常見的邊線方式
常見的通訊方式是三線式,這種方式是將兩個RS232設備的發送端(TXD)和接收端(RXD)及接地端(GND)互相連接,也是許多讀者所知道的連接方式: