最新单片机的定时器计数器n精品课件.ppt
《最新单片机的定时器计数器n精品课件.ppt》由会员分享,可在线阅读,更多相关《最新单片机的定时器计数器n精品课件.ppt(56页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、6.1 定时定时/计数器的结构与工作原理计数器的结构与工作原理 6.1.1 定时定时/计数器的基本原理计数器的基本原理 6.1.2 定时定时/计数器的结构计数器的结构6.2 定时/计数器的控制6.3 定时/计数器的工作方式6.4 定时/计数器的编程和应用6.1 定时定时/计数器的结构与工作原理计数器的结构与工作原理6.2 定时器定时器/计数器的控制计数器的控制6.3 定时定时/计数器的工作方式计数器的工作方式6.4 定时定时/计数器的编程和应用计数器的编程和应用门控位门控位GATE=0-允许允许TR1启动计数器启动计数器GATE=1-允许允许INT1启动计数器启动计数器启动控制位启动控制位TR
2、1=1-启动计数器启动计数器TR1=0-停止计数器停止计数器外部中断外部中断1参与定时器参与定时器的启停管理的启停管理中断请求标志位中断请求标志位TF1=1-请求请求TR1=0-复位复位 T1TCTC模式选择位模式选择位 =0-定时定时 =1-计数计数定时定时/计数器的控制关系(以计数器的控制关系(以T1为例)为例)定时器方式寄存器定时器方式寄存器TMODT0定时器控制寄存器定时器控制寄存器TCONTF1TR1TF0TR0IE1IT1IE0IT08FH8DH8CH8BH8AH89H88HTCON8EH(88H)定时器控制定时器控制位位外部中断控制位外部中断控制位 T1 T0 TF0 TR0 T
3、0脚脚INT0注意注意,系统上电默认值为,系统上电默认值为TCON = 0,则默认状态应为:,则默认状态应为:TR0和和TR1均为关闭状态、电平中断触发方式、没有外部均为关闭状态、电平中断触发方式、没有外部中断请求中断请求TCONGATEC/TM1M0GATEC/TM1M0D7D5D4D3D2D1D0TMODD6(89H) T1 T0/C T /C T T1方式选择位方式选择位00-方式方式001-方式方式110-方式方式2T1工作工作状态状态 T1 T0 TF0 TR0 T0脚脚INT0T0方式选择位方式选择位00-方式方式001-方式方式110-方式方式211-方式方式3T0工作工作状态状
4、态TMODGATEC/TM1M0GATEC/TM1M0D7D5D4D3D2D1D0TMODD6(89H) T1 T0/C T /C T 注意注意:TMOD只能以字节方式进行初始化只能以字节方式进行初始化例如例如,设置,设置T0为定时器方式为定时器方式1,允许,允许TR0启动;启动; T1为计数器方式为计数器方式0,允许,允许INT1启动。启动。则则 TMOD = 1100 0001B =0 xc1又如又如,系统上电默认值为,系统上电默认值为TMOD = 0,则默认状态应为:,则默认状态应为:T0和和TI均为定时器方式均为定时器方式0,允许,允许TR0、TR1启动。启动。注意注意:6.1 定时定
5、时/计数器的结构与工作原理计数器的结构与工作原理6.2 定时器定时器/计数器的控制计数器的控制6.3 定时定时/计数器的工作方式计数器的工作方式6.4 定时定时/计数器的编程和应用计数器的编程和应用M1M0工作方式工作方式功能说明功能说明00110101012313位定时位定时/计数器计数器16位定时位定时/计数器计数器8位自动重装定时位自动重装定时/计数器计数器3种定时种定时/计数器关系计数器关系T0工作工作方式方式注意注意:T0有有4种工作方式,每种工作方式都有定时和计数种工作方式,每种工作方式都有定时和计数2种方式。种方式。T1只有只有3种工作方式(种工作方式(T0的方式的方式3中占用了
6、中占用了T1的部分资源)。的部分资源)。M1M0工作方式工作方式功能说明功能说明00101001213位定时位定时/计数器计数器16位定时位定时/计数器计数器8位自动重装定时位自动重装定时/计数器计数器T1工作工作方式方式学习顺序:学习顺序:方式方式1方式方式2 方式方式0 方式方式3工作方式工作方式定时时间:定时时间:t = (216- a)12/fosc ( s)使用使用16位定时位定时/计数器(计数器(THx+TLx)(M0 M1为为01组合时)组合时)定时范围为定时范围为165,536 s(65ms)。)。 最大定时时间(最大定时时间(a=0,fosc =12MHz):):t = 21
7、6( s) = 65536 ( s)定时方式定时方式(1) 方式方式1最大计数值:最大计数值:N = 65536 (脉冲脉冲)计数值:计数值: N = (216 a ) 由于检测一个负跳变需要由于检测一个负跳变需要2个机器周期,即个机器周期,即24个振荡周期,个振荡周期,故最高计数频率故最高计数频率= 。oscf241故,对于故,对于12MHz晶振,最大外部脉冲的频率为晶振,最大外部脉冲的频率为0.5MHz 。计数方式计数方式设单片机的设单片机的fosc=12MHzfosc=12MHz,采用,采用T0T0定时方式定时方式1 1在在P1.0P1.0脚上输出周期为脚上输出周期为2ms2ms的的方波
8、。方波。虚拟示波器虚拟示波器实例实例1 1分析:分析:周期为周期为2ms2ms的方波由的方波由2 2个半周期为个半周期为1ms1ms的正负脉冲组成的正负脉冲组成方波输出原理:定时方波输出原理:定时1ms后将端口输出电平取反。后将端口输出电平取反。2ms1msTH0 = 0 xfc TL0 = 0 x181ms定时的计数初值应为:定时的计数初值应为:a = 216 t* fos / 12 = 216 1000* 12/ 12 = 64536 = 0 xfc18 注意注意:需要不断重装计数初值。:需要不断重装计数初值。或:或:TH0 = 64536 / 256; TL0 = 64536 % 256
9、; #include #include sbit P1_0 = P10;sbit P1_0 = P10;main () main () TMOD = 0 x01TMOD = 0 x01; /; /设置设置T0T0定时方式定时方式1 1(0000 0001B)(0000 0001B) TR0=1; / TR0=1; /启动启动T0T0 for(;) for(;) TH0 = 0 xfcTH0 = 0 xfc; /; /装载计数初值装载计数初值 TL0 = 0 x18TL0 = 0 x18; ; do while(!TF0)do while(!TF0); /; /等待等待TF0TF0溢出溢出 P1
10、_0 =!P1_0; / P1_0 =!P1_0; /定时时间到定时时间到P1.0P1.0反相反相 TF0 = 0TF0 = 0; /; /TF0TF0标志清标志清0 0 T0(1 1)查询方式查询方式图图6.14 6.14 实例实例1 1仿真波形图仿真波形图#include #include sbit P1_0=P10;sbit P1_0=P10;timer0 () interrupt 1 timer0 () interrupt 1 /T0/T0中断函数中断函数 P1_0 = !P1_0; P1_0 = !P1_0; /P1.0/P1.0取反取反 TH0 = 0 xfc;TH0 = 0 xf
11、c; /装载计数初值装载计数初值 TL0 = 0 x18;TL0 = 0 x18; main () main () TMOD = 0 x01TMOD = 0 x01; ; /T0/T0定时方式定时方式1 1TH0 = 0 xfc;TH0 = 0 xfc;/装载计数初值装载计数初值 TL0 = 0 x18;TL0 = 0 x18; EA=1; EA=1; /开总中断开总中断 ET0=1; ET0=1; /开开T0T0中断中断 TR0=1; TR0=1; /启动启动T0T0while(1);while(1); 注意注意:中断响应后系统可自动将:中断响应后系统可自动将TFx标志位清标志位清0(2 2
12、)中断方式中断方式小结:使用定时小结:使用定时/ /计数器的步骤计数器的步骤强调强调:TMOD的设置只能以字节形式给出的设置只能以字节形式给出T0 (1 1)设置)设置TMODTMOD确定定时确定定时/ /计数器的工作状态计数器的工作状态T0定时定时计数计数01230123T1定时定时计数计数012012 (2 2)计算计数初值计算计数初值产生期望的定时间隔产生期望的定时间隔计数初值计数初值 a = 216- tfosc/12 (t 65536 s)THx = a / 256 TLx = a % 256 装载计数初值装载计数初值:3)确定采用何种方式处理溢出结果)确定采用何种方式处理溢出结果若
13、是查询方式若是查询方式采用条件判断语句采用条件判断语句若是中断方式若是中断方式中断初始化设置和中断服务程序:中断初始化设置和中断服务程序:do while (!TFx) ; / x=0/ x=0或或1 1 ETx =1ETx =1; / /开定时开定时x x中断,中断,x=0 x=0或或1 1EA = 1EA = 1; / /开总中断开总中断tx_srv () interrupt n /n=1tx_srv () interrupt n /n=1或或3 3 4)启动定时器:)启动定时器: TR0 = 1 或或 TR1= 1 5)进行定时或计数结束后的其它工作)进行定时或计数结束后的其它工作6)为
14、下次定时)为下次定时/计数做准备(清计数做准备(清TFx标志标志+重装载计数初值)重装载计数初值) 若是中断方式,则无需软件清若是中断方式,则无需软件清TFx标志位;标志位; 若是查询方式,需要软件清除若是查询方式,需要软件清除TFx标志位。标志位。 采用采用8位计数器位计数器,延时时间,延时时间 t = (28-a)12/fosc (微秒微秒) 12MHz时时的最大定时量为的最大定时量为256 s; 可自动重装载计数初值可自动重装载计数初值(TLx溢出后溢出后, THx数值可自动装入数值可自动装入TLx);); 因没有装载计数初值造成的定时延误,方式因没有装载计数初值造成的定时延误,方式2定
15、时精度相对较高。定时精度相对较高。(2) 方式方式2(1 1)查询方式查询方式#include #include sbit P1_0 = P10;sbit P1_0 = P10;main()main() TMOD = TMOD = 0 x02 0 x02; ; TH0= TL0 = TH0= TL0 = 0 x060 x06; ; TR0=1; TR0=1; for(;) for(;) do while(!TF0); do while(!TF0); P1_0 =!P1_0; P1_0 =!P1_0; TF0 = 0; TF0 = 0; (2 2)中断方式中断方式#include #includ
16、e sbit P1_0=P10;sbit P1_0=P10;timer0 () interrupt 1 timer0 () interrupt 1 P1_0 = !P1_0; P1_0 = !P1_0; main()main() TMOD = TMOD = 0 x02 0 x02; ; TH0 = TL0 = 0 x06;TH0 = TL0 = 0 x06; EA= ET0 = 1; EA= ET0 = 1; TR0=1;TR0=1; while(1);while(1); 采用采用T0T0定时方式定时方式2 2在在P1.0P1.0口输出周期为口输出周期为0.5ms0.5ms的方波的方波( (设
17、设fosc=12MHz)fosc=12MHz)。分析:分析:计数初值计数初值TL0= (256-250)*12/12)%256 = 0 x06,TMOD = 0 x02实例实例2 2周期为周期为0.5ms方波方波将第将第4章实例章实例5“计数显示器计数显示器”中的软件查询法进行按键检测中的软件查询法进行按键检测改用改用T0计数器方式计数器方式2,并以中断方式编程。,并以中断方式编程。【解】【解】原图中按键是由原图中按键是由I/O口口P3.7引脚接入的,本实例需要将引脚接入的,本实例需要将其改由其改由T0(P3.4)引脚接入。)引脚接入。 实例实例3分析分析:将:将T0设置为计数器方式设置为计数
18、器方式2,设法使其在,设法使其在1个外部脉冲到个外部脉冲到来时就能溢出(即计数溢出周次为来时就能溢出(即计数溢出周次为1)产生中断请求。)产生中断请求。计数初值为:计数初值为: a = 2 8 1 = 255 = 0 xff初始化初始化TMOD = 0000 0110B = 0 x06#include unsigned char table=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;unsigned char count=0;sbit p1_0=P10;int0_srv() interrupt 1 /T0中断服务中断
19、服务 if(+count=100)count=0; P0=tablecount/10; P2=tablecount%10;main() P0=P2=table0;/开始显示开始显示00 TMOD=0 x06; /T0方式方式1计数计数 TH0 = TL0 = 0 xFF; /计数初值计数初值0 xFF ET0=1;/允许允许T0中断中断 EA=1;/允许允许CPU中断中断 TR0=1; /启动启动T0 while(1);/无限循环无限循环实例实例3参考程序参考程序运行运行效果效果使用使用13位位的定时的定时/计数器(计数器(THx7-0+TLx4-0)定时时间定时时间 t = (213 - a
20、)12/fosc (s)计数初值计数初值 a = 213 - tfosc/1212MHz时的最大定时量时的最大定时量t=213s = 8.192ms(3) 方式方式0解:计数初值解:计数初值a=213-500012/12=3192= 1100 0111 1000BTH0TL00 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 = 0 x63; TL0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 单片机 定时器 计数器 精品 课件
限制150内