基于VB实现PC机及单片机串行通讯

基于VB实现PC机及单片机串行通讯

ID:9844554

大小:76.00 KB

页数:4页

时间:2018-05-12

基于VB实现PC机及单片机串行通讯_第1页
基于VB实现PC机及单片机串行通讯_第2页
基于VB实现PC机及单片机串行通讯_第3页
基于VB实现PC机及单片机串行通讯_第4页
资源描述:

《基于VB实现PC机及单片机串行通讯》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于VB实现PC机与单片机的串行通讯摘要:本文介绍使用VB6.0开发工具实现PC机与单片机的串行通讯的基本原理和方法。并结合具体实例给出使用RS-232接口进行串行通信的基本程序。关键词:VB,单片机,串行通讯引言   随着计算机技术尤其是单片微型机技术的发展,人们已越来越多地采用单片机来对一些工业控制系统中如温度、流量和压力等参数进行检测和控制。PC机具有强大的监控和管理功能,而单片机则具有快速及灵活的控制特点,通过PC机的RS-232串行接口与外部设备进行通信,是许多测控系统中常用的一种通信解决方案。因此如何实现PC机与单片机之间的

2、通讯具有非常重要的现实意义。本文将论述在VB环境下PC机与单片机之间实现串行通讯的软硬件方案。PC机的通讯程序使用VisualBasic编写,VB是Microsoft公司推出的Windows应用程序开发工具,因其具有界面友好,编程简便等优点而受到广泛的使用,而且VisualBasic6.0版本带有专门实现串行通讯的MSCOMM控件。1、硬件原理   目前的PC机都有至少一个串行通讯端口RS-232,RS-232端口可用于两台计算机之间进行通讯,RS-232的逻辑电平用正负电压表示,且信号使用负逻辑,逻辑0的电压范围是+5V~+15V,而

3、逻辑1的电压范围是-5V~-15V,RS-232端口是计算机与其他设备沟通的最常用的接口,不但实作简单,而且价格便宜。在8051单片机的内部有一个全双工的异步串行I/O口,它的输入和输出使用5V逻辑而不是RS-232电压,如何进行两种信号的转换,是连接时需要解决的问题,事实上,解决的方法很简单,只需使用一个诸如MAX232这样的专用芯片即可。电路结构见下图。 4MAX232包含两个将TTL输入转换成RS-232输出的驱动器,还包含两个将RS-232输入翻译成CMOS输出的接收器,这些驱动器和接收器具有反向的功能。4个外置的电容大小为1u

4、F,如果使用极化电容,注意极性,引脚6的电压为负,因此它的电容的正极连接到地,电容等级至少为15V。2、软件设计   本次通讯中,我们以一个测控系统的上位机和下位机之间的通信为背景,给出单片机部分和VB环境下的通信程序实例,系统中单片机负责数据采集、处理和控制,上位机进行现场可视化检测,通信协议采用半双工异步串行通信方式,通过RS232的RTS信号进行收发转换,传输数据采用二进制数据,上位机与下位机之间采用主从式通讯。   (1)单片机的串行通讯程序   8051单片机从外部采集到的一组数据(30个),存在片内RAM20H~3DH区域,

5、要求将这个数据块传送给PC机,为了保证传送的正确,传送前由单片机先向PC机发送数据#55H(联络信号),PC机接收到后,向单片机回送数据#0AAH(回应信号),经检验正确后,单片机才开始向PC机传送数据。对串行口的操作可分为以下几步进行:①串行口初始化;②发送联络信号;③接收联络信号;④发送数据。以下程序由汇编语言编写:ORG 0030HSTART:MOV SP,#60H      MOV TMOD,#20H  ;T1工作模式2      MOV TH1,#72H      MOV TL1,#72H     ;波特率110HZ     

6、 SETB TR1      MOV PCON, #00H  ;SMOD=0      MOV SCON, #50H  ;串行方式1      MOV R0,#20H      MOV R2,#30       ;数据个数XX1:MOV A,#55H      MOV SBUF,A      ;发送联络信号WAIT1:JBC TI,WAIT2    ;等待发送完毕      AJMP WAIT1WAIT2:JBC RI,READ     ;等待接收完毕       AJMP WAIT2READ:MOV A,SBUF     ;接收联络信

7、号       CJNE  A,#0AAH,XX1;接收数据不正确,重新开始LOOP:MOV A,@R0MOV SBUF,AWAIT: JBC TI,LOOP1      AJMP WAIT         ;等待发送完毕 LOOP1:INC R0          DJNZ R2,LOOPEND   4(2)计算机的串行通讯程序   为了更方便地实时了解数据采集的情况,我们把从单片机读来的数据分别赋给数组,然后描绘出波形曲线。   首先开启一个VB项目,并在窗体上安排一个MSCOMM控件,作为串行通讯的信道。按下F4调出属性窗口,变量

8、COMPORT属性为2,另外将Rthreshold属性设为1,意思就是只要外界传送任何字符串,随即引发事件。安排一个定时器,作为连续动作的执行控件,一旦一位数据发送完就引发中断,发送下一个数据。设置一个pi

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。