极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9685|回复: 3

两个超声波的测试

[复制链接]
发表于 2013-1-23 00:53:39 | 显示全部楼层 |阅读模式
哎呀难受啊要去优酷上传视频可累了这网速害我现在才好!给小白的一个学习吧,参考Ansifa的单个超声波的教程我就弄个2个的,供小白研究,先上程序~~~
const int TrigPin = 2;
const int EchoPin = 3;
const int Tri = 4;
const int Ech = 5;
float cm1;
float cm2;
void setup()
{
Serial.begin(9600);
pinMode(TrigPin, OUTPUT);
pinMode(EchoPin, INPUT);
pinMode(Tri, OUTPUT);
pinMode(Ech, INPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
}

void loop()
{
  int i;
  for(i=1;i<=2;i++)
{
  if(i==1)
  {
    digitalWrite(TrigPin, LOW); //低高低电平发一个短时间脉冲去TrigPin
    delayMicroseconds(2);
    digitalWrite(TrigPin, HIGH);
    delayMicroseconds(10);
    digitalWrite(TrigPin, LOW);
  
    cm1 = pulseIn(EchoPin, HIGH) / 58.0; //将回波时间换算成cm
    cm1 = (int(cm1 * 100.0)) / 100.0; //保留两位小数
    Serial.print(cm1);
    Serial.print("cm1");
    Serial.println();
    delay(10);
  
    if(cm1<5)
    {
      digitalWrite(7, HIGH);
    }
      else
      {
        digitalWrite(7, LOW);
      }
     
  }
delay(50);
  if(i==2)
  {
    digitalWrite(Tri, LOW); //低高低电平发一个短时间脉冲去Tri
    delayMicroseconds(2);
    digitalWrite(Tri, HIGH);
    delayMicroseconds(10);
    digitalWrite(Tri, LOW);
  
    cm2 = pulseIn(Ech, HIGH) / 58.0; //将回波时间换算成cm
    cm2 = (int(cm2* 100.0)) / 100.0; //保留两位小数
    Serial.print(cm2);
    Serial.print("cm2");
    Serial.println();
    delay(10);
  
    if(cm2<5)
    {
      digitalWrite(8, HIGH);
    }
      else
      {
        digitalWrite(8, LOW);
      }
   
  }
}
}
好吧程序部分有很多可以改动的地方,好吧视频我也不知道是否ok~传视频咯!线路连接参考Ansifa大神的单个连接,串口查看的图我就不贴了有兴趣的可是自己玩玩,仅供参考!
回复

使用道具 举报

 楼主| 发表于 2013-1-23 18:55:48 | 显示全部楼层
由于超声波的缺陷,补充一下~超过量程以后超声波显示为负值,这样的话上面程序有个错误的地方,加一句&&cm1>0就ok了,cm2也一样,占自己的沙发发发~
回复 支持 反对

使用道具 举报

发表于 2014-4-1 15:06:15 | 显示全部楼层
我想知道为什么得出距离要除以58.0???
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-4-1 20:08:26 | 显示全部楼层
jifukui 发表于 2014-4-1 15:06
我想知道为什么得出距离要除以58.0???

The speed of sound is 340 m/s or 29 microseconds per centimeter.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-15 03:17 , Processed in 0.036630 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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