您的位置 首页 模拟

51单片机计数器与定时器的差异

51单片机计数器与定时器的区别-在51单片机的学习过程中,我们经常会发现中断、计数器/定时器、串口是学习单片机的难点,对于初学者来说,这几部分的内容很难理解。在这几部分内容中,计数器/定时器对于初学者

  在51单片机的学习进程中,咱们常常会发现中止、计数器/守时器串口是学习单片机的难点,关于初学者来说,这几部分的内容很难了解。可是我个人觉得这几部分内容是单片机学习的要点,假如在一个学期的讲堂学习或许自学中没有了解这几部分内容,那就等于还没有把握51单片机,那更谈不上单片机的开发了,咱们都知道在制品的单片机项目中,有许多是以这几部分为理论基础的,万年历是以守时器为主的,报警器是以中止为主的,联机通讯是以串口为主的。

  在这几部分内容中,计数器/守时器关于初学者说很简单搞混杂,下面我将对这方面的内容结合自己的学习经验谈几点观点。

  计数器和守时器的实质是相同的,他们都是对单片机中产生的脉冲进行计数,只不过计数器是单片机外部触发的脉冲,守时器是单片机内部在晶振的触发下产生的脉冲。当他们的脉冲距离相同的时分,计数器和守时器便是一个概念。

  在守时器和计数器中都有一个溢出的概念,那什么是溢出了。呵呵,咱们能够从一个日子小常识得到答案,当一个碗放在水龙头下接水的时分,过了一瞬间,碗的水满了,就产生溢出。相同的道理,假定水龙头的水是一滴滴的往碗里滴,那么总有一滴水是导致碗中的水溢出的。在碗中溢出的水就浪费了,可是在单片机的守时计数器中溢出将导致一次中止,至于什么是中止咱们下次再讲,这儿仅仅开始的提下概念,中止便是能够打断体系正常运转,而去运转中止服务程序的进程,当服务程序运转完以后又主动回到被打断的当地持续运转。

  在守时器计数器中,咱们有个概念叫容量,便是最大计数量。方法0是2的13次方,方法1是2的13次方,方法2是2的8次方,方法3是2的8次方。把水滴比方成脉冲,那么导致碗中水溢出的最终一滴水的便是守时计数器的溢出的最终一个脉冲。

  在各种单片机书本中,在介绍守时计数器时都讲到一个计数初值,那什么是计数初值呢?在这儿咱们仍是假定水滴碗。假定第一百滴水能够使碗中的水溢出,咱们就知道这个碗的容量是100。问题1,我怎么才干使碗接到10滴水就溢出呢?呵呵,我能够幻想,假如拿一个空碗去接水,那么仍是得要100滴水才干溢出,可是假如咱们拿一个现已装有水的碗拿去接,那就不必100滴了。到此咱们能够算出,要使10滴水让碗中的水溢出,那么碗中就先要装90滴水。

  在守时计数器中,这90滴水便是咱们所谓的初始值。问题2,在一个车间咱们怎么使用单片机对100件产品进行计件,并进行主动包装呢?

  咱们能够使用计数器计数100,在中止中履行一个主动包装的动作就能够了。

  在这儿计数初值有3个,假定有方法0:计数初值=8912(2的13次方)—100=8812。方法1:计数初值=65536(2的16次方)—100=65436。方法0:计数初值=256(2的8次方)—100=156。

  依据所得的初始值,再将其转换为16进制或许2进制,就能够进行计数或许守时了。当然要让程序彻底的运转起来还需要相应的寄存器进行设置。这些能够从各种单片机教程中找到。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/moni/179280.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部