单片机原理及应用第4章-单片机的功能单元课件.ppt

上传人(卖家):晟晟文业 文档编号:5182795 上传时间:2023-02-16 格式:PPT 页数:77 大小:1.69MB
下载 相关 举报
单片机原理及应用第4章-单片机的功能单元课件.ppt_第1页
第1页 / 共77页
单片机原理及应用第4章-单片机的功能单元课件.ppt_第2页
第2页 / 共77页
单片机原理及应用第4章-单片机的功能单元课件.ppt_第3页
第3页 / 共77页
单片机原理及应用第4章-单片机的功能单元课件.ppt_第4页
第4页 / 共77页
单片机原理及应用第4章-单片机的功能单元课件.ppt_第5页
第5页 / 共77页
点击查看更多>>
资源描述

1、并行并行I/O接口接口定时器定时器/计数器计数器串行接口串行接口中断系统中断系统4.1 并行并行I/O接口接口内部上拉电阻内部上拉电阻ABP1口是一个多功能的口是一个多功能的8位口,可以按字节访问,也可以位口,可以按字节访问,也可以按位访问。按位访问。一一.位结构与工作过程分析位结构与工作过程分析1.位结构位结构Q02.P1口的功能和特点口的功能和特点(1)输出锁存,输出时没有条件;)输出锁存,输出时没有条件;(2)输入缓冲,输入时需要先将该口设为输入状态,)输入缓冲,输入时需要先将该口设为输入状态,先输出先输出1;(3)工作过程中无高阻悬浮状态,即该口不是输入口)工作过程中无高阻悬浮状态,即

2、该口不是输入口 就是输出口;就是输出口;(4)P1口能驱动口能驱动4个个TTL负载。负载。3.P1口的操作口的操作(1)字节操作)字节操作输出:输出:MOVP1,A ;(;(P1)(A)MOVP1,#data ;(;(P1)#dataMOVP1,direct ;(;(P1)(direct)输入输入:MOVA,P1 ;(;(A)(P1)MOVdirect,P1 ;(;(direct)(P1)输入、输出:输入、输出:MOVP1.i ,C ;P1.i CYMOV C,P1.i ;CY P1.i 判跳:判跳:JBP1.i ,rel ;P1.i=1,跳转跳转JBCP1.i ,rel ;P1.i=1,跳转

3、,且跳转,且P1.i 0逻辑运算:逻辑运算:ANL C,P1.i ;CY (P1.i与与CY)ORL C,P1.i ;CY (P1.i+CY)(2)位操作)位操作置位、清除:置位、清除:SETBP1.i ;P1.i 1CLRP1.i ;P1.i 0(3)读引脚操作)读引脚操作在响应在响应CPU输出的读引脚信号时,端口本身的电平值通输出的读引脚信号时,端口本身的电平值通过缓冲器进入内部总线。过缓冲器进入内部总线。对于这类指令,执行前必须先将端口锁存器置对于这类指令,执行前必须先将端口锁存器置1,使,使A点点为高电平。为高电平。MOV A,P1 ;(A)(P1)MOV direct,P1 ;(;(

4、direct)(P1)(4)读锁存器操作)读锁存器操作在执行读锁存器的指令时,在执行读锁存器的指令时,CPU首先完成将锁存器的值首先完成将锁存器的值通过缓冲器读入内部,进行修改,然后重写到锁存器中去,通过缓冲器读入内部,进行修改,然后重写到锁存器中去,这就是这就是“读读修改修改写写”指令。指令。这类指令包括所有的口逻辑操作(这类指令包括所有的口逻辑操作(ANL、ORL、XRL)和位操作(和位操作(JBC、CPL、MOV、SETB、CLR)指令。指令。4.P1口的多功能线口的多功能线P1.0定时器定时器/计数器计数器2的外部输入端的外部输入端T2;P1.1定时器定时器/计数器计数器2的外部控制端

5、的外部控制端T2EX。在在80C52中,中,P1.0和和P1.1口线是多功能的口线是多功能的P3口是一个多功能的口是一个多功能的8位口,可以按字节访问,也可以按位口,可以按字节访问,也可以按字访问。字访问。一一.位结构与工作过程分析位结构与工作过程分析1.位结构位结构Q0ABC上拉电阻上拉电阻2.P3口的功能和特点口的功能和特点P3.0RXD(串行口输入)串行口输入)P3.2INT0(外部中断外部中断0请求)请求)P3.3INT1(外部中断外部中断1请求)请求)P3.4T0(定时定时/计数器计数器0的外部输入)的外部输入)P3.5T1(定时定时/计数器计数器1的外部输入)的外部输入)P3.1T

