- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章单片机定时器白与计数器
单片机定时器与计数器 一、定时/计数器结构 等效逻辑结构图 1.工作方式寄存器(TMOD 89H) M1M0:工作模式选择位。 2、初值寄存器 TH0,TL0,TH1,TL1 3.定时/计数器控制寄存器(TCON 88H) 二、定时器/计数器的工作方式 1.工作方式0 M1M0=00 在工作方式0下,计数器的计数值由下式确定: N=213-X=8192-X 计数值范围是: 1~8192(213) 定时器的定时值由下式确定: T=N*Tcy=(8192-X)*Tcy 工作方式0的应用: 【例】设单片机晶振频率fosc=6MHZ,使用定时器1以方式0产生周期为600μs的等宽方波脉冲,并由P1.7输出,以查询方式完成。 解:(1)计算计数初值.欲产生周期为600μs的等宽方波脉冲,只需在P1.7端以300μs为周期交替输出高低电平即可,因此定时时间应为300μs。设待求计数初值为N,则: (213-N)×2×10-6=300×10-6 N=8042=1F6AH=0001111101101010B 用T1实现。将低5位01010B=0A写入TL1,将高8位有效=FBH写入TH1中。 (2)TMOD初始化 为把定时/计数器1设定为方式0,则M1M0=00。为实现定时功能应使C/T=0,为实现内部定时器启动应使GATE=0,因此设定工作方式控制寄存器TMOD=00H。 (3)由TR1启动和停止定时器 TR1=1为启动,TR1=0为停止 C语言参考程序 # include reg51.h //包含特殊功能寄存器库 sbit P1_7=P1^7; //定义P1.7口,程序中用P1_7代替P1.7。 void main() //主函数 { IE=0x00; //关中断 TMOD=0x00; //工作方式设定 TR0=1; //启动定时 for(;;) //无限循环体 { TH1=0xFB;TL1=0x0A; //计数初值设定 do { } while (!TF1) //查询是否溢出,当TF0=1时溢出来,则跳出do- while循环。 { P1_7=! P1_7; TF1=0;} //溢出,P1.7取反,中断标志TF1清0。 } } 中断方式完成 # include reg51.h //包含特殊功能寄存器库 sbit P1_7=P1^7; //定义P1.7口,程序中用P1_7代替P1.7。 void main() //主函数 { TMOD=0x00; //工作方式设定 TR0=1; TH1=0xFB; TL1=0x0A; ET0=1; EA=1; while (1); } //启动定时 Void T_0() interrupt 1 using 3 { P1_7=! P1_7; TH1=0xFB; TL1=0x0A; } 2.定时/计数器工作方式1 M1M0=01 在工作方式1下,计数器的计数值由下式确定: N=216-X=65536-X 计数值范围是: 1~65536(216) 定时时间长;时器的定时值由下式确定: T=N*Tcy=(65536-X)*Tcy (1)计算计数初值 欲在P1.7引脚输出周期为600μs的等宽方波脉冲,只需在P1.7端交替输出300μs的高低电平即可,因此定时时间应为300μs。设计数初值为N,则: (65536-N)×2×10-6=300×10-6 N=65236 将计数初值N的低8位6AH写入TL1;将计数初值N的高8位1FH写入TH1。 (2)TMOD初始化 题目要求定时器/计数器1为工作方式1,所以M1M0=01;为实现定时功能应使C/=0;为实现定时器内启动,应使GATE=0。此题目不涉及定时器/计数器0,为方便起见,设其各控制位均为0。则工作方式控制寄存器TMOD=10H。 (3)启动和停止控制 因为定时器/计数器1作定时器,故当TR1=1时,启动计数;当TR1=0时,停止计数。 (4)中断的开放/禁止 题目中要求用查询方式检查T1的计数溢出状态,故设置IE=00H,以关中断。 3、定时/计数器工作方式2 M1M0=10 工作在方式2下,计数器的计数值由下式确定: N=28-X=256-X 计数范围为: 1~25
您可能关注的文档
最近下载
- 发那科机器人DCS双重安全性检查功能说明书FANUC.pdf VIP
- 北京市昌平区第一中学2024-2025学年七年级上学期期中考试语文试卷(含答案).docx VIP
- 数字化智能工厂AI大模型数智平台建设方案.pptx VIP
- 肝性脑病ppt课件ppt课件.pptx VIP
- 定位器原理及故障处理课件.ppt VIP
- 旅游大类《服务礼仪》 填空题试卷一.docx VIP
- 小学部编版古诗词必备题库(含答案解析).pdf
- 五年级上册数学课件-数学好玩-图形中的规律(8)-北师大版 20张.ppt VIP
- 旅游大类《服务礼仪》简答题试卷一.docx VIP
- 重点项目施工组织专项方案高压旋喷桩内插型钢.doc VIP
原创力文档


文档评论(0)