二零二三年 优质公开课定时计数器.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
;定时计数器; TF1; TF1;怎样编制计数程序?;C51中断程序设计的完整语法如下:;;中断举例;#include reg51.h #define uchar unsigned char sbit key1=P1^0;sbit key2=P1^2;sbit key3=P1^4;sbit key4=P1^6; sbit kled1=P3^4;sbit kled2=P3^5;sbit kled3=P3^6;sbit kled4=P3^7; uchar nkey1=0,nkey2=0,nkey3=0,nkey4=0,nkey; code uchar dis[ ]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; code uchar wie[ ]={0x01,0x02}; uchar led[2]; void delay() { uchar k; for(k=0;k250;k++); } void key() interrupt 0 { kled1=1;kled2=1;kled3=1;kled4=1; if (key1==0) {nkey1++;nkey=nkey1; kled1=0;} if (key2==0) {nkey2++;nkey=nkey2; kled2=0;} if (key3==0) {nkey3++;nkey=nkey3; kled3=0;} if (key4==0) {nkey4++;nkey=nkey4; kled4=0;} led[1]=nkey/10;led[0]=nkey%10;} void main() { uchar ii; IE=0X81;IP=0X0;TCON=0X01; while(1) { for(ii=0;ii2;ii++) { P0=0x00; P2=wie[ii]; P0=dis[led[ii]]; delay(); } } };1 工作原理 计数器—存储单元THx、TLx 可预置的加法存储器 溢出 TCON中的TFx,申请中断 2 工作模式 13、16、8位 --TMOD中M1M0 3 工作方式 计管脚脉冲—TMOD中C/T=1 (TLx加) 计(晶振振荡数/12)—TMOD中C/T=0 (TLx加) 定时延时概念 4 编程 ;定时器/计数器的控制主要是通过以下几个寄存器实现的: TCON---定时器/计数器控制寄存器 TMOD---定时器/计数器工作方式控制寄存器 IE ---中断允许控制寄存器 THX TLX---计数初值;在计数工作方式下,计数器的计数值范围是: ??????????1~8192(2的13方) 256*32=8192 当为定时工作方式时,定时时间的计算公式为: ?????????( 8192 -计数初值)×晶振周期×12 或??? ( 8192 -计数初值)×机器周期 其时间单位与晶振周期或机器周期相同。 如果单片机的晶振选为6.000MHz,则最小定时时间为: ???? [8192—8191]×2×10-6=2×10-6(s)=2(us) 最长定时时间为: ?????(8192—0)×2×10-6=16384×10-6(s)=16,384(us)。; ;在工作方式1下,计数器的计数值范围是: ??????????1~65536(2的16方) 256*256=65536 当为定时工作方式1时,定时延时时间的计算公式为: ?????????(65536—计数初值)× 晶振周期×12 或??? (65536—计数初值)× 机器???期 其时间单位与晶振周期或机器周期相同。 如果单片机的晶振选为6.000MHz,则最小定时时间为: ????? [65536—65535]×2×10-6=2×10-6(s)=2(us) 最长定时时间为: ????? (65536—0)×2×10-6=131072×10-6(s)=131072(us)。;;? 如果定时/计数器0工作于工作方式3,那么定时/计数器1的工作方式就因为自己的一些控制位已被定时/计数器0借用,只能工作在方式0、方式1或方式2下.;例;C51源程序;1 在proteus上画出如下电路图. 2 在keil中编制程序,要求能对应LED显示按键按下的次数值(累计).;#include reg51.h #define uchar unsigned c

文档评论(0)

haolaoshi520 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档