1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 3.3-上位机与下位机通信构架源代码编写与使用方法说明

3.3-上位机与下位机通信构架源代码编写与使用方法说明

时间:2022-02-05 06:40:46

相关推荐

3.3-上位机与下位机通信构架源代码编写与使用方法说明

一、测试框架所使用的示例命令定义

本框架的示例代码所使用的命令协议规定如下: CRC校验码 = [命令类型码 + 命令码 + 命令参数]一个完整封包 = [包头 + 包长 + 命令类型码 + 命令码 + 命令参数 + CRC校验码 + 包尾]包头:FF包尾:EE FC FF EA包长:0A (除去包头和包尾的长度, 包长包括自己的长度)命令类型码:

0x01:上位机给下位机设置的命令类型

0x02:上位机从下位机获取数据的命令类型

0x03:下位机主动给上位机发送数据的命令类型命令码:08 //根据不同命令,定义不同的命令码命令参数:31 32 33 //根据不同的命令需求,添加不同的参数,参数可以为空CRC校验码:E32F (使用CRC算法动态计算) 设置命令举例数据获取命令举例下位主动上报命令举例

二、使用软件模拟下位机对框架进行测试

本框架在实际项目中使用非常稳定。现在为了使用者方面学习并使用本框架以及更好的展示使用效果,这里编写一个“下位机硬件模拟小软件”。

下位机模拟软件截图 MacOS

Windows

下位机模拟软件源码获取地址(使用Qt开发,可以在MacOS平台和Windows平台分别编译)

点击此链接获取源代码

三、示例源代码获取

关于通信框架的的具体实现方法,还是阅读源代码比较“靠谱”,边看代码,边测试。

使用Qt开发的本框架源码获取地址

点击此链接获取源代码使用C#Winform开发的本框架源码获取地址

点击此链接获取源代码

四、本框架Qt版本使用方法

使用QtCreater编译并运行“下位机模拟器软件”,并点击“启动服务”。注意要保证电脑连接到一个局域网中(连接一个路由器)。因为本框架示例程序中有“局域网发送广播查找设备的功能”。

使用QtCreater编译并运行“上位通信构架示例软件”,点击对话框最上面的“Connect按钮”,会弹出“查找设备对话框”,如下图所示。点击“查找按钮”开始查找,找到的设备会显示在列表中,选中设备点击“连接”按钮即可完成设备连接,然后关闭“查找设备对话框”即可。

“上位通信构架示例软件”中的命令测试方法: 点击“上位通信构架示例软件”中的“Set按钮”即可发送一个设置命令到下位中,从“下位机模拟器软件”的界面上可以看到,设置值。点击“上位通信构架示例软件”中的“GetTemperature按钮”,即可从“下位机模拟器软件”中获取一个温度值。此温度值可以在“下位机模拟器软件”中修改。点击“下位机模拟器软件”中的“上报”按钮,会主动发送一个自加数字到“上位通信构架示例软件”,“上位通信构架示例软件”的第三个groupBox中会显示下位机上报的数值。

五、本框架C#Winform版本使用方法

使用QtCreater编译并运行“下位机模拟器软件”,并点击“启动服务”。注意要保证电脑连接到一个局域网中(连接一个路由器)。因为本框架示例程序中有“局域网发送广播查找设备的功能”。

使用QtCreater编译并运行“上位通信构架示例软件”,点击对话框最上面的“Connect按钮”,会弹出“查找设备对话框”,如下图所示。点击“查找按钮”开始查找,找到的设备会显示在列表中,选中设备点击“连接”按钮即可完成设备连接,然后关闭“查找设备对话框”即可。

“上位通信构架示例软件”中的命令测试方法: 点击“上位通信构架示例软件”中的“Set按钮”即可发送一个设置命令到下位中,从“下位机模拟器软件”的界面上可以看到,设置值。点击“上位通信构架示例软件”中的“GetTemperature按钮”,即可从“下位机模拟器软件”中获取一个温度值。此温度值可以在“下位机模拟器软件”中修改。点击“下位机模拟器软件”中的“上报”按钮,会主动发送一个自加数字到“上位通信构架示例软件”,“上位通信构架示例软件”的第三个groupBox中会显示下位机上报的数值。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。