首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

不久前基于rxtx包做了一些串口开发

2012-11-03 
最近基于rxtx包做了一些串口开发? ? * 官方demo版只有一个线程实现和一个监听实现,所以都是main方法。知道

最近基于rxtx包做了一些串口开发

? ? * 官方demo版只有一个线程实现和一个监听实现,所以都是main方法。知道需要连接的串口号,对于实际开发中不太实用,因为咱们一般都是自动获取的多嘛。。所以这文章就算是总结吧。

?

?

? ? 先说一下连接思路,由于串口设备需要热拨插,所以我必须写一个线程一直监控着端口的状态是否正常,所以可以按以下几个步骤进行解决。

?

? ? 1. ?列出可用的串口列表;(如果某串口被占用证明是被打开通讯后的,此时不会在这个列表中,还有一般的串口号不会是什么 COM1 、COM2、COM3之类的,所以我会做一些过滤)

?

?

?

?

?

? ? 2. ?如果系统未正常连接时,会把串口列表中的端口放入队列中,然后每个串口都去打开连接测试,确保哪个串口可用;(连接串口时成功后发送串口指令,只有返回OK的才是我需要用的端口,并记录下串口名,而这里使用了SWT的UI线程,所以主线程是每3秒跑一次,里面等待设备返回状态的是2秒,所以基本上也能满足到测试连接的效果)

?

?

?

?

?

? ? 3. ?把可用的端口记录到系统中,这样标识连接状态是正常的。如果非法拨出设备,线程会监控到没有可用的端口,此时再把状态置为不可用。等待着下次设备正常连接后重复上面的1、2操作,然后把原来的端口关闭即可。

?

?

?

热点排行