《单片机四定时器精选PPT.ppt》由会员分享,可在线阅读,更多相关《单片机四定时器精选PPT.ppt(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机四定时器第1页,此课件共22页哦第第章章定定时时器器及及应应用用 本章内容本章内容Single Chip Microcomputer单片机定时器单片机定时器/计数器的结构计数器的结构 定时器控制定时器控制定时器工作模式定时器工作模式定时器基本概念定时器基本概念定时器初始化定时器初始化第2页,此课件共22页哦数字电路中的计数器第3页,此课件共22页哦单片机定时器单片机定时器/计数器的结构计数器的结构第4页,此课件共22页哦定时器控制v工作模式寄存器TMOD v控制寄存器TCON第5页,此课件共22页哦工作模式寄存器TMOD注:TMOD不能位寻址,只能用字节方式进行设置GATE C/T M1
2、 M0 GATEM1C/TM0定时器定时器T1定时器定时器T0 D7 D6 D5 D4 D3 D2 D1 D0TMOD(89H)第6页,此课件共22页哦TMODTMOD各位定义及具体的意义各位定义及具体的意义第7页,此课件共22页哦操作模式控制位M0、M1M1 M0 工 作 方 式 功 能 说 明0 0方 式 013位计数器0 1方 式 116位计数器1 0方 式 2自动再装入8位计数器1 1方 式 3定时器0:分成两个8位计数器定时器1:停止计数第8页,此课件共22页哦控制寄存器TCONTF1TR1TF0TR0IE1IE0IT1IT0TCON(88H)8FH 8EH 8DH 8CH 8BH
3、8AH 89H 88H第9页,此课件共22页哦TCON各位定义及具体的意义各位定义及具体的意义第10页,此课件共22页哦定时器工作模式 M1 M0工 作 方 式功 能 说 明0 0方 式 013位计数器0 1方 式 116位计数器1 0方 式 2自动再装入8位计数器1 1方 式 3定时器0:分成两个8位计数器定时器1:停止计数第11页,此课件共22页哦模式0第12页,此课件共22页哦模式1第13页,此课件共22页哦模式2第14页,此课件共22页哦模式3第15页,此课件共22页哦定时器初始化过程定时器初始化过程1、确定并设定定时器工作模式 TMOD 2、设置定时/计数器初值 TH0、TL0 或T
4、H1、TL13、开启定时器中断 IE:ET0(ET1)和 EA4、启动定时器 TCON:TR0(TR1)注:如果采用查询方式控制定时器还需要判断TF0(TF1)第16页,此课件共22页哦应用举例v用定时器1方式0在P1.0上产生周期为2S的方波。晶振频率为12MHz。1、最大定时时间:81921s=8.192ms 2、选定定时T=5ms 3、X=3192=C78H=00001100,01111000B 4、C78H=01100011,11000B T0初值=01100011,00011000B=6318H TH1=63H,TL1=18H 第17页,此课件共22页哦v#include vsbit
5、 P1_0=P10;vmain()vvunsigned char i=200;vTMOD=0 x00;/设定工作模式为0vTH1=0 x63;/根据计算设定计数器初值vTL1=0 x18;vTR1=1;/启动定时器vwhile(1)vv if(TF1=1)/判断定时溢出标志v v TH1=0 x63;/设定计数器初值v TL1=0 x18;v TF1=0;/清除标志位v i=i-1;v if(i=0)/判断是否计满200次,即定时1秒v v i=200;v P1_0=!P1_0;/将P1.0电平翻转v v vv程序(查询方式-C)第18页,此课件共22页哦程序(查询方式-汇编)v ORG 00
6、00Hv AJMP MAINv ORG 0100HvMAIN:MOV R3,#200;置5ms计数循环初值vMOV TMOD,#00H;设定时器1为方式0v MOV TH1,#63H;置定时器初值vMOV TL1,#18HvSETB TR1;启动T1vLP1:JBC TF1,LP2 ;查询计数溢出vSJMP LP1;未到5ms继续计数vLP2:MOV TH1,#63H ;重新置定时器初值vMOV TL1,#18HvDJNZ R3,LP1;未到1s继续循环v CPL P1.0 vMOV R3,#200v SJMP LP1;重新计数第19页,此课件共22页哦程序(中断方式C)v#include v
7、sbit P1_0=P10;vunsigned char i=200;vmain()vvTMOD=0 x00;vTH1=0 x63;vTL1=0 x18;vTR1=1;vIE=0 x88;vwhile(1)v第20页,此课件共22页哦vvoid intT1()interrupt 3/T1 定时中断处理函数vvTH1=0 x63;/定时器中断时间间隔 5msv TL1=0 x18;v i=i-1;vif(i=0)vv i=200;v P1_0=!P1_0;vv 第21页,此课件共22页哦程序(中断方式汇编)v ORG 0000Hv LJMP MAINv ORG 001BHv LJMP ZDT1v ORG 0100HvMAIN:MOV R3,#200;置5ms计数循环初值v MOV TMOD,#00H;设定时器1为方式0v MOV TH1,#63H;置定时器初值v MOV TL1,#18Hv MOV IE,#88H ;开启定时器1中断v SETB TR1 ;启动T1vLP1:SJMP LP1;未到5ms继续计数vZDT1:MOV TH1,#63H ;重新置定时器初值v MOV TL1,#18Hv DJNZ R3,EXIT;未到1s继续循环v CPL P1.0 v MOV R3,#200vEXIT:RETI ;退出中断第22页,此课件共22页哦
限制150内