单片机的其他片内功能部件课件

上传人:494895****12427 文档编号:241301769 上传时间:2024-06-16 格式:PPT 页数:67 大小:768.50KB
返回 下载 相关 举报
单片机的其他片内功能部件课件_第1页
第1页 / 共67页
单片机的其他片内功能部件课件_第2页
第2页 / 共67页
单片机的其他片内功能部件课件_第3页
第3页 / 共67页
点击查看更多>>
资源描述
1第四章第四章第四章第四章 单单片机的其他片内功能部件片机的其他片内功能部件片机的其他片内功能部件片机的其他片内功能部件v4-14-1并行并行并行并行I/OI/O口口口口v4-24-2定定定定时时器器器器/计计数器数器数器数器 v4-34-3串行通信接口串行通信接口串行通信接口串行通信接口 v4-44-4中断系中断系中断系中断系统统第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4-1并行并行I/O2第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件vI/O I/O 接口的作用接口的作用1.实现和不同外和不同外设的速度匹配的速度匹配2.改改变数据数据传送方式送方式3.改改变信号的性信号的性质和和电平平第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件I/O 接口的作用接口的作用3第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件外部设备的编址方式1.对外设端口单独编址 IN A,(N);N端口中的数端口中的数 OUT (N),A2.外设端口和存储器统一编址将一部分地址空将一部分地址空间让给外外设端口,存端口,存储器不再使用。器不再使用。优点:(1)一切指令均适用于)一切指令均适用于I/O端口的端口的访问,增,增强了了CPU对外外围设备的的处理能力。理能力。(2)CPU本身不需要本身不需要专门的的I/O指令。指令。(3)外)外设地址安排灵活,数量不限。地址安排灵活,数量不限。第四章第四章 单片机的其他片内功能部件外部设备的编址方式单片机的其他片内功能部件外部设备的编址方式4第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件端口与接口端口与接口v端口:常指I/O接口中带有端口地址的寄存器或缓冲器,CPU通过端口地址就可以对端口中信息进行读写。v接口:指CPU与外设间的I/O接口芯片,一个外设通常需要一个I/O接口,但一个I/O接口可以有多个I/O端口,传送数据字的端口称数据口,传送命令字的称命令口,传送状态字的称为状态口。第四章第四章 单片机的其他片内功能部件端口与接口单片机的其他片内功能部件端口与接口5第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4-1 并行I/O口v四个8位并行I/O端口:P0、P1、P2和P3。v每个端口都是8位准双向口,包含一个锁存器(即特殊功能寄存器P0P3)、一个输出驱动器和一个输入缓冲器。v这四个并行I/O口都可以作准双向通用I/O口,既可以作输入口,又可以作输出口,还可以作双向口。输出有锁存功能;输入有三态缓冲但无锁存功能。它们既可以以字节寻址,也可以按位独立输入/输出。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4-1 并行并行I/O6第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件三种三种I/O端口操作方式端口操作方式1.数据数据输出方式(写端口)出方式(写端口)通通过一条指令将数据写入一条指令将数据写入P0-P3的数据的数据锁存器,然后通存器,然后通过输出出驱动器送到端口引脚。器送到端口引脚。MOV P0,A ;累加器累加器A中内容送中内容送P0口口2.读端口端口对端口端口锁存器数据存器数据进行行读入,入,这个数据并非端口引脚上的数据个数据并非端口引脚上的数据ORL P1,#0F0H ;P1锁存器中数据送存器中数据送A,经“与与”运算后,送运算后,送P1锁存器存器第四章第四章 单片机的其他片内功能部件三种单片机的其他片内功能部件三种I/O端口操作端口操作7第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件3.读引脚引脚从端口引脚上从端口引脚上读数据,先使数据,先使对应端口端口锁存器置位,使存器置位,使T管截止,管截止,然后打开数据然后打开数据缓冲器,使引脚数据冲器,使引脚数据输入数据入数据总线。MOV P1,#0FH ;使使P1口低四位口低四位锁存器置位存器置位MOV A,P1 ;读P1口低四位引脚口低四位引脚线信号信号第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件3.读引脚读引脚8第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件P1口的位结构口的位结构第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件P1口的位结构口的位结构9第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4-1-1 4-1-1 P1P1口口v通用通用I/O口口可以采用字可以采用字节操作也可以采用位操作,操作也可以采用位操作,CPU既可以把它既可以把它们看看作数据口也可以看作状作数据口也可以看作状态口。口。CPU复位后,口复位后,口锁存器存器为“1”,对于作于作为输入的口脚(入的口脚(读引脚),相引脚),相应位的口位的口锁存器不能写入存器不能写入“0”。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4-1-1 P1口口10第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件例例41 读P1.4P1.7口状口状态送指示灯送指示灯显示。示。字字节操作参考程序:操作参考程序:ORL P1,#0F0H ;P1.4P1.7口口锁存器置存器置1 MOV A,P1 ;读P1.4P1.7引脚状引脚状态 SWAP A ;MOV P1,A ;RET第四章第四章 单片机的其他片内功能部件例单片机的其他片内功能部件例41 读读P11第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4-1-2 4-1-2 P2P2口口 P2口有口有两种功能两种功能:对于内部有程序存于内部有程序存贮器的器的单片机,片机,P2口既可以作口既可以作为输入入/输出口使用,也可以作出口使用,也可以作为系系统扩展的地址展的地址总线口,口,输出高出高8位位地址地址A8A15。对于内部没有程序存于内部没有程序存贮器的器的单片机,必片机,必须外接程序存外接程序存贮器器一一般情况下般情况下P2口只能作口只能作为系系统扩展的高展的高8位地址位地址总线口,而不口,而不能作能作为外部外部设备的的输入入输出口。出口。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4-1-2 P2口口12第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件P2口作通用口作通用I/O口口 例例4-3 XRL P2,#01H ;字字节操作,操作,P2.0取反取反 CPL P2.0 ;位操作,位操作,P2.0取反取反 P2口作地址口作地址总线(1)若片外数据存若片外数据存储器的容量器的容量256256B B 这时P2口不输出地址,仍可作为I/O口使用 例例4-44-4 将将5656H H写入外部写入外部RAMRAM的的3838H H单元,元,CPUCPU执行下面的程序段不影响行下面的程序段不影响P2P2口状口状态:MOV R0,#38H MOV A,#56H MOVX R0,A 第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件P2口作通用口作通用I/O13第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件(2)若片外数据存若片外数据存储器的容量器的容量256B MOVX A,DPTR MOVX DPTR,A第四章第四章 单片机的其他片内功能部件(单片机的其他片内功能部件(2)若片外数据存)若片外数据存14第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4-1-3 4-1-3 P0P0口口 P0口既可作通用口既可作通用I/O口(用口(用8051时)使用,)使用,又可作地址数据分又可作地址数据分时复用复用总线使用。使用。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4-1-3 P015第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件 4-1-4 4-1-4 P3P3口口 P3口除了作为口除了作为准双向通用准双向通用I/O接口使用外,接口使用外,每一根线还具每一根线还具有第二种功能。有第二种功能。引脚第 二 功 能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外部中断0请求输入端)P3.3INT1(外部中断1请求输入端)P3.4T0(定时器/计数器0计数脉冲输入端)P3.5T1(定时器/计数器1计数脉冲输入端)P3.6WR(片外RAM写选通信号输出端)P3.7RD(片外RAM读选通信号输出端)第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件 4-1-4 P16第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4-24-2 定定时器器/计数器数器1、MCS-51内部具有两个定内部具有两个定时/计数器,可用于定数器,可用于定时控控制,分制,分频器和事故器和事故处理来用。理来用。2、内部是一个二、内部是一个二进制加制加1计数器,当数器,当计数器数器计满回零回零时能自能自动产生溢出中断生溢出中断请求,表示定求,表示定时时间已到或已到或计数已中止。数已中止。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4-2 定时器定时器/17第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件v2个可独立控制的16位定时器/计数器:T0、T1原理:原理:1、定时模式 每一个机器周期计数器加1,直至计满溢出产生中断请求。对于一个N位的加1计数器,若计数时钟的频率f是已知的,则从初值a开始加1计数至溢出所占用的时间为:当N=8、a=0、t=1/f时,最大的定时时间为:T=256t 2、计数模式 外部输入信号是加到T0(P3.4)或T1(P3.5)端,CPU每个机器周期对T0(或T1)检测一次,只有在前一次检测为1后一次检测为0时才使计数器加1。所以,对外部输入信号的最高计数速率是晶振的1/24。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件2个可独立控制的个可独立控制的118第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件一一.定时器控制、状态寄存器定时器控制、状态寄存器 1.TMOD定时器定时器方式寄存器方式寄存器(89H)T1T01)功能选择位)功能选择位C/T:=0,定时功能,计数内部机器周期脉冲;定时功能,计数内部机器周期脉冲;=1,计数功能,计数引脚,计数功能,计数引脚T0(T1)输入的脉冲下降沿。输入的脉冲下降沿。2 2)方式选择位方式选择位M1M1、M0M0:4 4种工作方式:种工作方式:13/16/813/16/8位位 3)门控方式选择位)门控方式选择位GATE:=0,非门控方式非门控方式(内部启动内部启动):TRx=1,启动定时器工作;启动定时器工作;TRx=0,停止定时器工作。停止定时器工作。=1,门控方式,门控方式(外部启动外部启动):TRx=1且引脚且引脚INTx=1才启动。才启动。第四章第四章 单片机的其他片内功能部件一单片机的其他片内功能部件一.定时器控制、状定时器控制、状19第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件TMOD确定定时器工作方式指令:确定定时器工作方式指令:MOV TMOD,#方式字方式字例:例:设设T0用方式用方式2非门控定时,非门控定时,T1用方式用方式1门控计数。门控计数。MOV TMOD,#1101 0010B 或或 MOV TMOD,#0D2H第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件TMOD确定定时器确定定时器20第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件2.2.TCONTCON定时器控制定时器控制/状态寄存器(状态寄存器(8888H H)1)启动控制位)启动控制位TR0、TR1=0,停止定时器工作;停止定时器工作;=1,启动定时器工作。,启动定时器工作。例:启动例:启动T0:SETBTR02)溢出中断标志位)溢出中断标志位TF0、TF1定时器溢出使定时器溢出使TFx=1。中断方式:中断方式:TFx=1引起中断请求,引起中断请求,CPU响应响应Tx中断后,自动对中断后,自动对TFx清清0。软件查询方式:软件查询方式:可用软件检测可用软件检测TFx,必须软件清必须软件清0。WAIT:JBC TF0,NEXT ;检测检测T0是否溢出是否溢出SJMPWAIT;未溢出,继续检测未溢出,继续检测 NEXT:;溢出,溢出,TF0清清0,处理溢出,处理溢出第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件2.TCON定时器定时器21第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件3可可预置初置初值的的16位加位加1定定时计数器数器 属于属于SFR中的一种,中的一种,T0由由TH0、TL0组成,成,T1由由TH1、TL1组成。通成。通过预设初初值来定来定时。预置置T0初初值指令:指令:MOV TH0,#X MOV TL0,#XL第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件3可预置初值的可预置初值的122第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件二、二、定时器工作方式定时器工作方式1.1.方式方式方式方式0 0 13位定时位定时/计数器。计数器。计数外部脉冲个数:计数外部脉冲个数:18192(213)。定时时间定时时间(12MHz,即:即:T=1 s):1 s 8.192ms。C/T=0C/T=1由方式选择位由方式选择位M1M1、M0M0设定设定第四章第四章 单片机的其他片内功能部件二、定时器工作方式单片机的其他片内功能部件二、定时器工作方式23第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件THx 高8位和TLx 低5位组成13位加1计数器例:计算得初值为7692,13位定时器T0应装初值多少?7692化为16进制数1E0CH,则TH00FOH,TL0=0CH第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件THx 高高8位和位和T24第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件2.2.方式方式方式方式1 1 1 116位定位定时/计数器。数器。THx8位和位和TLx8位位组成成16位加位加1计数器数器计数外部脉冲个数:计数外部脉冲个数:165536(216)定时时间定时时间(T=1 s):1 s 65536T=65.54msC/T=0C/T=1第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件2.方式方式1计数外部计数外部25第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件3.方式方式2 2自动恢复初值自动恢复初值8位定时位定时/计数器。计数器。TLx为为8位加位加1计数器,计数器,THx为为8位初值暂存器。位初值暂存器。无需重装初值,用于需要重复定时和计数的场合。无需重装初值,用于需要重复定时和计数的场合。最大计数值:最大计数值:256(28)最大定时时间最大定时时间(T=1 s):256 s第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件3.方式方式2自动恢自动恢26第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件注意注意:方式方式2 2下,当定下,当定时器器计满回零回零时,一方面向一方面向CPUCPU发出溢出中断出溢出中断请求,求,另一方面从另一方面从THTH中重新中重新获得初得初值并启并启动计数。数。方式方式0 0、1 1、3 3下,下,定定时器必器必须通通过重装初重装初值来重新启来重新启动计数数。第四章第四章 单片机的其他片内功能部件注意单片机的其他片内功能部件注意:27第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4.方式方式3(只适用(只适用T0)T0分成分成2个独立的个独立的8位定时器:位定时器:TL0定时定时/计数器和计数器和TH0定时器定时器TL0占用占用T0控制位:控制位:C/T,TR0,GATE;TH0占用占用T1控制位控制位。T1不能使用方式不能使用方式3工作工作,一般当一般当T1作为波特率发生器时作为波特率发生器时,T0选方式选方式3。C/T=0C/T=1第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4.方式方式3(只适用(只适用28第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4-2-3 4-2-3 定定时器器/计数器的初始化数器的初始化1 1初始化步骤初始化步骤 1)给定时器方式寄存器)给定时器方式寄存器TMOD送一个方式控制字,以设定定送一个方式控制字,以设定定 时器时器/计数器的相应工作方式。计数器的相应工作方式。2)确定需要定时的时间和需要计数的初值,给定时器)确定需要定时的时间和需要计数的初值,给定时器/计数器计数器 送定时器初值或计数器初值。送定时器初值或计数器初值。3)给中断允许寄存器)给中断允许寄存器IE选送中断控制字和中断优先级寄存器选送中断控制字和中断优先级寄存器 IP选送中断优先级字,以开放相应中断和设定中断优先级。选送中断优先级字,以开放相应中断和设定中断优先级。4)给定时器控制寄存器)给定时器控制寄存器TCON送命令字,以启动或禁止定时器送命令字,以启动或禁止定时器 /计数器的运行。计数器的运行。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4-2-3 定时定时29第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件2计数器初数器初值的的计算算 TC=MC 式中,TC为计数初值,C为计满所需要的计数个数,为计数器模数,该值和计数器工作方式有关。在方式时为213;在方式时为216;在方式和方式时为28。4-2-3 4-2-3 定定时器器/计数器的初始化数器的初始化第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件2计数器初值的计计数器初值的计30第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件定定时器初器初值的的计算算T=(MTC)T计数 上式也可写成:TC=MT/T计数 式中,为模值,和定时器的工作方式有关;T计数是单片机时钟周期CLK的12倍;TC为定时器的定时初值。4-2-3 4-2-3 定定时器器/计数器的初始化数器的初始化第四章第四章 单片机的其他片内功能部件定时器初值的计单片机的其他片内功能部件定时器初值的计31第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件例例4-7 若若单片机片机时钟频率率为12MHz,请计算定算定时2ms所需所需 的定的定时器初器初值。解:由于定解:由于定时器工作在方式器工作在方式2 2和方式和方式3 3下下时的最大定的最大定时时间只有只有0.2560.256msms,因此要想因此要想获得得2 2msms的定的定时时间定定时器必器必须工作在方式工作在方式0 0或方式或方式1 1。若采用方式若采用方式0 0,则根据公式可得定根据公式可得定时器初器初值为:TC=TC=MT/T计数=213213 2*103/1=6192=1830H2*103/1=6192=1830H 即:即:TH0TH0应装装0 0C1HC1H;TL0TL0应装装#10#10H H(高三位高三位为0 0)若采用方式若采用方式1 1,则根据公式可得定根据公式可得定时器初器初值为:TC=TC=2ms/1=63536=F830H2ms/1=63536=F830H 即:即:TH0TH0应装装#0#0F8HF8H;TL0TL0应装装#30#30H H。第四章第四章 单片机的其他片内功能部件例单片机的其他片内功能部件例4-7 若单片若单片32第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件例:例:设8031时钟频率率为12MHz,要求定要求定时器器T0定定时50ms,写出写出初始化程序。初始化程序。TC=M-T/T计数数216-50ms/1us=15536=3CB0HSTART:MOV TMOD#01H ;方式方式1 MOV TH0,#3CH ;装初装初值 MOV TL0,#0B0H SETB TR0 ;启启动T0计数数WAIT:JBC TF0,TT0 ;检测T0是否溢出是否溢出 SJMP WAIT ;未溢出,未溢出,继续检测TTO:MOV TH0,#3CH ;重装初重装初值 MOV TL0,#0B0H CPL P1.0 ;功能?功能?HERE:SJMP HERE第四章第四章 单片机的其他片内功能部件例:设单片机的其他片内功能部件例:设8031时钟时钟33第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4-34-3 串行接口串行接口一一.串行通讯的基本方式串行通讯的基本方式(一一).).异步通讯异步通讯 以字符为传送单位用起始位和停止位标识每个字符的开始和结束,以字符为传送单位用起始位和停止位标识每个字符的开始和结束,字符间隔不固定,只需字符传送时同步。字符间隔不固定,只需字符传送时同步。异步通讯常用格式:一个字符帧异步通讯常用格式:一个字符帧(二二).).同步通信同步通信 每一数据块开头时发送一个或两个同步字符,使发送与接收双方取每一数据块开头时发送一个或两个同步字符,使发送与接收双方取 得同步。数据块的各个字符间取消了起始位和停止位,所以通信速得同步。数据块的各个字符间取消了起始位和停止位,所以通信速 度得以提高。度得以提高。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4-3 串行接口串行接口34第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件二二.串行接口功能串行接口功能1.1.发送器:并送器:并串数据格式串数据格式转换,添加,添加标识位和校位和校验位,一位,一帧发送送结束,束,设置置结束束标志,申志,申请中断。中断。2.2.接收器:串接收器:串并数据格式并数据格式转换,检查错误,去掉,去掉标识位,保存有效数据,位,保存有效数据,设置接收置接收结束束标志,申志,申请中断。中断。3.3.控制器:接收控制器:接收编程命令和控制参数,程命令和控制参数,设置工作方式:同步置工作方式:同步/异步、异步、字符格式、波特率、校字符格式、波特率、校验方式、数据位与同步方式、数据位与同步时钟比例等。比例等。4.4.串行数据串行数据传送方向送方向 单工通工通讯:数据:数据单向向传送。送。半双工通半双工通讯:数据可分:数据可分时双向双向传送。送。全双工通全双工通讯:可同:可同时进行行发送和接收送和接收第四章第四章 单片机的其他片内功能部件二单片机的其他片内功能部件二.串行接口功能串行接口功能35第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件三、串行接口控制器三、串行接口控制器 1.1.数据缓冲器数据缓冲器SBUFSBUF 发送发送SBUFSBUF和接收和接收SBUFSBUF共用一个地址共用一个地址9999H H。1 1)发送发送SBUFSBUF存放待发送的存放待发送的8 8位数据,写入位数据,写入SBUFSBUF将同时启动发送。将同时启动发送。发送指令:发送指令:MOVMOV SBUF SBUF,A A 2 2)接收接收SBUFSBUF存放已接收成功的存放已接收成功的8 8位数据,供位数据,供CPUCPU读取。读取。读取串行口接收数据指令:读取串行口接收数据指令:MOV AMOV A,SBUFSBUF 第四章第四章 单片机的其他片内功能部件三、串行接口控制器单片机的其他片内功能部件三、串行接口控制器36第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件 2.串行口控制串行口控制/状态寄存器状态寄存器 SCON(98H)SM2:多机控制位,用于多机通讯。多机控制位,用于多机通讯。REN:允许接收控制位,允许接收控制位,REN=1,允许接收;允许接收;REN=0,禁止接收。禁止接收。TB8:发送的第发送的第9位数据位,可用作校验位和地址位数据位,可用作校验位和地址/数据标识位数据标识位RB8:接收的第接收的第9位数据位或停止位位数据位或停止位T I:发送中断标志,发送一帧结束,发送中断标志,发送一帧结束,TI=1,必须软件清零必须软件清零R I:接收中断标志,接收一帧结束,接收中断标志,接收一帧结束,RI=1,必须软件清零必须软件清零SM0,SM1:选择串行口选择串行口4种工作方式种工作方式。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件 2.串行口串行口37第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件 波特率:每秒每秒钟传送二送二进制数制数码的位数(的位数(bit 数),数),单位是位是bps(bit per second)。若波特率若波特率为1200bps,字符的字符的实际传送速率送速率为1200/10=120帧/秒。秒。3.节电控制寄存器节电控制寄存器 PCONSMOD(PCON.7):波特率加倍控制位。波特率加倍控制位。SMOD=1,波特率加倍,波特率加倍,SMOD=0,则不加倍。则不加倍。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件 波特率:波特率:3.节电节电38第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件四、四、串行接口的工作方式串行接口的工作方式SM0,SM1选择四种工作方式。(1)方式)方式0:同步移位寄存器方式。同步移位寄存器方式。用于扩展并行用于扩展并行I/O接口。接口。1.一帧一帧8位,无起始位和停止位。位,无起始位和停止位。2.RXD:数据输入数据输入/输出端。输出端。TXD:同步脉冲输出端,每个脉冲对应一个数据位。同步脉冲输出端,每个脉冲对应一个数据位。3.波特率波特率B=fosc/12如:如:fosc=12MHz,B=1MHz,每位数据占每位数据占1 s。4.发送过程:发送过程:先对先对TI清零,写入清零,写入SBUF,启动发送,一帧发送结束,启动发送,一帧发送结束,TI=1。接收过程:接收过程:REN=1且且RI=0,启动接收,一帧接收完毕,启动接收,一帧接收完毕,RI=1第四章第四章 单片机的其他片内功能部件四、单片机的其他片内功能部件四、串行接口的工串行接口的工39第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件串行输入、并行输出移位寄存器内部结构串行输入、并行输出移位寄存器内部结构第四章第四章 单片机的其他片内功能部件串行输入、并行输出单片机的其他片内功能部件串行输入、并行输出40第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件(2)(2)方式方式1 18 8位数据异步通位数据异步通讯方式。方式。1.1.一一帧1010位:位:8 8位数据位,位数据位,1 1个起始位个起始位(0)(0),1 1个停止位个停止位(1)(1)。2.2.RXDRXD:接收数据端。接收数据端。TXDTXD:发送数据端。送数据端。3.3.波特率:波特率:用用T1作作为波特率波特率发生器,生器,B=(2B=(2SMOD/32)/32)T1T1溢出率溢出率。4.4.发送:送:先先对TITI清零,清零,写入写入SBUFSBUF,同同时启启动发送,一送,一帧发送送结束,束,TI=1TI=1。接收:接收:REN=1REN=1,RI=0 RI=0,允允许接收。接收完一接收。接收完一帧,将接收数据装入将接收数据装入SBUFSBUF,并使并使RI=1RI=1。接收原理:接收原理:当当REN=1,CPU开始采开始采样RXD引脚引脚负跳跳变信号,若出信号,若出现负跳跳变,才,才进入数据接收入数据接收 状状态。即先。即先检测起始位,若第一位起始位,若第一位为0,继续接收其余位;否接收其余位;否则,停止接收,重新,停止接收,重新 采采样负跳跳变。数据采数据采样速率速率为波特率波特率16倍倍频,在数据位中,在数据位中间,用第,用第7、8、9个脉冲采个脉冲采样3次数据次数据 位,并位,并3中取中取2保留采保留采样值。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件(2)方式方式1841第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件(2)(2)方式方式 8 8位数据异步通位数据异步通讯方式。方式。写入写入SBUF采样采样(a)发送时序图发送时序图TXD数据输出数据输出TID0D1D2D3D4D5D6D7停止位停止位起始位起始位RXD输入数据输入数据(b)接收时序图接收时序图D0D1D2D3D4D5D6D7停止位停止位起始位起始位RI检测检测负跳变负跳变第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件(2)方式写入采方式写入采42第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件(3)(3)方式方式2 2和方式和方式3 3 9 9位数据异步通位数据异步通讯方式。方式。1 1.一一帧为1111位:位:9 9位数据位,位数据位,1 1个起始位个起始位(0)(0),1 1个停止位个停止位(1)(1)。第。第9 9位数据位在位数据位在 TB8/RB8 TB8/RB8中,常用作校中,常用作校验位和多机通位和多机通讯标识位。位。2 2.RXDRXD:接收数据端,接收数据端,TXDTXD:发送数据端。送数据端。3 3.波特率:波特率:方式方式2 2:B=(2B=(2SMODSMOD/64)fosc/64)fosc。方式方式3 3:B=(2B=(2SMODSMOD/32)T1/32)T1溢出率溢出率 。4 4.发送:先装入送:先装入TB8TB8,写入写入SBUFSBUF并启并启动发送,送,发送送结束,束,TI=1TI=1。接收:接收:REN=1REN=1,允允许接收。接收完一接收。接收完一帧,若,若RI=0RI=0,SM2=0SM2=0或或RB8=1,RB8=1,将接收数据将接收数据 装入接收装入接收SBUFSBUF,第第9 9位装入位装入RB8RB8,使使RI=1RI=1;否否则丢弃接收数据,不置位弃接收数据,不置位RIRI。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件(3)方式方式2和方和方43第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件(3)(3)方式方式2 2和方式和方式3 3 9 9位数据异步通位数据异步通讯方式。方式。发发送送时时序序写入写入SBUFTXD输出输出TIRXD输入输入接接收收时时序序RID0D1D2D3D4D5D6TB8停止停止位位起始位起始位D7D0D1D2D3D4D5D6RB8停止位停止位起始位起始位D7检测检测负跳变负跳变第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件(3)方式方式2和方和方44第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件(4 4)计算波特率算波特率方式方式0 0为固定波特率:为固定波特率:B=fosc/12B=fosc/12方式方式2 2可选两种波特率:可选两种波特率:B=(2SMOD/64)fosc B=(2SMOD/64)fosc 方式方式1 1、3 3为可变波特率,用为可变波特率,用T1T1作波特率发生器。作波特率发生器。B=(2SMOD/32)T1B=(2SMOD/32)T1溢出率溢出率T1T1为方式为方式2 2的溢出时间:的溢出时间:t=(28-X)T=(28-X)12/fosct=(28-X)T=(28-X)12/foscT1T1溢出率溢出率=1/=1/t=fosc/12(2n-X)t=fosc/12(2n-X)波特率波特率B=(2SMOD/32)fosc/12(28-X)B=(2SMOD/32)fosc/12(28-X)串行口方式串行口方式1 1、3 3,根据波特率选择,根据波特率选择T1T1工作方式,计算时间常数。工作方式,计算时间常数。T1T1选方式选方式2 2:TH1=X=28-fosc/122SMOD/(32B)TH1=X=28-fosc/122SMOD/(32B)T1T1选方式选方式1 1用于低波特率,需考虑用于低波特率,需考虑T1T1重装时间常数时间。重装时间常数时间。第四章第四章 单片机的其他片内功能部件(单片机的其他片内功能部件(4)计算波特率方)计算波特率方45第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4-3-5 4-3-5 单片机双机通讯和多机通信单片机双机通讯和多机通信1.1.双机通讯双机通讯第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4-3-5 单片单片46第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件v串行口的串行口的应用用 串行口初始化编程格式:串行口初始化编程格式:SIO:MOV SCON,#H ;方式字,且方式字,且TI=RI=0 MOV PCON,#80H ;波特率加倍波特率加倍 MOV TMOD,#20H ;T1作波特率发生器作波特率发生器,方式方式2 MOV TH1,#X ;选定波特率选定波特率 MOV TL1,#X SETB TR1 SETB EA ;开串行口中断开串行口中断 SETB ES第四章第四章 单片机的其他片内功能部件串行口的应用单片机的其他片内功能部件串行口的应用 47第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件v发送程序:先送程序:先发送一个字符,等待送一个字符,等待TI=1TI=1后再后再发送下一个字符。送下一个字符。1.1.查询方式:查询方式:TRAM:MOV A,R0 ;取数据取数据 MOV SBUF,A ;发送一个字符发送一个字符WAIT:JBC TI,NEXT;等待发送结束等待发送结束SJMP WAITNEXT:INC R0 ;准备下一次发送准备下一次发送SJMP TRAM2.2.中断方式:中断方式:ORG 0023H ;串行口中断入口串行口中断入口 AJMP SINT MAIN:;初始化编程初始化编程 TRAM:MOV A,R0 ;取数据取数据 MOV SBUF,A ;发送第一个字符发送第一个字符 H:SJMP H ;其它工作其它工作 SINT:CLR TI ;中断服务程序中断服务程序 INC R0 MOV A,R0 ;取数据取数据 MOV SBUF,A ;发送下一个字符发送下一个字符 RETI第四章第四章 单片机的其他片内功能部件发送程序:先发送一单片机的其他片内功能部件发送程序:先发送一48第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件v接收程序:接收程序:REN=1REN=1、RI=0RI=0等待接收,当等待接收,当RI=1RI=1,从从SBUFSBUF读取数据。取数据。1.1.查询方式:方式:WAIT:JBC RI,NEXT ;查询等待等待SJMPWAITNEXT:MOVA,SBUF;读取接收数据取接收数据MOVR0,A ;保存数据保存数据INC R0 ;准准备下一次接收下一次接收SJMPWAIT2.2.中断方式:中断方式:ORG0023HAJMPRINTMAIN:;初始化初始化编程程 H:SJMPH ;其它任其它任务 RINT:CLRRI ;清中断清中断标志志MOVA,SBUF;读取接收数据取接收数据MOVR0,A ;保存数据保存数据INC R0RETI第四章第四章 单片机的其他片内功能部件接收程序:单片机的其他片内功能部件接收程序:REN=49第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件(一一)串行口串行口方式方式0 0 用于扩展单片机的并行用于扩展单片机的并行I/I/O接口接口 串行口实现:并行串行口实现:并行串行的数据转换串行的数据转换 74LS165/74LS16474LS165/74LS164实现:串行实现:串行并行的数据转换。并行的数据转换。(二二)异步通讯程序举例异步通讯程序举例 1.1.发发送送程程序序:将将片片内内RAM RAM 50H50H起起始始单单元元的的1616个个数数由由串串行行口口发发送送。要要求求发发送送波波特特率率为为系系统统时时钟钟的的32分分频,并进行奇偶校验。频,并进行奇偶校验。MAINT:MOV SCON,#80H;串行口初始化,方式2MOV PCON,#80H;波特率,SMOD=1SETBEASETBES ;开串行口中断MOV R0,#50H ;设数据指针MOV R7,#10H ;数据长度LOOP:MOV A,R0 ;取一个字符MOV C,P ;加奇偶校验MOV TB8,CMOV SBUF,A ;启动一次发送HERE:SJMPHERE;CPU执行其它任务第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件(一一)串行口方式串行口方式050第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件 ORG 0023H ;串行口中断入口 AJMP TRANI TRANI:PUSH A ;保护现场PUSH PSWCLR TI ;清发送结束标志DJNZ R7,NEXT ;是否发送完?CLR ES ;发送完,关闭串行口中断 SJMP TEND NEXT:INC R0 ;未发送完,修改指针MOV A,R0 ;取下一个字符MOV C,P ;加奇偶校验MOV TB8,CMOV SBUF,A ;发送一个字符POP PSW ;恢复现场POP A TEND:RETI ;中断返回第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件 51第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件2.接收程序:串行输入接收程序:串行输入16个字符,存入片内个字符,存入片内RAM的的50H起始单元,串行口波特率为起始单元,串行口波特率为2400(设晶振为设晶振为11.0592MHz)。RECS:MOV SCON,#50H ;串行口方式串行口方式1允许接收允许接收MOV TMOD,#20H ;T1方式方式2定时定时MOV TL1,#0F4H ;写入写入T1时间常数时间常数MOV TH1,#0F4HSETB TR1 ;启动启动T1MOV R0,#50H ;设数据指针设数据指针MOV R7,#10H ;接收数据长度接收数据长度 WAIT:JBC RI,NEXT ;等待串行口接收等待串行口接收SJMP WAITNEXT:MOV A,SBUF ;读取接收字符读取接收字符MOV R0,A ;保存一个字符保存一个字符INC R0 ;修改指针修改指针DJNZ R7,WAIT ;全部字符接收完全部字符接收完?RET第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件2.接收程序:串接收程序:串52第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件3.接收程序:串行接收程序:串行输入入16个字符,个字符,进行奇偶校行奇偶校验。RECS:MOV SCON,#0D0H ;串行口方式3允许接收MOV TMOD,#20H ;T1方式2定时MOV TL1,#0F4H ;写入T1时间常数MOV TH1,#0F4HSETB TR1 ;启动T1MOV R0,#50H ;设数据指针 MOV R7,#10H ;接收数据长度 WAIT:JBC RI,NEXT ;等待串行口接收 SJMP WAITNEXT:MOV A,SBUF ;取一个接收字符JNB P,COMP ;奇偶校验JNB RB8,ERR ;PRB8,数据出错SJMP RIGHT ;P=RB8,数据正确COMP:JB RB8,ERRRIGHT:MOV R0,A ;保存一个字符INC R0 ;修改指针DJNZ R7,WAIT ;全部字符接收完?CLR F0 ;F0=0,接收数据全部正确 ERR:SETB F0 ;F0=1,接收数据出错RET第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件3.接收程序:串接收程序:串53第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4-44-4 中断系中断系统4.4.1 4.4.1 中断系统概述中断系统概述中断系统概述中断系统概述 一、中断的概念一、中断的概念一、中断的概念一、中断的概念 中央处理器中央处理器CPUCPU正在处理某事件的时候,正在处理某事件的时候,外部发生了更为紧急的事件,请求外部发生了更为紧急的事件,请求CPUCPU暂停暂停当前的工作,转入处理所发生的事情,处当前的工作,转入处理所发生的事情,处理完后,再回到被中断的地方,继续原来理完后,再回到被中断的地方,继续原来的工作的工作,这样的过程称为中断。这样的过程称为中断。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4-4 中断系中断系54第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件v中断技术的优点:提高提高CPU的效率。的效率。提高提高实时数据的数据的处理理时效。效。被控被控对象的象的实时参数、越限数据和故障信息参数、越限数据和故障信息为计算机及算机及时采集,采集,以便以便应急急处理。理。故障故障处理理 如掉如掉电中断。中断。v中断系统的功能:中断中断优先先权排排队 根据根据轻重重缓急排急排队,优先先处理最理最紧急事件的中断急事件的中断请求。求。实现中断嵌套中断嵌套 CPU处理中断理中断时,发生另一个生另一个优先先级更高的中断更高的中断请求,求,CPU转而而 响响应优先先级更高的中断更高的中断请求,求,处理完之后再回到原来中断服理完之后再回到原来中断服务程序。程序。自自动响响应中断中断 实现中断返回。中断返回。第四章第四章 单片机的其他片内功能部件中断技术的优点:单片机的其他片内功能部件中断技术的优点:55第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件二、中断系统结构二、中断系统结构二、中断系统结构二、中断系统结构2 2个外部中断源信号:个外部中断源信号:INT0INT0、INT1INT12 2个定时器个定时器T0T0、T1T1溢出中断请求:溢出中断请求:TF0TF0、TF1TF11 1个串行口数据发送、接收结束中断请求:个串行口数据发送、接收结束中断请求:TITI、RIRI第四章第四章 单片机的其他片内功能部件二、中断系统结构单片机的其他片内功能部件二、中断系统结构256第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件三、中断控制寄存器三、中断控制寄存器第四章第四章 单片机的其他片内功能部件三、中断控制寄存器单片机的其他片内功能部件三、中断控制寄存器57第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件四、中断控制寄存器中的各中断标志四、中断控制寄存器中的各中断标志1.1.中断标志位中断标志位:TF1、TF0、IE1、IE0、RI、TI TCONSCON登记各中断源请求信号:登记各中断源请求信号:=1,有中断请求;,有中断请求;=0,无中断请求。,无中断请求。CPU响应中断后,各中断标志自动清零。响应中断后,各中断标志自动清零。注意:注意:TI,RI标志必须软件清零。标志必须软件清零。2.2.外部中断触发方式选择位:外部中断触发方式选择位:IT0IT0、IT1 IT1 =1 =1,负边沿触发中断请求;,负边沿触发中断请求;=0=0,低电平触发中断请求。,低电平触发中断请求。第四章第四章 单片机的其他片内功能部件四、中断控制寄存器单片机的其他片内功能部件四、中断控制寄存器58第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件3.中断允许控制位:中断允许控制位:EA、ES、ET1、EX1、ET0、EX0 IE =1,开中断;,开中断;=0,关中断。,关中断。例:例:允许允许CPU响应响应T0的中断请求的中断请求 MOV IE,#82H 或者或者 SETB ET0 SETB EA4中断优先级控制位:中断优先级控制位:PS、PT1、PX1、PT0、PX0 IP 2级优先级:级优先级:=1,为高优先级;,为高优先级;=0,为低优先级。,为低优先级。同一优先级别按内部查询顺序排列优先级:同一优先级别按内部查询顺序排列优先级:高高 INT0、T0、INT1、T1、SIO 低。低。五、中断控制寄存器中各控制位五、中断控制寄存器中各控制位第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件3.中断允许控制位中断允许控制位59第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件注意:注意:v一种中断一旦得到响一种中断一旦得到响应,与它同,与它同级的中断不能再中断它。的中断不能再中断它。v低低优先先级中断可以被高中断可以被高优先先级中断所中断,反之不能。中断所中断,反之不能。第四章第四章 单片机的其他片内功能部件注意:单片机的其他片内功能部件注意:60第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4.4.2 4.4.2 中断处理过程中断处理过程1.中断响应中断响应(一)中断响应条件 1.有中断源发出中断请求;2.中断总允许位EA1,即CPU开中断;3.相应的中断允许位为1,即没有屏蔽。(二)响应过程 1.阻断同级或低级中断;2.PC指针内容压栈保护;3.相应中断入口地址装入PC,程序转移到该中断入口地址单元。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4.4.2 中断处中断处61第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件(三)中断响应阻断1.当CPU未执行完一条指令。2当有同级或高级中断服务。3执行RET、RETI等指令后,不能立即响应中断。4.4.2 4.4.2 中断处理过程中断处理过程1.中断响应中断响应第四章第四章 单片机的其他片内功能部件(三)单片机的其他片内功能部件(三)中断响应阻中断响应阻62第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件2.中断中断处理理注意:注意:(1)各各中中断断源源的的入入口口矢矢量量地地址址之之间,相相隔隔8个个单元元,通通常常是是在在中中断断入入口口矢矢量量地地址址单元元处存存放放一一条条无无条条件件转移移指指令令,转至至存存储器器其其他他的的任任何何空空间去去执行中断服行中断服务程序。程序。(2)若若要要在在执行行当当前前中中断断程程序序时禁禁止止更更高高优先先级中中断断,应用用软件件关关闭CPU中断,或屏蔽更高中断,或屏蔽更高级中断源的中断,在中断返回前再开放中断。中断源的中断,在中断返回前再开放中断。(3)在在保保护现场和和恢恢复复现场时,为了了不不使使现场信信息息受受到到破破坏坏或或造造成成混混乱乱,一般在此情况下,一般在此情况下,应关关CPU中断,使中断,使CPU暂不响不响应新的中断新的中断请求。求。3.中断返回中断返回 中断返回指令:中断返回指令:RETI=RET指令指令+通知通知CPU中断服中断服务已已结束束。第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件2.中断处理中断处理63第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件4.4.3 4.4.3 中断系中断系统应用用中断服务程序的般格式如下:CLREA ;关中断PUSH PSW ;保护现场PUSH ASETBEA ;开中断,允许CPU响应高级中断 ;服务程序CLREA ;关中断POP A ;恢复现场POP PSWSETBEA;开中断RETI;中断返回第四章第四章 单片机的其他片内功能部件单片机的其他片内功能部件4.4.3 中断系中断系64第四章第四章第四章第四章 单片机的其他片内功能部件片机的其他片内功能部件1 1定定时器器/计数器的数器的应用和用和编程程 例例4-10 产生生2ms的方波的方波 ORG0000HRESET:AJMP MAIN ;转主程序主程序 ORG 000BH ;转中断中断处理程序理程序 AJMPIT0P ORG 0100HMAIN:MOV SP,#60H ACALL PT0M0HERE:SJMP HERE
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!