zoukankan      html  css  js  c++  java
  • 声之翼——超声波模块

                        

       上诗一首:

        早蝉【唐】白居易--

          六月初七日,江头蝉始鸣。

          石楠深叶里,薄暮两三声。 

      首先,我们先来做一个小实验,来初步了解一下超声波模块。

      实验材料:

        Arduino开发板      x1

        USB数据线        x1

        杜邦线          若干

        超声波模块        x1

        

      硬件连接图:

      

      实物连接图:

      程序代码:

    int Echo = A5;  // Echo回声脚(P2.0)
    int Trig =A4;  //  Trig 触发脚(P2.1)
    
    void setup()
    {
      Serial.begin(9600);     // 初始化串口
      //初始化电机驱动IO为输出方式
      //初始化超声波引脚
      pinMode(Echo, INPUT);    // 定义超声波输入脚
      pinMode(Trig, OUTPUT);   // 定义超声波输出脚
    }
    
    
    void Distance_test()   // 量出前方距离 
    {
      digitalWrite(Trig, LOW);   // 给触发脚低电平2μs
      delayMicroseconds(2);
      digitalWrite(Trig, HIGH);  // 给触发脚高电平10μs,这里至少是10μs
      delayMicroseconds(10);
      digitalWrite(Trig, LOW);    // 持续给触发脚低电
      float Fdistance = pulseIn(Echo, HIGH);  // 读取高电平时间(单位:微秒)
      Fdistance= Fdistance/58;       //为什么除以58等于厘米,  Y米=(X秒*344)/2
      // X秒=( 2*Y米)/344 ==》X秒=0.0058*Y米 ==》厘米=微秒/58
      Serial.print("Distance:");      //输出距离(单位:厘米)
      Serial.println(Fdistance);         //显示距离
      Distance = Fdistance;
    }  
    
    void loop()
    {
      Distance_test();
      delay(250);
    }

      实验效果是这样的:
      

    注意这里输出单位是: CM

    下面来说说原理:

      

     

      

      总结:

      实验中使用到的函数调用:  

    串口监视器:
    Serial.begin(9600); // 初始化串口, 设置比特率

    Serial.print("Distance:"); //输出距离(单位:厘米) 不带“ ”输出
    Serial.println(Fdistance);         //输出显示距离   带“
    ”输出
    LCD显示屏:
    #include <LiquidCrystal.h> //申明1602液晶的函数库
    //申明1602液晶的引脚所连接的Arduino数字端口,8线或4线数据模式,任选其一
    //LiquidCrystal lcd(12,11,10,9,8,7,6,5,4,3,2);   //8数据口模式连线声明  
    LiquidCrystal lcd(3,4,7,8,11,12,13); //4数据口模式连线声明 
    lcd.home();        //把光标移回左上角,即从头开始输出 
    lcd.print("    Distance: ");       //显示
    lcd.setCursor(6,2);   //把光标定位在第2行,第6列
    lcd.clear();      //清屏

  • 相关阅读:
    Prim算法以及Kruskal算法
    PAT甲级考前整理(2019年3月备考)之三,持续更新中.....
    PAT甲级考前整理(2019年3月备考)之一
    PAT甲级考前整理(2019年3月备考)之二,持续更新中.....
    linux下挂载U盘
    opencv2已有的情况下,安装opencv3以及对应的opencv_contrib
    二维数组和二级指针做函数参数的问题
    ubuntu14.04下 python2.7怎么链接到安装在指定文件夹的opencv3
    使用opencv的nonfree模块
    PaddlePaddle开源平台的应用
  • 原文地址:https://www.cnblogs.com/gaosheng-221/p/6634551.html
Copyright © 2011-2022 走看看