- 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 二、教学重点、难点 1.TMOD和SCON特殊功能寄存器的设置; 2.定时计数器初值的设定。 用单片机AT89S51的P1.1口做输出口,要求输出频率为500Hz的方波 四、任务分析 f=500Hz, T=1/f=1/500=2ms.由下图可知, 只要P1.1口每过1ms取反一次即可。 六、软件方案一 #includereg51.h sbit P1_1=P1^1; 此方案优点:程序简单 void delay( ) 缺点:延时不准确,误差大 {unsigned char i , j; for(i=0; i2; i++) for(j=0; j250; j++); } void main( ) { while(1) {P1_1=!P1_1; delay( ); } } 七、定时计数器 8051单片机有两个16位定时计数器:T0和T1。 1.能完成定时或事件计数功能; ①定时功能:通过计算内部振荡信号完成,每个机器 周期加1计数。 ②计数功能:计数来自P3.4(T0)或P3.5(T1)的外部信号。 2.定时计数器除中断溢出外,不占用CPU,效率高且工作灵活。 3.有两个16位加1计数器。 ①T0由寄存器TH0(高8位)和TL0(低8位)构成。 ②T1由寄存器TH1(高8位)和TL1(低8位)构成。 ③T0和T1都可以由软件设置定时或是计数工作方式。 八、特殊功能寄存器的设置 九、初值的计算 1.例:设晶振为12M,要求定时100us,计算初值。 ①算机器周期 机器周期=12*晶振周期=12 *1/12M=1us. ②算计数值 计数值=定时值/机器周期=100us/1us=100 ③算初值 初值=最大计数值-计数值=256-100=156(选方式2) 2.提醒 ①以上3公式是计算初值的金钥匙,需牢记; ②方式0~方式3的选择以计数值为标准,选择最大计数值最接近计数值的方式。 ③若计数值超过65536,则需多次定时。如1s=20*50ms 3.本任务的初值计算(设晶振为12M) ①机器周期=12*晶振周期=12*1/12M=1us. ②计数值=定时值/机器周期=1ms/1us=1000. 因为256<1000<8192,所以选择方式1. ③初值=最大计数值-计数值=8192-1000=7192 =1110 0000 11000B 故TH0=1110 0000B=0xe0; TL0=11000B=0x18; 十、任务程序 #includereg51.h Sbit P1_1=P1^1; void timer(void) interrupt 1 { TH0=0xe0; //重装初值,高8位 TL0=0x18; //重装初值,低5位 P1_1=!P1_1; //每过1ms取反一次 } void main( ) { TMOD=0X00; //定时器T0工作于方式0 TR0=1; //启动定时器T0 TH0=0xe0; //初值,高8位 TLO=0X18; //初值,低5位 EA=1; //开全局中断 ET0=1; //开定时器T0中断 While(1); } 一、教学目标 1. 掌握单片机的定时/计数器控制方式; 2. 理解程序对定时/计数器的控制原理, 3. 会利用电路仿真软件绘制电路原理图; 4. 会用keil C51软件对源程序进行编译、调试及 啊大家 与protues软件联调,实现电路仿真。 三、提出任务 T=2ms 1ms 1ms 五、硬件电路图 控制T0 控制T1 M0 M1 C/T GATE M0 M1 C/T GATE ①GATE:门空位 a. GATE=0,且TR0=1:启动定时器T0; b. GATE=0,且TR1=1:启动定时器T1; c. GATE=0,且INT0(P3.2引脚)=1,且TR0=1:启动 定时器T0; d. GATE=0,且INT1(P3.3引脚)=1,且TR1=1:启动 定时器T1; 1.TMOD(工作方式控制)———不能进行位寻址 ②C/T: C/T=0时,工作于定时方式; C/T=1时,工作于计数方式,外部输入信号来自 P3.4(T0)或P3.5(T1)。 最大计
原创力文档


文档评论(0)