精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

簡單介紹Java的串口通信(上)

開發 后端
串行接口是一種可以將接受來自CPU的并行數據字符轉換為連續的串行數據流發送出去,同時可將接受的串行數據流轉換為并行的數據字符供給CPU的器件。本文介紹的是JAVA的串口通信。

有關Java串口通信簡介,嵌入式系統或傳感器網絡的很多應用和測試都需要通過PC機與嵌入式設備或傳感器節點進行通信。其中,最常用的接口就是RS-232串口和并口(鑒于USB接口的復雜性以及不需要很大的數據傳輸量,USB接口用在這里還是顯得過于奢侈,況且目前除了SUN有一個支持USB的包之外,我還沒有看到其他直接支持USB的Java類庫)。

SUN的CommAPI分別提供了對常用的RS232串行端口和IEEE1284并行端口通訊的支持。RS-232-C(又稱EIA RS-232-C,以下簡稱RS232)是在1970年由美國電子工業協會(EIA)聯合貝爾系統、調制解調器廠家及計算機終端生產廠家共同制定的用于串行通訊的標準。RS232是一個全雙工的通訊協議,它可以同時進行數據接收和發送的工作。

1 常見的Java串口包

目前,常見的Java串口包有SUN在1998年發布的串口通信API:comm2.0.jar(Windows下)、comm3.0.jar(Linux/Solaris);IBM的串口通信API以及一個開源的實現。鑒于在Windows下SUN的API比較常用以及IBM的實現和SUN的在API層面都是一樣的,那個開源的實現又不像兩家大廠的產品那樣讓人放心,這里就只介紹SUN的串口通信API在Windows平臺下的使用。

按照其使用說明(Readme.html)的說法,要想使用串口包進行串口通信,除了設置好環境變量之外,還要將win32com.dll復制到\bin目錄下;將comm.jar復制到\lib;把javax.comm.properties也同樣拷貝到\lib 目錄下。然而在真正運行使用串口包的時候,僅作這些是不夠的。

因為通常當運行“java MyApp”的時候,是由JRE下的虛擬機啟動MyApp的。而我們只復制上述文件到JDK相應目錄下,所以應用程序將會提示找不到串口。解決這個問題的方法很簡單,我們只須將上面提到的文件放到JRE相應的目錄下就可以了。

值得注意的是,在網絡應用程序中使用串口API的時候,還會遇到其他更復雜問題。有興趣的話,你可以查看CSDN社區中“關于網頁上Applet用javacomm20讀取客戶端串口的問題”的帖子。

2 串口API概覽

2.1 javax.comm.CommPort

這是用于描述一個被底層系統支持的端口的抽象類。它包含一些高層的IO控制方法,這些方法對于所有不同的通訊端口來說是通用的。 SerialPort 和ParallelPort都是它的子類,前者用于控制串行端口而后者用于控這并口,二者對于各自底層的物理端口都有不同的控制方法。這里我們只關心 SerialPort。

2.2 javax.comm.CommPortIdentifier

這個類主要用于對串口進行管理和設置,是對串口進行訪問控制的核心類。主要包括以下方法

  • 確定是否有可用的通信端口
  • 為IO操作打開通信端口
  • 決定端口的所有權
  • 處理端口所有權的爭用
  • 管理端口所有權變化引發的事件(Event)

2.3 javax.comm.SerialPort

這個類用于描述一個RS-232串行通信端口的底層接口,它定義了串口通信所需的最小功能集。通過它,用戶可以直接對串口進行讀、寫及設置工作。

2.4 串口API實例

大段的文字怎么也不如一個小例子來的清晰,下面我們就一起看一下串口包自帶的例子---SerialDemo中的一小段代碼來加深對串口API核心類的使用方法的認識。

