1.Springboot+RXTX for JAVA 实现串口通信
2.免费串口调试助手 开源 C#
3.如何判断串口调试工具文件是串口测试串口测试否发送完毕
4.C#编写的串口助手源代码
Springboot+RXTX for JAVA 实现串口通信
下载RXTX可以从官网或者Fizzed网站,官网没有位的源码源码支持,但在Fizzed中可以找到2.2版的串口测试串口测试位和位的Windows和Linux版本。
1. Windows下的源码源码串口调试
将rxtxParallel.dll和rxtxSerial.dll复制到%JAVA_HOME%安装目录的bin目录下,同时也要复制到%JAVA_HOME%安装目录的串口测试串口测试jre/bin目录下(在eclipse开发时调用,减少麻烦)。源码源码为什么源码价格低于刮码然后将RXTXcomm.jar复制到%JAVA_HOME%\jre\lib\ext\RXTXcomm.jar(开发时直接导入)。串口测试串口测试
2. Linux下的源码源码串口调试
首先确定Linux处理器型号,然后选择对应的串口测试串口测试RXTX的Linux版本。
例如,源码源码如果处理器是串口测试串口测试i,则将Linux i版本中的源码源码两个os文件复制到系统%JAVA_HOME%/jre/lib/i(即JDK目录中的系统文件夹)。将RXTXcomm.jar复制到%JAVA_HOME%/jre/lib/ext文件夹。串口测试串口测试代码不变,源码源码即可运行使用。串口测试串口测试
在实际开发中,由于使用树莓派测试,树莓派使用Raspbian系统(使用uname -a命令可查看系统内核信息)。基础源码分析Linux raspberrypi 3..+ # PREEMPT Mon Sep 8 :: BST armv6l GNU/Linux。处理器型号为armv6l,在下载的RXTX工具包中并没有这种系统版本,实际测试中,找到的RXTX工具包都不能使程序运行,均报出系统位数不符。
又找到另一种处理方法,可以直接在系统中make编译RXTX源码安装。
最新的RXTX稳定版本是rxtx 2.1-7r2。首先用wget获取源码包并解压。
如果直接MAKE编译安装,可能会遇到以下两种错误:
错误1:/tmp/rxtx-2.1-7r2/./src/I2CImp.c:: error: ‘UTS_RELEASE’ undeclared (first use in this function)
这是由于version.h中缺少’UTS_RELEASE’信息,需要手工添加。先获取当前系统的版本信息,然后在/usr/include/Linux/version.h中添加。
3..+为上一步中获得的版本号
错误2:libtool: install: armv6l-unknown-linux-gnu/librxtxRS.la is not a directory
这个错误会出现在JDK1.6及以上的运行环境下,需要对configure文件进行修改。光照源码阅读在configure文件中找到这一行,在后边添加上当前JDK的版本号即可,如
完成以上两项修改后,就可以正常编译安装了。如果看到 Libraries have been installed in:/usr/lib/jvm/jdk-7-Oracle-armhf/jre/lib/arm 则说明RXTX安装已经成功。之后执行
注意:可能会有权限不足的情况,需要chmod test.c操作
至此使用RXTX框架的串口编程代码就可以在树莓派使用了。
(这里需要注意的是,在Linux系统中,大部分的串口名称为/dev/ttyS*,但在特殊环境下如本次使用的raspberrypi,使用RXTX方法获得串口集合是不成功的,原因是RXTX本身源码问题,找了好久的原因,终于在RXTX官网上找到了解释:
即RXTX本身支持的Linux串口搜索只限制为/dev/ttyS*等,其他名称的并不能支持,而raspberrypi中的菜鸟溯源码串口名称为/dev/ttyAMA*,故无法找到系统串口。这种情况下有两种解决方案:
1.修改源码:参考官网故障排除 rxtx.qbang.org/wiki/ind...
源码RXTXCommDriver.java文件中行开始,为Linux系统环境下的串口名称查找,添加所需串口名即可(如ttyAMA)(此种方法需要重新编译安装)
2.将串口文件进行映射,即使用命令 ln -s /dev/ttyAMA0 /dev/ttyS0,即可找到/dev/ttyS0映射串口,也就对应了/dev/ttyAMA0实际串口。
免费串口调试助手 开源 C#
工业控制类软件在Windows平台下,使用C#语言进行开发,既方便又快捷。在工控领域中,串口通讯是一种非常常见的需求。因此,我花费时间开发了一个通用的串口调试助手工具,并将工控调试中常用的功能集成在上面,以方便用户进行调试。源码已经在gitee上开源,linuxbrk源码分析界面采用wpf实现,源码地址为:
接下来,我将简单介绍一下已实现的功能。
程序功能主要分为以下四大块:
1. 串口通讯
2. TCP通讯
3. 小工具
4. 支持中英文双语切换
5. 检查版本更新
6. 曲线显示读取的值。
一、串口通讯
串口通讯详细功能:
1. 支持手动刷新串口设备列表。
2. 支持流控。
3. 接收发送编码方式同时支持ASCII和HEX方式。
4. 在ASCII模式下,可设置结束符,如回车换行等。
5. 在HEX模式下,支持自动计算标准ModbusRTU的CRC。
6. 发送支持循环发送。
7. 接收区显示支持显示发送和显示接收,并可设置发送和接收的字符串颜色。
8. 接收区显示支持显示发送和接收的时间,时间格式可自定义。
9. 底部显示串口状态,总接收字节数和总发送字节数。各字节数可手动清零。
. 接收区字符串可一键清空。
. 记录发送历史,支持记录最新的条历史记录。
. 可将接收区显示的字符实时保存到本地txt文档。
. 可将读取到的值以实时曲线的形式显示出来。
二、TCP通讯
TCP通讯详细功能:
1. 支持TCP Client/TCP Server。
2. 在TCP Server模式下,可显示当前连接客户端列表。
3. TCP通讯采取异步方式通讯。
4. 支持串口通讯功能中的3-项。
5. 不支持TCP连接断开的自动侦测。
三、小工具
包含的小工具介绍:
1. 通用校验方法中包含常用的LRC、XOR、CheckSum、FCS、Modbus-CRC等校验的计算。
2. 数据转换包含整数和小数与进制HEX的转换。
3. 与base互转。
4. 数据采集中常用的模拟量与工程量转换计算。
5. ASCII码表。
6. C#颜色对照表。
7. 拾取屏幕颜色。该功能使用鼠标hook实现。通过hook技术可实现拦截或修改键盘鼠标等的操作,有这方面需求的可参考。
四、检查更新
1. 检查更新方式:
利用gitee作为更新检查的服务器,将版本号和下载连接写在gitee项目文件中,实现自动检查更新并提供下载连接的功能。
五、相关开源项目
1. 跨平台(Linux/Windows)串口通讯源码开源连接:
xuyuanbao/BaoYuanSerial: A GUI Serial Debug Tool for Linux/Microsoft Window (github.com)
如何判断串口调试工具文件是否发送完毕
你如果用的是龚建伟的只需要把SerialPort.cpp中函数void CSerialPort::WriteChar(CSerialPort* port)的最后一行的 ::SendMessage((port->m_pOwner)->m_hWnd, WM_COMM_TXEMPTY_DETECTED,0,(LPARAM) port->m_nPortNr);前面的屏蔽语句去掉就行了。在此真心的感谢龚建伟的教材,建议你看看很不错的。
C#编写的串口助手源代码
本文提供了一段C#编写的串口助手源代码,旨在为用户在进行串口数据通信时提供便利。此代码功能涵盖基本的串口操作,包括打开、关闭串口,以及发送和接收数据等。
在实现串口通信的过程中,该代码首先需要根据特定硬件设备的串口配置进行初始化。这通常涉及到设置波特率、数据位、停止位、奇偶校验等参数。用户可通过调用相应的方法来配置这些参数,以满足不同硬件设备的需求。
在初始化串口后,代码实现了发送和接收数据的功能。发送数据时,用户只需提供要发送的字节序列,代码将通过串口发送这些数据。接收数据时,代码会在串口接收到数据后,将其存储在内部缓冲区中。用户可以通过调用特定方法来获取接收到的数据,实现数据的读取和处理。
此外,该代码还包含了异常处理机制,以确保在遇到错误时能够妥善处理,避免程序崩溃。当串口连接失败、数据传输过程中出现错误,或者在关闭串口时发生异常时,代码会抛出相应的异常信息,提示用户采取适当的措施解决问题。
整体而言,这段C#编写的串口助手源代码提供了基本的串口通信功能,适用于多种应用场景。用户可以根据具体需求进行修改和扩展,以满足更复杂的数据通信需求。此外,代码的封装性和可读性较高,便于后续维护和升级。