MCS-51单片机计数器定时器原理与应用
需积分: 10 146 浏览量
更新于2024-08-24
收藏 460KB PPT 举报
TCON定时器控制/状态寄存器
在单片机系统中,TCON寄存器是一个非常重要的寄存器,它控制着定时器的启动和停止,并且提供了溢出中断标志位。下面我们将详细地介绍TCON寄存器的每一位的作用。
首先,让我们来看TCON寄存器的结构。TCON寄存器是一个8位寄存器, bits 7-6是TF1和TR1,bits 5-4是TF0和TR0,bits 3-2是IE1和IT1,bits 1-0是IE0和IT0。
TR0和TR1是定时器控制位,当TR0=1时,T0定时器启动;当TR1=1时,T1定时器启动。反之,当TR0=0时,T0定时器停止;当TR1=0时,T1定时器停止。
TF0和TF1是溢出中断标志位,当定时器溢出时,TFx=1,引起中断请求,CPU响应Tx中断后,自动清0 TFx。软件可以检测TFx,必须软件清0。
TH0、TL0、TH1、TL1是16位加1计数器的初值寄存器,可以预置初值。例如,启动T0,可以使用MOV指令预置初值:MOV TH0,#XH和MOV TL0,#XL。
在单片机系统中,TCON寄存器的应用非常广泛,例如生产线上产品计数、检测转速等。下面我们将详细地介绍这些应用。
一、计数概念的引入
在生产线上,需要对产品进行计数,每个产品通过得到一个脉冲信号,计数器记录脉冲个数,当计数值与设定值相等,启动包装机器。这种应用可以使用单片机的计数器来实现。
二、计数器的容量
单片机中的计数器有多大的容量呢?8031单片机中有两个计数器,分别称之为T0和T1,这两个计数器分别是由两个8位的RAM单元组成的,即每个计数器都是16位的计数器,最大的计数量是65536。
三、定时
8031中的计数器除了可以作为计数之用外,还可以用作时钟。计数器是如何作为定时器来用的呢?例如,一个闹钟,我将它定时在1个小时后闹响,换言之,也可以说是秒针走了(3600)次,所以时间就转化为秒针走的次数了。结论:只要计数脉冲的间隔相等,则计数值就代表了时间的流逝。
四、溢出
让我们再来看水滴的例子,当水不断落下,盆中的水不断变满,最终有一滴水使得盆中的水满了。这时如果再有一滴水落下,水会漫出来,用个术语来讲就是“溢出”。水溢出是流到地上,而计数器溢出后将使得TF0变为“1”。至于TF0是什么我们稍后再谈。
五、任意定时及计数的方法
刚才已研究过,计数器的容量是16位,也就是最大的计数值到65536,因此计数计到65536后溢出,使得TF0变为“1”。要有多少个计数脉冲才会使TF0由0变为1?这个问题的答案取决于计数器的初值和溢出值。
2021-01-19 上传
2010-03-07 上传
2009-03-20 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
琳琅破碎
- 粉丝: 19
- 资源: 2万+
最新资源
- hearthstone_battlegrounds_simulator
- resilient-microservices-dotnet-polly:此仓库包含有关Code Maze的“使用Polly在.NET中创建弹性微服务”文章的源代码。
- my-java-explore:对jdk的一些探索
- AWS Console Shape Shifter-crx插件
- HesaiLidar_General_ROS:PandarXT PandarQT Pandar64 Pandar40P Pandar40M Pandar20A Pandar20B的ROS驱动程序
- homework1_:第一次作业
- 图形包装器:包装器改进了Matlab图形组件。-matlab开发
- 蓝色科技商务下载PPT模板
- pb untag-crx插件
- 音乐生活娱乐网站模板是一款html5模板,适合娱乐休闲类网站模板下载。.zip
- Sensente.github.io
- spg框架
- 绚丽的夜空流星雨动画下载PPT模板
- 零基础学keil5安装教程(超详细) keil5mdk安装步骡
- valet-dashboard
- 团队项目2