2.4.1 列舉出本機所有可用串口

  1. void listPortChoices() {  
  2. CommPortIdentifier portId;  
  3. Enumeration en = CommPortIdentifier.getPortIdentifiers();  
  4. // iterate through the ports.  
  5. while (en.hasMoreElements()) {  
  6. portId = (CommPortIdentifier) en.nextElement();  
  7. if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {  
  8. System.out.println(portId.getName());  
  9. }  
  10. }  
  11. portChoice.select(parameters.getPortName());  

以上代碼可以列舉出當前系統所有可用的串口名稱,我的機器上輸出的結果是COM1和COM3。

2.4.2 串口參數的配置

串口一般有如下參數可以在該串口打開以前配置進行配置:包括波特率,輸入/輸出流控制,數據位數,停止位和齊偶校驗。

  1. SerialPort sPort;  
  2. try {  
  3. sPort.setSerialPortParams(BaudRate,Databits,Stopbits,Parity);  
  4. //設置輸入/輸出控制流  
  5. sPort.setFlowControlMode(FlowControlIn | FlowControlOut);  
  6. catch (UnsupportedCommOperationException e) {} 

2.4.3 串口的讀寫

對串口讀寫之前需要先打開一個串口:

  1. CommPortIdentifier portId = CommPortIdentifier.getPortIdentifier(PortName);  
  2. try {  
  3. SerialPort sPort = (SerialPort) portId.open("串口所有者名稱", 超時等待時間);  
  4. catch (PortInUseException e) {//如果端口被占用就拋出這個異常  
  5. throw new SerialConnectionException(e.getMessage());  
  6. }  
  7. //用于對串口寫數據  
  8. OutputStream os = new BufferedOutputStream(sPort.getOutputStream());  
  9. os.write(int data);  
  10. //用于從串口讀數據  
  11. InputStream is = new BufferedInputStream(sPort.getInputStream());  
  12. int receivedData = is.read(); 

讀出來的是int型,你可以把它轉換成需要的其他類型。

這里要注意的是,由于Java語言沒有無符號類型,即所有的類型都是帶符號的,在由byte到int的時候應該尤其注意。因為如果byte的最高位是1,則轉成int類型時將用1來占位。這樣,原本是10000000的byte類型的數變成int型就成了1111111110000000,這是很嚴重的問題,應該注意避免。

3 串口通信的通用模式及其問題

終于嘮叨完我最討厭的基礎知識了,下面開始我們本次的重點--串口應用的研究。由于向串口寫數據很簡單,所以這里我們只關注于從串口讀數據的情況。

通常,串口通信應用程序有兩種模式,一種是實現SerialPortEventListener接口,監聽各種串口事件并作相應處理;另一種就是建立一個獨立的接收線程專門負責數據的接收。由于這兩種方法在某些情況下存在很嚴重的問題(至于什么問題這里先賣個關子J),所以我的實現是采用第三種方法來解決這個問題。

由于篇幅過長的原因 ,我們分兩篇給大家介紹。請看下一篇>>

【編輯推薦】

  1.  分享JavaScript的跨域共享的方法
  2. JAVA基礎之java面向對象編程
  3. JavaScript來實現的超炫組織結構圖
  4. 經驗分享:學好java開發的關鍵7步
  5. 深入解讀JavaScript內存回收機制

 

責任編輯:于鐵 來源: 互聯網
相關推薦

2011-07-11 14:19:54

JAVA串口通信

2010-01-05 17:39:10

.NET Framew

2010-03-16 10:10:57

Java線程通信

2024-12-24 07:38:44

C#串口通信

2011-06-22 17:49:35

Linux Qt 串口

2011-06-28 11:27:19

java克隆對象

2011-07-04 10:04:52

java網絡程序

2011-06-27 13:17:07

Java EE

2011-06-13 17:46:07

Qt 串口通信

2010-06-13 15:53:35

ICMP協議

2013-12-12 15:59:23

Lua腳本語言

2009-06-25 16:52:34

2011-03-11 09:35:01

LAMP介紹

2010-07-08 12:53:21

HART協議

2011-03-04 13:19:09

VSFTP介紹

2011-04-01 09:39:17

zabbix

2011-02-22 16:38:03

Konqueror

2011-03-29 09:14:37

2011-01-21 18:08:22

Qmail

2011-01-21 10:40:52

Sendmail
點贊
收藏

51CTO技術棧公眾號

成人国产一区二区三区精品| 午夜日韩影院| 国产精品久久久久四虎| 欧美另类交人妖| 一区二区三区人妻| av在线网页| 国产色一区二区| 91久热免费在线视频| 欧美日韩精品区| 国产精品97| 日韩电视剧免费观看网站| 天天爱天天操天天干| av美女在线观看| 国产精品久久久久久久久免费丝袜| 亚洲精品日产aⅴ| 国产精品777777| 亚洲精品99| 亚洲男人av电影| 亚洲AV成人精品| 精品123区| 同产精品九九九| 青少年xxxxx性开放hg| 欧美色18zzzzxxxxx| 国产老妇另类xxxxx| 国产精品成人aaaaa网站| 九九精品视频免费| 精品国产一区二区三区四区| 欧美成人精品3d动漫h| 欧美综合亚洲图片综合区| 蜜桃一区av| 欧洲美熟女乱又伦| 欧美激情视频一区二区三区不卡| 91国偷自产一区二区使用方法| 成人av男人的天堂| 在线免费观看一区二区| 亚洲一区二区网站| 久久在线精品视频| 成人激情五月天| 久久av免费看| 日韩av在线不卡| 一级黄色片毛片| 麻豆国产精品| 欧美一区二区三区影视| 91高清国产视频| 本网站久久精品| 欧美亚洲国产一区在线观看网站 | 亚洲韩国一区二区三区| 成人性做爰片免费视频| 久久精品视频2| 俺来俺也去www色在线观看| 国产精品欧美久久久久一区二区| 欧美激情专区| 一本一道久久a久久精品综合| 天美一区二区三区| 婷婷久久免费视频| 欧美日韩国产高清一区| 中文字幕国产免费| 97久久中文字幕| 7777精品伊人久久久大香线蕉经典版下载 | 国产福利在线观看| 久久久噜噜噜久久人人看| 久久涩涩网站| 黄色小视频在线免费观看| 久久久久久久久久久黄色| 日本精品一区二区三区高清 久久 日本精品一区二区三区不卡无字幕 | 国产一级二级在线观看| 任我爽精品视频在线播放| 亚洲精品美女网站| a级片在线观看| 成人激情视频| 久久亚洲精品成人| 欧美成人aaa片一区国产精品| 一区二区三区在线| 久久久久久久久久国产精品| 欧美精品二区三区| 石原莉奈在线亚洲二区| 成人黄色av网站| 性一交一乱一伧老太| caoporn国产精品| 日本成人黄色| 国产在线观看91| 亚洲午夜久久久久中文字幕久| 黄色免费视频大全| 超碰这里只有精品| 日韩免费视频一区二区| 国产在线观看无码免费视频| 欧洲乱码伦视频免费| 日韩视频在线观看免费| 国产午夜视频在线播放| 日本美女一区二区三区| 91在线观看免费观看| 五月婷婷激情在线| 国产精品久久99| 精品国偷自产一区二区三区| 国产综合av| 日韩欧美成人午夜| 影音先锋制服丝袜| 尹人成人综合网| 国产精品狼人色视频一区| 99国产精品久久久久久久成人| 成a人片国产精品| 日本一区免费观看| 99在线播放| 日本精品视频一区二区| 又大又长粗又爽又黄少妇视频| 亚洲精品小区久久久久久| yellow中文字幕久久| 日韩字幕在线观看| 国内精品免费在线观看| 激情欧美一区二区三区中文字幕| 在线a免费看| 天天av天天翘天天综合网色鬼国产| 高清av免费看| 日本精品影院| 欧美日本精品在线| 一区二区视频网站| 91亚洲永久精品| 水蜜桃在线免费观看| 黄瓜视频成人app免费| 日韩欧美一级二级三级| 亚洲综合第一区| 国产精品老牛| 国产尤物91| 日本天码aⅴ片在线电影网站| 欧美三级资源在线| 亚洲av无码一区二区二三区| 亚洲香蕉网站| 亚洲综合色av| 国产最新在线| 欧美高清视频一二三区 | 91久久电影| 国产精品高清免费在线观看| 婷婷在线免费视频| 一区二区三区四区五区视频在线观看 | 青青草国产精品97视觉盛宴| 六月婷婷久久| 美女av在线免费看| 亚洲国产精久久久久久 | 在线亚洲+欧美+日本专区| 精品熟女一区二区三区| 99产精品成人啪免费网站| 久久久国产精华液| 日韩久久精品视频| 豆国产97在线 | 亚洲| 亚洲精品久久久中文字幕| 91福利在线免费| 欧美sm极限捆绑bd| 欧美成人一区二区三区高清| 国产一区二区电影| 日韩av在线电影观看| 国内毛片毛片毛片毛片毛片| 一区二区视频免费观看| 国内精品久久久久久久影视蜜臀| 亚洲最大福利网| 人人超在线公开视频| 日韩一级大片在线| 久久久久成人精品无码| 成人精品在线视频观看| av7777777| 自拍偷拍精品| 国产精品爱啪在线线免费观看| 国产精品影院在线| 欧美日韩免费不卡视频一区二区三区| 超碰人人人人人人人| 黄页网站大全一区二区| 妞干网这里只有精品| 涩爱av色老久久精品偷偷鲁| 欧美黄色www| 无码精品人妻一区二区| 一本久久a久久免费精品不卡| 久久国产精品影院| 日韩和欧美一区二区三区| 亚洲欧美综合一区| 欧美第一在线视频| 91av在线不卡| 成人免费一区二区三区视频网站| 欧美乱熟臀69xxxxxx| 久久久久久久久久久久久久免费看| 波多野结衣一区二区三区 | 成人国产在线激情| 久久亚洲天堂| 亚洲国产精品成人一区二区| 中文字幕精品无码一区二区| 中文字幕中文乱码欧美一区二区| 99在线看视频| 亚洲精品20p| 色综合久久网| 51国偷自产一区二区三区的来源| av岛国在线| 在线国产精品视频| 99视频国产精品免费观看a| 亚洲成a人片在线不卡一二三区| wwwwww日本| 国产在线视频精品一区| 男人插女人视频在线观看| 国产伦精品一区二区三区视频| 成人在线播放av| 国产精品一区二区日韩| 最新69国产成人精品视频免费| 精品人妻伦一区二区三区久久| 欧美日韩在线影院| 免费三级在线观看| 久久一留热品黄| 无套白嫩进入乌克兰美女| 99精品视频免费| 免费成人深夜夜行网站视频| 首页亚洲中字| 亚洲www永久成人夜色| 婷婷午夜社区一区| 欧美高清不卡在线| 2019中文字幕在线视频| 亚洲精品720p| 午夜精品久久久久久久96蜜桃| 在线视频一区二区三区| 男人天堂中文字幕| 亚洲视频免费在线| 免费黄色片网站| av在线播放一区二区三区| 亚洲五月激情网| 奇米888四色在线精品| 国产h视频在线播放| 欧美成人日韩| 亚洲一区二区三区精品视频| 中文字幕av一区二区三区人| 国产精品一区二区免费| 国产精久久久| 91久久在线观看| 另类一区二区| 国产精品久久久久久久av大片| 欧美aa在线观看| 国模精品一区二区三区色天香| 成人日韩欧美| 日韩在线播放一区| 1024国产在线| 中文字幕最新精品| 在线观看你懂的视频| а天堂中文在线资源| 国产亚洲高清视频| 日韩在线精品一区| 久久久久免费精品| 在线成人www免费观看视频| 亚洲 国产 欧美一区| 国精一区二区| 欧美一区2区三区4区公司二百| 欧美变态挠脚心| 九九99玖玖| 天天久久夜夜| 欧美亚洲国产免费| 亚州综合一区| 欧美二区在线| 国产日韩视频在线| 日韩亚洲视频在线| 日本一区二区三区视频| 亚洲一区二区在| 91综合久久| 欧美一级免费在线观看| 91精品一区二区三区综合在线爱 | 日韩av片免费在线观看| 成人美女大片| 国产精品精品视频| **国产精品| 成人动漫视频在线观看免费| 国产精品网在线观看| 久久久久se| 奇米色欧美一区二区三区| 亚洲精品一区二区三区樱花| 五月天激情综合网| 欧美交换配乱吟粗大25p| 极品少妇一区二区三区| 91免费视频网站在线观看| 首页亚洲欧美制服丝腿| 亚洲一区二区三区四区五区| 国产高清无密码一区二区三区| 91超薄肉色丝袜交足高跟凉鞋| 91美女片黄在线观看91美女| 国产免费无遮挡吸奶头视频| 成人免费在线视频观看| 久久久久久免费观看| 日韩欧美aⅴ综合网站发布| 国产伦精品一区二区三区在线| 国产网站在线| 国产精品美女www爽爽爽视频| 国产激情综合| 鲁丝一区鲁丝二区鲁丝三区| 日韩精品电影| www.日本在线播放| 日韩激情在线观看| 午夜福利三级理论电影| 国产欧美精品一区| 久草视频手机在线观看| 91国产视频在线观看| 国产同性人妖ts口直男| 日韩精品视频在线观看免费| 天天影视久久综合| 国内精品久久久久| 成人精品国产亚洲| 国产日韩欧美一区二区三区四区 | 水蜜桃在线免费观看| 久久久999| 性色av浪潮av| 国产精品毛片无遮挡高清| www.youjizz.com亚洲| 欧美日韩色综合| 五月婷婷深深爱| 另类色图亚洲色图| 性欧美gay| 国产视频在线观看一区| 亚洲大全视频| 香蕉视频禁止18| 91美女福利视频| 国产在线免费视频| 欧美一区二区三区视频免费| 国产在线观看免费| 国内精品中文字幕| 欧洲大片精品免费永久看nba| 亚洲午夜精品一区二区| 新67194成人永久网站| 国产xxx在线观看 | 西西44rtwww国产精品| 日韩亚洲国产中文字幕欧美| 2021av在线| 国产精品久久77777| 蜜桃一区二区三区| 精品欧美一区二区精品久久| 久久国产成人精品国产成人亚洲| 免费成人深夜天涯网站| www.亚洲免费av| av成人免费网站| 欧美色综合久久| 国产激情av在线| 国产成人精品一区二区三区免费| 久久精品日韩欧美| 欧美亚州韩日在线看免费版国语版| 激情视频一区二区| 五月婷婷激情五月| 精品久久久亚洲| 国产一区视频在线播放| 亚洲+小说+欧美+激情+另类| 国内精品视频一区二区三区| 高清在线成人网| 欧美成人精品欧美一级| 欧美福利视频一区| 嫩草香蕉在线91一二三区| 国产欧美亚洲精品| 久久麻豆精品| www.污污视频| 中文字幕日韩欧美一区二区三区| 成人自拍小视频| 日韩一区二区电影在线| 羞羞污视频在线观看| 国产99在线播放| 欧日韩在线视频| 成人动漫中文字幕| 欧美激情论坛| 日本一二三区在线视频| av爱爱亚洲一区| 亚洲精品电影在线一区| 欧美激情四色| 老司机午夜免费福利| 五月天中文字幕一区二区| 香蕉久久国产av一区二区| 欧美亚洲另类视频| 一级黄色片在线| 亚洲精品女人| 蜜桃成人在线| 久久久久久久波多野高潮日日| 91精品人妻一区二区三区蜜桃欧美| 色哟哟在线观看一区二区三区| 国产精品久久久久一区二区国产| 成人在线黄色| 国产日韩欧美亚洲一区| 亚洲伦理精品| 非洲一级黄色片| 4438x成人网最大色成网站| 中文字幕免费高清电视剧网站在线观看 | 18禁免费无码无遮挡不卡网站| 国产精品99一区二区| 国产精品果冻传媒| 欧美性猛交xxxx免费看漫画 | 91免费黄视频| 久久蜜桃av一区二区天堂| 这里只有精品9| 欧美激情视频给我| 亚洲另类av| 97视频免费看| 日韩精品一区国产| 成人在线免费在线观看| 国产精品美日韩| 高清国产mv在线观看| 国产精品成人国产乱一区| 亚洲男女av一区二区| 欧美丰满少妇人妻精品| 欧美人体做爰大胆视频| 春色校园综合激情亚洲| 曰韩不卡视频| 91色.com| 国产成人a人亚洲精品无码| 欧洲精品毛片网站| 欧美在线不卡| 久久精品三级视频|