单片机原理及应用——基于Proteus和KeilC(第3版)第7章_第1页
单片机原理及应用——基于Proteus和KeilC(第3版)第7章_第2页
单片机原理及应用——基于Proteus和KeilC(第3版)第7章_第3页
单片机原理及应用——基于Proteus和KeilC(第3版)第7章_第4页
单片机原理及应用——基于Proteus和KeilC(第3版)第7章_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 第7章 单片机的串行通信技术7.1 串行通信概述7.2 MCS-51的串口控制器 7.3 串行工作方式0及其应用 7.4 串行工作方式1及其应用7.5 串行工作方式2及其应用 7.6 串行工作方式3及其应用 7.1 串行通信概述串行通信概述7.2 MCS-51的串口控制器 7.3 串行工作方式0及其应用 7.4 串行工作方式1及其应用7.5 串行工作方式2及其应用 7.6 串行工作方式3及其应用 第7章 单片机的串行通信技术1 1、并行通信和串行通信、并行通信和串行通信(数据通信的两种常用形式)并行通信并行传送特点特点:传送速度快,但因需要多根传输线,故一般只在近距离通信中使用。 (1)并行

2、方式并行方式数据的各位同时发送或同时接收。第7章 单片机的串行通信技术串行通信 (2)串行方式串行方式数据的各位依次逐位发送或接收。串行传送特点特点:传输速度慢,但因只需较少传输线,故适合于远距离通信。第7章 单片机的串行通信技术按照传输数据流向数据流向,串行通信具有3种传输形式:第7章 单片机的串行通信技术RXDTXD单工制式单工制式:数据只能按照固定的方向传送。半双工制式半双工制式:数据可以双向传送,但需开关切换。 全双工制式全双工制式:数据可以同时双向发送和接收。实际应用中,尽管多数串行通信接口电路具有全双工功能,但仍以半双工为主(简单实用)。波特率:每秒发送二进制数码的位数,即bps

3、(位/秒)2、波特率、波特率国际推荐波特率:110、300、600、1200、2400、4800、9600、19200、38400波特等。串行通信的收发双方必须采用相同的波特率。第7章 单片机的串行通信技术在串行通信的数据是按位进行传送的 ,数据传输速率传输速率用波特率指标衡量。(1 1)异步通信)异步通信 以字符为单位组成字符帧进行的数据传送。3、异步通信和同步通信、异步通信和同步通信(串行通信基本通信方式)一帧数据由起始位起始位、数据位数据位、可编程位可编程位和停止位停止位构成第7章 单片机的串行通信技术起始位起始位:位于数据帧开头,占1位,始终为低电平,用于向接收设备表示发送端开始发送1

4、帧数据。数据位数据位:要传输的数据信息,可以是字符或数据,一般为58位,由低位到高位依次传送。可编程位可编程位:位于数据位之后,占1位,用于发送数据的校验,或传送多机串行通信的联络信息。停止位停止位:位于数据位末尾,占1位,始终为高电平,用于向接收端表示1帧数据已发送完毕。 第7章 单片机的串行通信技术异步通信特点特点:对收发双方的时钟精度要求较低(收发双方不同步时,能依靠在每帧开始时的不断对齐,自行纠正偏差);传送速度较低(每个字节都要建立一次同步)。第7章 单片机的串行通信技术 (2 2)同步通信)同步通信 数据以块为单位进行的数据传送在发一组数据时,只在开始用若干个同步字符作为双方的号令

5、,然后连续发送整组数据。同步通信特点特点:传输效率高(以数据块为单位连续传送,数据结构紧凑);对通信硬件要求高(要求双方有准确的时钟)。本章不涉及同步通信问题本章不涉及同步通信问题第7章 单片机的串行通信技术第7章 单片机的串行通信技术7.1 串行通信概述7.2 MCS-51的串口控制器的串口控制器 7.2.1串行口内部结构串行口内部结构 7.2.2串行口控制寄存器 7.3 串行工作方式0及其应用 7.4 串行工作方式1及其应用7.5 串行工作方式2及其应用 7.6 串行工作方式3及其应用 第7章 单片机的串行通信技术51内部有1个可编程的全双工串行通信接口可编程的全双工串行通信接口,可作为通

