医用仪器软件设计 课件 第5、6章 打包解包小工具设计实验、串口通信小工具设计实验_第1页
医用仪器软件设计 课件 第5、6章 打包解包小工具设计实验、串口通信小工具设计实验_第2页
医用仪器软件设计 课件 第5、6章 打包解包小工具设计实验、串口通信小工具设计实验_第3页
医用仪器软件设计 课件 第5、6章 打包解包小工具设计实验、串口通信小工具设计实验_第4页
医用仪器软件设计 课件 第5、6章 打包解包小工具设计实验、串口通信小工具设计实验_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五章打包解包小工具设计实验工业和信息化部“十四五”规划教材医用仪器软件设计—基于WinForm01实验内容实验内容学习PCT通信协议及C#中的部分控件,如标签控件(Label)、文本框控件(TextBox)和按钮控件(Button)等。设计一个打包解包小工具,在文本框中输入模块ID、二级ID及6字节数据后,通过“打包”按钮实现打包操作,并将打包结果显示在打包结果显示区。另外,还可以根据用户输入的10字节待解包数据,通过“解包”按钮实现解包操作,并将解包结果显示在解包结果显示区。02实验原理

从机常作为执行单元,用于处理一些具体的事务,而主机(如Windows、Linux、Android和emWin平台等)常用于与从机进行交互,向从机发送命令,或处理来自从机的数据。PCT通信协议PCT通信协议格式在主机与从机的通信过程中,主机和从机有一个共同的模块,即打包解包模块(PackUnpack),该模块遵循某种通信协议。通信协议有很多种,本实验采用的PCT通信协议由本书作者设计,该协议可由C、C++、C#、Java等编程语言实现。打包后的PCT通信协议的数据包格式如图5-3所示。PCT通信协议格式PCT通信协议规定:(1)数据包由1字节模块ID+1字节数据头+1字节二级ID+6字节数据+1字节校验和构成,共10字节。(2)数据包中有6个数据,每个数据为1字节。(3)模块ID的最高位bit7固定为0。(4)模块ID的取值范围为0x00~0x7F,最多有128种类型。PCT通信协议格式(5)数据头的最高位bit7固定为1,数据头的低7位按照从低位到高位的顺序,依次存放二级ID的最高位bit7、数据1~数据6的最高位bit7。(6)校验和的低7位为模块ID+数据头+二级ID+数据1+数据2+…+数据6求和的结果(取低7位)。(7)二级I、数据1~数据6及校验和的最高位bit7固定为1。注意,并不是说二级ID、数据1~数据6和校验和只有7位,而是在打包后,它们的低7位位置不变,最高位均位于数据头中,因此,依然还是8位。

第1步,准备原始数据,原始数据由模块ID(0x00~0x7F)、二级ID、数据1~数据6组成,如图5-4所示。

如图1-12所示,单击选中button1,在“属性”标签页第2步,依次取出二级ID、数据1~数据6的最高位bit7,将其存放于数据头的低7位。中将Text修改为ClickMe,button1按钮显示的文本将改变。PCT通信协议打包过程

第3步,对模块ID、数据头、二级ID、数据1~数据6的低7位求和,取求和结果的低7位,将其存放于校验和的低7位,如图5-6所示。

第4步,将数据头、二级ID、数据1~数据6及校验和的最高位置1,如图5-7所示。PCT通信协议打包过程

PCT通信协议解包过程第1步,准备解包前的数据包,原始数据包由模块ID、数据头、二级ID、数据1~数据6、校验和组成,如图5-8所示。

第2步,对模块ID、数据头、二级ID、数据1~数据6的低7位求和,如图5-9所示,取求和结果的低7位与数据包的校验和低7位对比,如果两个值的结果相等,则说明校验正确。PCT通信协议解包过程PCT通信协议解包过程数据头的最低位bitO与二级ID的低7位拼接之后作为最终的二级ID,数据头的bit1与数据1的低7位拼接之后作为最终的数据1,数据头的bit2与数据2的低7位拼接之后作为最终的数据2,以此类推,如图5-10所示。

图5-11所示即为解包后的结果,由模块ID、二级ID、数据1~数据6组成。其中,模块ID的取值范围为0x00~0x7F,二级ID和数据的取值范围为0x00~0xFF。PCT通信协议解包过程打包解包小工具设计框图如图5-12所示。设计框图PackUnpack.cs文件介绍本书资料包提供的PackUnpack.cs文件中包含PCT通信协议的C#语言实现代码,其中包含了4个API方法,分别为构造方法PackUnpack()、打包方法packData()、解包方法unpackData()及获得解包后的数据包方法getUnpackRslt(),如表5-1所示。

