简易上位机(X/Ymodem 协议传输上位机)功能说明

摘要

本文将介绍我开发的一个简易上位机,该上位机支持串口/网络通信、X/Y-Modem 协议、简单仿终端调试与数据波形显示,适用于设备调试、通信测试、协议调试等场景。具体的内容可以看我的开源链接。本文主要介绍可以使用这个上位机干些什么内容。本文基本内容以V2.0.6举例,后续的更新内容会另外再做说明。

开源链接

参数
github主页 https://github.com/snqx-lqh
github项目地址 https://github.com/snqx-lqh/JYSWJ
gitee项目地址 https://gitee.com/snqx-lqh/JYSWJ

📖 欢迎交流 如果对你有帮助,希望可以帮我点个赞👍和收藏,谢谢

上位机还有对STM32YModem升级有一个简易的介绍视频:

下载使用

如果只是单纯的想使用上位机。可以在发行版中下载最新的版本。这里以V2.0.6举例。

Gitee

image
image

Github

image
image

功能说明

注意项!!!!!!!

  • 多字符发送支持ini文件的快速建立和切换,ini文件保存在软件目录 Config/多字符配置文件下。如果你下载了新版本,记得从旧版本中,把这些ini文件复制过去。
  • 发送多功能区的文件发送支持5条历史记录,且能通过右键删除选中记录
  • 终端模式不要接收带大量 0x08 的数据。这种情况建议使用普通的显示模式,取消终端模式勾选。不然会导致显示不对和卡顿。
  • 网络连接如果开了VPN可能会导致网络连接失败。
  • 网络连接暂时支持 IPV4 的 IP 模式,最好不要用域名,我没调试过。

整体功能

image
上位机按照功能分区,主要可以分为上面的6个分区,每个分区的主要作用如下:

  • 1、侧边工作栏:做一些界面的显示隐藏信号、通信连接信号。
  • 2、通信IO设置区:设置串口、TCP、UDP等功能。以及接受区的显示类型,发送区需要增加的发送条件。
  • 3、接收多功能区:主要包含一些接收显示的功能,目前有文本接收和波形数据显示。
  • 4、发送多功能区:主要包含一些发送的功能和一些小工具。
  • 5、多字符发送区:可以保存多个字符发送。
  • 6、状态显示区:展示发送和接收或者一些连接状态的信息。

侧边工作栏

image
侧边工作栏有3个按钮,从上往下分别是:

  • 1、隐藏/显示通信IO设置区、
  • 2、隐藏/显示多字符发送区、
  • 3、连接通信IO按钮。绿色代表连通,红色代表断开。

通信IO设置区

通信IO区可以通过端口配置处配置将要连接的通信方式,包含串口、TCP和UDP。所有的配置再程序打开和关闭的时候都会加载上一次的数据。
image
image
image
image

注意:TCP 的连接 如果使用了VPN 有可能失败。还有就是目前的连接,需要使用IPV4的地址,直接使用域名的连接我没尝试过,但是应该不行。

接收多功能区

文本接收

就是正常的接收文本的框,但是这个框可以输入,也就是说它可以支持串口终端一样的功能,方便调试嵌入式。

image

可以做以下勾选。

  • 1、Hex。返回显示的数据就是16进制。
  • 2、时间戳。返回的数据会显示时间。但是现在没做超时分包,所以有可能这个时间会连得比较紧。
  • 3、接收到文件。勾选后会保存文件到指定的路径下,最好停止保存的时候取消勾选,不要直接把软件×掉。
  • 4、发送回显。就是发送的内容会回环显示。
  • 5、终端模式。勾上的话,就能进行文本框输入,输入就相当于通信IO在发送字符,方便嵌入式命令行调试。但是如果只是想显示数据,建议取消勾选,因为命令行有些指令,比如0x08退格,如果你处于终端模式下疯狂发出这个字节,会解析失败,甚至导致软件卡死。因为在命令行模式下,一般都不会有这些不可见的字符。
  • 6、编码格式。目前只支持UTF-8和GBK。

波形显示

image

波形的显示的数据协议是 以”$WAVE,13,12,10,31,4412\r\n”,$WAVE是头,是尾部,结尾的12是校验位,但是目前代码不支持,后续会增加。中间的数据最多支持8组数据,数据类型为float。每个通道可以点击来决定显示和不显示,运行过程中,中间有竖线可以查看某一帧的实时数据。横轴和竖轴都支持缩放。

发送多功能区

基础发送

image

这部分主要是选择文件,选择文件完成后,会保存到下拉框中,最多能保存5条历史信息,保存的文件信息可通过右键删除。

协议发送

image

文件选择这些和基础发送中一样,主要是这里发送协议,目前支持xmodem的128和1024协议和ymodem协议的128和1024协议。最多能保存5条历史信息,保存的文件信息可通过右键删除。

文件转换

image

支持将bin文件转成imx文件,转换的方式和正点原子的linux裸机下载那个程序一样。都是在bin文件前面加一点头部信息。

多字符发送区

这部分循环发送数字越小发送优先级越高,为0时循环发送不发送。最后面的1000那一栏是设置发送后的延时时间。最前面的checkbox勾上就是发送Hex文件。ini下拉框会根据目前选择的ini文件显示不同的发送组。可新建ini,这些ini会保存在软件目录的Config/多字符配置文件下。

注意:每次更新版本后,需要自己替换多字符配置文件。

image

状态显示区

这个比较简单,就是会显示一些发送接收计数什么的。还有显示当前通信IO的状态。以及我的项目地址跳转。
image

posted @ 2026-01-17 10:30  少年-潜行  阅读(6)  评论(0)    收藏  举报