通过arduino单片机和红外传感器测量所得到的高低电平的时间,来测量物体的速度。
下面是程序intSensor=2;//定义引脚为2unsignedlongtime;//定义duration变量为无符号长整数型变量voidsetup(){Serial....
下面是程序
int Sensor = 2; //定义引脚为2
unsigned long time; //定义duration变量为无符号长整数型变量
void setup()
{
Serial.begin(9600); //串口波特率为9600
pinMode(Sensor, INPUT); //设置引脚为输入模式
}
void loop()
{
time = pulseIn(Sensor,0,60000000); //读取引脚上的高电平脉冲,最大脉冲时间间隔为60秒,并且把结果赋值给time变量
Serial.print("TIME:");
Serial.println(time); //通过串口输出duration变量
}
当实验移动物体时,输出了TIME:4
TIME:114530
TIME:4
TIME:16
TIME:4
TIME:16
TIME:2
TIME:8
TIME:7
TIME:14
TIME:2
TIME:16
TIME:16
TIME:2
TIME:34
TIME:4
TIME:17
TIME:5
TIME:8
TIME:2
TIME:14
TIME:1
TIME:13
TIME:20
TIME:1
TIME:14
TIME:10
TIME:16
TIME:1
TIME:16
TIME:2
TIME:7
TIME:7
TIME:8
TIME:17866
TIME:18295
TIME:26258
TIME:2
TIME:4
请问为什么会出现这样的数据,应该如何解决 展开
int Sensor = 2; //定义引脚为2
unsigned long time; //定义duration变量为无符号长整数型变量
void setup()
{
Serial.begin(9600); //串口波特率为9600
pinMode(Sensor, INPUT); //设置引脚为输入模式
}
void loop()
{
time = pulseIn(Sensor,0,60000000); //读取引脚上的高电平脉冲,最大脉冲时间间隔为60秒,并且把结果赋值给time变量
Serial.print("TIME:");
Serial.println(time); //通过串口输出duration变量
}
当实验移动物体时,输出了TIME:4
TIME:114530
TIME:4
TIME:16
TIME:4
TIME:16
TIME:2
TIME:8
TIME:7
TIME:14
TIME:2
TIME:16
TIME:16
TIME:2
TIME:34
TIME:4
TIME:17
TIME:5
TIME:8
TIME:2
TIME:14
TIME:1
TIME:13
TIME:20
TIME:1
TIME:14
TIME:10
TIME:16
TIME:1
TIME:16
TIME:2
TIME:7
TIME:7
TIME:8
TIME:17866
TIME:18295
TIME:26258
TIME:2
TIME:4
请问为什么会出现这样的数据,应该如何解决 展开
2个回答
展开全部
你看看红外传感器引脚是不是接错了?
追问
没有
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
欧艾迪
2024-12-02 广告
2024-12-02 广告
国产传感器厂家:15814017675 左经理。欧艾迪专注于传感器和控制器测量控制领域,为客户提供有竞争力的产品解决方案。特别是在位置、角度、位移的测量应用中,积累了丰富的客户服务经验和应用案例。我们的主要优势是根据客户的个性化需求进行差异...
点击进入详情页
本回答由欧艾迪提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询