单片机定时器与单片机计数器

发布者:自由探索最新更新时间:2013-02-17 来源: dzsc关键字:单片机  定时器  计数器 手机看文章 扫描二维码
随时随地手机看文章
  本文主要介绍单片机芯片解密的相关基础知识:单片机计数器和单片机定时器。

  一、计数概念的引入

  在介绍单片机计数器和定时器之前,先从选票的统计谈起:画“正”。这就是计数,生活中计数的例程处处可见。例:录音机上的计数器、家里面用的电度表、汽车上的里程表等等,再举一个工业生产中的例程,线缆行业在电线生产出来之后要计米,也就是测量长度,怎么测法呢?用尺量?不现实,太长不说,要一边做一边量呢,怎么办呢?行业中有很巧妙的办法,用一个周长是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,那我就先放进*36,再来100个脉冲,不就到了65536了吗。定时也是如此,每个脉冲是1微秒,则计满65536个脉冲需时65.536毫秒,但现在我只要10毫秒就能了,怎么办?10个毫秒为10000个微秒,所以,只要在计数器里面放进55536就能了。

关键字:单片机  定时器  计数器 引用地址:单片机定时器与单片机计数器

上一篇:基于单片机的图形液晶模块的驱动设计
下一篇:单片机常用输入/输出电路设计方法

推荐阅读最新更新时间:2024-03-16 13:18