6、XD(串行口输出)串行口输出)P3.6WR(片外数据存储器写选通信号输出)片外数据存储器写选通信号输出)P3.7RD(片外数据存储器读选通信号输出)片外数据存储器读选通信号输出)复用输入功能复用输入功能复用输出功能复用输出功能P2口是一个多功能的口是一个多功能的8位口,可以按字节访问,也可以位口,可以按字节访问,也可以按位访问。按位访问。一一.位结构与工作过程分析位结构与工作过程分析1.位结构位结构Q0A上拉电阻上拉电阻BC多路多路开关开关(1)作)作I/O口使用时,口使用时,P2口为一准双工口,功能与口为一准双工口,功能与P1相同。相同。2.P2口的功能和特点口的功能和特点(2)作地址输出时

7、,)作地址输出时,P2口可以输出程序存储器或片口可以输出程序存储器或片外数据存储器的高外数据存储器的高8位地址,与位地址,与P0口输出的低口输出的低8位地位地址一起构成址一起构成16位地址线,从而可分别寻址位地址线,从而可分别寻址64KB的程的程序存储器或片外数据存储器。序存储器或片外数据存储器。(3)P2口能驱动口能驱动4个个TTL负载。负载。P0口是一个多功能的口是一个多功能的8位口,可以按字节访问,也可以位口,可以按字节访问,也可以按位访问。按位访问。一一.位结构与工作过程分析位结构与工作过程分析1.位结构位结构Q0A2.P0口的功能和特点口的功能和特点(1)作)作I/O口使用口使用相当

8、于一个真正的双向口:输出锁存、输入缓冲,但输入时需先相当于一个真正的双向口:输出锁存、输入缓冲,但输入时需先将口置将口置1;每根口线可以独立定义为输入或输出。它具有双向口;每根口线可以独立定义为输入或输出。它具有双向口的一切特点。的一切特点。(2)作地址)作地址/数据复用总线使用数据复用总线使用此时,此时,P0口为一个半双工口口为一个半双工口。作地址作地址/数据复用总线用时,口不能逐位定义输入数据复用总线用时,口不能逐位定义输入/输出。作数据输出。作数据总线用,输入总线用,输入/输出输出8位数据;作地址总线用,输出低位数据;作地址总线用,输出低8位地址。位地址。(3)P0口能驱动口能驱动8个个

9、TTL负载负载4.2 定时器定时器/计数器计数器定时器定时器/计数器的核心是加计数器的核心是加1计数器,其基本功能是计数器,其基本功能是加加1功能:功能:(1)在单片机的)在单片机的T0或或T1引脚上施加一个引脚上施加一个1到到0的跳的跳变,计数器增变,计数器增1,即,即计数功能计数功能。(2)在单片机内部对机器周期或其分频进行计数,)在单片机内部对机器周期或其分频进行计数,从而得到定时,这就是从而得到定时,这就是定时功能定时功能。一、概述一、概述因为一个机器周期固定由因为一个机器周期固定由12个振荡周期构成,所以,计数频个振荡周期构成,所以,计数频率为振荡频率的率为振荡频率的1/12。112

10、计数频率振荡频率作作计数器计数器用时,用时,在其相应外部引脚上,每有一个由在其相应外部引脚上,每有一个由1到到0的的跳变,其计数寄存器的内容便要加跳变,其计数寄存器的内容便要加1。因为辨识一个因为辨识一个1到到0的跳变需要两个机器周期,故最高计数的跳变需要两个机器周期,故最高计数频率为振荡频率的频率为振荡频率的1/24。124计数频率振荡频率作作定时器定时器用时,用时,其计数寄存器值每过一个机器周期加其计数寄存器值每过一个机器周期加1。因此,可以认为定时器是对机器周期的计数。因此,可以认为定时器是对机器周期的计数。8051内含定时器内含定时器0和定时器和定时器1两个两个16位定时位定时/计数器

11、;计数器;8052还有还有一个定时器一个定时器2,共有三个定时,共有三个定时/计数器。计数器。定时器定时器0和定时器和定时器1有四种工作方式可供选择;定时器有四种工作方式可供选择;定时器2有三有三种工作方式。种工作方式。定时器定时器0和定时器和定时器1 的工作方式的工作方式方式方式0方式方式1方式方式2方式方式3 定时器定时器2的工作方式的工作方式 捕捉方式捕捉方式自重装方式自重装方式波特率发生器方式波特率发生器方式二、定时器二、定时器/计数器计数器T0、T11.定时器定时器/计数器计数器T0、T1的内部结构的内部结构内部结构内部结构计数器计数器TH0、TL0和和TH1、TL1特殊功能寄存器特

