硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4744|回复: 37
收起左侧

[串口助手] 【开源】跨平台串口助手,支持Android,实时绘图

  [复制链接]

1

主题

72

回帖

75

积分

初级会员

积分
75
发表于 2022-1-21 13:32:58 | 显示全部楼层 |阅读模式
本帖最后由 wh201906 于 2022-3-11 00:20 编辑

一个跨平台的串口助手,使用Qt开发,PC端免安装,完全开源

功能特性:
  • 可在Windows, Ubuntu, Android, Raspbian上使用
    (Android端使用蓝牙串口)
  • 快速响应
    (数据接收与UI更新分离,可通过关闭接收框实时显示进一步提速)
  • 低内存占用
    (在原始数据导出模式下接收字节数与内存消耗约为1:1,导出大量串口数据时很有用)
  • 支持各种中文外文编码
    (UTF-8/16/32, GB18030, BIG5, KOI8-R, EUC-JP, EUC-KR, …)
  • 支持流控信号
    (支持连接时选择软流控/硬流控,手动控制DTR, RTS,显示CTS, DSR, DCD, RI信号)
  • 导出原始二进制数据/选中文本数据
  • 实时绘图
    (多种绘图模式,曲线数量自定义,曲线重命名/隐藏,清屏命令)
  • 自定义控制面板(快速发送面板)
    (快速发送命令或改变数值参数,支持前后缀,导入导出,自动发送)
  • 灵活窗口布局
    (PC端所有面板可变为子窗口同时显示,支持窗口置顶)
  • 自动保存偏好设置
    (PC端所有偏好设置保存在单个文件内,免安装可移动)

新版本(V0.1.3)修复了若干bug,且同时提供Win32, Win64下的绿色版压缩包
项目页面当中添加了中文使用教程,可供参考,同时还有多个MCU上的示例代码便于开发

port_zh_CN.png
port_android_zh_CN.jpg
data_zh_CN.png
plot_realtime_zh_CN.gif
dock_zh_CN.png
ctrl_zh_CN.png

下载链接:
https://github.com/wh201906/SerialTest/releases
项目/源码链接:
https://github.com/wh201906/SerialTest

评分

参与人数 1金币 +20 收起 理由
nikola + 20 赞一个!

查看全部评分

回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-11-1 16:39:47 | 显示全部楼层
新版本V0.2.2已发布
和V0.1.x相比新增了以下功能

