pulseIn() – 太极创客

您所在的位置:网站首页 脉冲时间是什么意思 pulseIn() – 太极创客

pulseIn() – 太极创客

2024-05-17 11:19| 来源: 网络整理| 查看: 265

说明

读引脚的脉冲信号, 被读取的脉冲信号可以是 HIGH 或 LOW. 例如我们要检测HIGH脉冲信号, Arduino将在引脚变为高电平时开始计时, 当引脚变为低电平时停止记时,并返回脉冲持续时长(时间单位:微秒)。如果在超时时间内没有读到脉冲信号的话, 将返回0.

根据经验发现,pulseIn()函数在检测脉冲间隔过短的信号时会产生错误。Arduino可检测的脉冲间隔时间范围是10微秒到3分钟。请留意假如调用pulseIn()函数时读取信号的引脚上已经为高电平,此时Arduino将等待该引脚变为低电平以后再开始检测脉冲信号。另外只有Arduino的中断是开启时,才能使用pulseIn()。

语法

pulseIn(pin, value) pulseIn(pin, value, timeout)

参数

pin 引脚编号 state 脉冲状态 timeout 超时时间(单位:微秒) 如果Arduino在超时时间(timeout)内没有读到脉冲信号的话, 该函数将返回0.超时时间参数是可选参数,其默认值为1秒。

返回值

脉冲持续时长。 如果在超时时间内没有读到脉冲信号, 将返回0.

示例程序

Arduino 1234567891011121314  int pin = 7;unsigned long duration; void setup() {  pinMode(pin, INPUT);} void loop(){  duration = pulseIn(pin, HIGH);}



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3