51单片机定时器中断收集.pdfVIP

  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文档。上传文档
查看更多
一 .定时器相关寄存器 1. 工作方式寄存器( TMOD ) 该寄存器用于设置定时 / 计数器的工作方式, 低四位用于定时器 0 ,高四位用于定时器 1 。 GATE :门控位。 GATE =0 时,只要用软件使 TCON 中的 TR0 或 TR1 为 1,就可以启 动定时 / 计数器工作; GATA =1 时,要用软件使 TR0 或 TR1 为 1,同时外部中断引脚 INT0/1 也为高电平时,才能启动定时 / 计数器工作。即此时定时器的启动条件,加上了 INT0/1 引脚为高电平这一条件。 C/T: 定时 / 计数模式选择位。 C/T =0 为定时模式; C/T=1 为计数模式。 2. 定时器 / 计数器控制寄存器控制寄存器( TCON ) 该寄存器的低 4 位用于控制外部中断 ,已在前面介绍,高 4 位用于控制定时 / 计数器的启 动和中断申请。 TF1 :T1 溢出中断请求标志位。 T1 计数溢出时由硬件自动置 TF1 为 1 。CPU 响应中断 后 TF1 由硬件自动清 0 。 TR1 :T1 运行控制位。 TR1 置 1 时, T1 开始工作; TR1 置 0 时, T1 停止工作。 TR1 由软件置 1 或清 0 。所以,用软件可控制定时 / 计数器的启动与停止。 TF0 :T0 溢出中断请求标志位,其功能与 TF1 类同。 TR0 :T0 运行控制位,其功能与 TR1 类同。 3. 中断允许控制寄存器( IE ) ET0:定时 / 计数器 T0 中断允许位; ET1:定时 / 计数器 T1 中断允许位; EA :CPU 中断允许(总允许)位。 二 .定时器溢出中断的处理过程 1、设置定时器工作方式 2 、为定时器装入初值 3 、定时器中断允许位置为 1 4 、开总中断 5 、开定时器,等待产生溢出中断请求 三 .实现简单时钟 说明: 1.使用动态数码管显示 2.选择工作方式 1,以 16 位的定时器 0 进行工作,即 TMOD=0x01 ,中断编号为 1 ; 3.定时 50ms ,即每隔 50ms 产生一次中断: TH0=(65536-50000)/256; //16 位定时器的高 8 位 TL0=(65536-50000)%256; //16 位定时器的低 8 位 具体的时间与单片机的晶振有关,请了解机器周期、指令周期、时钟周期等相关知识。 #include reg51.h#define uchar unsigned char#define uint unsigned int uchar hour, min ,sec; uchar code wei[ 8 ]= { 0xfe ,0xfd ,0xfb ,0xf7 ,0xef ,0xdf ,0xbf ,0x7f }; // 共阴极数 码管位选编码 uchar code duan[ 11 ]= {0x3f ,0x06 , 0x5b ,0x4f ,0x66 , 0x6d ,0x7d , 0x07 ,0x7f , 0x6f ,0x01 }; // 共阴极数码管段选编码 void delay( uint z) { uint i,j; for (i=z;i 0 ;i--) for (j= 110 ;j 0 ;j--); } void timer0_init() { TMOD= 0X01 ; TH0=( 65536 - 50000 )/ 256 ; TL0=( 65536 - 50000 )%256 ; ET0= 1 ;

文档评论(0)

飞翔的燕子 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档