基于ARM单片机的装载机障碍物监测预警系统设计
1 引言   随着信息化、智能化、网络化的发展,嵌入式系统技术获得广阔的发展空间,工业控制领域也进行着一场巨大的变革,以32位高端处理器为平台的实时嵌入式软硬件技术将应用在工业控制的各个角落。嵌入控制器因其体积小、可靠性高、功能强、灵活方便等许多优点,其应用已深入到工业、农业、教育、国防、科研以及日常生活等各个领域,对各行各业的技术改造、产品更新换代、加速自动化化 进程、提高生产率等方面起到了极其重要的推动作用 。   现今,国内外虽有部分车辆安装了超声波倒车防撞报警装置、基于DSP的智能车辆防撞系统、图像处理技术的汽车追尾预警系统等,但是用于像装载机这种广泛用于城建、矿山、公路等工程的工程机械的障碍物监测预警系统却没有发现。
[测试测量]
基于ARM<font color='red'>单片机</font>的装载机障碍物监测预警系统设计
采用STC89C52单片机的温度控制系统设计
本文给出了采用STC89C52单片机进行自适应控制来控制PWM波,进而控制电炉的加热,以实现温度控制的设计方法。这套温度测控系统弥补了传统PID控制结构在特定场合下性能下降的不足。与传统的系统相比,该电路结构简单,测温精度高,温度控制误差小,并在不同时间常数下均可达到技术指标。文章同时给出了用串口调试精灵将PID控制器的输出和温度采样值显示在PC机上,以方便温度的监控的实现方法。 目前,水温控制被广泛应用于食品、医药、化工、家电等很多领域,水温控制的好坏直接影响着产品的品质,因此,水温控制具有十分重要的意义。本设计的任务与要求为1 L水由1 kW的电炉加热,要求水温可以在一定范围内由人工设定,并能在环境温度降低时实现自动调
[单片机]
采用STC89C52<font color='red'>单片机</font>的温度控制系统设计
MSP430单片机上使用M430/OS对系统的意义解析方案
引 言 1 在MSP430上使用RTOS的意义 一般的观点认为,MSP430上使用RTOS是没有意义的这是可以理解的。因为MSP430的硬件资源有限(以MSP430F149为例,只有2KB RAM),任何商业操作系统都不可能移植到MSP430上。目前在MSP430上得到应用的RTOS,只有μC/OS-II,但使用μC/OS-II 必须有昂贵的C编译器,这严重地限制了其在MSP430上的使用。 正是基于以上情况,笔者在应用MSP430过程中,编写了一个基于MSP430F149的RTOS,暂定名为M430/OS。它占用RAM量少、代码短小,稍加改动就可适用于大多数其它MSP430单片机。 在MSP430单片机系统上使用M430
[单片机]
杰发科技MCU打入新能源汽车动力电池域
近日,四维图新旗下杰发科技功能安全MCU芯片AC7840x与国内某头部Tier1厂商达成合作,并率先在 新能源汽车 动力电池域推出BMS方案。 AC7840x是基于ARM Cortex-M4F内核的车规级MCU,于2022年上市,产品符合AEC-Q100 grade1认证要求,功能安全符合ISO 26262 ASIL-B标准。此次合作,意味着国产车规级MCU正从中低端的车身域应用向对功能安全等级要求更高的核心域发展。 电池管理系统(BMS)的主要作用是实现电池单元的智能化管理及维护,进而延长电池使用寿命。具体功能包括电池监测、电池均衡、健康状态估算(SOH)、充电状态估算(SOC)以及热管理等。 而车规级MCU芯片作为
[汽车电子]
杰发科技<font color='red'>MCU</font>打入新能源汽车动力电池域
基于51单片机的12864 LCD显示--按键电子时钟程序设计
//液晶屏为JM12864或FYD12864(带字库),我用这两种型号的屏没问题, 4行*8列汉字=32 串行通信 接/口P1.5--P1.7,可根据你的电路修改相应的接口。 #include reg52.h #include intrins.h #define uchar unsigned char void LCD_ini(); void ascii_change(void); void delay(); void wri_add(uchar com); void wri_dat(uchar com1); void shan(void); void disp(); void tkey(void); sbit cs=P1^7;
[单片机]
基于AT89C52单片机的温度检测及显示设计
由于高新技术的不断发展,仪器仪表的微型化,数字化已得到实现。90年代高精确度、高性能、多功能仪器仪表都已经采用微处理器件。而作为工业控制和自动化领域的各种新技术、新方法、新产品的发展趋势和显著标志智能化是自动化技术当前和今后发展的动向之一。本文采用AT89C52单片机开发了键盘、液晶显示器、多路温度检测来实现温度的采集、温度的文字显示和图形显示三个系统。实验证明,采用AT89C52开发的系统性能可靠、成本较低、软件设计灵活简单、硬件接口功能丰富,具有扩展性好、通用性强等优点。 1 元器件的选择 1.1 核心芯片的选择 AT89C52单片机价格低廉,输入输出口丰富,无需再另外扩展,简化了外围电路。256 B内部
[单片机]
基于AT89C52<font color='red'>单片机</font>的温度检测及显示设计
PIC单片机的外接电压检测复位电路举例
1.6.5 PIC单片机的外接电压检测复位电路举例   1.设计思路   有许多型号单片机的内部均不具备掉电复位功能,即使对于内部包含该功能的PIC单片机,其复位门槛电压值是固定不可更改的,有时不能满足用户的需求,因此,外加电压检测复位电路也是较常见的设计方案。   对于片内带有掉电复位功能BOR的PIC单片机,在使用外接电压检测复位电路时,就必须将内部BUR功能禁止,方法是将系统配置字的BUDEN位设置为0。   对于内部不带BOR功能的PIC单片机,其电源控制寄存器PCUN没有BOR标志位,无法准确识别由外接电压检测复位电路引起的单片机复位,因此在程序执行过程中在MCLR引脚施加了人工复位信号引起的复位。   与外
[单片机]
PIC<font color='red'>单片机</font>的外接电压检测复位电路举例
采用C8051F060单片机和现场总线CAN实现网络测控系统的设计
1 绪论 随着网络技术的不断发展,Internet把世界上分散的计算机系统、通信系统实现了互连,形成了共用数据网络,成功的实现了网络资源共享。而CAN总线技术使得控制系统向着分散化、网络化、智能化的方向发展,使控制技术与计算机以及网络技术更为紧密的结合在一起。随着CAN总线控制网络的进一步发展,控制网络与因特信息网络的结合,方便了对设备的远程监控、诊断和维护。 2 系统模型概述 本设计采用在CAN总线控制网络和因特网之间加入一个转换接口。这种方式是通过硬件来实现的,即在底层网络与中间监控层之间加入中继器、网桥、路由器等专门的硬件设备,使控制网络作为信息网络的扩展与之紧密集成。硬件设备可以是一台专门的计算机,依靠其中运行的软件完
[单片机]
采用C8051F060<font color='red'>单片机</font>和现场总线CAN实现网络测控系统的设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved