欢迎来到天天文库
浏览记录
ID:25762983
大小:61.00 KB
页数:8页
时间:2018-11-22
《大连海事大学毕业设计(二)论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、大连海事大学毕业设计(二)论文2、C/T——功能选择位。C/T=1时,选择计数功能;C/T=0时,选择定时功能。T0、T1的计数、定时功能是通过TMOD中的位来选择的。3、M1、M0——工作方式选择位。由于有M1和M0两位,可以有四种工作方式,如下表所示。定时器/计数器的工作方式M1M0工作方式计数器配置00方式013位计数器01方式116位计数器10方式2自动重载的8位计数器11方式3T0分为两个8位计数器,T1停止计数3串行数据通信程序设计3.1通信协议本系统串行通信采用异步通信方式。协议如下:1.一帧数据由1位起始位、8位数据位、无奇偶校验位、1位
2、停止位共10位组成。2.波特率设为9600bps。单片机串行口按方式1工作,波特率由定时器T1控制,PC机串口波特率通过VB通讯控件的Settings属性设置,为保证数据传送的准确性.freel。利用API函数编写串行通信程序较为复杂,需要掌握大量的通信知识,其优点是可实现的功能更丰富、应用面更广泛,适合于编写较为复杂的低层次通信程序。而VB6.0的MSm通信控件提供了标准的事件处理函数、事件、方法,并通过控件属性对串口参数进行设置,比较容易地解决了串口通信问题。该控件可设置串行通信的数据发送和接收,对串口状态及串口通信的信息格式和协议进行设置。这是一个
3、标准的十位串口通信,包括8位标准数据和数据的起始位和停止位。在发送或接收数据过程中触发Onm事件,通过编程访问mEvent属性了解通信事件的类型,分别进行各自的处理。每个通信控件对应一个串口,可以设计多个通信控件来访问多个通信口。PC机程序设计流程图如下示3.3.2VB6.0的通信控件及通信方式MSm通讯控件简介MSm是VB6.0提供的ActiveX控件,使用前需将该控件添加到VB工具栏。MSm控件串口具有完善的串口数据的发送和接收功能。通过此控件,PC机可以利用串行口与其它设备实现轻松连接,简单高效地实现设备之间的通讯。此控件的事件响应有两种处理方式,
4、事件驱动方式:由MSm控件的Onm事件捕获并处理通讯错误及事件;查询方式:通过检查mEvent属性的值来判断事件和错误。1)MSm控件的主要属性和方法a.mPort:设置或返回串行端口号,其取值范围为1—99,缺省为1b.Setting:设置或返回串行端口的波特率、奇偶校验位、数据位数、停位。如:MSm.Setting="9600,n,8,1”。c.PortOpen:打开或关闭串行端口。d.RThreshold:该属性为一阀值,它确定当接收缓冲区内字节个数达到或超过该值后就产生MSml--Onm事件。e.Input:从接收缓冲区移走一串字符。f.Outp
5、ut:向发送缓冲区传送一字符串。2)mEvent属性:如果在通讯过程中发生错误或事件,就会引发Onm事件并由mEvent属性代码反映错误类型,可根据该属性值来执行不同的程序操作或数据处理。以下是部分属性常数值及其含义:a.EvSend:其值为1,发送缓冲区的内容少于SThreshold指定的值。b.EvReceive:其值为2,接收缓冲区内字符数达到RThreshold值,该事件在缓冲区中数据被移走前将持续产生。c.EventRxParity:其值为1009,奇偶校验。d.EvEOF:其值为7,接收数据中出现文件结束字符。本系统采用事件驱动方式进行串口通
6、信设计,下图2为上位机通信界面,设计了2个命令按扭,分别为发送、清空数据;两个文本框,Text1用于输入需从下位机读取的数,Text2用于显示下位机发送来的数据;3个Frame控件,一个Label控件,当然还需要一个MSm控件。MSm控件属性设置如图1示:(图2)下面是MSm控件的初始化程序、部分数据发送和接受程序4调试与结论该系统目前已调试成功,完成了PC机与51单片机之间的串行通信。并且实现了下列功能:1)在VB界面上发送任一数字在51单片机的数码管上都能成功的接收2)同样通过向51单片机内写入的程序,在VB界面上可以接收到相对应的内容且运行良好。调
7、试过程如下:硬件方面:该系统的硬件调试主要是排查单片机印刷电路板的问题和连接上的一些问题。在该系统中,首先通过了仔细地推敲系统原理,确认无误;其次对照设计图纸查印制电路板,看是否有粘接等工艺现象;最后,检查外围连接是否有误,通过这几个方面的反复调试,可确保电路板的无误性。在本系统的硬件调试过程中,出现了下列两种情况1)电压不稳定而导致程序无法写入的情况,使电压稳定的方法是改用新的电池,或者是再次设计电源方案,在这里是用电源接通教学实验板,然后再把教学实验板与本系统相连接,这样,就可以得到稳定的电压了。2)还出现的一个问题是数码管不显示,检查后是焊接上出现
8、了一点的失误。软件方面:本系统在软件调试方面也没有规律可循,调试时更多的是凭经验
此文档下载收益归作者所有