第5章定时器计数器和中断系统课件

上传人:沈*** 文档编号:241630760 上传时间:2024-07-11 格式:PPT 页数:38 大小:456.50KB
返回 下载 相关 举报
第5章定时器计数器和中断系统课件_第1页
第1页 / 共38页
第5章定时器计数器和中断系统课件_第2页
第2页 / 共38页
第5章定时器计数器和中断系统课件_第3页
第3页 / 共38页
点击查看更多>>
资源描述
第五章 定时器/计数器和中断系统51 定时/计数的结构及工作原理一、定时/计数器的结构和原理1定时/计数器的结构12定时/计数器的原理2二、定时/计数器方式寄存器TMOD表格 51 方式选择位意义M1M0工作方式功能说明00方式013位计数器01方式116位计数器10方式2自动再装入8位计数器11方式3定时器0:分成两个8位计数器定时器1:停止计数TMOD格式如下:TMOD D7 D6 D5 D4 D3 D2 D1 D0 GATEM1M0GATEM1M0(98H)3三、定时控制寄存器TCON定时器控制字TCON的格式如下:8FH8EH8DH8CH8BH8AH89H88HTF1TR1TF0TR0IE1IT1IE0IT0TCON88H45 52 2 定时定时/计数器的工作方式计数器的工作方式一、方式0当M1M0两位为00时,定时/计数器被选为工作方式0,其逻辑结构如图51所示。图 51 T0(或T1)方式0结构5二、方式16三、方式2图53T0(或T1)方式2结构7四、方式385.1.3 定时器初始化1.通过对方式寄存器TMOD进行设置,选择工作方式。9(2)给定时器赋初值例5.1T0初值3CB0H,T1初值00FFH。利用字节传送指令装入初值:MOVTH0,#3CHMOVTL0,#0B0HMOVTH1,#00HMOVTL1,#0FFH10(3)启动定时器例5.2SETBTR0;启动T0SETBTR1;启动T1设定时器T1为方式1,初值3CB0H,若未用中断,初始化程序下:MOVTMOD,#10HMOVTH1,#3CHMOVTL1,#0B0HSETBTR1112定时器初值设定方法(1)根据时间长短,选择工作方式设用M表示最大计数值,则各种方式计数最大值如下:方式0M2138192方式1M21665536方式2M28256方式3M28256原则上,定时时间长选用16位或13位计数器,即方式0或方式1。若时间短选8位计数器即方式2和方式3,如果需要自动装入初值,只能选择方式2。12(2)定时初值计算设初值为X,最大计数值为M。初值X与机器周期TM、定时时间T 的关系如下:(MX)TMT其中,TM12个时钟周期12/fosc,XMT/TM13 例5.3 采用定时器T1,方式1,定时50ms,计算定时初值。已 知晶振频率fosc12MHZ 解:fosc12MHZ TM1s 定时方式1时 M21665536 所以 XMT/TM 6553650000/1 155363CB0H145.1.4 应用程序设计例例 5.4 编写用定时器延时50ms的子程序。MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H SETB TR0LP:JBC TF0 LP1 SJMP LP LP1:MOV TH0,#3CH MOVTL0,#0B0H SJMP LP155.2 中断系统5.2.1 输入输出传送方式1无条件传送方式采用这种传送方式不需要交换状态信息,只需在程序中加入访问外设的指令,数据传送便可以实现。162查询传送方式173直接存储器存取(DMA)方式CPU让出数据总线(悬浮状态),使外部设备和存储器之间直接传送。下面两种情况时可考虑使用DMA方式:(1)外设和存储器直接有大量的数据需要传送.(2)外部设备的工作速度很快的情况 184中断传送方式195.2.2 8051中断系统结构 20一、中断源及中断入口 中断源中断源入口地址入口地址外部中断外部中断00003H定时器定时器T0中断中断000BH外部中断外部中断10013H定时器定时器T1中断中断001BH串行口中断串行口中断0023H21二、外部中断请求标志 2SCON的中断标志 1TCON中的中断标志TCON8FH8DH8BH8AH89H88H SCON 99H 98HTIRI(98H)TF1TF0IE1IT1IE0IT0(88H)22三、中断允许控制 IE AFH ACH ABH AAH A9H A8H(A8H)EA ES ET1 EX1 ET0 EX023例5.5假设允许外部中断0中断,禁止其它中断。试设置IE的相应值。解:(a)用字节操作指令MOVIE,#81H(b)用位操作指令SETBEASETBEX024四、中断源优先级的设定BCHBBHBAHB9HB8HPSPT1PX1PT0PX0(B8H)IP25 若同时收到几个同一优先级的中断请求时,相应哪一个中断源优先取决于内部硬件查询顺序 中断源中断源 同级内的中断优先级同级内的中断优先级外部中断0 定时器/计数器0溢出中断 最高外部中断1 定时器/计数器1溢出中断串行中断 最低26五、中断响应处理过程 1.中断响应条件 2中断响应的过程3中断处理4中断返回5外部中断响应时间27(1)中断响应过程 关中断保护现场开中断中断返回恢复现场关中断中断处理开中断28(2)中断应用程序设计举例 例例1 使用定时器T0定时,每隔10s使与P1.0口连接的发光二极管闪烁10次。设P1.0高电平亮,反之灯灭。分析:置循环次数等待中断T0初始值闪烁常数启动T0开中断图5-9 主程序框图29重装常数中断返回灯闪10s?10次?NYYN图5-10 中断程序框图30程序如下:;主程序 ORG 0000H LJMP MAIN ORG 000BH LJMP INT ORG 0100HMAIN:MOV R0,#200 MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H MOV R1,#10 SETB EA SETB ET0 SETB TR0 LP:SJMP LP 31 ;中断子程序INT:MOV TH0,#3CH MOV TL0,#0B0H DJNZ R0,DD DDL:SETB P1.0 LCALL DELAY CLR P1.0 LCALL DELAY DJNZ R1,DDL DD:RETIDELAY:MOV R5,#0FFH LL2:MOV R6,#0FFHLL1:NOP DJNZ R6,LL1 DJNZ R5,LL2 RET 32例例2 图5-11为多个故障显示电路,当系统无故障时,4个故障源输入端x1一x4全为低电平,显示灯全灭,当某部分出现故障,其对应的输入由低电平变为高电平,从而引起8051单片机中断,中断服务程序的任务是判定故障源,并用对应的发光二极管LED1LED4进行显示。编程如下:33 ORG 0000H SJMP MAIN ORG 0003H SJMP INTMAIN:ORL P1,#0FFH SETB IT0 SETB EX0 SETB EA LL:AJMP LL INT:JNB P1.3,L1 CLR P1.4 LCALL DELAY L1:JNB P1.2,L2 CLR P1.5 LCALL DELAY 34L2:JNB P1.1,L3 CLR P1.6 LCALL DELAY L3:JNB P1.0,L4 CLR P1.7 LCALL DELAY L4:RETIDELAY:35六六 扩充外部中断源扩充外部中断源1.利用定时器进行扩充图 5.11 多外部中断源连接方法36p经常不断地学习,你就什么都知道。你知道得越多,你就越有力量pStudyConstantly,AndYouWillKnowEverything.TheMoreYouKnow,TheMorePowerfulYouWillBe学习总结37结束语当你尽了自己的最大努力时,失败也是伟大的,所以不要放弃,坚持就是正确的。When You Do Your Best,Failure Is Great,So DonT Give Up,Stick To The End演讲人:XXXXXX 时 间:XX年XX月XX日 38
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


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

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


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