12、殊功能寄存器TMOD、TCON时钟分频器时钟分频器输入引脚输入引脚T0、T1、/INT1、/INT0定时定时/计数器的功能与工作方式选择是通过定时器方式寄计数器的功能与工作方式选择是通过定时器方式寄存器存器TMOD(Timer Mode)进行的。进行的。GATE门控位门控位TC/功能选择位,功能选择位,0定时,定时,1计数计数2.定时器定时器/计数器计数器T0、T1的特殊功能寄存器的特殊功能寄存器GATE=0时,时,仅由仅由TR0和和TR1置位来启动定时器置位来启动定时器T0和和T1。GATE=1时,时,由外部中断引脚由外部中断引脚/INT0、/INT1和和TR0、TR1来启动定时器。来启动定

13、时器。当当/INT0 引脚为高电平时,引脚为高电平时,TR0置位,启动定时器置位,启动定时器T0;当当/INT1 引脚为高电平时,引脚为高电平时,TR1置位,启动定时器置位,启动定时器T1。M1M000011011方式方式0方式方式1方式方式2方式方式3定时器定时器/计数器计数器T0、T1的四种工作方式的四种工作方式 3.定时定时/计数器控制寄存器计数器控制寄存器TCON(Timer Control)TF1TR1TF0TR0IE1IT1TE0IT0 7 6 5 4 3 2 1 0定时器定时器1溢出标志溢出标志定时器定时器1运行控制位运行控制位定时器定时器0溢出标志溢出标志定时器定时器0运行控制

14、位运行控制位/INT0方式选择方式选择/INT0中断标志中断标志/INT1方式选择方式选择/INT1中断标志中断标志三三.定时器定时器/计数器计数器T0、T1的工作方式的工作方式 方式方式0是一个是一个13位定时位定时/计数工作方式计数工作方式启停控制:启停控制:GATE=0,TR0单独控制;单独控制;GATE=1,TR0和和INT0共同控制共同控制 方式方式1是一个是一个16位定时位定时/计数工作方式计数工作方式TL0作为作为8位计数器用,位计数器用,TH0用以保存初始值。用以保存初始值。TH0的值由软件预置。的值由软件预置。定时器定时器/计数器计数器0建立起两个独立的计数器建立起两个独立的

15、计数器TL0和和TH0。TL0既可定时,也可计数;既可定时,也可计数;TH0固定执行定时功能。固定执行定时功能。定时器定时器/计数器计数器1四四.定时器定时器/计数器的编程和使用计数器的编程和使用1.定时器定时器/计数器溢出率的计算计数器溢出率的计算定时器定时器/计数器运行前,在其中预先置入的常数,称为计数器运行前,在其中预先置入的常数,称为定时常数或计数常数(定时常数或计数常数(TC)。)。12(2C)(2C)LLcosctTTTf其中:其中:晶体振荡器频率机器周期计数器的长度定时时间osccfTLt对于对于T0和和T1:方式方式0 L=13 213=8192 方式方式1 L=16 216=

