国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Java串行端口通訊技術慨論

2019-11-18 11:02:12
字體:
來源:轉載
供稿:網友
了解串行通訊

  串行通訊協議有很多種,像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的常用針腳定義

Java串行端口通訊技術慨論(圖一)

  常見的邊線方式

  常見的通訊方式是三線式,這種方式是將兩個RS232設備的發送端(TXD)和接收端(RXD)及接地端(GND)互相連接,也是許多讀者所知道的連接方式:

Java串行端口通訊技術慨論(圖二)

  這種方式分別將兩端的RS232接口的2--3,3---2,5(7)---5(7)針腳連接起來。其中2是數據接收線(RXD),3是數據發送線(TXD),5(7)是接地(RND)。假如有一臺式PC,和一部NoteBook電腦,就可以用這種方式連線了。用三線式可以將大多數的RS232設備連接起來。但假如你認死了2--3,3--2,5(7)--5(7)對接這個理,會發現在連某些RS232設備時并不奏效。這是因為有些設備在電路內部已將2和3線調換過來了,你只要2,3,5(7)針一一對應就行了。

  小技巧:如何辨別TXD和RXD端口?

  搞電子的人手邊應該常備一個電表,用來測測電壓,電阻什么的會很有用。你只要分別測一下RS232端口的2--5或3--5針腳之間的電壓,通常TXD針腳與GND之間會有3~15V左右的負電壓,表示它是TXD針腳。 安裝Java Communications API

  Sun的J2SE中并沒有直接提供以上提到的任何一種串行通訊協議的開發包,而是以獨立的jar包形式發布在java.sun.com網站上(從這里下載)----即comm.jar,稱之為Javatm Communications API,它是J2SE的標準擴展。comm.jar并不是最近才有,早在1998年時,sun就已經發布了這個開發包。comm.jar分別提供了對常用的RS232串行端口和IEEE1284并行端口通訊的支持。目前sun發布的comm.jar只有Windows和Solaris平臺兩個版本,假如你需要linux平臺下的,可以在http://www.geeksville.com/~kevinh/linuxcomm.Html找到。

  在使用comm.jar之前,必須知道如何安裝它。這也是困擾許多初學java RS232通訊者的一個難題。假如我們電腦上安裝了JDK, 它將同時為我們安裝一份JRE(Java Runtime Entironment),通常我們運行程序時都是以JRE來運行的。所以以下的安裝適用于JRE。假如你是用JDK來運行程序的,請將相應的<JRE_HOME>改成<JDK_HOME>。

  下載了comm.jar開發包后,與之一起的還有兩個重要的文件,win32com.dll和javax.comm.PRoperties。 comm.jar提供了通訊用的java API,而win32com.dll提供了供comm.jar調用的本地驅動接口。而javax.comm.properties是這個驅動的類配置文件。首先將comm.jar復制到<JRE_HOME>/lib/ext目錄。再將win21com.dll復制到你的RS232應用程序運行的目錄,即user.dir。然后將javax.comm.properties復制到<JRE_HOME>/lib目錄。

  通訊前的預備

  假如你手頭上沒有現成的提供了標準RS232串口的設備,你可以將自己的電腦模擬成兩臺不同的串口設備。通常電腦主機后面的面板提供了兩個9針的串口,請將這兩個串口的2,3,5腳按前面介紹的方法連接。電子市場都有現成的連接頭賣,請不要買那種封裝的嚴嚴實實的接頭,而要買用螺絲封裝可以拆開的連接頭,這樣可以方便自己根據需要連接各個針腳。

  Comm API基礎

  我無意于在此具體描述Comm API每個類和接口的用法,但我會介紹Comm API的類結構和幾個重要的API用法。

  所有的comm API位于javax.comm包下面。從Comm API的javadoc來看,它介紹給我們的只有區區以下13個類或接口:



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永兴县| 韩城市| 黄平县| 文化| 洪洞县| 滦南县| 北川| 张家界市| 博客| 广宁县| 阳曲县| 合肥市| 石阡县| 道孚县| 渝北区| 沁阳市| 东阳市| 饶河县| 隆子县| 淄博市| 哈尔滨市| 新宁县| 包头市| 清丰县| 嘉黎县| 四子王旗| 通江县| 奇台县| 文安县| 尤溪县| 内乡县| 江都市| 醴陵市| 辽中县| 德惠市| 张家界市| 时尚| 望都县| 双鸭山市| 宜川县| 西安市|