单片机中定时器与计数器的区别

发布者:技术掌门最新更新时间:2017-01-04 来源: eefocus关键字:单片机  定时器  计数器 手机看文章 扫描二维码
随时随地手机看文章

定时器实际上也是计数器,只是计数的是固定周期的脉冲

定时/计数器很容易理解的啊

定时器实际上也是工作在计数方式下,只是计数的是固定周期的脉冲,由于脉冲周期固定,由计数值可以计算时间,有定时功能

定时和计数只是触发来源不同(时钟信号和外部脉冲)其他方面是一样的。
单片机里的寄存器可以看成一个个电子开关,用来切换不同的功能、信号。

51里通过TMOD里的T/C 位切换计数信号的来源
当T/C工作在定时器时,对振荡源12分频的脉冲计数,即每个机器周期计数值加1,计数频率为1/12fosc,当晶振频率6MHZ时,计数频率为500KHz,每2us计数值加1;晶振12MHZ就是每1us加1 了。

当T/C工作在计数器是,计数脉冲来自外部脉冲输入管脚T0(P3.4)或T1(P3.5),当T0或T1脚上负跳变时计数值加1 ,识别管脚负跳变需要2个机器周期,即24个振荡周期。所以T0或T1脚输入的可计数的外部脉冲的最高频率为1/24fosc,当晶振12MHZ时,最高计数频率为500KHz,高于此频率将计数出错。


至于赋初值就是杯子原理了,由于51只能加计数,且只能在杯子刚刚满的那一刻发出中断,触发中断程序,所以我们就往杯子里先放好一定的豆子,再来相应数量的豆子就满了,然后中断程序就自动工作了。

注意:
定时和计数只是触发来源不同(时钟信号和外部脉冲)其他方面是一样的。
假设我们要定时一定时间(100个机器周期),我们就置初值为(溢出值-100)就行了,假设我们要计件100个,实际上也是置初值为(溢出值-100),然后将输入脉冲设为外部输入就可以了
说:定时和计数只是触发来源不同(时钟信号和外部脉冲)其他方面是一样的。
在中断里置初值是为下一个循环作准备,没什么好说的,看需要定了。
由于定时计数器的值也可以随时读出来,所以我们也可以从0开始计数,从而计算一段时间或一定脉冲的数量哦,这是照样可以打开中断,中断时就说明已经又计数了(定时器溢出值)个脉冲哦,在中断里进行溢出处理,就可以计算出远远大于(定时器溢出值)的数字了
此时也要注意一点:51读数时除了T/C2的捕捉功能,直接读TH和TL可是不断变化的哦,具体的还是看书。当你理解了定时计数器后,我们甚至还可以将计数值置为(溢出值-1),从而实现自动单步(定时模式)或作为外部中断(计数模式)用哦,仔细想想吧,呵呵;-)
至于中断中的需要保护现场的原因,是为了防止不小心修改了别的程序的参数,从而影响别的程序的运行,所以要且只要保护中断程序自己动过的数据,将动过的那些存储器在退出中断时恢复到进入时的状态,就不会影响被中断的程序了。
汇编需要自己保存现场,反正程序就是自己编的嘛,一切尽在掌握中;
C的话编译器会自动进行覆盖分析,自动保存需要保存的变量,一般应用时尽可放心,当然,如果你很了解编译器做了什么,也可以嵌入汇编天马行空自由发挥啊,但新手可不建议这样哦,还是交给编译器吧。
其实这些可以说都是基础知识啊,如果不明白肯定是你的书看的不够仔细哦


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

上一篇:MSP430学习心得---时钟
下一篇:MSP430单片机之RTC-实时时钟

推荐阅读最新更新时间:2024-03-16 15:28

