由于工作中遇到需要读取SBG Ellipse N系列的惯导模块数据,为了方便操作,我选择在Windows下进行串口开发。串口使用RS232。
Ellipse-N
RS232的引脚定义
-
开始我尝试使用的是Sun公司提供的javax.comm包。由于已经过时了,并且不再维护,其中只包含了win32com.dll, 只能用于32位系统,在我的64位系统上无法使用,故放弃。方法可以参考如下:
How to install The Java Communications API(javax.comm) in a Windows Environment -
经过一番搜索,我发现了替代方案是RXTX。 此库针对Java提供了串行和并行通信。使用GPL Lisence, 并且提供了和JavaCommx同样的API,区别只需要修改导入为gnu.io.*, 所以rxtx的迁移工作也比较方便。
下载适用于64位系统的包
导入IntelliJ IDEA,并建立工程
网上几乎所有的教程都是使用非常老的Eclipse,相当过时。 导入IDEA的步骤如下:
1、将rxtxParallel.dll和rxtxSerial.dll 放到C:\Windows\System32 中,否则会报 no rxtxSerial in java.library.path的错误
2、将RXTXComm.jar导入到工程中。右键工程,选择 Open Module Settings, 选择jar包路径并添加即可
其他参考
基于STM32读取SBG Ellipse A型号惯导数据
java使用RXTX读写串口
Java串口编程:串口数据的发送与监听读取 适用32位系统