6、用异异步接收步接收/发送器发送器(UART),也可作为同步移位寄存器同步移位寄存器。结构组成结构组成:SBUF发 +SBUF收 +发送控制器 +接收控制器 +波特率发生器 +SCON +RXD(P3.0)+TXD(P3.1)串口结构简化图第7章 单片机的串行通信技术数据缓冲器SBUF: 在物理上是相互独立的,一个用于发送数据(SBUF发)、一个用于接收数据(SBUF收)。共用一个地址(99H),通过读写指令区别是对哪个SUBF的操作。MOV SBUF,A ;操作SBUF发MOV A,SBUF ;操作SBUF收第7章 单片机的串行通信技术发送控制器发送控制器:在门电路和定时器T1的配合下,将SB

7、UF发中的并行数据转为串行数据,并自动添加起始位、可编程位、停止位。这一过程结束后自动使发送中断请求标志位TI置1,表明已将SBUF发中的数据输出到TXD引脚,即SBUF发发为空为空。 第7章 单片机的串行通信技术接收控制器接收控制器:在输入移位寄存器和定时器T1的配合下,使来自RXD引脚的串行数据转为并行数据,并自动过滤掉起始位、可编程位、停止位。这一过程结束后自动使接收中断请求标志位RI置1,表明接收的数据已存入SBUF收,即SBUF收收为满为满 。第7章 单片机的串行通信技术定时器定时器T1:产生节拍控制用的通信时钟信号(波特率时钟);发送数据时,时钟的下降沿下降沿对应于数据移位输出;接

8、收数据时,通信时钟的上升沿上升沿对应于数据位采样。第7章 单片机的串行通信技术RXD和和TXD引脚:引脚:用于串行信号或时钟信号的传入或传出。RVCC读锁存器读锁存器写锁存器写锁存器读引脚读引脚内部总线内部总线1VDQCLKQP3.N锁存器2第二输出功能第二输出功能P3.N第二输入功能第二输入功能TB第7章 单片机的串行通信技术7.1 串行通信概述7.2 MCS-51的串口控制器的串口控制器 7.2.1串行口内部结构 7.2.2串行口控制寄存器串行口控制寄存器 7.3 串行工作方式0及其应用 7.4 串行工作方式1及其应用7.5 串行工作方式2及其应用 7.6 串行工作方式3及其应用 (1)

9、串口控制寄存器,SCON(98H)SM2、TB8、RB8主要用于多机通讯或数据校验第7章 单片机的串行通信技术串行工作方式定义位强调强调:TI和RI硬件置1后,需用软件方式清零(查询或中断法皆如此)复位后默认状态:串行方式0,禁止接收,SBUF发为满,SBUF收为空,(2) 电源控制寄存器,PCON(87H)SMOD可使由T1产生的波特率时钟频率加倍第7章 单片机的串行通信技术复位后默认状态:波特率不加倍第7章 单片机的串行通信技术通信时钟波特率原理T1溢出脉冲有两种分频路径:16分频或32分频;SMOD是决定分频路径的逻辑开关。()122232SMODnoscaf通信时钟波特率波特率取决于T

10、1的定时参数(a,n,fosc)和SMOD参数。第7章 单片机的串行通信技术7.1 串行通信概述7.2 MCS-51的串口控制器 7.3 串行工作方式串行工作方式0及其应用及其应用 7.4 串行工作方式1及其应用7.5 串行工作方式2及其应用 7.6 串行工作方式3及其应用 第7章 单片机的串行通信技术SM0SM1方式功能说明0011010101238位同步移位寄存器方式位同步移位寄存器方式10位数据异步通讯方式位数据异步通讯方式11位数据异步通讯方式位数据异步通讯方式11位数据异步通讯方式位数据异步通讯方式串行通信的4种工作方式 学习顺序:方式0方式1 方式2 方式3 8位数据为一帧,不设起

