第四章 系统软件设计_第1页
第四章 系统软件设计_第2页
第四章 系统软件设计_第3页
第四章 系统软件设计_第4页
第四章 系统软件设计_第5页
全文预览已结束

下载本文档

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

文档简介

1、第四章 系统软件设计4.1 通信协议通信协议是指在计算机之间进行数据传输时的一些约定,包括通信方式、波特率、命令码的约定等。为保证计算机之间能准确、可靠地通信,相互之间必须遵循统一的通信协议。在通信之前一定要先设置好通信协议。本系统串行通信采用异步通信方式。协议如下:1、一帧数据由 1 位起始位、8 位数据位、无奇偶校验位、1 位停止位共 10 位组成。2、波特率设为 9600bps。单片机串行口按方式1工作,波特率由定时器 T1 控制,PC机串口波特率通过VB通讯控件的Settings属性设置,为保证数据传送的准确性,两者的波特率必须一致。 4.2 PC机高级语言部分在PC机高级语言编程中,

2、本设计采用了VISUAL BASIC 高级语言。VISUAL BASIC(VB)是MICROSOFT 公司推出的面向对象编程的高级语言,它以编程简单、ActiveX控件丰富、可移植性好、功能强大而受到广大编程人员的欢迎。因此本系统高级语言编程采用了VB。 1、控制界面的完成使用高级语言编程可以在PC机上编制非常友好、直观的人机控制界面。把原来的人体直接控制变成了鼠标、键盘的间接控制;并且通过直观的控制界面可以很容易的实现控制,对现场的控制情况一目了然,增加了操作人员的视觉感、安全感,简化了操作。控制界面包括:现场数据显示、予置数据输入、现场数据上下限数值、报警提示、数据记录、时间和日期、数据打

3、印、本程序使用密码等。2、 PC机对外通信这个部分是本系统的重要部分, PC机的数据都可以设置,但要把PC机的数据送到串行端口上以及怎样才能把串行端口上数据接收进来,是PC机编程中的关键部分。在VB的大量控件中,有一个MSCOmm控件,是专门用来实现串行端口数据的传输和接收的,为应用程序提供了串行通信功能,是一个标准的十位串口通信。本次设计就使用了该控件。下面就介绍一下该控件的使用方法。 控件属性:(1)comport设置并返回通信端口号。语法为: port=valuevalue是一个整型值,表明使用的端口号说明:在设计时,value可以设成从116的任何数,在打开端口之前必须设置端号。(2)

4、settings设置并返回波特率、奇偶校验、数据位、停止位等参数语法为: object.settings=valuevalue是一字符串表达式,说明端口的设置值,由四个设置值组成,格式如下:“BBBB,P,D,S”其中,BBBB为波特率;P为奇偶校验;D为数据位;S为停止为数。要值得注意的是此处的设置值一定要和单片机系统的串行口波特率设置值一致。(3)portopen设置并返回通讯端口的状态;语法为:object.portopen=valuevalue为一布尔表达式,说明通讯端口的状态;value=true:端口开;value=false:端口关要注意的地方是如果在端口打开之前,DTREnab

5、le或RtsENable属性设为true;当端口关闭时一定要将这两个属性设置为false.(4)input返回并删除接收缓冲区中的数据流语法为:object.input说明:inputlen属性确定被input属性读取的字符数。设置inputlen为0,则input属性读取缓冲区中全部的内容。Inputmode属性确定被input读取的数据类型。如果inputmode=cominputmodetext,则input属性通过一个variant返回文本数据;如果设置inputmode=cominputmodebinary,则input属性通过一个variant返回一个二进制数据的数组。(5)out

6、put往传输缓冲区写数据流语法为:object.output=valuevalue是一准备写到传输缓冲区的一字符串。说明:output属性可以传输文本数据或二进制数据(6)commevent返回最近的通讯事件或错误。用此属性处理在数据传输过程中的异常事件。(7)handshaking设置并返回硬件握手协议语法为:object.handshaking=valuevalue为一整型值 value=0 没有握手value=1 (xon/xoff)握手value=2 (rts/cts)握手 value=3 (xon/xoff和rts/cts两种皆可)握手说明:handshaking是指内部通讯协议,通

7、过该协议,数据从硬件端口传输到接收缓冲区。握手协议保证在缓冲区过载时数据不丢失。控件事件:(8)oncomm无论何时当commevent属性的值变化时,就产生oncomm事件。它标志发生了一个通讯事件或一个错误。Commevent属性包括实际错误或产生oncomm事件的编码。但是,当rthreshold或sthreshold属性被设置为0时,则会分别使comevreceive和comevsend事件无效。4.3 单片机汇编语言部分 PC机只与一台单片机通信,由上述的通信协议,对单片机作了如下的设置,从而保证PC机与单片机的正常通信。 MOV TMOD,#20H ;设置定时器T1工作方式 2 MOV TH1,#0FDH ;定时器计数初值,波特率9600bps MOV TL1,#0FDH ;定时器重装值 MOV SCON

温馨提示

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

评论

0/150

提交评论