单片机定时器和计数器的概念

举报
CodeAllen 发表于 2022/06/02 00:55:47 2022/06/02
【摘要】 前言 有接触过单片机开发的同学可能对定时器和计数器的使用很熟悉,但是定时器和计数器到底是什么东西呢? 文中涉及的模数电概念我都链接了百科知识,不明白的可以直接跳转观看。 正文 其实定时器和计数器底层原理是一个加法器,加法器对于输入的数字脉冲会进行计数,然后输出十六进制的值记录结果。 加法器可以加计数,当然也可以用来减计数,...

前言

有接触过单片机开发的同学可能对定时器和计数器的使用很熟悉,但是定时器和计数器到底是什么东西呢?

文中涉及的模数电概念我都链接了百科知识,不明白的可以直接跳转观看。

正文

其实定时器和计数器底层原理是一个加法器,加法器对于输入的数字脉冲会进行计数,然后输出十六进制的值记录结果。

加法器可以加计数,当然也可以用来减计数,但是加计数用的的比较普遍,在单片机中大多数采用溢出判断。比如一个16位的计数器,最大值是65535,如果要实现100的计数,需要赋值给计数器初始值为65435,经过100个脉冲之后,计数器就会溢出,从而就会引发中断

比如我们要计算1秒的时间,我们可以提前给加法器装入一个100的值,然后在脉冲输入端加一个10ms的外部脉冲,每收到一个脉冲,加法器就会把数值减一,这样当加法器的数值从100减到0的时候,就计算出来了一个1s的时间。

但是大家可能会发现定时器和计数器一般都会放在一起描述,原因是因为这个同一个器件的不同功能而已。如果把单片机时钟加在加法器输入端,那加法器不就是个定时器。而如果把外部脉冲加在加法器输入端,则变成了计数器使用。这个概念应该比较好理解。

下图是一个计数器的理解

文章来源: allen5g.blog.csdn.net,作者:CodeAllen2022,版权归原作者所有,如需转载,请联系作者。

原文链接:allen5g.blog.csdn.net/article/details/125075377

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。