16、65536方式方式2 L=8 28=256定时时间的倒数即为溢出率,即:定时时间的倒数即为溢出率,即:)2(1121TCftLosc溢出率根据既定的定时时间根据既定的定时时间t,计算出计算出TC值,并将其转换成二进制值,并将其转换成二进制数数TCB,然后再分别送入然后再分别送入TH0/TH1,TL0/TL1对于定时器对于定时器/计数器计数器T0、T1:方式方式0:TCB=TCH+TCL,TCH高高8位,位,TCL低低5位位 MOV THi,#TCH ;送高送高8位位 MOV TLi,#TCL ;送低送低5位位方式方式1:TCB=TCH+TCL,TCH高高8位,位,TCL低低8位位 MOV TH

17、i,#TCH ;送高送高8位位 MOV TLi,#TCL ;送低送低5位位方式方式2:TCB8位位 MOV THi,#TCB MOV TLi,#TCB2.定时器定时器/计数器的编程计数器的编程 写写TMOD,只能用字节寻址。只能用字节寻址。设置定时器设置定时器/计数器的工作方式(计数器的工作方式(M1,M0)、)、功能选择(功能选择(C/T)及是否使用门控(及是否使用门控(GATE)。)。将时间常数或计数常数写入将时间常数或计数常数写入THi和和TLi,也只能用字节寻址。也只能用字节寻址。启动定时或计数,即写启动定时或计数,即写TCON,可用字节寻址也可用位寻址。可用字节寻址也可用位寻址。如:

18、如:SETB TRi ;启动定时器;启动定时器 SETB TCON.4(T0)SETB TCON.6(T1)CLR TRi ;停止定时器停止定时器 定时器中断开放和禁止,即写定时器中断开放和禁止,即写IE(IE.,IE.3,IE.1)如:如:SETB ETi ;允许中断允许中断ETi SETB EA ;开放中断开放中断 CLR ETi ;禁止中断禁止中断Eti CLR EA ;关闭中断关闭中断(3)(3)程序设计程序设计例例1 1 fosc=6MHzfosc=6MHz,使用使用T1T1方式方式0 0产生周期产生周期500us500us的等宽正方波连续脉冲,由的等宽正方波连续脉冲,由P1.0P1

19、.0输出。输出。(1)(1)计算计数初值计算计数初值TC=TC=8067=8067=1 1111 1001 1111 1000 0011B0 0011B TH1=0FCH TL1=03H TH1=0FCH TL1=03H(2)TMOD(2)TMOD初始化初始化 T1,T1,与与INT1INT1无关,无关,定时,定时,方式方式0 0操作操作TMODTMOD高高4 4位,位,GATE=0GATE=0,C/T=0 C/T=0,M1M0=00 M1M0=00 ORG 0000H LJMP MAIN ORG 0050HMAIN:MOV TMOD,#00H MOV TH1,#0FCH MOV TL1,#0

20、3H MOV IE,#0 MOV IP,#0 SETB TR1LOOP:JBC TF1,LOOP1 AJMP LOOPLOOP1:MOV TH1,#0FCH MOV TL1,#03H CPL P1.0 AJMP LOOP ORG 0000H LJMP MAIN ORG 001BH MOV TH1,#0FCH MOV TL1,#03H CPL P1.0 RETI ORG 0050HMAIN:MOV TMOD,#00H MOV TH1,#0FCH MOV TL1,#03H MOV IE,#88H MOV IP,#0 SETB TR1LOOP:SJMP LOOP TH1=0FFH TL1=83H操作

21、TMOD高4位,GATE=0,C/T=0,M1M0=01 ORG 0000H LJMP MAIN ORG 0050HMAIN:MOV TMOD,#10H MOV TH1,#0FFH MOV TL1,#83H MOV IE,#0 MOV IP,#0 SETB TR1LOOP:JBC TF1,LOOP1 AJMP LOOPLOOP1:MOV TH1,#0FFH MOV TL1,#83H CPL P1.0 AJMP LOOP ORG 0000H LJMP MAIN ORG 001BH MOV TH1,#0FFH MOV TL1,#83H CPL P1.0 RETI ORG 0050HMAIN:MOV

22、 TMOD,#10H MOV TH1,#0FFH MOV TL1,#83H MOV IE,#88H MOV IP,#0 SETB TR1LOOP:SJMP LOOP TH0=H TL0=H操作TMOD低4位,GATE=0,C/T=0,M1M0=10 ORG 0000H LJMP MAIN ORG 0050HMAIN:MOV TMOD,#02H MOV TH0,#0CEH MOV TL0,#0CEH MOV IE,#0 MOV IP,#0 SETB TR0LOOP:JBC TF0,LOOP1 AJMP LOOPLOOP1:CPL P1.0 AJMP LOOP ORG 0000H LJMP MAI

23、N ORG 000BH CPL P1.0 RETI ORG 0050HMAIN:MOV TMOD,#02H MOV TH0,#0CEH MOV TL0,#0CEH MOV IE,#82H MOV IP,#0 SETB TR0LOOP:SJMP LOOP4.3 串行接口串行接口 一一.串行通信基础知识串行通信基础知识1.异步串行通信异步串行通信 异步串行通信是以字符为单位的间歇传输形式。传送时按异步串行通信是以字符为单位的间歇传输形式。传送时按字符进行包装,为此,在字符进行包装,为此,在数据位数据位之外要增添之外要增添起始位起始位、奇偶奇偶校验位校验位和和停止位停止位,构成一个通信帧。,构成一个

24、通信帧。异步通信的帧格式异步通信的帧格式几点说明:几点说明:在串行通信中,信息的两种状态分别以在串行通信中,信息的两种状态分别以mark和和space标志。其中标志。其中mark译为译为标号,对应逻辑状态标号,对应逻辑状态1,在发送器空闲时,数据线应保持在,在发送器空闲时,数据线应保持在mark状态;状态;space译为空格,对应逻辑状态译为空格,对应逻辑状态0。起始位。发送器通过发送起始位而开始一个字符的传输。起始位使数据线起始位。发送器通过发送起始位而开始一个字符的传输。起始位使数据线处于处于space状态。状态。数据位。起始位之后传送数据位。在数据位中,低位在前数据位。起始位之后传送数据

25、位。在数据位中,低位在前(左左),高位在后,高位在后(右右)。由于字符编码方式不同,数据位可以是。由于字符编码方式不同,数据位可以是5、6、7或或8位等多种形式。位等多种形式。奇偶校验位。用于对字符传送作正确性检查,因此,奇偶校验位是可选择奇偶校验位。用于对字符传送作正确性检查,因此,奇偶校验位是可选择的,共有的,共有3种可能,即奇校验、偶校验和无校验,由用户根据需要选定。种可能,即奇校验、偶校验和无校验,由用户根据需要选定。所谓偶校验,即数据位和奇偶校验位中逻辑所谓偶校验,即数据位和奇偶校验位中逻辑1的个数加起来必须是偶数的个数加起来必须是偶数(全全0也视为偶数个也视为偶数个1)。)。所谓奇

