快捷搜索:  汽车  科技

wpf项目开源:开源软件分享-基于WPF的串口调试工具

wpf项目开源:开源软件分享-基于WPF的串口调试工具然后我们修改红色方框内的代码,对收到的数据进行判断,如果在属于字典autoReply则自动将对应的内容应答到串口。WPFSerialAssitan even code我们将代码克隆到本地,当然也可以先fork一份到自己的仓库再克隆到本地,这样修改后我们可以将更改推送到github上。我们使用vs2019打开工程,查看下其基本的代码结构。WPFSerialAssitan code 我们可以看到核心的代码,基本在EventHandler.cs、core.cs 等2个类文件中,我们定义一个Dictionary 将收到的指令和需要应答的指令一一定义起来。

最近同事在调试硬件的串口通讯功能,由于PLC暂时还没到,所以准备用USB转串口线连接在终端上,通过电脑USB口模拟串口收发功能。一开始同事下载了一款串口调试工具,发现没有自定义功能,比如通讯串口收到终端发送的数据,需要自动应答对应指令数据(ModBus 主从问答方式)。为了配置同事硬件调试,准备下载一个开源的串口调试工具,增加自定义应答功能。

wpf项目开源:开源软件分享-基于WPF的串口调试工具(1)

Serial port

串口调试开源软件搜索

打开github网站搜索串口调试,我们搜索到一款名为WPFSerialAssitan的串口调试软件感觉比较符合我们的要求。其README.md文件的介绍如下:

WPFSerialAssitan 串口助手是一款基于C#及WPF的串口助手软件。本串口助手操作方便,UI简洁。软件实现了基本的串口通讯需要的功能,开发者可以基于此添加自定义的功能。此外,可以基于此开发出一些简单的串口控制类软件。

我们将代码克隆到本地,当然也可以先fork一份到自己的仓库再克隆到本地,这样修改后我们可以将更改推送到github上。我们使用vs2019打开工程,查看下其基本的代码结构。

wpf项目开源:开源软件分享-基于WPF的串口调试工具(2)

WPFSerialAssitan code

串口调试开源软件修改

我们可以看到核心的代码,基本在EventHandler.cs、core.cs 等2个类文件中,我们定义一个Dictionary 将收到的指令和需要应答的指令一一定义起来。

wpf项目开源:开源软件分享-基于WPF的串口调试工具(3)

WPFSerialAssitan even code

然后我们修改红色方框内的代码,对收到的数据进行判断,如果在属于字典autoReply则自动将对应的内容应答到串口。

string recvString = Utilities.BytesToText(recvBuffer receiveMode serialPort.Encoding); this.Dispatcher.Invoke(new Action(() => { if (showReceiveData) { // 根据显示模式显示接收到的字节. recvDataRichTextBox.AppendText("接收: " recvString System.Environment.NewLine); recvDataRichTextBox.ScrollToEnd(); } dataRecvStatusBarItem.Visibility = Visibility.Collapsed; //我们加入自动回复功能 //如果收到的指令配置在自动应答字典内,则自动回复Key对应的Value if (autoReply.ContainsKey(recvString)) { SerialPortWrite(autoReply[recvString]); recvDataRichTextBox.AppendText("发送: " autoReply[recvString] System.Environment.NewLine); } }));编译运行

由于时间的关系,我们将需要自动应答的指令和回复内容硬编码到代码里面了,以后有时间可以增加一个配置界面,设置需要自动应答的指令并且可以保存。

wpf项目开源:开源软件分享-基于WPF的串口调试工具(4)

串口调试助手

猜您喜欢: