今日头条
单片机有没有想象中那么好学,很迷茫有说正面有说负面
现代互联网的好处就是什么乱七八糟的资源都能搜集到,但是这个也容易迷惑人,有好处也有坏处,好处是资料很多很容易入门,但同事也很眼花缭乱让你无从下手,有想入门单片机的朋友可以持续关注我,我会把我精心整理出一套让你快速学会达到月薪过万的视频教程资料免费分享给大家。
定时实际上也叫做计数,只不过它定时的基准是一个机器周期的时间,要想产生一个定时,实际上也就是在机器周期的基础上来看它走了多少次,来多少个脉冲,里面值就会加几次,但是这种定时计数器它的功能结构比较简单,它只有一个情况下会溢出,也就是里面的值加到满的时候,再来一个机器周期的时间,再加一就会产生溢出,这个就是它的定时功能。
如果做计数功能这个时候它还是一个加一计数器,只不过这个时候它不是对内部的机器周期的脉冲进行计数了,它是对单片机的引脚进行计数,这个引脚叫做T0,指的是单片机P3口当中的P3.4这个引脚,定时计数器的计数功能的脉冲输入引脚,在使用定时计数器的时候,无论是定时功能还是计数功能,它都是加一计数器,在计数的时候它是对这个引脚上的这个脉冲进行计数,引脚上每来一个时钟脉冲它也会加一,当这个脉冲数加到FFFF的时候,这个引脚上再来一个脉冲,定时器就会溢出,可以通过查询或者是中断的方式来处理外部脉冲的计数这个事件。
需要注意的是单片机的CPU在处理这个引脚上的电平采样的时候,是在前一个机器周期采样的时候,比如高电平,在下一个机器周期采用的是低电平,这个时候它才能认为是来了一个脉冲,所以对这个引脚上的脉冲频率是有要求的,不是任意频率它都能够测量到,频率比较高单片机超过了频率范围的时候,可以外部先做分屏,然后再来测量,这个是比较容易实现的,定时计数器两个功能实际上都是一个加一计数器,在做内部定时的时候,是对内部的机器周期进行计数,在对外部脉冲引脚测量的时候,它也是一个计数器,只是这个根源不一样。
C/T里相当于是一个电子开关,把计数的脉冲的源打到机器周期上去,如果是1它就会把计数源打到引脚上,要控制就相当于做一个倒计时的秒表一样,要去启动它,它才开始进行计时,定时计数器也是一样的,定时计数器它有一个控制位TR0或者TR1位,是用来控制定时计数器打开和关闭的,要想做定时功能,首先要初始化,设置是定时器还是计数器,设置好之后就可以去启动定时计数器,它才能够进行工作,而且它还有几种工作方式,在TMOD当中需要设置,M0M1这两个位可以设置四种工作方式,这两个位设置的值可以是00,01,10和11,从而设置四种工作方式,在用的时候也需要去选择具体的工作方式。
TCON当中有这几个位,TF0和TR0是溢出标志位,T20是控制启动位,这一期主要理解定时计数器是如何工作的,在做定时功能的时候呢,它是对内部的机器周期进行计数,在做计数功能的时候它是对引脚上的外部脉冲进行计数,它的一个实质都是一个加一计数器,无论是做定时还是做计数,它都能够产生溢出,但是溢出的条件都是当TH0和TL0里面的值在脉冲或者是外部脉冲,每来一个脉冲加一之后加成FFFF的时候,再来一个脉冲或者再来一个外部脉冲它就会溢出,首先需要初始化,选择工作方式,选择定时功能还是计数功能,同时要打开定时计数器,加满之后产生溢出就可以去处理这个事件,这是它的基本的工作原理。
对单片机感兴趣的可以查看往期分享内容,希望能帮助大家在学习单片机的路上少走一些弯路,想要入门单片机可以持续关注创为单片机编程,回复“带我学习”查看更多内容分享。
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !