项目四 定时器与数码管动态显示.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4、计数器初值的计算 5、定时器初值的计算 中断响应的过程 数码管动态显示 void clock() interrupt 1 { cnt++; TH0 = 0x4C; TL0 = 0x00; if(cnt == 20) { cnt = 0; sec++; if(sec == 60) { sec = 0; min++; if(min == 60) { min=0; hour++; if(hour == 24) hour=0; } } } } 数码管动态显示 void delay() { unsigned int i; for(i=0;i500;i++) { ; } } 将上述程序编译一下,并下载到单片机中,观察运行结果 并分析。加大延时时间至1s左右,观察运行结果并分析。 思考: 若要求LED数码管显示从59到0的减1计数,程序如何修改? 若采用两位数分别计数的方法实现该60进制计数器,程序怎 样设计? 定时器 4.1.4 定时器中断 1、中断的基本概念 中断的定义:所谓“中断”,是指CPU执行正常程序时, 系统中出现特殊请求,CPU暂时中止当前的程序,转去处理 更紧急的事件(执行中断服务程序),处理完毕(中断服务 完成)后,CPU自动返回原程序的过程。 中断后转向执行的程序叫中断服务程序或中断处理程序。 原程序被断开的位置(地址)叫作断点。 发出中断信号的设备称为中断源。中断源要求中断服务所 发出的标志信号称为中断请示或中断申请。 中断源向CPU发出中断申请,CPU经过判断认为满足条件 ,则对中断源作出答复,这叫中断响应。中断响应后就去处 理中断源的有关请求,即转去执行中断服务程序。 定时器 2. 引入中断的主要优点 (1)提高CPU工作效率 (2)实现实时处理功能 (3)实现分时操作 定时器 3. STC89C52中断源 STC89C52单片机共有6个中断源。它们分别是:2个外部中 断,即 4个片内中断,即定时器T0的溢出中断、定时器T1的 溢出中断、定时器T2的溢出中断和串行口中断;这6个中断 源,可以根据需要随时向CPU发出中断申请。 (1)外部中断源 外部中断是由外部信号引起的,请求有两种信号触发方式 ,即低电平触发和下降沿触发。外部中断请求的这两种信号 方式,可通过设置寄存器TCON中的IT0和IT1位状态的值来 设定。定时器控制寄存器TCON各位定义如下表所示。 定时器 IE0/IE1:外部中断申请标志位(由硬件自动置位 ,中断响 应后转向中断服务程序时,由硬件自动清0 ) =0:没有外部中断申请; =1:有外部中断申请。 IT0/IT1:外部中断请求的触发方式控制位(可由用户通过软 件设置 )。 =0:在INT0/INT1端申请中断的信号低电平有效; =1:在INT0/INT1端申请中断的信号负跳变有效 定时器 (2)定时器溢出中断源 定时/计数器中断由单片机内部定时器产生,属于内部中断 。STC89C52内部有三个16位的定时器/计数器T0、T1和T2, 最常用的是T0和T1,它们以计数的方法来实现定时或计数的 。当它作为定时器使用时,其计数信号来自于CPU内部的机 器周期脉冲,当它作为计数器使用时,其计数信号来自于 CPU的T0(P3.4)、T1(P3.5)引脚。 在启动定时/计数器后,每来一个机器周期或在对应的引脚 上每检测到一个脉冲信号时,定时/计数器就加1一次,当计 数器的值从全1变为全0时,就去置位一个溢出标志位,CPU 查询到后就知道有定时/计数器的溢出中断的申请。 定时器 (3)串行中断源 串行口中断请求是在单片机芯片内部自动发生的,不需在 芯片上设置引入端。串行口中断源分为串行口发送中断和串 行口接收中断两种。串行中断是为串行数据传送的需要而设 置的。每当串行口发送完一组串行数据时,就会使串行口控 制寄存器SCON中的串行发送中断标志位TX置1,每当串行 口接收完一组串行数据时,就会使寄存器SCON中的串行接 收中断标志位RX置1,作为串行口中断请求标志,产生一个 中断请求。串行口控制寄存器SCON的内容如下表所示。 SCON D7 D6 D5 D4 D3 D2 D1 D0 位符号 SM0 SM1 SM2 REN TB8 RB8 TI RI 位地址 9FH 9EH 9DH 9CH 9BH 9AH 99H 98H 定时器 其中与中断请求标志有关的位如下: ①TI:串行口发送中断请求标志位 当发送完一帧串行数据后,由硬件置“1”;在转 向中断服务程序后,需要用软件对该位清“0”。 ②RI:串行口接收中断请求标志位 当接收完一帧串行数据后,

文档评论(0)

676200 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档