linux串口文件传输助手怎么用,SerialTool: SerialTool是一个实用的串口调试工具,这款工具支持串口调试助手、波形显示和文件传输等功能...

SerialTool是一款实用的串口与TCP/UDP调试工具,支持文本传输、波形显示、文件传输及多种编码和高亮模式。它可用于调试助手,且提供波形数据分析功能。作者已停止维护,但用户仍可自行动手修改或寻求替代方案。
摘要由CSDN通过智能技术生成

64a4919239ee365e3b74b8b49651c48e.png

SerialTool

SerialTool.svg

SerialTool.svg

SerialTool.svg

SerialTool.svg

total.svg

all.svg

A practical Serial-Port/TCP/UDP debugging tool.

简介

SerialTool是一个跨平台的串口/网络调试工具。此工具支持串口调试助手、终端、波形显示和文件传输等功能。该工具的源代码使用GPL许可证发布。

SerialTool支持基础的文本传输。文本传输界面支持16进制与ASCII格式的收发。您可以自定义文本传输使用的字符编码,目前SerialTool支持ASCII、GB-2312、GB-18030、UTF-8、UTF-16BE、UTF-16LE共6总字符编码。此外还支持多种代码高亮模式,这对文本通信协议(例如使用JSON通信)的操作有较大帮助。

SerialTool的波形显示模块使用简单的协议进行数据传输,我们已经为用户封装好了平台无关的C语言协议库,具体的协议说明请参考串口示波器协议说明。用户可以将采集的波形保存为文本文件,然后使用Matlab等工具进行数据分析(您需要自己编写程序,SerialTool的波形存档为csv格式)。当然,您也可以使用SerialTool载入波形文件。

如果您支持本软件,欢迎贡献源代码或者向作者提出建议。

重要信息

作者目前已经不再维护该项目,如果用户有问题建议自行修改代码解决或者使用其他工具代替。如果无法解决也可以联系作者。感谢您对 SerialTool 的支持!

演示

ec01bd0e102bdee82b6282fab2c05a1e.gif

这是使用SerialTool的终端功能(还在开发中)与烧录了Berry脚本语言固件的STM32F103单片机交互的例子。您可以根据需要定义自己的语法高亮配置文件而不需要修改C++代码。

特性

使用Qt开发,跨平台。目前支持Windows和Linux

中文接收显示不乱码

国际化支持

换肤

波形显示默认最多支持16通道,也可以重新编译支持更多通道

波形数据保存(纯文本,csv格式)与读取

波形数据支持时间戳。时间戳包括年、月、日、时、分、秒、毫秒、采样率,方便进行波形数据分析(时间戳由下位机发送)

文本收发界面支持语法高亮(Bash, JSON, Lua, C/C++等)

文本收发界面支持多种字符编码,如GB2312, UTF8, UTF16等

通信接口支持TCP/UDP和串口

支持文件传输(目前只支持XModem协议)

下载地址

项目信息

跟随本项目发布的Windows 32位安装包使用Qt 5.6.3 for MinGW编译。

使用的插件:

Qt Charts: 此插件在Qt 5.7以及更高的版本中包含在Qt安装文件中,使用Qt 5.6时需要自行编译。

Qt Scripts: Qt 5自带Qt Scripts,安装时勾选即可。

构建

安装Qt开发工具

到这里下载你需要的Qt版本。注意在Qt5.7之前你需要自行编译Qt Charts模块。

运行下载的Qt安装文件。在Windows下直接双击即可,Linux下需要给安装文件加上可执行权限。然后根据需要配置Qt,直到“选择组件 (Select Components)”界面。

在“选择组件 (Select Components)”界面的Qt选项下需要勾选一个Qt主模块(例如MinGW 7.3.0 64-bit、MSVC 2017 64-bit等),此外还要勾选Qt Charts模块和Qt Script模块。如果你的系统中没有安装需要的编译器,你还要在Tools选项下中勾选需要的编译器(如MinGW 7.3.0 64bit)。

根据提示安装Qt。如果需要的话你可以为Qt设置环境变量。

