单片机原理及应用项目9-串行口通信课件.ppt
《单片机原理及应用项目9-串行口通信课件.ppt》由会员分享,可在线阅读,更多相关《单片机原理及应用项目9-串行口通信课件.ppt(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、项目9 串行口通信9.1 9.1 串行通信基础串行通信基础 计算机与外界的信息交换称为通信。基本的通信方法有并行通信和串行通信两种。9.1.1 串行通信与并行通信串行通信与并行通信图9-1 串行与并行通信方式示意图项目项目9 9 串行口通信串行口通信1.并行通信 并行通信的示意如图9-1(a)所示:一组信息(通常是字节)的各位数据被同时传送的通信方法称为并行通信。在MCS-51单片机中实现并行通信主要依靠其并行IO接口来实现。并行通信相对于串行通信具有以下特点:1)速度快,但传输线根数多。2)成本高。3)较适用于近距离(相距数公尺)的通信。2.串行通信串行通信的示意如图9-1(b)所示:一组信
2、息的各位数据被逐位按顺序顺序在一条线上一个一个传送的通信方式称为串行通信。在MCS-51单片机中有一组专门用来进行串行通信的引脚:P3.0(RXD)和P3.1(TXD)。串行通信相对于并行通信具有以下特点:1)速度相对较慢慢,但传输线少2)成本低。3)较适用于长距离通信。项目项目9 9 串行口通信串行口通信9.1.2 9.1.2 串行通信制式串行通信制式在串行通信中数据是在两个站之间进行传送的,按照数据传送方向,串行通信可分为单工(simplex)、半双工(half duplex)和全双工(full duplex)三种制式。1.单工制式在单工制式下,通信线的一端接发送器,一端接接收器,数据只能
3、按照一个固定的方向传送,如图9-2所示。图9-2 单工串行通信方式项目项目9 9 串行口通信串行口通信3.全双工制式全双工通信系统的每端都有发送器和接收器,可以同时发送和接收,即数据可以在两个方向上同时传送,如图9-4所示。图9-4 双工串行通信方式在实际应用中,尽管多数串行通信接口电路具有全双工功能,但一般情况下,只工作于半双工制式下,这种用法简单、实用。项目项目9 9 串行口通信串行口通信9.1.3 9.1.3 串行通信的分类串行通信的分类按照串行数据的时钟控制方式,串行通信可分为同步通信和异步通信两类。1.异步通信(Asynchronous Communication)异步通信是指发送端
4、和接收端可以有各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。在异步通信中,数据通常是以字符为单位组成字符帧传送的。字符帧由发送端一帧一帧地发送,每一帧数据均是低位在前,高位在后,通过传输线被接收端一帧一帧地接收。发送端和接收端可以由各自独立的时钟来控制数据的发送和接收,这两个时钟彼此独立,互不同步。在异步通信中,接收端是依靠字符帧格式来判断发送端是何时开始发送,何时结束发送的。字符帧格式是异步通信的一个重要指标。字符帧也叫数据帧,由起始位、数据位、奇偶校验位和停止位等4部分组成,如图9-5所示。项目项目9 9 串行口通信串行口通信(a)无空闲位字符帧;(b)有空闲位字符帧图
5、9-5 异步通信的字符帧格式项目项目9 9 串行口通信串行口通信2.同步通信(Synchronous Communication)(a)单同步字符帧格式;(b)双同步字符帧格式图9-6 同步通信的字符帧格式 同步通信是一种连续串行传送数据的通信方式,一次通信只传输一帧信息。这里的信息帧和异步通信的字符帧不同,通常有若干个数据字符,如图9-6所示。图9-6(a)为单同步字符帧结构,图9-6(b)为双同步字符帧结构,但它们均由同步字符、数据字符和校验字符CRC三部分组成。在同步通信中,同步字符可以采用统一的标准格式,也可以由用户约定。项目项目9 9 串行口通信串行口通信9.1.4 9.1.4 波特
6、率波特率波特率是异步通信的另一个重要指标,那么到底什么是波特率。波特率为每秒钟传送二进制数码的位数,也叫比特数,单位为b/s,即位/秒。波特率用于表征数据传输的速度,波特率越高,数据传输速度越快。但波特率和字符的实际传输速率不同,字符的实际传输速率是每秒内所传字符帧的帧数,和字符帧格式有关。例如,若将波特率设置为9600b/s并采用图9-5(a)所示的字符帧,由于该字符帧包含10位,那么系统实际传输的字符速率为:960010=960字符/秒通常在MCS-51单片机的使用过程中,异步通信的波特率取509600 b/s之间较为合适。当然,随着硬件水平的不断提高,目前新型的单片机在保证数据稳定传输的
7、前提下,可以使用的波特率已远远高于这个水平。但是,不管采用多大的波特率,其通信原理与使用方法都是大同小异的,所以在今后的学习过程中我们采用的波特率均在509600b/s之间。项目项目9 9 串行口通信串行口通信1.RS-232C信息格式标准RS-232C采用串行格式,如图9.7所示。该标准规定:信息的开始为起始位,信息的结束为停止位;信息本身可以是5、6、7、8位再加一位奇偶校验位。如果两个信息之间无信息,则写“1”,表示空。图9-7 RS-232C信息格式项目项目9 9 串行口通信串行口通信3.RS-232C电平转换器RS-232C规定了自己的电气标准,由于它是在TTL电路之前研制的,所以它
8、的电平不是+5 V和地,而是采用负逻辑,即逻辑“0”:+5 V+15 V;逻辑“1”:-5 V-15 V。因此,RS-232C不能和TTL电平直接相连,使用时必须进行电平转换,否则将使TTL电路烧坏,实际应用时必须注意。常用的电平转换集成电路是传输线驱动器MC1488和传输线接收器MC1489。MC1488内部有三个与非门和一个反相器,供电电压为12 V,输入为TTL电平,输出为RS-232C电平。MC1489内部有4个反相器,供电电压为5 V,输入为RS-232C电平,输出为TTL电平。项目项目9 9 串行口通信串行口通信另一种常用的电平转换电路是MAX232,该芯片是专门为电脑的RS-23
9、2标准串口设计的接口电路,使用+5v单电源供电,其引脚结构如图9.9所示。MAX232芯片内部结构基本可分三个部分:第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从
10、T1OUT、T2OUT送到电脑DP9插头;DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。第三部分是供电。15脚DNG、16脚VCC(+5v)。项目项目9 9 串行口通信串行口通信9.2.1 9.2.1 串行口结构串行口结构MCS-51内部有两个独立的接收、发送缓冲器SBUF。SBUF属于特殊功能寄存器。发送缓冲器只能写入不能读出,接收缓冲器只能读出不能写入,二者共用一个字节地址(99H)。串行口的结构如图9-11所示。图9-11 MCS-51系列单片机串行口内部结构项目项目9 9 串行口通信串行口通信9.2.2 9.2.2 串行口
11、工作原理串行口工作原理 根据图9-11所示,MCS-51单片机的工作原理大致描述如下:1)定时器1负责产生所需的波特率;2)发送SBUF和接收SBUF分别负责暂存发送与接收数据(1个字节容量);3)发送数据控制器和输出数据控制器收串行控制器(SCON)的控制,分别用来控制响应的移位寄存器将数据一位一位的通过TXD(P3.1)端送出或者一位一位的将数据从RXD(P3.0)端读入;4)中间的或门和串行口中断以及TI、RI相连,当发送完一帧数据或者接收完一帧数据后TI或者RI置1,两者作为或门的输入,所以,无论是接收完一帧数据还是发送完一帧数据,都会向串行口中断送“1”,也就是向CPU申请中断。项目
12、项目9 9 串行口通信串行口通信1.串行口数据缓冲器(SBUF)SBUF是两个在物理上独立的接收、发送寄存器,一个用于存放接收到的数据,另一个用于存放欲发送的数据,可同时发送和接收数据。两个缓冲器共用一个地址99H,通过对SBUF的读、写指令来区别是对接收缓冲器还是发送缓冲器进行操作。CPU在写SBUF时,就是修改发送缓冲器;读SBUF,就是读接收缓冲器的内容。接收或发送数据,是通过串行口对外的两条独立收发信号线RXD(P3.0)、TXD(P3.1)来实现的,因此可以同时发送、接收数据,其工作方式为全双工制式。因此可以同时发送、接收数据,其工作方式为全双工制式。MCS-51单片机通过对SBUF
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 项目 串行口 通信 课件
限制150内