26、校验,即数据位和奇偶校验位中逻辑所谓奇校验,即数据位和奇偶校验位中逻辑1的个数加起来必须是奇数。的个数加起来必须是奇数。停止位。停止位在最后,用于标志一个字符传输的结束,对应于停止位。停止位在最后,用于标志一个字符传输的结束,对应于mark状态。状态。停止位可能是停止位可能是1、1.5或或2位,在实际应用中根据需要确定。位,在实际应用中根据需要确定。位时间。一个格式位的时间宽度。位时间。一个格式位的时间宽度。帧帧(Frame)。从起始位开始到停止位结束的全部内容称为一帧。异步串行)。从起始位开始到停止位结束的全部内容称为一帧。异步串行通信是一帧接一帧进行的,传输可以是连续的,也可以是间断的。通

27、信是一帧接一帧进行的,传输可以是连续的,也可以是间断的。2.同步串行通信同步串行通信 为提高传送速度,把数据传输按相等的时间间隔分块进行,为提高传送速度,把数据传输按相等的时间间隔分块进行,在数据块的开始加一些特殊字符,作为发送和接收双方的在数据块的开始加一些特殊字符,作为发送和接收双方的同步标志。由于数据块的位数较多,为防止错位,在发送同步标志。由于数据块的位数较多,为防止错位,在发送数据时一般同时给出时钟信号,以保持接收与发送的同步,数据时一般同时给出时钟信号,以保持接收与发送的同步,这就是同步串行通信。这就是同步串行通信。同步串行通信的数据格式同步串行通信的数据格式同步串行通信的数据格式

28、有如下特点和要求:同步串行通信的数据格式有如下特点和要求:只在数据块传输的开始使用同步字符串,作为发送和接收双方同步的标志,而在结束时不需要同步标志。数据字符之间不允许有间隔,当线路空闲或没有数据可发时,可发送同步字符串。数据块内各字符的格式必须相同。同步串行通信比异步串行通信的传送速度快,但同步串行通信要求收发双方在整个数据传输过程中始终保持同步,这将对硬件提出更高的要求,实现起来难度大一些;而异步串行通信只要求在每帧的短时间内保持同步即可,实现起来容易得多。所以同步串行通信适用于数据量大、对速度要求比较高的串行通信场合。(1)单工形式)单工形式 单工单工(Simplex)形式的数据传输是单

29、向的。通信双方中一形式的数据传输是单向的。通信双方中一方固定为发送端,另一方则固定为接收端。单工形式的串方固定为发送端,另一方则固定为接收端。单工形式的串行通信只需要一条数据线,如下图所示。行通信只需要一条数据线,如下图所示。例如,计算机与打印机之间的串行通信。例如,计算机与打印机之间的串行通信。3.串行通信线路形式串行通信线路形式(2)全双工形式)全双工形式 全双工全双工(Full-duplex)形式的数据传输是双向的,可以同时形式的数据传输是双向的,可以同时发送和接收数据,因此,全双工形式的串行通信需要两条发送和接收数据,因此,全双工形式的串行通信需要两条数据线。数据线。(3)半双工形式半

30、双工形式 半双工半双工(Half-duplex)形式的数据传输也是双向的。但任何时形式的数据传输也是双向的。但任何时刻只能由其中的一方发送数据,另一方接收数据。因此半双刻只能由其中的一方发送数据,另一方接收数据。因此半双工形式既可以使用一条数据线,也可以使用两条数据线。工形式既可以使用一条数据线,也可以使用两条数据线。4.串行通信数据传输速率的表示方法串行通信数据传输速率的表示方法(1)与)与传输速率有关的术语传输速率有关的术语波特波特(Baud):每秒1次的信号变化称为1波特。波特率波特率(Baud Rate):每秒钟事件发生的数目或信号变化的次数。在单片机的串行数据传输中,以波特率表示串行

31、数据的传输速率。比特率比特率(Bit Rate):也称为位速率,即每秒钟传输二进制数的位数。在一般的单片机串行通信中,波特率与比特率的概念是一样的,但在高速串行通信中,由于一个事件的编码往往不止1位,因此波特率与比特率就不一样了,例如事件按4位编码,如果数据传输的波特率是2400,则比特率就是9600。(2)单片机)单片机中使用的波特率中使用的波特率 单片机使用波特率作为串行通信传送速率的单位。即1波特1 b/s(位/秒)在串行数据传输中,波特率除表明数据传送速率外,还可以表示串行口中移位脉冲频率的高低,因为串行数据发送和接收的速率是由移位脉冲决定的。波特率高表明移位脉冲频率高,串行数据传输速