11、始位和停止位,先发送或接收最低位。 数据传输波特率固定为fosc/12 由RXD引脚输入或输出数据 TXD引脚输出fosc/12时钟信号第7章 单片机的串行通信技术方式方式08位同步移位寄存器方式方式0主要用于串并转换串并转换扩展输出口扩展输出口扩展输入口扩展输入口扩展输出芯片:CD4094、 74LS164 扩展输入芯片:CD4014、 74LS165 I/O口数量不足时,可通过串口方式0进行扩展,但需要相应的扩展芯片配合。第7章 单片机的串行通信技术实例实例1 1 利用74LS16474LS164扩展并行输出口,并实现LED由上向下由上向下循环 第7章 单片机的串行通信技术D0D1D0D2

12、D1D3D3D4D5D6D6D2D4D5D7D7XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.

13、4/T014P3.7/RD17P3.6/WR16P3.5/T115U180C51SRG8RC1/-&1D1324561081112913U274164D1R1D2R2D3R3D4R4D5R5D6R6D7R7VCCD8R8VCC74LS1648位串入并出移位寄存器工作原理:1)清零端(MR)若为低电平,输出端都为0;2)清零端若为高电平,且时钟端(CP)出现上升沿脉冲,则输出端Q锁存输入端D的电平;3)前级Q端与后级D端相连移位作用,最先接收到的数将进入最高位。t t1t t2t t3t tQ QD DCLCL0 0 D触发器第7章 单片机的串行通信技术由8个带清零功能的正边沿D触发器组

14、成电路接线:数据输入端1(2)RXD时钟端8 TXD输出端Q0Q7 D1D8清零端9Vcc或I/O口第7章 单片机的串行通信技术D0D1D0D2D1D3D3D4D5D6D6D2D4D5D7D7XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P1.01P1.12P1.

15、23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115U180C51SRG8RC1/-&1D1324561081112913U274164D1R1D2R2D3R3D4R4D5R5D6R6D7R7VCCD8R8VCC编程分析第7章 单片机的串行通信技术串口初始化串口初始化 方式0(SM0 SM1 = 00),中断发送标志位清0 ( TI = 0)和禁止接收数据(REN = 0) SCON = 0 查询法串行发送查询法串行发送 SBUF

16、 = LED; /发送亮灯编码 do while (!TI) ; /TI=1发送完成;TI=0发送进行中 /更新亮灯编码 TI = 0; /为下次发送做准备D0D1D0D2D1D3D3D4D5D6D6D2D4D5D7D7XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A142

17、7P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115U180C51SRG8RC1/-&1D1324561081112913U274164D1R1D2R2D3R3D4R4D5R5D6R6D7R7VCCD8R8VCC 74LS164倒序校正倒序校正 欲使164输出1111 1110B,SBUF发应为0111 1111B (0 x7f ) 欲使D1D8由上向下点亮,SBUF发应右移1位且最高位置1 (SBUF

18、发 1) | 1000 0000B ; 与0 x80逻辑或发送/接收方向发送/接收方向第7章 单片机的串行通信技术实例1参考程序第7章 单片机的串行通信技术亮灯字模亮灯字模实例1运行效果第7章 单片机的串行通信技术第7章 单片机的串行通信技术7.1 串行通信概述7.2 MCS-51的串口控制器 7.3 串行工作方式0及其应用 7.4 串行工作方式串行工作方式1及其应用及其应用7.5 串行工作方式2及其应用 7.6 串行工作方式3及其应用 方式方式1 10位数据异步通讯方式第7章 单片机的串行通信技术一帧信息 = 1个起始位(0)+8位数据位+1个停止位(1) 指定T1为波特率时钟发生器, 一般

