单片机原理及应用ppt课件_第1页
单片机原理及应用ppt课件_第2页
单片机原理及应用ppt课件_第3页
单片机原理及应用ppt课件_第4页
单片机原理及应用ppt课件_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机原理及运用单片机原理及运用第五章第五章 中断与定时中断与定时5.1 MCS-51单片机的中断系统单片机的中断系统u一、单片机中断技术概述u1、有关中断术语:u 中断源、断点、中断效力程序u 开中断、关中断、中断优先级u2、中断技术:中断技术是处理资源竞争实现资 源共享的方法u3、程序中断与调用子程序的区别:在于能否可预知u4、中断的功能u实现CPU与外设的速度匹配 u实时控制u缺点及时发现5.1 MCS-51单片机的中断系统单片机的中断系统u二、中断源u 5个中断源,分高低两级中断优先级别u1、外中断:2个,/INT0、/INT1u产生缘由:P3.2、P3.3的引脚电平变化u可控制为:低

2、电平或边沿下降沿触发中断uCPU根据控制方式和P3.2、P3.3引脚电平置有关标志位u转向中断效力程序时,自动去除标志位u中断入口地址:0003H、0013Hu撤销方式:u 边沿方式自动撤销;电平方式外加硬件电路撤销中断5.1 MCS-51单片机的中断系统单片机的中断系统u二、中断源u 5个中断源,分高低两级中断优先级别u2、定时器中断:2个,T0、T1u产生缘由:计数溢出u可控制为:4种方式计8192、65536、256、256 uCPU根据溢出置有关标志位u转向中断效力程序时,自动去除标志位u中断入口地址:000BH、001BHu撤销方式:自动撤销5.1 MCS-51单片机的中断系统单片机

