51单片机之定时器\计数器的工作原理
51单片机之定时器\计数器的工作原理
- 定时器/计数器的结构:
- 何时处于计数器方式?何时处于定时器方式?
- TCON和TMOD特殊功能寄存器:
- 定时器/计数器工作方式:
- 方式0:13位的定时器/计数器
- 方式1:16位的定时器/计数器
- 方式2:自动装载初值的8位定时器/计数器
- 方式3:俩个8位的定时器/计数器,只有T0有
- 定时器/计数器的使用:
- 例1:
- 例2:
定时器/计数器的结构:
PS:此处涉及到了TCON和TMOD特殊功能寄存器,详见51单片机之特殊功能寄存器SFR篇
TH0、TH1:俩个加法型的计数变量,当外部产生一次时钟信号时,计数加一,直到加到最大值时发生溢出
何时处于计数器方式?何时处于定时器方式?
1、当计数变量使用单片机内部的时钟作为时钟源,我们称这种方式为定时器方式
2、当计数变量使用片外引脚P3.4、P3.5上存在的方波脉冲的时候,我们称这种方式为计数器方式
在使用片外引脚P3.4、P3.5上存在的方波脉冲时,需要俩个机器周期的时间才能确定一次脉冲信号,即需要产生下降沿时才能确定一次脉冲信号
TCON和TMOD特殊功能寄存器:
定时器/计数器工作方式:
方式0:13位的定时器/计数器
因为存在俩个8位的计数变量TLx和THx,所以最大可计数16位,在方式一中,只使用13位,则最大计数2^13;
需要注意的是:THx装入的是高8位,TLx装入的是低5位,如上图实例
方式1:16位的定时器/计数器
同方式0相同
方式2:自动装载初值的8位定时器/计数器
这种工作模式下,TLx用于计数,而THx则是用于存放初值,当TLx溢出时,THx中的初值自动装入TLx中;用于严格的计数场景
方式3:俩个8位的定时器/计数器,只有T0有
定时器/计数器的使用:
例1:
例2:
51单片机之定时器\计数器的工作原理相关推荐
- 【51单片机】定时器/计数器的工作原理和结构(一)
[51单片机]定时器/计数器的工作原理和结构 回看下单片机中断系统内部结构: 分析内部中断触发: 先看图 TCON:和外部中断相比少了IT位设置触发方式 :1跳沿触发 0电平触发:此处我的理解是:就好 ...
- 51单片机并行I/O口工作原理
51单片机并行I/O口工作原理 51单片机并行I/O口工作原理 P1: 仅作为双向I/O口 P3: 做为双向I/O口,同时还有第二功能 P2: 双向I/O口和高8位地址线,与P1的结构相比多了一个数据 ...
- 51单片机笔记:定时器/计数器
单片机笔记 定时器/计数器 定时器/计数器的结构 AT89S51内部两个16位定时器/计数器:T0(P3.4),T1(P3.5),定时器/计数器T0由特殊寄存器TH0,TL0构成,T1由特殊功能寄存器 ...
- 六、51单片机之定时器/计数器_理论
1.什么是定时器.计数器 定时器就是单片机设定一个时间间隔,时间间隔到后通知单片机.例如设置100ms的定时器,100ms后定时器通知单片机时间到了. (1)定时器是单片机的一种内部外设.(以前的单片 ...
- 51单片机之定时器/计数器应用实例(方式0、1、2、3)
硬件:STC89C52RC 开发工具:Keil uVision4 对于刚接触单片机的同学来说可能会对定时器/计数器的应用很蒙圈,特别是初值的计算和各种定时方式的选择.下面希望能给你带来一个清晰的思路. ...
- 单片机两个正玄波信号的相位差计算_51单片机的定时器/计数器的原理与使用
CPU时序的有关知识 振荡周期:为单片机提供定时信号的振荡源的周期(晶振周期或外加振荡周期) 状态周期:2个振荡周期为1个状态周期,用S表示.振荡周期又称S周期或时钟周期. 机器周期:1个机器周期含6 ...
- 51单片机内部定时器/计数器实验
51单片机内部定时器/计数器实验 一.实验内容 使用MCS-51内部定时/计数器,定时1秒钟,CPU运用定时中断方式,实现每1秒钟输出状态发生一次反转,即发光管每隔1秒钟亮一次(P1.7接LED). ...
- 51单片机计算定时器初值
51单片机计算定时器初值 前言 理论分析 工作方式寄存器 TMOD GATE 门控位 C/T' 计数器模式和定时器模式选择位 M1 M0 工作方式选择位 定时器/计数器控制寄存器 TCON TCON补 ...
- 51单片机学习--定时器--中断--串口通信
51单片机学习–定时器–中断–串口通信 定时器–中断–串口通信 中断分类 定时器中断 外部中断 串口中断 基本概念 对于单片机来讲, 中断是指 CPU 在处理某一事件 A 时, 发生了另一事件 B, ...
最新文章
- PHP一行命令打印当前系统时间
- Java打印整数的二进制表示(代码与解析)
- Java中的String类
- BOOST_CURRENT_FUNCTION宏用法的测试程序
- 面试官:Spring为什么建议使用构造器来注入?
- .NET跨平台实践:再谈用C#开发Linux守护进程 — 完整篇
- java把含小数点的数字字符串转换为int类型
- 学号 20165329 《Java程序设计》第4周学习总结
- Android 用户可以直接在搜索页面上安装 app 了
- activiti7(三):Activiti7简介与HelloWorld
- 2015中国大学排行榜100强新鲜出炉(校友会版)-[转]
- nodejs 中读取 package.json 文件内容
- 华为 小米 OPPO 手机type-c快充接口 会用到什么胶水?
- 【Deep Learning】Transformers Assemble(PART I)
- c语言text的作用,一个读text文本文件和解析文本的例子(C语言)
- 博客营销与软文营销那些事儿
- 开集识别(Open Set Recognition, OSR)算法:《Towards Open Set Deep Networks》OpenMax
- docker search - 搜寻镜像
- Python文件读写 w+ 与 r+ 到底如何操作
- Oracle,MySql和PostGreSql对中文字段按拼音排序
热门文章
- 学习编程技术常见的疑问,你敢说你没有过一个吗?信你个鬼!
- OpenCV中的凸包
- 图片也要查重了?期刊用AI审论文防造假,旋转/翻转/拉伸都不行
- 美国科学院院士、斯坦福大学王永雄(Wing H Wong)教授 - 生物信息学云论坛第一讲!...
- 苹果Mac修改图标“偷梁换柱”的一种简单方法
- 如何初始化局部变量c语言_重要的事情说三遍:局部变量一定要初始化!你做到了吗?...
- 1.4编程基础之逻辑表达式与条件分支 21 苹果和虫子2
- 7647 余数相同问题
- php-cms,GitHub - lovelife10000/L-php-cms: 基于laravel框架开发的一款php CMS内容管理系统,前端采用angular、jquery技术...
- 表单元素聚焦状态回车提交表单问题小记