找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1030|回复: 0
收起左侧

"接水"模型理解单片机定时器/计数器

[复制链接]
ID:640275 发表于 2019-12-20 16:29 | 显示全部楼层 |阅读模式
单片机的定时器/计数器可类比为一个“接水”模型。

假设我有一个有刻度的杯子,分度值为1ml,用它来计数接到的水量。这个容量500ml,称为最大计数值M,要从一个饮水机里接300ml的水,可以让这个杯子最开始装200ml的水,称为初始化,初值为X。当水杯接满水,这时的水位称为溢出标志位。就完成了计数的目的。X=M-计数值。

如果水流速度恒定,每接1ml所需时间一定。假设每1ml水需要0.01s,这个时间称为T。要接2s的水,可计算出接2s能接200ml的水。那么容量为500ml的水杯里装初值为300ml的水,从预设水位到溢出标志位,经历的时间就是2s。这就起到了定时器的目的。初值X=M-定时时间/T。

我家只有一个饮水机,但我有好几个杯子,不同容量的杯子提供给我多种方式实现计数和定时。方式0是一个容量小的杯子,我称它为13号杯;方式1是大容量杯子称作16号杯;方式2是两个最小的8号杯,用这种方式时,两个杯子要预设同样的水位,一个用来接水计数,另一个作为预设水位参考,第一个杯子溢满了,可以倒掉(称为清零)再装入同第二个水杯一样的水位再次计数。

如果一个杯子的容量足以实现指定时间的定时,可以反复循环。如要进行20s的计数,就把上述定时操作执行10次。


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表