unsigned long pulseIn (uint8_t pin, uint8_t state, unsigned long timeout)

读脉冲

读引脚的脉冲, 脉冲可以是 HIGH 或 LOW. 如果是 HIGH, 函数将先等引脚变为高电平, 然后 开始计时, 一直到变为低电平为止. 返回脉冲持续的时间长短, 单位为毫秒. 如果超时还没有 读到的话, 将返回0.

参数:

  1. pin 引脚编号
  2. state 脉冲状态
  3. timeout 超时时间

下面的例子演示了统计高电平的继续时间:

int pin = 7;
unsigned long duration;

void setup()
{
  pinMode(pin, INPUT);
}

void loop()
{
  duration = pulseIn(pin, HIGH);
}