- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 单片机的定时器/计数器 6.1 定时/计数器的结构与工作原理 6.2 定时器/计数器的控制 6.3 定时/计数器的工作方式 6.4 定时/计数器的编程和应用 将第4章实例5“计数显示器”中的软件查询法进行按键检测改用T0计数器方式2,并以中断方式编程。 【解】原图中按键是由I/O口P3.7引脚接入的,本实例需要将其改由T0(P3.4)引脚接入。 实例3 分析:将T0设置为计数器方式2,设法使其在1个外部脉冲到来时就能溢出(即计数溢出周次为1)产生中断请求。 计数初值为: a = 2 8 – 1 = 255 = 0xff 初始化TMOD = 0000 0110B = 0x06 #include reg51.h unsigned char table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; unsigned char count=0; sbit p1_0=P1^0; int0_srv() interrupt 1 { //T0中断服务 if(++count==100)count=0; P0=table[count/10]; P2=table[count%10]; } main(){ P0=P2=table[0]; //开始显示00 TMOD=0x06; //T0方式1计数 TH0 = TL0 = 0xFF; //计数初值0xFF ET0=1; //允许T0中断 EA=1; //允许CPU中断 TR0=1; //启动T0 while(1); //无限循环 } 实例3参考程序 运行效果 使用13位的定时/计数器(THx7-0+TLx4-0) 定时时间 t = (213 - a)×12/fosc (μs) 计数初值 a = 213 - t×fosc/12 12MHz时的最大定时量t=213μs = 8.192ms (3) 方式0 解:计数初值a=213-5000×12/12=3192= 1100 0111 1000B TH0 TL0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 6 3 1 8 H 计算T0方式0定时5ms的计数初值a 由于方式0的TL0高3位未用(一般填0) ,因此 a= 0110 0011 0001 1000 = 6318H 即,TH0 = 0x63; TL0 = 0x18; 实例4 fosc=12MHz 或:TH0 = 3192 / 32; TL0 = 3192 % 32; 除计数器位数不同外,方式0与方式1的逻辑结构并无差异。 方式0采用13位计数器是为了与早期产品MCS-48单片机兼容。 方式0的初值计算比较麻烦,一般采用方式1替代。 方式0 方式1 3种组合状态 T1仍可设置为方式0~2;通常将T1设定为定时方式2(作为波特率发生器使用) TH0+TF1+TR1组成的8位定时器 TL0+TF0+TR0组成的8位定时/计数器 T1组成的无中断功能的定时器 特点:方式3下T0可有2个具有中断功能的8位定时器 (4)方式3 6.1 定时/计数器的结构与工作原理 6.2 定时器/计数器的控制 6.3 定时/计数器的工作方式 6.4 定时/计数器的编程和应用 应用: 定时器——用于定时控制,或作为分频器发生各种不同频率的方波; 计数器——用于外部脉冲统计或外部中断源扩充; 复杂应用—需要将定时与计数结合起来。 * * 6.1 定时/计数器的结构与工作原理 6.1.1 定时/计数器的基本原理 6.1.2 定时/计数器的结构 6.2 定时/计数器的控制 6.3 定时/计数器的工作方式 6.4 定时/计数器的编程和应用 纯软件定时/计数方法: 定时——空循环预定周次,等待预定时间 计数——读取I/O口电平,统计变化次数 基本思路:由CPU统计状态变化次数,待预定结果出现后结束统计。 delay(unsigned int time ){ unsigned int j = 0; for(;time0;time--) for(j=0;j125;j++); } 存在问题:占用过多CPU机时 纯软件 单片机软硬件联合定时/计数方法: 等待CPU响应 系统时钟脉冲 加1计数器 溢出标志 溢出 定时器 外来信号脉冲 加1计数器 溢出标志 溢出 等待CPU响应 计数器 外来信号脉
您可能关注的文档
最近下载
- DGTJ08-2001-2016 基坑工程施工监测规程.docx VIP
- 污泥( 废水)运输服务方案(技术方案).doc
- 中国特色国有企业公司治理结构的形成和发展 2025.docx
- 初中英语语法大全.pdf VIP
- 八升九分班考数学试卷.docx VIP
- DB3711_T 165-2025 中小企业劳动用工风险防控服务规范.pdf VIP
- DB3711_T 167-2025 夏玉米病虫害绿色防控技术规程.pdf VIP
- 北师大版八升九数学试卷.docx VIP
- 原子结构 高一化学人教版(2019)必修第一册.pptx VIP
- 沃尔沃-V90 Cross Country-产品使用说明书-2020款 T5 AWD 智尊版-V90CC T5 PZ10GC1-3110819w46V90CC_OMA~Z.pdf
文档评论(0)