基于VC++6.0的PC机和单片机串口通信.pdf
文本预览下载声明
维普资讯
UJ{liJ『用技术 零零六总第六十七期
基于VC++6.0的PC机和单片机串口通信
王英杰 林怡青 彭美春 聂~彪
广东 l业大学机电工程学院 广东 广 I,510090
摘 要:本文使用VC++6.0提供的串行通信MSComm控件以及WindowsAPI函数实现Pc机
和单片机之间的通信 详细介绍了实现的方法,给出了应用实例
关键词:串口通信:多线程;API函数;单片机
Program forSerialCommunicationbetweenPC andSingle
ChipMicr0pr0cess0rbasedonVisualC++6.0
WANGYingjie LINYiqing NIEYibiao
GuangdongUniversityofTechnologyGuangdongGuangzhou,510090
Abstract:ThispaperuseaSerialCommunicationControlMSComm andW indowsAPI
functionsuppliedbyVisualC++6.0torealizeserialcommunicationbetweenPCandsingle
chipmicroprocessor.Introducerealizationmethodsdetailedly,provideapplicationexamples.
Keywords:serialcommunication;multi-thread;APIfunction;singlechipmicroprocessor.
1引 言
在现代_l业控制中,串口通信的应用越来越广泛。单片机和 PC机之间的串口通信在
进行数据交换时经常被使用。在串行通信时,要求通信双方都采用一个标准接 口,RS.232C
接 口是单片机利PC机进行通信最常用的一种接 口。单片机与 PC机进行串口通信最简单
的二线制法,即接收数据针脚(RxD)与发送数据针脚(TxD)相连,彼此交叉,信号地(GND)
对应相接。但是,串口还不能直接和单片机相连,可以选用 MAX232和 MAX485进行电
平转换。MAX232用于RS.232C标准;MAX485用于RS485标准。RS.232C标准规定在
码元畸变小于4%的情况下,传输电缆长度最大约为 l5米,最高传输速率为20kbit/s。RS485
标准最人传输距离约为1219米,最大传输速率约为 l0Mbit/sIlj。
为了实现单片机和PC机之间的串口通信,采川 VC6.O++来实现编程,VC6.O++是一
种功能强大的面向对象的Windows编程开发平台。与以往 DOS下串行通信不同,Windows
不提倡应用程序直接控制硬件,而是通过Windows系统提供的设备驱动程序来进行数据传
递。串口在Win32中是作为文件来处理的,而不是直接对端 口进行操作。本文采用MSComm
基‘金资助:广州市科技计划项目资助课题 (项目编号:No.2002Jl—℃o3O1)
作者简介::_F英杰 (1979一),男,河南驻马店人,硕士 究生, 究方向主要为汽车电子控制。
36
维普资讯
U脑 用技术 二零零六总第六十七期
控件、WindowsAP!函数米实现PC机与单片机之间的通信。
2使用VC什提供的MSComm控件实现串行通信
MicrosoftCommunicationControl(简称 MSComm)是 Microsoft公司提供的简化
Windows下的串行通信编程的ActiveX控件,为应用程序提供了串口接收发送数据的简便
方法。MSComm 控件通过串行端 口传输和接收数据为应用程序提供 串行通信功能。
MSComm提供了两种处理通信问题的方法:一是事件驱动法,主要是利
显示全部