32、度就快;反之,波特率低表明移位脉冲频率也低,串行数据传输速度就慢。波特率的数值差异很大,例如,在RS232C标准中规定,允许波特率为每秒5019 200 b/s。在实际的串行数据传输应用中,应根据速度要求、线路质量以及设备情况等因素选定波特率。二二.80C51 串行口的组成串行口的组成UART串行口寄存器结构:串行口寄存器结构:1.1.串行数据寄存器串行数据寄存器SBUF 串行口缓冲寄存器串行口缓冲寄存器SBUF是可直接寻址的专用寄存器。是可直接寻址的专用寄存器。在物理上,它对应着两个寄存器,一个是在物理上,它对应着两个寄存器,一个是发送寄存器发送寄存器,一个是一个是接收寄存器接收寄存器。三三

33、.串行口的特殊功能寄存器串行口的特殊功能寄存器 写写SBUF:MOV SBUF,A 访问发送数据寄存器访问发送数据寄存器读读SBUF:MOV A,SBUF 访问接收数据寄存器访问接收数据寄存器2 2串行口控制寄存器串行口控制寄存器SCON SCON SM0SM1SM2RENTB8RB8TIRISM0和和SM1:串行口工作方式选择位串行口工作方式选择位 SM0 SM1方式方式功能功能波特率波特率0 00同步移位寄存器同步移位寄存器fosc/120 1110位位UART可变可变1 0211位位UARTfosc/64或或fosc/321 1311位位UART可变可变 SCON用于控制和监视串行口的工

34、作状态,是一个逐位定用于控制和监视串行口的工作状态,是一个逐位定义的义的8 8位寄存器,由它控制串行口通讯方式选择、接收和位寄存器,由它控制串行口通讯方式选择、接收和发送,指示串行口的状态。发送,指示串行口的状态。SM2:方式方式2、方式、方式3中的多处理机通信允许位中的多处理机通信允许位 REN:允许串行接收位允许串行接收位REN=1时,允许接收,时,允许接收,REN=0时,禁止接收。时,禁止接收。TB8:发送数据位发送数据位8该位是方式该位是方式2和和3中要发送的第中要发送的第9位数据。在多处理位数据。在多处理机通信中,这一位表示是地址帧还是数据帧。机通信中,这一位表示是地址帧还是数据帧。

35、RB8:接收数据位接收数据位8该位是方式该位是方式2和和3中接收到的第中接收到的第9位数据;方式位数据;方式1 1中中接收到的是停止位;方式接收到的是停止位;方式0 0中不使用这一位。中不使用这一位。SM0SM1SM2RENTB8RB8TIRITI:串行发送中断请求标志串行发送中断请求标志RI:串行接收中断请求标志串行接收中断请求标志3 3电源控制寄存器电源控制寄存器PCON PCON D7D6D5D4D3D2D1D0SMOD-GF1GF0PDIDLSMOD串行通信波特率系数控制位串行通信波特率系数控制位 SMOD=1时,波特率加倍。时,波特率加倍。四四.串行口的工作方式及多机通信方式串行口的

36、工作方式及多机通信方式 1.1.方式方式0 0 D7D6D5D4D3D2D1D0串行口作为串行口作为同步移位寄存器同步移位寄存器使用,实现串行数据的输入使用,实现串行数据的输入/输出。输出。串行数据通过串行数据通过RXDRXD输入或输出输入或输出,而,而TXDTXD用于用于输出移位时钟输出移位时钟,作为外接部件的同步信号。作为外接部件的同步信号。帧格式都是纯数据位帧格式都是纯数据位,不用附加起始位、停止位和校验,不用附加起始位、停止位和校验位,数据移位按低位在前、高位在后的顺序进行。位,数据移位按低位在前、高位在后的顺序进行。数据传输的数据传输的波特率是固定的波特率是固定的,为单片机晶振频率的

37、,为单片机晶振频率的1/121/12。串行口方式0的时序利用串行口方式利用串行口方式0 0实现数据并行输入实现数据并行输入/输出输出2.2.方式方式1 1 方式方式1是是1010位位为一帧的为一帧的异步串行通信方式异步串行通信方式,帧格式,帧格式包括:包括:1位起始位(位起始位(0)、)、8位数据(低位在先)、位数据(低位在先)、1位停止位(位停止位(1)。)。由由TXD发送发送,由,由RXD接收接收。波特率可变波特率可变,取决于定时器,取决于定时器1的溢出的溢出速率,可用程速率,可用程序设定。序设定。串行口方式1的时序3 3.方式方式2 2和方式和方式3 3 方式方式2 2和和3 3都是都是

