×
嵌入式开发 > 详情

PIC单片机与PC机串行通信的实现

发布时间:2020-07-10 发布时间:
|


随着单片机技术的发展,PIC单片机在工业控制系统中如温度、压力和流量等参数进行监测和控制中的应用越来越多。PC机具有强大的监控和管理功能,而单片机则具有快速及灵活的控制特点,通过PC机的RS-232串行接口与外部设备进行通讯是许多测控系统中常用的通信解决方法。它不仅利用了单片机实时控制的特点又充分发挥了PC机运算能力强和存储容量大的优势。在日常应用中通常需要进行大量的数据计算,而PIC单片机运算能力有限,必须借助PC机的数据处理能力,因此实现PIC单片机与PC机之间可靠数据传输变得尤为重要。
文中将使用PIC单片机的同步/异步串行模块(USART)和计算机进行串口通信。PC机的通信软件采用Visual C++6.0编写,具体是利用MSComm控件完成与PIC单片机的通信。

1 异步串行通信的概念
PIC单片机与PC机之间的异步串行通信采用RS-232串行接口电路实现,利用PC机的串行接口进行数据传输。在异步通信中,数据是逐帧传送的,其格式如图1所示。


在帧格式中,一个字符由4部分组成:起始位、数据位、奇偶校验位和停止位。首先是一个起始位“0”,然后是5~8位数据,接下来是奇偶校验位,最后是停止位“1”。起始位“0”信号只占用1位,用来通知接收设备一个待接收的字符开始到来。在不传送字符时,线路上应保持为“1”。接收端不断检测线路的状态,若连续为“1”以后又检测到一个“0”,就知道要发来一个新字符,应立即准备接收。

2 接口器件介绍
2.1 电平转换芯片
PC机与HC单片机通信使用RS-232串行总线标准。典型的RS-232信号在正负电平之间摆动,在发送数据时,发送端驱动器输出正电平电压范围为5~15 V,负电平为-15~-5 V。当无数据传输时,线上为TTL电平,从开始传送数据到结束,线上电平从TTL电平到RS-232电平再返回TTL电平。接收器典型的工作电平为3~12 V与-12~-3 V之间。如此高的电压是不能和单片机直接相连的,所以必须进行电平转换。文中利用MAX232实现电平转换。MAX232芯片是由德州仪器公司推出的一款兼容RS-232标准的芯片。该器件包含2个驱动器、2个接收器和一个电压发生器电路提供TTA/EIA-232-F电平。
2.2 信号接口介绍
PC机都有串行接口,一般用RS-232接口。与RS-232相匹配的连接器有DB-25、DB-15和DB-9,其引脚也各不相同。文中使用的是DB-9连接器,作为提供I/O卡或主板上COM1和COM2两个串行接口的连接器,提供异步通信的9个信号。

3 硬件电路设计
3.1 PC机与PIG单片机的串行通信原理图
PC机与PIC单片机串行通信原理如图2所示,整个系统由3个部分组成。由于PC机与PIC单片机串行通信时采用RS-232协议,因此无论是单片机向PC发送数据,还是PC机向单片机发送数据都必须通过MAX232进行电平转换。在电路连接时,PC机的串口输出应对应PIC单片机的串口输入。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
五大标准轻松搞定4K超高清电视选购