欢迎支持笔者新作:《深入理解Kafka:核心设计与实践原理》和《RabbitMQ实战指南》,同时欢迎关注笔者的微信公众号:朱小厮的博客。
在《JAVA通讯编程(一)——串口通讯》中讲述了如何采用JAVA进行串口通讯,我们采用的是引入RXTXComm.jar的方式,关于这个我有两点需要说明补充。
首先,现在的笔记本一般都不带串口,需要usb转串口之类的工具才能进行通讯,这样对调试程序非常的不方便,所以在windows操作系统下我们选择采用VSPD(Virtual Serial Port Driver)虚拟串口,VSPD对虚拟串口的序号没有限制,理论上可以创建无数个。
如上图所示,在Virtual Ports中创建了两个串口COM3和COM4,所创建的虚拟串口是成对出现的,而且COM3的数据是发送给COM4的,COM4的数据是发送给COM3的,所以在调试程序的时候,可以将程序绑定为COM3,然用串口调试工具绑定COM4进行模拟操作,进而方便串口编程。
博主以前都是采用USB转串口或者将编译后的程序拷贝至有串口的计算机中,这样在调试的时候非常的不方便,USB转串口如果不按正确顺序关闭串口开启串口,会极大可能造成蓝屏的现象,将程序拷贝至别的计算机中进行调试,当发现bug时还要编译再拷贝到那台计算机,再进行调试,非常的麻烦。所以这里博主推荐使用VSPD,希望给各位读者能够带来便利。
VSPD可以在网上搜索的到,如果没有,可以在博客下方留言,注明邮箱,博主看到会尽快发给你的。
第二个要说明的是,在Linux中进行串口通讯时,可以能报这样的错误。
Native lib Version = RXTX-2.1-7
Java lib Version = RXTX-2.1-7
check_group_uucp(): error testing lock file creation Error details:Permission deniedcheck_lock_status:
No permission to create lock file.
please see: How can I use Lock Files with rxtx? in INSTALL
遇到这个问题需要修改/etc/group文件
uucp:x:14:uucp 修改为 uucp:x:14:uucp,uk
lock:x:54: 修改为lock:x:54:uk
这里的uk为当前用户名,可以通过linux命令whoami查看到。
修改的时候必须要root权限,修改之后必须重启才能生效。
好了,这里先说两点,如果以后博主再发现好的东西,继续再分享给大家。
欢迎支持笔者新作:《深入理解Kafka:核心设计与实践原理》和《RabbitMQ实战指南》,同时欢迎关注笔者的微信公众号:朱小厮的博客。