19、选择定时方式2序号波特率SMODa16250010 xff21920010 xfd3960000 xfd4480000 xfa5240000 xf46120000 xe8(fosc=11.0592MHz)第7章 单片机的串行通信技术 发送数据由TXD(P3.1)输出,接收数据由RXD(P3.0)输入,初始化(RI、TI、REN、SM0、SM1) 321222SMODOSCanf通信时钟方式1主要用于点对点(两机)通信接线关系:主机TXD、RXD分别与外设RXD、TXD相接;两机共地接线关系:利用RS-232C进行电平转换(1:-5-15V, 0:+5 +15V)第7章 单片机的串行通信技术异步

20、通信编程初始化异步通信编程初始化例如:SCON=0101 0000B; /串口方式1,允许接收,TI和RI清零PCON=1000 0000B; /波特率加倍(2)TMOD=0010 0000B; /T1设为定时方式2TH1=TL1=0 xfd; /T1计数初值,19.2k波特率IE=1001 0000B;/中断使能(开总中断,开串口中断)TR1=1; /启动T1第7章 单片机的串行通信技术GATETMODC/TM1M0M0M1GATEC/T(89H) IE(A8H) EAESET1EX1 ET0 EX0XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.

21、1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115U180C51AXTAL218XTAL119ALE30EA31PSEN29

22、RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115U280C51BC11nFX1CRYST

23、ALC21nFC322uFResistorResistorR11k+5VC41nFX2CRYSTALC51nFC622uFResistorResistorR21k+5VB0B1B2B3A0A1A2A3A4A5A6B4B5B6LED1A0LED2A1A2A3A4A5A6B0B1B2B3B4B5B6TXDRXDRXDTXD实例实例2:采用双机串行通信,其中甲机 发送数据,乙机接收数据,两机 fosc为11.0592MHz,波特率 为2.4k,串口方式1。甲机循环发送数字0F,乙机接收后返回接收值。若发送值与返回值相等,继续发送下一数字,否则重复发送当前数字。采用查询法检查收发是否完成。发送值和接收

24、值分别显示在双方LED数码管上;第7章 单片机的串行通信技术编程分析 初始化:第7章 单片机的串行通信技术序号波特率SMODa16250010 xff21920010 xfd3960000 xfd4480000 xfa5240000 xf46120000 xe82.4k波特率SMOD=0 PCON=0 ,TH1=TL1=0 xf4;T1定时方式1,允许TR1控制 TMOD=0 x20;串口方式1,允许接收,清中断标志SCON=0 x50 。GATETMODC/TM1M0M0M1GATEC/T(89H) IE(A8H) EAESET1EX1 ET0 EX0 程序流程图第7章 单片机的串行通信技术

25、实例2参考程序第7章 单片机的串行通信技术实例2参考程序第7章 单片机的串行通信技术实例2运行效果第7章 单片机的串行通信技术第7章 单片机的串行通信技术7.1 串行通信概述7.2 MCS-51的串口控制器 7.3 串行工作方式0及其应用 7.4 串行工作方式1及其应用7.5 串行工作方式串行工作方式2及其应用及其应用 7.6 串行工作方式3及其应用 方式方式2 211位数据异步通信方式一帧信息 = 1个起始位(0)+8位数据位+ 1个可编程位可编程位(P) +1个停止位(1) 。第7章 单片机的串行通信技术发送时由硬件方式硬件方式将TB8TB8作为可编程位插入数据帧中;接收时由硬件方式硬件方

26、式将数据帧的可编程位存入RB8RB8中。可编程位的作用用于奇偶校验奇偶校验或多机通信标识多机通信标识。方式2的波特率为固数值:fOSCSMOD642第7章 单片机的串行通信技术即,通信时钟初始化仅需要设置PCON,与T1无关SUBF发为空时TI自动置1;SUBF收为满时RI的状态要由SM2和RB8共同决定。若SM2=1,当RB8为1时,SUBF收为满可使RI置1;若RB8为0,则SUBF收为满也无法使RI置1。若SM2=0,则无论RB8为何值, SUBF收为满都能使RI置1。第7章 单片机的串行通信技术方式1方式2SM2=1多机通讯 SM2=0 单机通讯 第7章 单片机的串行通信技术奇偶校验原

