最新单片机学习之项目1-流水灯2定时器PPT课件.ppt

最新单片机学习之项目1-流水灯2定时器PPT课件.ppt

ID:62265121

大小:2.07 MB

页数:78页

时间:2021-04-24

最新单片机学习之项目1-流水灯2定时器PPT课件.ppt_第1页
最新单片机学习之项目1-流水灯2定时器PPT课件.ppt_第2页
最新单片机学习之项目1-流水灯2定时器PPT课件.ppt_第3页
最新单片机学习之项目1-流水灯2定时器PPT课件.ppt_第4页
最新单片机学习之项目1-流水灯2定时器PPT课件.ppt_第5页
资源描述:

《最新单片机学习之项目1-流水灯2定时器PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机学习之项目1-流水灯2定时器定时/计数器(Timer/Counter,简称T/C)80C51有2个16位定时/计数器:T0、T180C52有3个16位定时/计数器:T0、T1、T2定时/计数器(Timer/Counter,简称T/C)定时器:来一个机器脉冲计数器的值加1。当计数器值溢出(全1)时回0,定时时间到,中断标志TF置1.1个机器周期=12*1/振荡频率计数器:在机器周期内采样T0(或T1)脉冲的下降沿,来一个下降沿计数器的值加1。当计数器值溢出(全1)时回0,中断标志TF置1.定时器功能两个寄存器:TMOD和TCON4个计数寄存器:TH0,TL0;TH1,TL1方式1

2、:定时时间=(65536-初值)*12/振荡频率初值=65536-定时时间*振荡频率/12例如定时1ms:初值=65536-1s*12*103Hz/12=65536-1000=64536=0xFC18TMOD寄存器GATEC/TM1M0GATEC/TM1M0控制T1控制T0M1M0:00:方式001:方式110:方式211:方式3C/T0:定时器1:计数器GATE:0:软件控制定时器工作1:外部中断控制定时器工作不可位寻址GATE:门控位,控制计数器的启动/停止操作方式。当GATE=0时,外部中断信号不参与控制,计数器只有TR0和TR1位软件控制启动和停止。TR1、TR0为1时,计数

3、器启动开始工作;为0时,计数器停止工作。当GATE=1时,计数器的启动要由外部中断信号和TR0、和TR1共同控制。只有当外部中断引脚为高电平,TR0/TR1置1时才能启动计数器工作。:功能选择位。当=0时选择定时功能,计数脉冲由内部提供,计数周期等于机器周期。当=1时选择为计数功能,计数脉冲为外部引脚T0、T1引入的外部脉冲信号。M1和M0:T0和T1工作方式控制位。定时/计数器的工作方式有M1M0两位状态决定,这两位有四种编码方式,对应于四种工作方式。四种方式定义如表所示:M1M0方式说明00方式0TL的低5位和TH的8位构成13位计数器01方式1TL的8位和TH的8位构成16位的

4、计数器10方式2具有自动重装功能的8位计数器11方式3T0分成两个独立的计数器,T1可工作在方式0~方式2TCONTF1TR1TF0TR0IE1IP1IE0IP0可位寻址,也可字节寻址M1M000:方式0,13位计数寄存器01:方式1,16位计数寄存器,用于定时和计数10:方式2,自动重装载8位计数寄存器,用于波特率发生器11:方式3,2个8位计数寄存器定时器使用步骤1.设置TMOD,使之工作在需求状态;TMOD=0x01;或TMOD=0x10;2.设置计数寄存器初值,精确设定好定时时间;TH0=0xff;TL0=0x00;或TH1=0xff;TL1=0x00;3.设置TCON,打开

5、TR使定时器工作;TR0=1;或TR1=1;4.检测定时器溢出(TF==1),溢出时:复位TF,计数寄存器赋初值,定时到触发的动作。if(1==TF0){TH0=0xff;TL0=0x00;TF0=0;P1_0=~P1_0;}或if(1==TF1){TH1=0xfc;TL1=0x18;TF1=0;P1_0=~P1_0;}定时1ms 初值=65536-1000=0xFC18#includesbitP1_0=P1^0;voidmain(){TMOD=0x01;TH0=0xfc;TL0=0x18;TR0=1;//此位可位操作while(1){if(1==TF0){TH0=

6、0xfc;TL0=0x18;TF0=0;//此位可位操作P1_0=~P1_0;//此位可位操作}}}定时时间=(65536-初值)*12/振荡频率≤65536μs#includesbitP1_0=P1^0;voidmain(){TMOD=0x01;TH0=0;TL0=0;TR0=1;//此位可位操作while(1){if(1==TF0){//TH0=0;TL0=0;TF0=0;//此位可位操作P1_0=~P1_0;//此位可位操作}}}定时1s#includesbitP1_0=P1^0;voidmain(){unsignedintcounter;T

7、MOD=0x01;TH0=0xb1;TL0=0xe0;TR0=1;//此位可位操作while(1){if(1==TF0){TH0=0xb1;TL0=0xe0;TF0=0;counter++;}if(50==counter){counter=0;P1_0=~P1_0;}}}=50*20ms20ms初值=45536=0xB1E0复习定时器定时功能的使用TMOD:选择T0还是T1TCON:选择方式1设置初值放置于TH0,TL0或TH1,TL1中方式1:定时时间=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。