ARDUINO如何记录两个中断之间的时间?-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7002|回复: 6

[已解决] ARDUINO如何记录两个中断之间的时间?

[复制链接]
发表于 2018-8-7 11:17 | 显示全部楼层 |阅读模式
     假设情景如下:我有一段矩形脉冲,然后该脉冲的占空比是不规则的,我该如何使用中断信号记录该脉冲两次跳跃的时间间隔?就是下图的T1怎么求,T2怎么求? P80807-111314.jpg
发表于 2018-9-24 12:46 | 显示全部楼层
void setup()
    {
    Serial.begin(9600);
    attachInterrupt(0, measure, CHANGE);  
     }
void loop(){}
void measure()
{
  static long lastms;
  
  int v = digitalRead(2);
  if (v)
    Serial.print("U ");
  else
    Serial.print("D ");

  long ms = micros();
  Serial.println(ms - lastms);
  lastms = ms;
}
发表于 2018-9-24 10:39 | 显示全部楼层
用中断,中断后把micro()的值用指针的方法赋值去外部才行。
 楼主| 发表于 2018-11-7 20:27 来自手机 | 显示全部楼层
谢谢各位,已经实现了
发表于 2019-2-28 13:29 | 显示全部楼层
怎么实现的 可以分享一下吗
发表于 2021-4-14 20:06 | 显示全部楼层
deng6666 发表于 2018-11-7 20:27
谢谢各位,已经实现了

请问楼主怎么实现的,可以分享一下吗
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-29 08:51 , Processed in 0.080410 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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