【51单片机】考试基础知识总结(引脚)
考试范围: 选填看书本课后习题 大题: 纯程序:实验前四个,乘法不考 中断,定时器T1:方波书本例题5-1,也可以用C语言实现 显示、键盘:8位/16位(独立/矩阵键盘,Scanner) 0832/0809 例题10-1(1)(2)(3)10-6、10-6上面的程序(方波、矩形波) 第八章,拓展图,“第14讲内容会做就可” 串口: PO口: 外部扩展存储器时,当做数据总线,DB 不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。 P1口: 只做I/O口使用:其内部有上拉电阻。 P2口有两个功能: 扩展外部存储器时,当作地址总线使用,AB 做一般I/
[单片机]
STM32单片机和51单片机区别
单片机简介 单片微型计算机简称单片机,简单来说就是集CPU(运算、控制)、RAM(数据存储-内存)、ROM(程序存储)、输入输出设备(串口、并口等)和中断系统处于同一芯片的器件,在我们自己的个人电脑中,CPU、RAM、ROM、I/O这些都是单独的芯片,然后这些芯片被安装在一个主板上,这样就构成了我们的PC主板,进而组装成电脑,而单片机只是将这所有的集中在了一个芯片上而已。 51单片机和STM32单片机 51单片机是对所有兼容Intel8031指令系统的单片机的统称,这一系列的单片机的始祖是Intel的8031单片机,后来随着flash ROM技术的发展,8031单片机取得了长足的进展成为了应用最广泛的8bit单片机之一,他的代表型
[单片机]
如何将PIC单片机的数据存储器RAM当作寄存器来使用
PIC16C5X把数据存储器RAM都当作寄存器来使用以使寻址简单明洁,它们功能上可分为操作寄存器、I/O寄存器、通用寄存器和特殊功用寄存器。它们的组织结构如图1.4所示:这些寄存器用代号F0~F79来表示。F0~F4是操作寄存器,F5-F7是I /O寄存器,其余为通用寄存器。特殊功用寄存器地址对用户不透明。 §1.5.1 操作寄存器 1、F0 间址寄存器 寻址F0实际上意味着间址寻址。实际地址为寄存器选择寄存器F4的内容。 例: MOVLW 10 MOVWF  f4    ;10→f4 MOVLW  55 MOVWF  f0    ;55→f10 2、F1 实时时钟/计数寄存器(RTCC) 此寄存器是一个8位计数器。和其
[单片机]
如何将PIC<font color='red'>单片机</font>的数据存储器RAM当作寄存器来使用
AD574与8031单片机及前置电路的一种实用接口电路
  AD574是美国核拟器件公司Analog Devices) 生产的12 位逐次逼近型快速A/D 转换器。其转换35us,转换误差为土0.05%,是前我国应用广泛,价格适中的A/D转换器。其内部含三态电路,可直接与各种微处理器连接,且无须附加逻辑接口电路,便能与CMOS 及TTL 电平兼容。内部配置的高精度参考电压源和时钟电路,使它不需要任何外部电路和时钟信号,就能实现A/D转换功能,应用非常方便。   许多文献有关于AD574与8031单片机接口技术的介绍, 但其控制功能引线基本局限于单一的AD574与8031的连接。由于8031无内部程序存贮器, 其内部数据存贮器也有限, 因而8031构成的测控系统, 往往都需外扩存贮器
[单片机]
AD574与8031<font color='red'>单片机</font>及前置电路的一种实用接口电路
51单片机定时器实现灯的闪烁
查询方式,键入程序,看到了什么?灯在闪烁了,这可是用定时器做的,不再是主程序的循环了。 ORG 0000H AJMP START ORG 30H START: MOV P1,#0FFH ;关所有灯 MOV TMOD,#00000001B ;定时/计数器0工作于方式1 MOV TH0,#15H MOV TL0,#0A0H ;即数5536 SETB TR0 ;定时/计数器0开始运行 LOOP:JBC TF0,NEXT ;如果TF0等于1,则清TF0并转NEXT处 AJMP LOOP ;否则跳转到LOOP处运行 NEXT:CPL P1.0 MOV TH0,#15H MOV TL0,#9FH;重置
[单片机]
从一名产线工人到单片机工程师的经历分享
我是学电子信息的,本科。当年毕业的时候,外企热得不得了,外企有先进的管理体制5s,有着现代化的电子设备,有着很高的福利。那个时候,每个人都以进外企工作为荣,我也不例外。 不论是当年还是现在外企要的条件都很高,能进去都是件很不容易的事,我最终凭借出色的英语表达能力进了外企。 我的职位是设备工程师,薪水是税后1500,五险一金,公司提供午餐和班车。这在一般人看来很一般,可是对于一贫如洗的我来说(我从小就是单亲,没见过钱),这个待遇已经可以让我蹦起来了。 上班了,我努里的工作着,积极地对待着我这来之不易的工作。可到第5个月的时候,我发现不对劲了。设备出现问题,无非是改改参数,换换零件。有时,大家为了体现自己的价值争着按一个按
[单片机]
一种太阳能报警器系统设计
引言 我国是世界上受自然灾害影响最为严重的国家之一,近年来由于滥砍滥伐严重,自然资源过度开采,造成地质灾害和自然灾害发生的频率增多,破坏程度也越来越严重,2008年的四川汶川大地震、2010年的贵州玉树地震都造成了严重的人员死亡和经济损失,还有各地频发的各种泥石流、山体滑坡和水灾等都造成了不同程度的破坏,随时威胁着人民的生命财产安全。每年国家在防灾、抗灾和救灾方面都要花费大量的人力物力。如果能在灾害监测和预警方面下大力气,做到准确预测灾害的来临,灾前做好充分的准备工作,可以将灾害所造成的人员伤亡和经济损失减到最低,也为国家节省大量的救灾资金。 太阳能防空防灾电声警报器为各自独立的功能部件用积木形式集成安装在可移动的防水机箱内外
[单片机]
一种太阳能报警器系统设计
单片机AT89S51与ADC0809设计一个数字电压表
1. 实验任务   利用单片机AT89S51与ADC0809设计一个数字电压表,能够测量0-5V之间的直流电压值,四位数码显示,但要求使用的元器件数目最少。   2. 电路原理图   3. 系统板上硬件连线    a) 把“单片机系统”区域中的P1.0-P1.7与“动态数码显示”区域中的ABCDEFGH端口用8芯排线连接。    b) 把“单片机系统”区域中的P2.0-P2.7与“动态数码显示”区域中的S1S2S3S4S5S6S7S8端口用8芯排线连接。   c) 把“单片机系统”区域中的P3.0与“模数转换模块”区域中的ST端子用导线相连接。   d) 把“单片机系统”区域中的P3.1与“模数转换模块”区域中的
[单片机]
<font color='red'>单片机</font>AT89S51与ADC0809设计一个数字电压表
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

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