极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10309|回复: 3

咨询外部中断问题

[复制链接]
发表于 2013-7-8 16:52:52 | 显示全部楼层 |阅读模式
纠结了一下午 我用attachInterrupt();函数利用上升沿中断,我用来测量人体的脉冲信号,最蛋疼的一点 ,脉冲时间来的时候很突然,就是你不知道什么时候来一个脉冲。我要做模数转换。假设每3毫秒计数一次,当下一个脉冲来的时候我的计数就玩完了。
回复

使用道具 举报

 楼主| 发表于 2013-7-8 16:57:16 | 显示全部楼层
[pre lang="arduino" line="1" file="求帮忙啊"]

void setup()
{
  Serial.begin(9600);
  attachInterrupt(0, readtimes, RISING);
}

void readtimes()
{
  int time=0;
  double num = 0;
if(下一个脉冲之前) //就是这的处理关系 我想不明白了
  {
  int n = analogRead(A0);
  double vol = n * (5 / 1024.0 * 100);
  num+=vol;
  time++;
  delay(10);
  }
  double average  = num/time;
if(average>3)
{
  Serial.println(average);
}
}

void loop()
{
}[/code]
回复 支持 反对

使用道具 举报

发表于 2013-7-8 21:13:48 | 显示全部楼层
不明白你要问什么
回复 支持 反对

使用道具 举报

发表于 2013-7-8 22:45:38 | 显示全部楼层

noInterrupts()
interrupts()
在中断需要运行的程序前后加上这两个就行了。
前一个表示禁用中断
后一个表示启用中断
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-5 13:30 , Processed in 0.034498 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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