安装QScintilla

在Windows下,打开 “开始菜单 -> 程序列表 -> Qt 5.12.0 -> Qt 5.12.0 for Desktop (MinGW 7.3.0 64-bit)”。Linux下直接打开终端即可(需要设置Qt的环境变量)。

打开QScintilla_gpl-2.10.8/Qt4Qt5文件夹。具体操作为:

假设Windows下路径为 "C:\QScintilla_gpl-2.10.8\Qt4Qt5",执行操作

cd C:\QScintilla_gpl-2.10.8\Qt4Qt5

qmake

mingw32-make

mingw32-make install

qmake CONFIG+=debug

mingw32-make

mingw32-make install

假设Linux下路径为 "~/QScintilla_gpl-2.10.8/Qt4Qt5" 则执行操作

cd ~/QScintilla_gpl-2.10.8/Qt4Qt5

qmake

make

make install

编译SerialTool

使用Qt Creator打开 "SerialTool/SerialTool/SerialTool.pro"文件。

在Qt Creator右下角选择配置为Release(可选)。

编译项目。

交流

QQ群:961508887

当然,有问题的建议发issue。

开源协议

本程序遵从GPL-3.0协议发布,./SerialTool/slave目录下的源码不受GPL-3.0协议约束,用户可以将这些代码加入到自己的项目中而不必公开。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我来回答你的问题。 首先,需要使用PyQt框架来设计串口调试工具。PyQt是Python语言的GUI编程工具包,它是Qt公司的Python绑定库。 其次,要实现串口的选择和波特率的选择,可以使用PyQt提供的QComboBox控件。QComboBox控件可以用来显示一个下拉菜单,用户可以从中选择一个选项。 最后,要实现默认发送ASCII码,可以在发送按钮的事件处理函数中,将输入的字符串转换成ASCII码,然后将ASCII码发送给串口。 以下是一个简单的PyQt串口调试工具的代码示例: ```python import sys import serial from PyQt5.QtWidgets import QApplication, QMainWindow, QComboBox, QPushButton, QTextEdit class SerialTool(QMainWindow): def __init__(self): super().__init__() # 初始化串口对象 self.ser = serial.Serial() # 初始化UI self.initUI() def initUI(self): # 设置窗口参数 self.setGeometry(300, 300, 800, 600) self.setWindowTitle('Serial Tool') # 创建串口选择下拉框 self.comBox = QComboBox(self) self.comBox.setGeometry(20, 20, 100, 30) self.comBox.addItems(['COM1', 'COM2', 'COM3', 'COM4']) # 创建波特率选择下拉框 self.baudBox = QComboBox(self) self.baudBox.setGeometry(130, 20, 100, 30) self.baudBox.addItems(['9600', '19200', '38400', '57600', '115200']) # 创建发送文本框 self.sendEdit = QTextEdit(self) self.sendEdit.setGeometry(20, 60, 400, 400) # 创建发送按钮 self.sendButton = QPushButton('Send', self) self.sendButton.setGeometry(20, 470, 100, 30) self.sendButton.clicked.connect(self.sendData) def sendData(self): # 获取串口号和波特率 com = self.comBox.currentText() baud = int(self.baudBox.currentText()) # 打开串口 self.ser.port = com self.ser.baudrate = baud self.ser.open() # 获取发送数据 sendData = self.sendEdit.toPlainText() # 将发送数据转换成ASCII码 asciiData = [ord(c) for c in sendData] # 发送数据 self.ser.write(asciiData) # 关闭串口 self.ser.close() if __name__ == '__main__': app = QApplication(sys.argv) serialTool = SerialTool() serialTool.show() sys.exit(app.exec_()) ``` 这个程序会创建一个窗口,窗口中包含串口选择下拉框、波特率选择下拉框、发送文本框和发送按钮。用户可以在串口选择下拉框中选择串口号,在波特率选择下拉框中选择波特率,然后在发送文本框中输入要发送的字符串,最后点击发送按钮,程序会将字符串转换成ASCII码发送给串口
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值