片机原理及应用教程(C语言版)-电子教案-周国运 第7章 MCS 51单片机的串行口

上传人:E**** 文档编号:89420768 上传时间:2019-05-24 格式:PPT 页数:79 大小:1.26MB
返回 下载 相关 举报
片机原理及应用教程(C语言版)-电子教案-周国运 第7章 MCS 51单片机的串行口_第1页
第1页 / 共79页
片机原理及应用教程(C语言版)-电子教案-周国运 第7章 MCS 51单片机的串行口_第2页
第2页 / 共79页
片机原理及应用教程(C语言版)-电子教案-周国运 第7章 MCS 51单片机的串行口_第3页
第3页 / 共79页
片机原理及应用教程(C语言版)-电子教案-周国运 第7章 MCS 51单片机的串行口_第4页
第4页 / 共79页
片机原理及应用教程(C语言版)-电子教案-周国运 第7章 MCS 51单片机的串行口_第5页
第5页 / 共79页
点击查看更多>>
资源描述

《片机原理及应用教程(C语言版)-电子教案-周国运 第7章 MCS 51单片机的串行口》由会员分享,可在线阅读,更多相关《片机原理及应用教程(C语言版)-电子教案-周国运 第7章 MCS 51单片机的串行口(79页珍藏版)》请在金锄头文库上搜索。

1、单片机原理及应用教程 (C语言版) 第7章 MCS-51单片机的串行口,主 编:周国运 中国水利水电出版社,第7章 MCS-51单片机串行口,目 录 7.1 串行通信基本知识 7.2 串行口结构及控制 7.3 串行口工作方式 7.4 串行口应用举例 7.5 单片机与PC机通信接口电路,本章要点 本章主要讲述MCS-51单片机串行口的结构、工作原理以及应用。 主要内容包括串行通信基本知识、MCS-51单片机串行口结构、串行口工作方式以及单片机与PC机通信的接口电路。,7.1 串行通信基本知识,主要内容 7.1.1 数据通信 7.1.2 异步通信和同步通信 7.1.3 波特率 7.1.4 通信方向

2、 7.1.5 串行通信接口种类,7.1.1 数据通信,计算机与外界的信息交换称为通信。基本的通信方式有并行通信和串行通信两种。 1并行通信 单位信息(通常指一个字节)的各位数据同时传送的通信方法称为并行通信。 2串行通信 单位信息的各位数据被分时一位一位依次顺序传送的通信方式称为串行通信。,7.1.1 数据通信,图7-1 并行通信示意图,两种通信特点: 并行通信连线多,速度快,适合近距离通信; 串行通信连线少,速度慢,适合远距离通信。,图7-1 并行通信示意图,图7-2 串行通信示意图,RXD,TXD,89,C,52,GND,TXD,RXD,GND,外,部,设,备,1异步通信(时钟不同,甚至频

3、率不同) 异步通信中,传送的数据可以是一个字符代码或一个字节数据,数据以帧的形式一帧一帧传送。,7.1.2 异步通信和同步通信,图7-3 异步通信的一帧数据格式,2同步通信(用同一个时钟) 在同步通信中,每一数据块发送开始时,先发送一个或两个同步字符,使发送与接收取得同步,然后再顺序发送数据。数据块的各个字符间取消起始位和停止位,所以通信速度得以提高 。,7.1.2 异步通信和同步通信,图7-4 同步通信数据帧格式,7.1.3 波特率,在串行通信中,对数据传送速度有一定要求。 波特率表示每秒传送的位数,单位为b/s(记作波特)。 例如:数据传送速率为每秒钟10个字符,若每个字符的一帧为11位,