+ 支持TCP客户端/服务器,UDP,蓝牙SPP客户端/服务器和蓝牙BLE
+ TCP服务器和蓝牙SPP服务器支持一对多连接,可以任意指定收发对象,断开指定连接
+ TCP服务器,TCP客户端和UDP支持指定本机IP和端口,也可在所有网卡上进行监听
+ 支持记录连接历史并指定别名,单击即可快速设置参数
+ 支持文件收发,带快速CRC32校验,在发送途中可自动延时等待
+ 可导入导出配置文件,多目录搜索配置文件
+ 支持转义字符(\uHHHH, \nnn, \r, \n, \t, ...)
+ 实时修改串口参数
+ 美化UI,支持窗口半透明,选择语言,改变字体
+ 提升性能
+ 优化安卓端绘图界面手势
+ 安卓端添加Toast支持,可分享文本至SerialTest并发送
+ 对一些可以滚动的组件添加触摸屏手势支持  
+ 添加暗黑主题(源于https://github.com/ColinDuquesnoy/QDarkStyleSheet)  
+ 绘图面板支持单向缩放  
+ 添加常用控制命令(位于demo/Control/文件夹下)  
+ 支持拖拽配置文件到控制面板  
回复

使用道具 举报

4

主题

286

回帖

298

积分

高级会员

积分
298
发表于 2022-1-21 15:55:11 | 显示全部楼层
下载来试试,开源了不错。自由度大。
回复

使用道具 举报

1

主题

6

回帖

9

积分

新手上路

积分
9
QQ
发表于 2022-1-26 22:35:24 | 显示全部楼层
kql看起来挺好的,下来学习
回复

使用道具 举报

31

主题

208

回帖

301

积分

高级会员

积分
301
发表于 2022-1-27 10:46:00 | 显示全部楼层
不错!
只支持Android蓝牙串口 ,不支持 USB串口  对吗?

回复

使用道具 举报

31

主题

208

回帖

301

积分

高级会员

积分
301
发表于 2022-1-27 10:48:53 | 显示全部楼层
Qt 好像没有把通用的   serialport 库 移植 android 。
回复

使用道具 举报

5

主题

61

回帖

76

积分

初级会员

积分
76
发表于 2022-1-27 15:37:45 | 显示全部楼层
这个软件波特率能再高一些吗?比如12mbps 通信的格式是什么啊!
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-1-28 00:23:13 | 显示全部楼层
Hp_2018 发表于 2022-1-27 10:46
不错!
只支持Android蓝牙串口 ,不支持 USB串口  对吗?

是的,Qt的SerialPort在Android上应该需要root之后才能用USB串口,我看到其它软件有用termux来支持USB串口的,但目前还没试过
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-1-28 00:24:05 | 显示全部楼层
Hp_2018 发表于 2022-1-27 10:48
Qt 好像没有把通用的   serialport 库 移植 android 。

是的,所以这个程序Android端只支持蓝牙的SPP协议进行串口通信,用的也是Qt的蓝牙库而非串口库
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-1-28 00:25:33 | 显示全部楼层
dghwjh 发表于 2022-1-27 15:37
这个软件波特率能再高一些吗?比如12mbps 通信的格式是什么啊!

可以的,在波特率那里手动输入12000000然后打开串口就可以了,只要硬件支持应该是没问题的。当时设计的时候就把数据读取和UI更新分离开了,所以高速读写的情况下效果会好很多。
回复

使用道具 举报

1

主题

44

回帖

47

积分

新手上路

积分
47
发表于 2022-1-28 12:49:30 | 显示全部楼层
pc支不支持蓝牙串口?
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-1-28 13:18:53 | 显示全部楼层
1847123212 发表于 2022-1-28 12:49
pc支不支持蓝牙串口?

目前还没做进去
回复

使用道具 举报

6

主题

636

回帖

654

积分

金牌会员

积分
654
QQ
发表于 2022-1-28 16:27:33 来自手机 | 显示全部楼层
感谢分享
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-2-16 00:16:47 | 显示全部楼层
新版本(V0.1.2)支持显示串口流控信号(CTS, DSR, DCD, RI),修复了一些bug
https://github.com/wh201906/SerialTest/releases/tag/V0.1.2
回复

使用道具 举报

334

主题

2032

回帖

3039

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3039
发表于 2022-2-16 08:59:57 | 显示全部楼层
本帖最后由 caicaptain2 于 2022-2-16 09:03 编辑
wh201906 发表于 2022-2-16 00:16
新版本(V0.1.2)支持显示串口流控信号(CTS, DSR, DCD, RI),修复了一些bug
https://github.com/wh201906/Se ...

非常感谢!
期望持续更新!
建议,加一个“帮助”菜单栏。记录常用操作说明,和更新记录。
回复

使用道具 举报

0

主题

2

回帖

2

积分

新手上路

积分
2
发表于 2022-3-9 15:57:13 | 显示全部楼层
不错,赞一个!
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-3-11 00:29:20 | 显示全部楼层
回复

使用道具 举报

5

主题

87

回帖

102

积分

初级会员

积分
102
发表于 2022-3-11 08:37:11 | 显示全部楼层
太给力了,正好用来学习一下QT
回复

使用道具 举报

4

主题

160

回帖

172

积分

初级会员

积分
172
发表于 2022-3-25 11:51:43 | 显示全部楼层
1、波特率配置没有保存功能,每次重启都要更改
2、已发送 栏 和 接收 栏 应该是一个页面,页面分开后 不好找对应关系。可以通过颜色深浅 区分
3、发送栏 也太小了吧
4、接收栏 增加 时间戳
5、增加 终端 模式:就是 接收和发送一个页面,方便实用shell控制
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-3-25 12:43:50 | 显示全部楼层
fyyxxm 发表于 2022-3-25 11:51
1、波特率配置没有保存功能,每次重启都要更改
2、已发送 栏 和 接收 栏 应该是一个页面,页面分开后 不好 ...

感谢你的建议!
1. 波特率是按照不同的设备保存的,在“端口”界面下双击列表中的某个设备,即可加载上次连接该设备时使用的波特率以及其它参数。
2. 已发送和已接收都在“数据”界面中啊?不太明白你说的分开是什么意思
3. 因为发送栏主要考虑发送的是单行的内容,所以没有用多行的文本框。目前发送文本如果要自动换行可以把“后缀”设置成\r\n。后期可能会考虑支持解析\r,\n之类的转义字符来支持发送多行文本
4. 后期可能会增加该功能
5. 因为涉及到终端不同颜色的显示还有退格,任务量略微有点大,后期可能会增加该功能。如果只是需要接收和发送在同一个页面可以参考问题2
以及,“端口”“数据”“绘图”“控制”四个界面都可以拖出来变成同时显示的子窗口,可以试一下。
回复

使用道具 举报

75

主题

684

回帖

909

积分

金牌会员

积分
909
发表于 2022-8-22 20:38:40 | 显示全部楼层
收藏学习
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-9-16 16:24:17 | 显示全部楼层
1847123212 发表于 2022-1-28 12:49
pc支不支持蓝牙串口?

现在支持了
回复

使用道具 举报

82

主题

401

回帖

667

积分

金牌会员

积分
667
QQ
发表于 2022-9-16 16:43:50 | 显示全部楼层
学习学习
武汉天纵鹏元科技有限公司。承接嵌入式项目开发,相关技术交流。STM32,物联网,工业控制方向。QQ  408137104
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2022-9-29 10:12:47 | 显示全部楼层
发送栏,如果是多条,Excel表格类型,那就好了!......含有:(1)行号、(2)标签、(3)进制(hex,ASC2,...)、(4)数据、(5)定时、(6)级联、(7)应答...那不爽歪歪?!
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-9-29 19:36:09 | 显示全部楼层
Sunriver 发表于 2022-9-29 10:12
发送栏,如果是多条,Excel表格类型,那就好了!......含有:(1)行号、(2)标签、(3)进制(hex,ASC2,...)、(4 ...

你可以看一下“控制”选项卡,可以自己添加多条命令然后用按钮一键发送,还可以导入/导出整个界面
每一条命令支持自定义命名,16进制发送,加前后缀,转义
回复

使用道具 举报

0

主题

19

回帖

19

积分

新手上路

积分
19
发表于 2022-11-14 15:13:14 | 显示全部楼层
你好,在下载代码后,出现缺少qcustomplotd2.lib的提示,无法编译,编译环境是QT5.14.2
回复

使用道具 举报

334

主题

2032

回帖

3039

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3039
发表于 2022-11-14 15:46:08 | 显示全部楼层
wh201906 发表于 2022-11-1 16:39
新版本V0.2.2已发布
和V0.1.x相比新增了以下功能

感谢更新! 建议放国内的代码开源网站一份。这个github经常连不上。
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-11-14 18:17:54 | 显示全部楼层
a13421364618 发表于 2022-11-14 15:13
你好,在下载代码后,出现缺少qcustomplotd2.lib的提示,无法编译,编译环境是QT5.14.2

你可以看一下项目的中文README,里面有介绍怎么编译
你需要下载qcustomplot.cpp,然后放到src文件夹下面,再编译
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-11-14 18:28:45 | 显示全部楼层
caicaptain2 发表于 2022-11-14 15:46
感谢更新! 建议放国内的代码开源网站一份。这个github经常连不上。

国内Gitee有一些限制,不是很方便
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2022-11-14 18:36:05 | 显示全部楼层
caicaptain2 发表于 2022-11-14 15:46
感谢更新! 建议放国内的代码开源网站一份。这个github经常连不上。

国内项目镜像
https://gitee.com/wh201906/SerialTest
回复

使用道具 举报

334

主题

2032

回帖

3039

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3039
发表于 2023-7-14 16:29:17 | 显示全部楼层
本帖最后由 caicaptain2 于 2023-7-14 16:32 编辑

https://gitee.com/wh201906/SerialTest

这个页面怎么找不到release的目录,哪里找编译好的win平台的exe文件?


回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2023-7-16 02:41:14 | 显示全部楼层
caicaptain2 发表于 2023-7-14 16:29
https://gitee.com/wh201906/SerialTest

这个页面怎么找不到release的目录,哪里找编译好的win平台的e ...

Gitee上面只镜像了源代码,没有release
如果需要在国内下载可以试试这个网站,速度比github快一些
https://sourceforge.net/projects/serialtest/
回复

使用道具 举报

4

主题

17

回帖

29

积分

新手上路

积分
29
发表于 2023-7-16 11:12:49 | 显示全部楼层
LZ,界面好像对不上啊,Hhhh
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2023-7-16 23:45:50 | 显示全部楼层
1021256354 发表于 2023-7-16 11:12
LZ,界面好像对不上啊,Hhhh

帖子里面的预览图有点旧了
回复

使用道具 举报

334

主题

2032

回帖

3039

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3039
发表于 2023-7-17 09:02:34 | 显示全部楼层
wh201906 发表于 2023-7-16 02:41
Gitee上面只镜像了源代码,没有release
如果需要在国内下载可以试试这个网站,速度比github快一些
http ...

楼主,特别需要一个功能,就是数据末尾加校验数据。
目前一直用老的sscom,就是因为只有它有这个功能。其他多个串口助手都难以找到这个功能。
Snipaste_2023-07-17_09-00-33.png
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2023-7-17 22:40:52 | 显示全部楼层
caicaptain2 发表于 2023-7-17 09:02
楼主,特别需要一个功能,就是数据末尾加校验数据。
目前一直用老的sscom,就是因为只有它有这个功能。 ...

行,今后会把这个功能加进去的
回复

使用道具 举报

3

主题

46

回帖

55

积分

初级会员

一个极客ageek

积分
55
发表于 2023-7-18 11:57:05 | 显示全部楼层
wh201906 发表于 2022-1-28 00:24
是的,所以这个程序Android端只支持蓝牙的SPP协议进行串口通信,用的也是Qt的蓝牙库而非串口库

曾经做过Qt上位机在安卓屏上的串口通信就是用的Qt自带的serialport,手机就不知道了,除了本身自动的RS232,RS485接口,USB接CH340,USB转串口也可以的,不过还要考虑安卓版本,安卓7.0以上是必须动态调用权限申请来获取限权,光在xml写需要用的限权也不行,否则无法读写文件也就搜不到底层linux的tty串口号。
回复

使用道具 举报

1

主题

72

回帖

75

积分

初级会员

积分
75
 楼主| 发表于 2023-7-18 22:54:20 | 显示全部楼层
nikola 发表于 2023-7-18 11:57
曾经做过Qt上位机在安卓屏上的串口通信就是用的Qt自带的serialport,手机就不知道了,除了本身自动的RS23 ...

现在最新版本倒是支持用Qt的QSerialPort访问Android设备上的/dev/ttyXXX串口了,也遇到了你说的无权限的问题。目前需要用chmod手动给串口改权限。
我怀疑你能用USB转串口的原因是系统自带了驱动。我装的Android模拟器镜像也带驱动,因此也能用这个app访问USB转串口。但是我在几台手机上都试过了,应该直接没有相关的驱动程序。

挺好奇你动态申请的是什么权限,方便告知一下吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-3 02:48 , Processed in 0.365860 second(s), 31 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表