文档详情

用VC实现单片机与PC机串口通信的三种方法.pdf

发布:2017-08-07约1.44万字共4页下载文档
文本预览下载声明
目叨化 勺 仪 葡 仪 霰 维普资讯 ZIDONGHUAYUYIQIYIBIAO 2005年第3期(总第119期) 文章编号:1001—9227(2005)03-0060—04 用VC++实现单片机与PC机 串口通信的三种方法 曾自强,王玉菡 (西安石油大学 西安,710065) 摘 要:在VC+十6.0开发平台上,本文介绍运用MSComm控件、WindowsAPI函数、CSerial类实现 单片机与PC机串口的通信。 关键词:串口通信;RS一232;RS一485 ABSTRACT:Inthispaper,weintroducethreewaystoimplementcommunicationbetweensinglechipand PC,whichareMSComm control,WindowsAPIfunctionsnadCSeriM class. KEYW0RDS:SeriM communication;RS一232;RS一485 中图分类号:TP368.1 文献标识码:B 事件驱动方法和查询方法。 0 引 言 1.1 MSComm控件的属性 在现代工业控制中,经常会遇到上位机和下位机 (1) CommPort属性:用于设置 串 口号。类型 的通信与控制问题。PC机和下位机进行通信的主要 short,值为 1~16,默认值为 1; 接口就是RS一232接口(一般电脑有两个串口COM1、 (2) Settings属性:用于设置数据传输速率、奇偶 COM2)。单片机与PC机最简单的接法是TxD—RxD, 校验、数据比特、停止比特参数。类型 CString,格式 RxD.-TxD,GND--GND。但是,串口还不能直接与单片 “BBBB、P、D、S”,BBBB为数据传输速率,P为奇偶校 机相连,必须转换 电平。我们可 以选用 MAX232和 验,D为数据位数,S为停止位数; MAX485进行 电平转换。MAX232用于 RS一232C标 (3) RThreshold属性:用于设置要接收的字符 准;MAX485用于RS一485标准。RS一232C标准最高 数。类型short,当接收到字符后,接收缓冲区内字节个 数据传送速率为20kbit/s,最长传送电缆为 15米。RS 数达到或超过该阀值便会产生 OnComm事件,若该阀 一 485标准最高数据传送速率为 10Mbit/s,最长传送电 值为0则不会产生OnComm事件; 缆为1219米 。 (4) InputMode属性:用于设置传输数据的类型。 为了实现微机和单片机的串行通信,我们采用VC 类型long,0一文本,1一二进制; ++6.0开发平台来实现编程。VC++6.0是微软公 (5) InputLen属性:用于设置从接收缓冲区读取 司于 1998年推出的一种开发环境,以其强大的功能, 的字符数。类型shon。若设置InputLen为0,则将读取 32位面向对象的程序设计及 ActiveX的灵活性而受到 接收缓冲区中全部的字符数; 广大软件开发者的青睐,被广泛应用于各个领域。这 (6) InBuffersize属性:用于设置输入缓冲的大 里我们应用MSComm控件、WindowsAPI函数、CSeral类 小。默认值为 1024字节; 来实现微机和单片机的串行通信。 (7) Input属性:用于从接收缓冲区中读取数据
显示全部
相似文档