4、则传送波持率为: 11b/字符10字符/s110b/s 异步通信的传送速率一般在5019 200b/s之间 。,7.1.4 通信方向,单工方式:一对传输线只允许单方向传送数据; 半双工方式:一对传输线允许向两个方向中的任一方向传送数据,但不能同时进行; 全双工方式:用两对传输线连接在发送器和接收器上,发送和接收能同时进行。,7.1.4 通信方向,图7-5 串行通信传输方式,7.1.5 串行通信接口种类,根据串行通信格式及约定(如同步方式、通信速率、数据块格式等)不同,形成了许多串行通信接口标准,如常见的: UART(通用异步串行通信接口) USB(通用串行总线接口) I2C(集成电路间的串行总

5、线) SPI(同步串行外设总线) 485总线、CAN总线接口等,7.2 串行口结构及控制,主要内容 7.2.1 MCS-51串行口结构 7.2.2 特殊功能寄存器 7.2.3 波特率设计,7.2.1 MCS-51串行口结构,图7-6 串行口方式1、3内部结构示意简图 分为三个部分:时钟、发送部分、接收部分,16,发送,SBUF,(99H),16,输入移位寄存器,TXD,写,SBUF:,发送(程序),读SBUF:,接收(程序),RI,TI,移位时钟,RXD,装载,SBUF(自动),接收,SBUF,(99H),(P3.0),(P3.1),7.2.2 与串行口有关的特殊功能寄存器,1控制状态寄存器S

6、CON 功能:设置串行口的工作方式和标识串行口状态。 字节地址:98H,可位寻址。 复位值:0000 0000B。格式如下:,SM0和SM1(SCON.7、SCON.6):串行口工作方式选择位。,7.2.2 与串行口有关的特殊功能寄存器,SM2(SCON.5): 多机通信控制位, 在方式2或3中使用。 REN(SCON.4):允许接收控制位。 设置1,允许接收;清0:禁止接收。,TB8(SCON.3):发送数据的第9位。 RB8(SCON.2):接收数据的第9位。 TI(SCON.1):发送中断标志。 RI(SCON.0):接收中断标志。,7.2.2 与串行口有关的特殊功能寄存器,关于TI和R

7、I:串行发送中断标志TI和接收中断RI是同一个中断源,CPU不知道是发送中断标志TI还是接收中断标志RI产生的中断请求,所以,在全双工通信时,必须由软件来判别。,多机通信实现的原理: 各个从机的SM2设置为1;主机TB8发送1表明是地址,选择接收机;主机TB8发送0为数据。 (1)实现的条件:各个从机的SM2设置为1。 当SM2=1时: RB8=1,则保留接收到的数据;RB8=0则丢弃。 (2)实现的方法 主机先发送从机地址,并且TB8为1。 这时各个从机均可接收此地址,目标从机,则对自己的SM2清0; 其它从机保留SM2=1。 主机再发送数据,并且TB8为0 这时目标从机正常接收数据,其它从

8、机均丢弃。,7.2.2 与串行口有关的特殊功能寄存器,地址,2电源控制寄存器PCON 电源控制寄存器PCON (地址为87H)中只有SMOD位与串行口工作有关。,7.2.2 与串行口有关的特殊功能寄存器,SMOD(PCON.7):波特率倍增位。 串行口工作于方式1、方式2和方式3时,SMOD1,串行口波特率加倍。 复位值:0000 0000B。不能进行位寻址。,7.2.3 波特率设计,方式0和方式2的波特率是固定的,方式1和方式3的波特率是由定时器T1的溢出率来决定的。在增强型单片机中,也可以使用T2作波特率发生器。 1方式0的波特率 方式0为同步移位寄存器方式。 固定为振荡频率的1/12。并

9、不受PCON寄存器中SMOD位的影响。 方式0的波特率=fosc/12,2方式2的波特率 方式2是波特率只有两种(fosc/64或 fosc/32)、11位的异步通信 ,可多机通信。 时钟:接收与发送的时钟直接来自振荡频率fosc,是fosc/2,并且还与PCON中SMOD位有关。 其波特率为:当SMOD=0时,波特率为fosc的1/64;若SMOD=1,则波特率为fosc的1/32。即 方式2的波特率= 2SMODfosc/64,7.2.3 波特率设计,3方式1和方式3的波特率 (1)T1作波特率发生器 在最典型应用中,定时器T1选用模式2定时,此时n=8,设定时器的初值为X: 于是, X=

10、256 -,方式1、3的波特率= (T1溢出速率),即波特率= /(2n -初值),7.2.3 波特率设计,(2)T2作波特率发生器 设寄存器T2CON的位TCLK=1和(或)RCLK=1时,允许串行口从T2获得发送和(或)接收的波特率。 串行口方式1、3的波特率=T2溢出率/16 定时器2作波特率发生器时,计数在每个状态周期递增。这样: 方式1、3的波特率fb= (RCAP2H、RCAP2L)=65536-fosc/fb/32 控制字、模式字: T2CON=0011 0100B=34H T2MOD=00H,7.2.3 波特率设计,主要内容 7.3.1 串行口方式0 7.3.2 串行口方式1