38、1111位位为一帧的为一帧的异步串行通信异步串行通信方式,即方式,即1 1个起始位、个起始位、9 9个数据位和个数据位和1 1个停止位。个停止位。在方式在方式2 2和和3 3下,字符还是下,字符还是8 8个数据位,只不过增加了一个数据位,只不过增加了一个个第第9 9数据位数据位(D8(D8),它是一个可编程位,其功能由用,它是一个可编程位,其功能由用户设定。户设定。方式方式2 2和和3 3是为是为多机通信多机通信而准备而准备的,两者的,两者的工作过程相的工作过程相同,同,差别仅在于波特率的差别仅在于波特率的设置设置。方式。方式2 2的波特率是固定的波特率是固定的的,为振荡器频率的,为振荡器频率

39、的1/321/32或或1/641/64;方式;方式3 3的波特率可由的波特率可由用户根据需要设定,设定方法与方式用户根据需要设定,设定方法与方式1 1相同。相同。串行口方式2、3的时序1.方式方式0时的波特率由振荡器的频率(时的波特率由振荡器的频率()所确定:)所确定:oscf12oscf波特率2.方式方式2时的波特率由振荡器的频率(时的波特率由振荡器的频率()和)和SMOD (PCON.7)所确定:所确定:oscf2232SMODoscf波特率当当SMOD=1时,时,当当SMOD=0时,时,32oscf波特率64oscf波特率五串行口的波特率发生器及波特率五串行口的波特率发生器及波特率 3.

40、方式方式1、3的波特率由定时器的波特率由定时器T1的溢出率和的溢出率和SMOD确定:确定:的溢出率定时器波特率1322TSMOD(1)定时器定时器T1工作于方式工作于方式0:TC13位计数器初值位计数器初值X 中断程序的机器周期数,在中断程序中重新对定时器置数。中断程序的机器周期数,在中断程序中重新对定时器置数。)2(11213XTCfosc溢出率(2)定时器定时器T1工作于方式工作于方式1:)2(11216XTCfosc溢出率(3)定时器定时器T1工作于方式工作于方式2:)1(21128THfosc溢出率甲:MOV SCON,#40H MOV TMOD,#20H MOV TL1,#0E8H

41、MOV TH1,#0E8H SETB TR1 MOV DPTR,#4000H MOV R2,#32LOP:MOVX A,DPTR INC DPTR MOV SBUF,A JNB TI,$CLR TI DJNZ R2,LOP SJMP$乙:MOV SCON,#50H MOV TMOD,#20H MOV TL1,#0E8H MOV TH1,#0E8H SETB TR1 MOV DPTR,#5000H MOV R2,#32LOP:JNB RI,$CLR RI MOV A,SBUF MOVX DPTR,A INC DPTR DJNZ R2,LOP SJMP$甲:ORG 0000H LJMP MAIN

42、ORG 0023H LJMP SEND ORG 0050HMAIN:MOV SCON,#40H MOV TMOD,#20H MOV TL1,#0E8H MOV TH1,#0E8H SETB TR1 MOV IE,#90H MOV DPTR,#4000H MOV R2,#32 MOVX A,DPTR INC DPTR MOV SBUF,A SJMP$SEND:CLR TI DJNZ R2,NEXT RETINEXT:MOVX A,DPTR INC DPTR MOV SBUF,A RETI乙:ORG 0000H LJMP MAIN ORG 0023H LJMP RECE ORG 0050HMAIN

43、:MOV SCON,#50H MOV TMOD,#20H MOV TL1,#0E8H MOV TH1,#0E8H SETB TR1 MOV IE,#90HLOP:MOV DPTR,#5000H MOV R2,#0 CJNE R2,#32,$LCALL BUF_FUN LJMP LOPRECE:CLR RI MOV A,SBUF MOVX DPTR,A INC DPTR INC R2 RETIBUF_FUN:、RET4.4 4.4 中断系统中断系统 一一 中断的概念中断的概念中断:中断:程序执行过程中,允许外部或内部事件通过硬程序执行过程中,允许外部或内部事件通过硬件打断程序的执行,使其转向为处

44、理外部或内部事件件打断程序的执行,使其转向为处理外部或内部事件的中断服务程序中去。的中断服务程序中去。中断源:中断源:凡是中断请求的来源都统称为中断源。凡是中断请求的来源都统称为中断源。中断优先级:中断优先级:几个中断源同时申请中断时,或者几个中断源同时申请中断时,或者CPU正在处理某外部事件时,又有另一外部事件申请中断,正在处理某外部事件时,又有另一外部事件申请中断,CPU必须区分哪个中断源更重要,从而确定优先处理必须区分哪个中断源更重要,从而确定优先处理谁的能力,这就是中断优先级问题。谁的能力,这就是中断优先级问题。中断嵌套流程图中断嵌套流程图中断流程图中断流程图80C51的中断系统结构示

45、意图的中断系统结构示意图二二 中断的控制和操作中断的控制和操作1.中断源中断源/INT0(P3.2)外部中断外部中断0。当。当IT0=0时,低电平有效;时,低电平有效;当当IT0=1时,下降沿有效。时,下降沿有效。/INT1(P3.3)外部中断外部中断1。当。当IT1=0时,低电平有效;时,低电平有效;当当IT1=1时,下降沿有效。时,下降沿有效。TF0(P3.4)定时器定时器/计数器计数器T0溢出中断溢出中断TF1(P3.5)定时器定时器/计数器计数器T1溢出中断溢出中断RI,TI 串行中断串行中断2.中断标志中断标志/INT0、/INT1、T0和和T1的中断标志存放在的中断标志存放在TCO

46、N寄寄存器中;串行口的中断标志存放在存器中;串行口的中断标志存放在SCON寄存器中。寄存器中。位地址位地址8FH8EH8DH8CH8BH8AH89H88H符符 号号TF1TF0IE1IT1IE0IT0TCON:SCON:位地址位地址9FH9EH9DH9CH9BH9AH99H98H符符 号号TIRI3.中断允许控制中断允许控制中断允许寄存器(中断允许寄存器(IE)的字节地址为的字节地址为A8H位地址位地址AFHAEHADHACHABHAAHA9HA8H符符 号号EA-ESET1EX1ET0EX0EX0(IE.0)外部中断外部中断0允许位允许位ET0(IE.1)定时器定时器/计数器计数器T0中断允

47、许位中断允许位EX1(IE.2)外部中断外部中断1允许位允许位ET1(IE.3)定时器定时器/计数器计数器T1中断允许位中断允许位ES(IE.4)串行口中断允许位串行口中断允许位EA(IE.7)CPU中断允许位中断允许位4.中断优先级中断优先级中断优先级寄存器(中断优先级寄存器(IP)的字节地址为的字节地址为B8H位地址位地址BFHBEHBDHBCHBBHBAHB9HB8H符符 号号-PT2PSPT1PX1PT0PX0定时器定时器0定时器定时器1定时器定时器2外部中断外部中断0外部中断外部中断1串行口串行口5.外部中断触发方式外部中断触发方式电平触发方式电平触发方式跳变触发方式跳变触发方式低电

48、平有效低电平有效电平由高到低跳变时触发电平由高到低跳变时触发6.中断请求的撤除中断请求的撤除1.由单片机内部硬件自动复位:由单片机内部硬件自动复位:对于对于T0、T1的溢出中断和采用跳变触发方式的外部中的溢出中断和采用跳变触发方式的外部中断请求,在断请求,在CPU响应中断后,由内部硬件自动复位中断响应中断后,由内部硬件自动复位中断标志标志TF0和和TF1、TE0和和TE1,而自动撤除中断请求。而自动撤除中断请求。2.应用软件清除响应标志:应用软件清除响应标志:对于串行接收对于串行接收/发送中断请求,在发送中断请求,在CPU响应中断后,内部响应中断后,内部无硬件自动复位中断标志无硬件自动复位中断

49、标志RI和和TI,必须在中断服务程序必须在中断服务程序中清除这些中断标志,才能撤除中断。中清除这些中断标志,才能撤除中断。3.既无硬件也无软件措施:既无硬件也无软件措施:对于采用电平触发方式的外部中断请求,对于采用电平触发方式的外部中断请求,CPU对引脚上对引脚上的中断请求信号既无控制能力,也无应答能力。为保证的中断请求信号既无控制能力,也无应答能力。为保证CPU响应中断后、执行返回指令前,撤除中断请求,必响应中断后、执行返回指令前,撤除中断请求,必须考虑另外的措施。须考虑另外的措施。三三 中断的响应过程和中断矢量地址中断的响应过程和中断矢量地址1.中断的响应过程中断的响应过程(1)在每个机器

50、周期的)在每个机器周期的S5P2期间,各中断标志采样期间,各中断标志采样相应的中断源。相应的中断源。CPU则在下一机器周期的则在下一机器周期的S6期间按优期间按优先级的顺序查询中断标志。若查询到某中断标志为先级的顺序查询中断标志。若查询到某中断标志为1,则按优先级的高低进行处理,即响应中断。则按优先级的高低进行处理,即响应中断。(2)响应中断后,执行硬件生成的长调用指令响应中断后,执行硬件生成的长调用指令“LCALL”,将程序计数器将程序计数器PC的内容压入堆栈保护,先低位地址,后高位的内容压入堆栈保护,先低位地址,后高位地址,堆栈指针加地址,堆栈指针加2。(3)将对应中断源的中断矢量地址装入

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(单片机原理及应用第4章-单片机的功能单元课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|