3、的中断系统u二、中断源u 5个中断源,分高低两级中断优先级别u3、串行口中断:1 个u产生缘由:串行口P3.0、P3.1接纳或发送完一组(帧数据。u可控制为:4种方式uCPU置有关标志位u转向中断效力程序时,不自动去除标志位,软件去除u中断入口地址:0023Hu撤销方式:标志去除后撤销5.1 MCS-51单片机的中断系统单片机的中断系统u三、单片机对中断源的管理u 由IE存放器控制中断能否被允许u 由IP存放器控制各中断源的中断优先级别u 由TCON存放器控制外中断的触发方式、外中断及定时器中断的标志位设置u 由SCON存放器控制串行口中断的任务方式及其标志设置。5.1 MCS-51单片机的中

4、断系统单片机的中断系统u三、单片机对中断源的管理u 1、TCON:定时器控制存放器TF1TR1TF0TR0IE1IT1IE0IT0定时器外中断TF:定时器溢出标志, TF=1时表示溢出如:TF1=1,T1溢出; TF0=1,T0溢出TR:定时器启动标志, TR =1时启动如:TR1=1,启动T1计数; TR0=1,启动T0计数IE:外中断标志位,IE=1,表示有外中断 IT:外中断触发控制0:低电平触发;1:边沿触发5.1 MCS-51单片机的中断系统单片机的中断系统u三、单片机对中断源的管理u 1、TCON:定时器控制存放器TF1TR1TF0TR0IE1IT1IE0IT0定时器外中断例:TC

5、ON=11001010B,即CAH表示:5.1 MCS-51单片机的中断系统单片机的中断系统u三、单片机对中断源的管理u2、IE:中断允许存放器EA/ES ET1EX1ET0EX0EA:EA=1 ,允许CPU呼应中断,中断总允许ES:ES=1 ,允许串行口中断ET1: ET1=1 ,允许定时器1中断EX1: EX1=1 ,允许外中断1中断 ET0: ET0=1 ,允许定时器0中断EX0: EX0=1,允许外中断0中断例如:假设要允许T0产生中断,必需ET0=1且EA=15.1 MCS-51单片机的中断系统单片机的中断系统u三、单片机对中断源的管理u3、IP:中断允许存放器/PS PT1PX1P

6、T0PX0 某位=1,对应中断源处于高优先级PS:PS=1 ,串行口中断处于高优先级PT1: PT1=1 ,定时器1中断处于高优先级PX1: PX1=1 ,外中断1中断处于高优先级PT0: PT0=1 ,定时器0中断处于高优先级PX0: PX0=1,外中断0中断处于高优先级留意:复位后,IE=00H,IP=00H,表示。5.1 MCS-51单片机的中断系统单片机的中断系统四、中断优先级的控制原那么: MCS-51具有两级优先级,两级中断效力嵌套功能,控制原那么是:低优先级的中断恳求不能打断高优先级的效力,高优先级的中断恳求可以打断低优先级的效力。假设一个中断恳求已被呼应,那么同级的中断效力将被

7、制止。同级的中断同时出现,CPU呼应中断的顺序是: 外中断0、T0、外中断1、T1、串行口例如:假设设置IP=12H,那么CPU呼应中断的顺序是: T0、串行口、外中断0、外中断1、T15.1 MCS-51单片机的中断系统单片机的中断系统五、中断呼应过程:1、中断采样:2、中断查询:3、 中断呼应:产生LCALL指令 中断呼应时间:38个机器周期 标志位查询 1+LCALL2=3IE、IP、RET、RETI2+MUL、DIV4+ LCALL 2=85.1 MCS-51单片机的中断系统单片机的中断系统五、中断恳求的撤销:目的:使一次中断恳求执行中断效力一次1、定时中断恳求:转向中断效力程序自动撤

8、销2、串行中断恳求:在中断效力程序中运用指令撤销 软件撤销。3、 边沿触发方式的外中断恳求:转向中断效力程序自动撤销 4、电平触发方式的外中断恳求:外加硬件电路撤销 P145 图6.2 5.2 MCS-51定时器定时器/计数器的控制计数器的控制u一、定时方法种类:u1、软件定时、 2、硬件定时、 3、可编程定时器定时u二、定时和计数功能综述:u1、由两个16位的加法计数器TH0TL0、TH1TL1进展计数,经过对TH0TL0和TH1TL1的初值设置,可控制计数长度u2、定时功能是对内部机器周期计数,计数功能是对T0、T1引脚进展计数。u3、计数频率:u定时:一个机器周期,fosc/12u计数:

9、外来信号,频率 fosc/245.2 MCS-51定时器定时器/计数器的控制计数器的控制三、定时器/计数器的控制: 经过控制TCON 、IE、 IP、TMOD存放器到达目的1、 TCON 、IE 、 IP有关位的控制意义TF1TR1TF0TR0IE1IT1IE0IT0EA/ESET1EX1ET0EX0/PS PT1PX1PT0PX05.2 MCS-51定时器定时器/计数器的控制计数器的控制三、定时器/计数器的控制:1、IP、IE、TCON有关位的控制意义2、TMOD存放器引见GATEC/TM1M0GATEC/TM1M0T1T0GATE:门控位GATE=0,当TR=1时,启动定时器,软启动GAT

10、E=1,当TR=1且INT=1时,启动定时器,硬启动C/T=1,计数功能; C/T=0,定时功能。M1M0:定时器任务方式,0011指定任务方式035.2 MCS-51定时器定时器/计数器的控制计数器的控制三、定时器/计数器的控制:1、IP、IE、TCON有关位的控制意义2、TMOD存放器引见3、初始化定时器/计数器的步骤:设置TMOD,控制定时器的任务方式设置TH、TL计数初值设置IE、IP5.2 MCS-51定时器定时器/计数器的控制计数器的控制三、定时器/计数器的控制:4、计数初值X的计算:计数方式:M-X=要计的数例如:运用T0任务于方式1计数,每计1000就溢出求计数初值 65536

11、-X=1000,得X=64536D=FC18H系统要求某种方式下最长计数值方式0:M=8192方式1:M=65536方式2、3:M=2565.2 MCS-51定时器定时器/计数器的控制计数器的控制三、定时器/计数器的控制:4、计数初值X的计算:定时方式:M-X机器周期=要定时的时间例如:运用T1任务于方式1定时10mS,假设fosc=6MHz,那么计数初值=? 65536-X2uS=10mS,得X=60536D=EC78H系统要求某种方式下最长计数值方式0:M=8192方式1:M=65536方式2、3:M=256系统给出5.2 MCS-51定时器定时器/计数器的控制计数器的控制三、定时器/计数

12、器的控制:1、IP、IE、TCON有关位的控制意义2、TMOD存放器引见3、初始化定时器/计数器T/C的步骤4、定时器/计数器T/C的运用步骤初始化T/CTMOD、THTL、IE、IP启动T/C:SETB TR查询方式:判TF,假设=1,那么转相应处置 中断方式:当TF=1时硬件自动转向中断入口地址,在 中断入口地址处按排相应处置程序即可5.2 MCS-51定时器定时器/计数器的控制计数器的控制三、定时器/计数器的控制:4、定时器/计数器T/C的运用步骤初始化T/C启动T/C:SETB TR查询方式:判TF,假设=1,那么转相应处置初始化T/CTF=1?N清TF位溢出处置启动T/C重送TH、T

13、LY5.2 MCS-51定时器定时器/计数器的控制计数器的控制三、定时器/计数器的控制:4、定时器/计数器T/C的运用步骤初始化T/C启动T/C:SETB TR中断方式:当TF=1时硬件自动转向中断入口地址,在中断入口地址处按排相应处置程序即可主程序: 中断效力程序:初始化T/C启动T/C其它处置,并等待中断溢出处置重送TH、TL中断前往5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u一、方式0u1、13位计数器:TH8TL5u2、计数长度:18192u 定时长度:18192机器周期 u例:设单片机晶体振荡频率为6MHz,运用定时器1以方式0产生500uS的等宽正方波延续脉冲,

14、问计数初值应为多少?5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u一、方式0u例:设单片机晶体振荡频率为6MHz,运用定时器1以方式0产生500uS的等宽正方波延续脉冲,问计数初值应为多少?u解:1方式0最大的计数长度M=8192u2当fosc= 6MHz, 机器周期为2uSu设计数初值为X,那么8192-X 2uS =250 Usu解得X=8067D=11111100,00011Bu所以,TH1=FCH,TL1=03H5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u二、方式1u1、16位计数器:TH8TL8u2、计数长度:165536u 定时长度:16553

15、6机器周期 u例:设单片机晶体振荡频率为6MHz,运用定时器1以方式1产生500uS的等宽正方波延续脉冲,并从P1.0输出,试编程。5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u二、方式1u例:设单片机晶体振荡频率为6MHz,运用定时器1以方式1产生500uS的等宽正方波延续脉冲,并从P1.0输出,试编程。u解:1计算计数初值u设计数初值为X,那么65536-X 2uS =250 uSu解得X=65411D=11111111,10000011Bu所以,TH1=FFH,TL1=83Hu2TMOD、IE、IP确实定u3查询方式编程、中断方式编程5.3 MCS-51定时器定时器/计

16、数器任务方式计数器任务方式u二、方式1u例:设单片机晶体振荡频率为6MHz,运用定时器1以方式1产生500uS的等宽正方波延续脉冲,并从P1.0输出,试编程。u解:2TMOD、IE、IP确实定uTMOD:0001,XXXX 即10HuIE:查询方式:00H;u 中断方式:1XX0,1000 即88HuIP:00H例:设单片机晶体振荡频率为例:设单片机晶体振荡频率为6MHz,运用定时器,运用定时器1以方以方式式1产生产生500uS的等宽正方波延续脉冲,并从的等宽正方波延续脉冲,并从P1.0输出,输出,试编程。试编程。u3查询方式编程u MOV TMOD,#10Hu MOV TH1,#0FFHu

17、MOV TL1,#83Hu MOV IE,#00Hu MOV IP,#00Hu SETB TR1uLOOP:JBC TF1,LOOP1 u AJMP LOOPuLOOP1:MOV TH1,#0FFHu MOV TL1,#83Hu CPL P1.0u AJMP LOOP 初始化T/CTF1=1?N清TF1位溢出处置启动T/C重送TH1、TL1Yu3中断方式编程u MOV TMOD,#10Hu MOV TH1,#0FFHu MOV TL1,#83Hu MOV IE,#88Hu MOV IP,#00Hu SETB TR1u SJMP $uT1PRO:MOV TH1,#0FFHu MOV TL1,#8

18、3Hu CPL P1.0u RETI 初始化T/C启动T/C其它处置,并等待中断溢出处置重送TH1、TL1中断前往主程序:中断效力程序:u3中断方式编程u ORG 0000Hu AJMP MAINu ORG 001BHu AJMP T1PROu ORG 0030HuMAIN: MOV TMOD,#10Hu MOV TH1,#0FFHu MOV TL1,#83Hu MOV IE,#88Hu MOV IP,#00Hu SETB TR1u SJMP $T1PRO:MOV TH1,#0FFH MOV TL1,#83H CPL P1.0 RETI 5.3 MCS-51定时器定时器/计数器任务方式计数器任

19、务方式u三、方式2 8位重装计数初值u1、8位计数器:TL8, TH8用来保管TL8的初值u2、计数长度:1256u 定时长度:1256机器周期 u例:用定时器1方式2实现计数,每计100次,累加器加1,试编程。5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u三、方式2 8位重装计数初值u例:用定时器1方式2实现计数,每计100次,累加器加1,试编程。u解:1计算计数初值u设计数初值为X,那么:256-X=100u解得X=156D=9CHu所以,TH1=9CH,TL1=9CHu2TMOD、IE、IP确实定u3查询方式编程、中断方式编程5.3 MCS-51定时器定时器/计数器任务

20、方式计数器任务方式u三、方式2 8位重装计数初值u例:用定时器1方式2实现计数,每计100次,累加器加1,试编程。u解:2TMOD、IE、IP确实定uTMOD:0110,XXXX 即60HuIE:查询方式:00H;u 中断方式:1XX0,1000 即88HuIP:00H例例1:用定时器:用定时器1方式方式2实现计数,每计实现计数,每计100次,累次,累加器加加器加1,试编程。,试编程。u3查询方式编程u MOV TMOD,#60Hu MOV TH1,#9CHu MOV TL1,#9CHu MOV IE,#00Hu MOV IP,#00Hu SETB TR1uLOOP:JBC TF1,LOOP1

21、 u AJMP LOOPuLOOP1:u INC Au AJMP LOOP 初始化T/CTF1=1?N清TF1位溢出处置启动T/C重送TH1、TL1Yu3中断方式编程u MOV TMOD,#60Hu MOV TH1,#9CHu MOV TL1,#9CHu MOV IE,#88Hu MOV IP,#00Hu SETB TR1u SJMP $uT1PRO:u INC Au RETI 初始化T/C启动T/C其它处置,并等待中断溢出处置重送TH1、TL1中断前往主程序:中断效力程序:5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u三、方式2 8位重装计数初值u例2:运用定时器0任务于方

22、式2产生100uS的定时,从P1.0输出200uS的等宽正方波延续脉冲,单片机晶体振荡频率为6MHz,试编程。u解:1计算计数初值u设计数初值为X,那么256-X 2uS =100 uSu解得X=206D=CEHu所以,TH0=CEH,TL0=CEHu2TMOD、IE、IP确实定u3查询方式编程、中断方式编程5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u三、方式2 8位重装计数初值u例2:运用定时器0任务于方式2产生100uS的定时,从P1.0输出200uS的等宽正方波延续脉冲,单片机晶体振荡频率为6MHz,试编程。u解:2TMOD、IE、IP确实定uTMOD: XXXX ,

23、 0010 即02HuIE:查询方式:00H;u 中断方式:1XX0,0010 即82HuIP:00H例例2:运用定时器:运用定时器0任务于方式任务于方式2产生产生100uS的定时,从的定时,从P1.0输出输出200uS的等宽正方波延续脉冲,单片机晶体振荡的等宽正方波延续脉冲,单片机晶体振荡频率为频率为6MHz,试编程。,试编程。u3查询方式编程u MOV TMOD,#02Hu MOV TH1,#0CEHu MOV TL1,#0CEHu MOV IE,#00Hu MOV IP,#00Hu SETB TR1uLOOP:JBC TF1,LOOP1 u AJMP LOOPuLOOP1:CPL P1.

24、0u AJMP LOOP 初始化T/CTF0=1?N清TF0位溢出处置启动T/C重送TH0、TL0Yu3中断方式编程u MOV TMOD,#02Hu MOV TH1,#0CEHu MOV TL1,#0CEHu MOV IE,#82Hu MOV IP,#00Hu SETB TR1u SJMP $uT1PRO:CPL P1.0u RETI 初始化T/C启动T/C其它处置,并等待中断溢出处置重送TH0、TL0中断前往主程序:中断效力程序:5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u三、方式2 8位重装计数初值u例3:有晶体振荡频率为12MHz的单片机,运用定时器0以方式2从P1.

25、0输出周期占空比为1:10的矩形方波,试编程。u思绪:u即所求矩形方波高电平为40 uS,低电平为360 uS。u使T0定时40 uS。当P1.0为高电平常,每定时时间到使P1.0变为低电平;当P1.0为低电平常,每定时时间到使R7减1,R7初值为9,当R7减到0时,使P1.0变为高电平。5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u三、方式2 8位重装计数初值u例3:有晶体振荡频率为12MHz的单片机,运用定时器0以方式2从P1.0输出周期占空比为1:10的矩形方波,试编程。u解:u1计算计数初值u设计数初值为X,那么256-X 1uS =40 uSu解得X=216D=D8

26、Hu所以,TH0=D8H,TL0=D8Hu2TMOD、IE、IP确实定u3查询方式编程、中断方式编程5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u三、方式2 8位重装计数初值u例3:有晶体振荡频率为12MHz的单片机,运用定时器0以方式2从P1.0输出周期占空比为1:10的矩形方波,试编程。u解:2TMOD、IE、IP确实定uTMOD: XXXX , 0010 即02HuIE:查询方式:00H;u 中断方式:1XX0,0010 即82HuIP:00H例例3:有晶体振荡频率为:有晶体振荡频率为12MHz的单片机,运用定时器的单片机,运用定时器0以方式以方式2从从P1.0输出周期

27、占空比为输出周期占空比为1:10的矩形方波,试的矩形方波,试编程。编程。u溢出处置:初始化T/C、R7TF0=1?N清TF0位溢出处置启动T/C重送TH0、TL0YP1.0=1?NP1.0=0R7=09HYR7-1=0?YNP1.0=1例例3:有晶体振荡频率为:有晶体振荡频率为12MHz的单片机,运用定时器的单片机,运用定时器0以方式以方式2从从P1.0输出周期占空比为输出周期占空比为1:10的矩形方波,试的矩形方波,试编程。编程。u3查询方式编程u MOV R7,#09Hu MOV TMOD,#02Hu MOV TH1,#0CEHu MOV TL1,#0CEHu MOV IE,#00Hu M

28、OV IP,#00Hu SETB TR1uLOOP:JBC TF1,LOOP1 u AJMP LOOPu溢出处置:uLOOP1:JB P1.0,LOOP2u DJNZ R7,LOOP3u MOV R7,#09Hu SETB P1.0uLOOP3: AJMP LOOP u CLR P1.0u AJMP LOOP3u四、方式3u特点:uT0:被拆分成两个独立的8位计数器TH0、TL0,TL0能作计数器用也能作定时器用,TH0只能作定时器用,TH0占用了T1的溢出标志TF1和启动控制位TR1。uT1:当T0任务于方式3时,T1可任务于方式0、1、2,用作波特率发生器用。5.3 MCS-51定时器定时器/计数器任务方式计数器任务方式u五、定时器/计数器的运用u例1:用51定时器/计数器0任务于方式1产生时钟计时,每秒到给内部RAM的SEC地址加1,每60秒到给内部RAM的MIN地址加1,并使SEC清0。fosc=6MHzu解:u

温馨提示

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

评论

0/150

提交评论