PC机与PIC单片机串行通讯的实现
[09-12 17:53:55] 来源:http://www.88dzw.com 单片机学习 阅读:8383次
文章摘要:PC机与PIC单片机串行通讯的实现 于万民,王哈力,郑洪平 (哈尔滨理工大学 黑龙江哈尔滨 150040; 2.齐齐哈尔铁路车辆(集团)有限责任公司 黑龙江齐齐哈尔 161002) 随着计算机应用技术和微机网络技术的发展,计算机与其外部设备之间的数据传输越发显得重要。而串行通讯技术是实现这一功能的有效途径,他具有使用方便、数
PC机与PIC单片机串行通讯的实现,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.comPC机与PIC单片机串行通讯的实现
(哈尔滨理工大学 黑龙江哈尔滨 150040;
2.齐齐哈尔铁路车辆(集团)有限责任公司
黑龙江齐齐哈尔 161002)
随着计算机应用技术和微机网络技术的发展,计算机与其外部设备之间的数据传输越发显得重要。而串行通讯技术是实现这一功能的有效途径,他具有使用方便、数据传输可靠、适用于远距离通讯的特点,在工业监控、数据采集、检测等系统中有着广泛的应用。
1 异步串行通讯的原理及硬件电路的实现
1.1 异步串行通讯的原理
在异步通讯中,数据是一帧一帧传送的,其数据格式如图1所示。
在帧格式中,一个字符由4部分组成:起始位、数据位、奇偶校验位和停止位。首先是一个起始位"o",然后是5~8位数据(规定低位在前,高位在后),接下来是奇偶校验位(可省略),最后是停止位"1"。起始位"o"信号只占用1位,用来通知接收设备一个待接收的字符开始到来。线路上在不传送字符时应保持为"广。接收端不断检测线路的状态,若连续为"1"以后又检测到一个"o",就知道发来一个新字符,应马上准备接收。
1.2 硬件电路的实现
PC机与PICl6C711单片机之间的串行异步通讯采用RS232接口电路实现,利用计算机的串行接口进行数据传输。因为RS232逻辑电子对地是对称的,与TTI。,CMOS逻辑电平完全不同。逻辑"1"电平为一5~15V之间,逻辑电平"0"为+5~15V之间,其与单片机的逻辑电平不一致,必须进行电子转换,采用MCl488和MCl489芯片可分别实现TTL-RS232和RS232-TTL之间的电平转换。接口电路图如图2所示。
2 PC机通讯程序的编制
利用VC++6.0在Windows 98以上的环境下运行,VC实现串行通讯有3种途径:
(1)利用MSComm控件,他是Microsoh公司提供的简化WindOWS串行通讯编程的ActiveX控件,他为应用程序提供了处理串行通讯的2种方法:数据驱动法和查询法;
(2)利用Cseria1Pont类进行串口通讯,他适合于需要使用多个串口时的通讯;
(3)用Win API函数对串口进行操作。
本文以VC++6.0调用Win API函数为例编程实现。Win API函数对串口进行操作不是对端口直接进行读写,而是把所有的设备都看成文件,从而进行相应的文件操作。
第1步,在MainForm.cpp定义全局变量HANDLE hCom;//准备打开的串口的句柄HANDLEh Comm WatchThread;//辅助线程的全局函数
第2步,打开串口,设置串口hCom=CreateFile(〞COMl〞,GENERIC_READ︱GENERIC_WRITE,NULL, OPEN_EXISTING, FILE_ FLAG_OVERLAPPED,NULL);//这里,我们使用FILE_FLAG_OVERLAPPED结构,这正是使用API函数实现非阻塞通讯的关键所在。
ASSERT(hCom! =INVALID HANDLE VALUE);
//检测打开串口操作是否成功
SetCommMask(hCom,EVRXCHAR IEVTXEMPTY);
//设置事件驱动的类型
SetupComm(hCom,1024,512); //设置输入缓冲区的大小
PurgeComm (hCom, PURGE TXABORT ︱ PURGE RXABORT︱PURGETXCLEAR︱PURGE RXCLEAR);
//清理输入输出缓冲区
COMMTIMEOUTS Comm丁imeOuts;
//定义超时结构,井填写该结构
SetCommTimeOuts (hCom,&CommTimesOuts);
//设置读写操作所允许的超时
DCB dcb; //设置数据控制快的结构
《PC机与PIC单片机串行通讯的实现》相关文章
- › PC机与单片机串行通信的硬件设计
- › PC机与PIC单片机串行通讯的实现
- › 利用RS-485通讯协议实现PC机与单片机的多点通讯
- › Matlab环境下PC机与单片机的串行通信及数据处理
- › 在Windows下实现PC机与单片机AT89C51的串行通信
- › CRC差错检验法在PC机与8031单片机串行通讯中的应用
- 在百度中搜索相关文章:PC机与PIC单片机串行通讯的实现
- 在谷歌中搜索相关文章:PC机与PIC单片机串行通讯的实现
- 在soso中搜索相关文章:PC机与PIC单片机串行通讯的实现
- 在搜狗中搜索相关文章:PC机与PIC单片机串行通讯的实现