(玩电子) 电子技术学习与研究
当前位置单片机教程网 >> 基础教程 >> 浏览文章

16课:单片机定时器与计数器

作者:佚名   来源:本站原创   点击数:x  更新时间2007年08月15日   字体

一计数概念的引入

   从选票的统计谈起画“正”这就是计数生活中计数的例程处处可见例录音机系计数器家里面用的电度表汽车系里程表等等再举一个工业生产中的例程线缆行业在电线生产出来之后要计米也就是测量长度怎么测法呢用尺量不现实太长不说要一边做一边量呢怎么办呢行业中有很巧妙的办法用一个周长是1米的轮子将电缆绕在上面一周上带轮转这样轮转一周不就是线长1米嘛所以只要记下轮转了多少圈就能知道走过的线有多长了

二计数器的容量  

 从一个生活中的例程看起一个水盆在水龙头下水龙没关紧水一滴滴地滴入盆中水滴中落下盆的容量是有限的过一段时间之后水就会逐渐变满录音机系计数器最多只计到999….那么单片机中的计数器有多大的容量呢8031单片机中有两个计数器分别称之为T0和T1这两个计数器分别是由两个8位的RAM单元组成的即每个计数器都是16位的计数器最大的计数量是65536

三定时

8031中的计数器除了能作为计数之用外还能用作时钟时钟的用途当然很大如打铃器电视机定时关机空调定时开关等等那么计数器是如何作为定时器来用的呢

一个闹钟我将它定时在1个小时后闹响换言之也能说是秒针走了3600次所以时间就转化为秒针走的次数的也就是计数的次数了可见计数的次数和时间之间的确十分相关那么它们的关系是什么呢那就是秒针每一次走动的时间正好是1秒


<单片机定时器记数器结构>

结论只要计数脉冲的间隔相等则计数值就代表了时间的流逝由此单片机中的定时器和计数器是一个东西只不过计数器是记录的外界发生的事情而定时器则是由单片机供给一个非常稳定的计数础那么供给组定时器的是计数源是什么呢看图1原来就是由单片机的晶体震荡器经过12分频后获得的一个脉冲础晶体震荡器的频实然很准所以这个计数脉冲的时间间隔也很准问题一个12M的晶体震荡器它供给给计数器的脉冲时间间隔是多少呢当然这很不难就是12M/12等于1M也就是1个微秒结论计数脉冲的间隔与晶体震荡器有关12M的晶体震荡器计数脉冲的间隔是1微秒

四溢出

让我们再来看水滴的例程当水中落下盆中的水中变满最终有一滴水使得盆中的水满了这个时候如果再有一滴水落下就会发生什么现象水会漫出来用个术语来讲就是“溢出”

水溢出是流到地上而计数器溢出后将使得TF0变为“1”至于TF0是什么我们稍后再谈一旦TF0由0变成1就是产生了变化产生了变化就会引发录就象定时的时间一到闹钟就会响一样至于会引发什么录我们下次课再介绍现在我们来研究另一个问题要有多少个计数脉冲才会使TF0由0变为1

五我定时及计数的办法    刚才已研究过计数器的容量是16位也就是最大的计数值到65536因此计数计到65536就会产生溢出这个没有问题问题是我们现实生活中经常会有少于65536个计数值的要求如包装线上一打为12瓶一瓶药片为100粒怎么样来满足这个要求呢

提示如果是一个空的盆要1万滴水滴进去才会满我在开始滴水之前就确入一勺水还需要10000滴嘛对了我们采用预置数的办法我要计100那我就确进65436再来100个脉冲不就到了65536了吗定时也是如此每个脉冲是1微秒则计满65536个脉冲需时65.536毫秒但现在我只要10毫秒就能了怎么办10个毫秒为10000个微秒所以只要在计数器里面放进55536就能了

发表缆告诉好友收藏此文关闭窗口

文章缆

Ƶ