11、7.3.3 串行口方式2和方式3,7.3 串行口工作方式,7.3.1 串行口方式0,方式0为同步移位寄存器输入/输出方式,常用于扩展I/O口。 RXD为数据输入或输出,TXD输出移位时钟,作为外接部件的同步信号。 方式0下,收/发的仅8位数据,无起始位、奇偶校验位及停止位,低位在前、高位在后; 波特率是固定的,为fosc/12,即机器周期频率 。 启动发送:TI=0、写SBUF 启动接收:RI=0、REN置1,7.3.1 串行口方式0,方式,方式0发送,方式0接收,7.3.1 串行口方式0,并入/串出,1 16 2 15 3 14 4 13 5 12 6 11 7 10 8 9,Q1 Q2 Q

12、3 Q4 Q5 Q6 Q7 GND,74Hc595,串入/并出,串入,Q0 DS OE ST_CP SH_CP MR Q7,7.3.1 串行口方式0,1 16 2 15 3 14 4 13 5 12 6 11 7 10 8 9,Q1 Q2 Q3 Q4 Q5 Q6 Q7 GND,74Hc595,VCC Q0 DS OE ST_CP SH_CP MR Q7,并 出,串入/并出,串入/并出,串入,用串行口方式0扩展并行输出/输入口 7.3.1 串行口方式0,发送电路,接收电路,7,SH/LD,扩 展 并 行 输 出,扩 展 并 行 输 入,7.3.2 串行口方式1,方式1真正用于串行发送或接收。TX

13、D与RXD分别用于发送、接收数据。 帧格式:1位起始位、8位数据位(低位在前)、1位停止位,共10位。 在接收时,停止位进入SCON的RB8 此方式的波特率可调,由T1或T2控制。 SCON=0101 0000b=0x50 1、方式1发送 TI=0、写SBUF启动发送,7.3.1 串行口方式0,方式,方式1接收,方式1发送,7.3.2 串行口方式1,2、方式1接收 1)接收条件:SCON中的REN置1 2)接收过程:REN置1后,串行口对接收引脚RXD检测,当RXD由高变低时开始移位接收;接收完后将停止位装入RB8中。 3)接收的数据有效的条件(两条) : a、RI=0; b、SM2=0,或者

14、SM2=1并且RB8=1 满足以上2条,则将8位数据装入SBUF,且RI置1。 有以下情况之一则数据无效: a) RI=1; b) SM2=1并且RB8=0 注意:除了方式2、3的多机通信之外,SM2应清0,7.3.3 串行口方式2和方式3,串行口工作在方式2和方式3均为每帧11位异步通信格式,由TXD和RXD发送与接收。 方式2和3的操作是完全一样的,不同的只是特波率。 每帧11位:即1位起始位、8位数据位(低位在前)、1位可编程的第9数据位和1位停止位。 发送时,第9数据位(TB8)可以设置为1或0,在校验时可将奇偶位装入TB8; 接收时,第9数据位进入SCON的RB8。 SCON=100

15、1 0000b=0x90 方式2接收 SCON=1101 0000b=0xD0 方式3接收,7.4 串行口应用举例,主要内容 7.4.1 同步方式应用 7.4.2 异步方式应用,7.4.1 同步方式应用,MSC-51单片机的串行口在方式0时,以同步方式操作。外接串入/并出或并入/串出器件,可实现I/O口的扩展。 例7-2 用89C52串行口外接74HC595串入/并出移位寄存器扩展8位并行输出口,8位并行输出口的每位都接一个发光二极管,要求8位发光二极管循环点亮。 数据的输出通过RXD发送,移位时钟通过TXD送出,74HC595用于串/并转换。,7.4.1 同步方式应用,图7-13 方式0扩展输出电路,C语言程序清单: #include #includeintrins.h sbit P3_6=P36; void delay10xms(unsigned char x) /设晶振为12MHz unsigned int i; while(x-) for(i=0;i830;i+); ,7.4.1 同步方式应用,void main() unsigned char dd=0x01; SCON=0x0; /设置串口方式0 while(1) TI=

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号