PackUnpackDemo项目的最终布局界面如图5-13所示。该界面主要用到3种控件,分别为Button、TextBox和Label。界面介绍

PackUnpackDemo项目的最终布局界面如图5-13所示。该界面主要用到3种控件,分别为Button、TextBox和Label。界面介绍03实验步骤首先,将本书配套资料包中的“Material\01.PackUnpackDemo\01.PackUnpackDemo”文件夹复制到“D:\WinFormTest”目录下。实验步骤复制基准项目将本书配套资料包中的“Material\01.PackUnpackDemo\StepByStep\PackUnpack.cs”文件复制到“D:\WinFormTest\01.PackUnpackDemo\PackUnpackDemo\PackUnpackDemo”目录下。添加PackUnpack.cs文件实验步骤双击打开MainForm.cs文件,PackUnpackDemo项目界面如图5-14所示,按照表5-3所示的控件说明为控件添加响应方法。添加控件的响应方法

双击打开MainForm.cs文件,PackUnpackDemo项目界面如图5-14所示,按照表5-3所示的控件说明为控件添加响应方法。实验步骤添加控件的响应方法在MainForm.cs文件的PackUnpackDemo类中,添加第3行代码实例化PackUnpack类。实验步骤完善MainForm.cs文件按F5键编译并运行程序,修改输入的裸数据,单击“打包”按钮。再将打包好的数据复制到待解包数据输入区,单击“解包”按钮,验证是否能还原为裸数据。编译运行验证程序第六章串口通信小工具设计实验工业和信息化部“十四五”规划教材医用仪器软件设计—基于WinForm01实验内容实验内容学习串口通信相关知识点,了解串口通信的过程,然后通过WinForm完成串口通信小工具的界面布局,设计出一个可实现串口通信的应用程序。02实验原理

串口是串行接口的简称,通常指COM接口。串口将数据一位一位地顺序传送,其特点是通信线路简单、成本低。串口通信的基本流程如图6-1所示。实验原理

动态链接库(DynamicLinkLibrary,DLL)是微软公司在Windows操作系统中实现共享函数库的一种方式,本实验用到的动态链接库的常用扩展名是.dll。Windows提供的DLL文件中包含了允许基于Windows程序在Windows环境下操作的许多函数,通常存放于计算机的“C:\Windows\System32”目录下。

SerialPort控件是.NET提供的对串口通信的支持功能,有关类放在命名空间System.IO.Ports中,其中最常用的是SerialPort类。通过创建一个SerialPort对象,就可以在程序中控制串口通信的全过程。实验原理

动态链接库SerialPort控件实验原理4.2节介绍了委托的一种用法。委托的另一种用法是在serialPort串口接收数据的过程中,利用this.invok解决多线程中跨线程调用主界面的问题。对于C#,默认不能在其他线程中访问非本线程创建的控件。在本实验中,需要将串口接收到的数据更新到主界面,主界面在主线程中实现,串口接收数据的功能在串口接收事件子线程中实现。这涉及跨线程调用的问题,需要使用委托,否则在运行时会报错,原因是不能跨线程直接访问主界面的控件。委托的另一种用法实验原理双击本书配套资料包“02.相关软件\VSPD”文件夹中的vspd.exe文件,在弹出的如图6-2所示的对话框中,单击OK按钮。虚拟串口实验原理如图6-3所示,单击Next按钮。如图6-4所示,选择Iaccepttheagreement,然后单击Next按钮。虚拟串口

在弹出的对话框中,设置安装路径,然后单击Next按钮,如图6-5所示。如图6-6所示,单击Next按钮。实验原理虚拟串口实验原理如图6-7所示,单击Next按钮。如图6-8所示,单击Install按钮。虚拟串口实验原理如图6-9所示,单击Finish按钮。虚拟串口

VirtualSerialPortDriver软件的用法如图6-10所示。先选择两个串口号,然后单击Addpair按钮,即可将这两个串口配置为一对虚拟串口。实验原理虚拟串口实验原理如图6-11所示,已成功创建一对虚拟串口。虚拟串口实验原理串口通信小工具的设计框图如图6-12所示。设计框图03实验步骤首先,将本书配套资料包中的“Material\02.SerialPortDemo\02.SerialPortDemo”文件夹复制到“D:\WinFormTest”目录下,然后双击SerialPortDemo.sln文件打开项目。实验步骤复制基准项目双击打开MainForm.cs文件,串口通信小工具界面如图6-15所示,按照表6-2所示的控件说明为控件添加响应方法。添加控件的响应方法实验步骤在MainForm.cs文件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论