开发者社区> 问答> 正文

我这个超声波程序返回值一直为0,谁知道为什么

image.png

image.png

展开
收起
珍宝珠 2019-08-05 11:14:32 1243 0
1 条回答
写回答
取消 提交回答
  • int trigPin = 2; //接超声波 ECHO 到数字2脚int echoPin = 3; // 接超声波 TRIG 到数字 3脚float distance = 0;void setup(){ Serial.begin(9600); pinMode(trigPin, INPUT); pinMode(echoPin, OUTPUT);}void loop(){ digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); // 发出持续时间为 10μ s到 trigger脚驱动超声波检测 delayMicroseconds(10); digitalWrite(trigPin, LOW); distance = pulseIn(echoPin, HIGH); // 接收脉冲的时间 distance = distance/58.00; // 将脉冲时间转化为距离值 Serial.println(distance); //输出距离值(单位:厘米) delay(50);}

    “答案来源于网络,供您参考” 希望以上信息可以帮到您!

    2019-09-25 21:03:53
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载