• ardunio 实验:超声波测距、声光报警模拟倒车雷达


    所用元件:

         1、Arduino 2012 UNO R3开发板
         2、超声波模块:HC-SR04
         3、LED \ 蜂鸣器

    功能:

    • 输出测距信息至串口
    • 距离20CM 蜂鸣器开始报警,LED闪烁
    • 20CM 到 3CM 间 报警音不断急促,3CM内报警音长鸣,LED长亮

    代码:

     1 int beeppin = 8;
     2 int ledpin=9;
     3 int echo= 6;
     4 int trig=7;
     5 unsigned long time_echo=0; // record the pulse width by sensor returns
     6 unsigned long distance =0; // record the distance value;
     7  
     8 void setup(){
     9    Serial.begin(9600);
    10    pinMode(beeppin,OUTPUT);
    11    pinMode(ledpin,OUTPUT);   
    12    pinMode(echo,INPUT);
    13    pinMode(trig,OUTPUT);
    14 }
    15  
    16 void loop(){
    17   digitalWrite(trig,HIGH);  //send pulse
    18   delayMicroseconds(80);    //set pulse width with 50us(>10us)
    19   digitalWrite(trig,LOW);   //stop send
    20  
    21   time_echo = pulseIn(echo,HIGH); //get return pulse width
    22   if((time_echo<60000)&&(time_echo>1)) //valid scope 1-60000
    23   {
    24     distance = (time_echo*34/100)/2; //mm   
    25     if(distance < 200)
    26      {
    27       if(distance<30){
    28         digitalWrite(beeppin,HIGH);
    29         digitalWrite(ledpin,HIGH);
    30       }else{   
    31         alert(distance/2);
    32       }
    33      }
    34     Serial.print(distance,DEC);
    35     Serial.println('\n');
    36  
    37   }
    38   delay(100);
    39 }
    40 void alert(unsigned i){
    41   digitalWrite(beeppin,HIGH);
    42   digitalWrite(ledpin,HIGH);
    43   delay(i);
    44   digitalWrite(beeppin,LOW);
    45   digitalWrite(ledpin,LOW);
    46   delay(i);
    47 }
  • 相关阅读:
    php源码学习——开篇
    springMvc入门一
    spring 整合 servlet
    java jar包下载地址
    java spring学习
    Servlet 学习
    JRE_HOME environment variable is not defined correctly This environment variableis needed to run this program
    java JBDC操作
    Java 自定义异常
    JAVA的日期类DATE
  • 原文地址:https://www.cnblogs.com/vmax/p/2733730.html
Copyright © 2020-2023  润新知