27、理:奇偶校验原理:例如,发送数据为0 x45(0100 0101B),其奇偶校验值P=1(奇数个1),将PTB8,发送时可连同数据0 x45一起发出。接收端可自动将其可编程位放入RB8中。只要将待测数据送入Acc即可由硬件求出奇偶校验值(使P赋值),再与RB8进行比较便可判断收发过程是否有误。 方式2用于固定波特率的奇偶校验(单机通讯)或多机通讯第7章 单片机的串行通信技术实例实例3 采用实例2的双机通信电路,晶振11.0592MHz,串口方式2,通信时钟为0.3456Mb/s,两机分别显示收发数值,且进行奇偶校验。甲机在循环发送数据(0F)的同时发送相应奇偶校验码;乙机接收后先进行奇偶校验。

28、若结果无误,则使返回的接收值中P=0,若结果有误,则使P=1。甲机根据返回接收值中的可编程位做出发送新数据(RB8=0)或重发当前数据(RB8=1)的抉择。XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P1.01P1.12P1.23P1.34P1.45P1.56P

29、1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115U180C51AXTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P1.01P1.12P1.2

30、3P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115U280C51BC11nFX1CRYSTALC21nFC322uFResistorResistorR11k+5VC41nFX2CRYSTALC51nFC622uFResistorResistorR21k+5VB0B1B2B3A0A1A2A3A4A5A6B4B5B6LED1A0LED2A1A2A3A4A5A6B0B1B2B3B4B5B6TXDRXDRXDTXD第7章 单片机的串行通信技术程序

31、分析: 对于晶振11.0592MHz,0.3456Mb/s的通信时钟相当于1/32晶振频率PCON= 0 x80(波特率加倍);串口方式2,允许接收,不是多机通信SCON = 0 x90。 将数据存入累加器Acc,可获得奇偶标志位P值。发送时校验位写入TB8输出,接收时校验位从RB8读取。 fOSCSMOD6421 0 0 1 0 0 0 0第7章 单片机的串行通信技术实例3参考程序A机第7章 单片机的串行通信技术实例3参考程序 B机第7章 单片机的串行通信技术实例3运行效果第7章 单片机的串行通信技术7.1 串行通信概述7.2 MCS-51的串口控制器 7.3 串行工作方式0及其应用 7.4

32、 串行工作方式1及其应用7.5 串行工作方式2及其应用 7.6 串行工作方式串行工作方式3及其应用及其应用 第7章 单片机的串行通信技术方式方式3 311位数据异步通信方式方式3方式3的波特率为可变的(其余方面皆与方式2相同)方式2第7章 单片机的串行通信技术方式3用于可变波特率的奇偶校验(单机通讯)或主从式通讯主机与各从机之间能实现双向通信,而各从机之间不能直接通信,只能通过主机才能沟通。主从式通讯系统:一主机+多从机每台从机都有独立的地址编号HostSlave多机通信做法多机通信做法:l主机向所有从机发送包含n#从机信息的地址帧;l所有从机都核查该地址帧,只有n#从机修改本机SM2 ;l主机发送数据帧,但只有n#从机能够接收到数据信息。 关键关键:主机第1次发出的信息要能被所有的从机响应,而第2次的信息只能被n#从机所响应多机通信控制位多机通信控制位SM2对串行中断请求的管理功能。第7章 单片机的串行通信技术多机通信原理:(a) 所有从机都先使自己的SM2=1,而主机在发送的地址帧信息时先使TB8=1。这样,所有从机都能产生中断请求,并能接收到主机发来的地址信息;(b) 各从机将主机发来的地址与本机地址编号相比较。若与本机相符(即命中) ,则该从机使自己的SM2=0,其余从机仍旧保持SM2=1;(c) 主机

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论