基于51单片机的脉搏测量仪

用单片机测量脉搏(即心率),并加以显示,是很容易做到的事情。
这和测量频率是同一个原理,只是显示的时候,要按照每分钟的脉冲个数来显示。

硬件可采用51单片机,像 AT89C2051 这样的 20 引脚的单片机芯片也已足够用。
外接三位数码显示,脉搏脉冲输入端放在 P3.2(INT0),一旦输入下降沿,即引起一次中断。

在单片机内部,用 T0 定时 5ms。
在 T0 定时中断函数里面,动态显示一位数码,并将变量 T0count 加一。
如果 T0count 加到了 2000,说明有 10 秒钟没有输入来自脉搏的脉冲,那么就把显示清零。

变量 T0count,实际上是两次脉冲的之间的 5ms 的个数,即以 5ms 为单位的脉搏周期的时间。利用 T0count,即可换算出每分钟的脉搏次数。

当有脉搏输入时,即进入了 INT0 中断函数,在这里,把 T0count 变换成每分钟的脉搏次数,送到显示缓冲区。
然后把 T0count 清零。

程序采用了流行的 C 语言编制,用 Proteus 仿真效果如下图所示。

基于51单片机的脉搏测量仪 - 非著名博主 - 电子信息角落

图片链接:http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/album/item/bfbfc7a96d4613f8ca130ca0.html

图中的按键,可以代表脉搏脉冲输入,每按下一次,数码管都会显示出每分钟的频率数值,如果 10 秒钟没有按键,数码管将显示0。

为了精确的测试,在图中加入了一个信号发生器,输出 5V 的方波。
图中的方波频率是 4Hz,即每分钟有 240 个脉冲,故此单片机测量仪显示出来 240;
当把方波频率调到 2Hz,即每分钟有 120 个脉冲,单片机测量仪显示出来就是 120;
当把方波频率调到 1Hz,即每分钟有 60 个脉冲,单片机测量仪显示出来就是 60;
输入其它的频率,对应的显示,都很准确,就不必细说了,可见下图。

基于51单片机的脉搏测量仪 - 非著名博主 - 电子信息角落

http://zhidao.baidu.com/question/193818160.html?push=core

  • 6
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值