aduino,超声波

来源:互联网 发布:淘宝确认收货几天 编辑:程序博客网 时间:2024/04/26 01:18
float haha;
int pinLF=14;
int pinRF=15;
int pinLB=16;
int pinRB=17;
int PWM1=3;
int PWM2=5;
int shou=9;
int fa=8;
void setup(){
  pinMode(pinLF,OUTPUT);
  pinMode(pinRF,OUTPUT);
  pinMode(pinLB,OUTPUT);
  pinMode(pinRB,OUTPUT);
  pinMode(shou,INPUT);
  pinMode(fa,OUTPUT);
}
void loop(){
  back(1);
  digitalWrite(fa,LOW);
  delayMicroseconds(2);
  digitalWrite(fa,HIGH);
  delayMicroseconds(10);
  digitalWrite(fa,LOW);
  float haha=pulseIn(shou,HIGH);
  haha=haha/58;
  if (haha<=15)  straight(8);
  if (haha>5 && haha<17)  stopp(1);
  if (haha>17)  back(1);
}
void straight(int i)
{
  analogWrite(PWM1,198);
  digitalWrite(pinLB,HIGH);
  digitalWrite(pinRB,LOW);  
  analogWrite(PWM2,203);
  digitalWrite(pinLF,HIGH);
  digitalWrite(pinRF,LOW);
  delay(1000*i);
}
void back(int x)
{
  analogWrite(PWM1,200);
  digitalWrite(pinRB,HIGH);
  digitalWrite(pinLB,LOW);  
  analogWrite(PWM2,205);
  digitalWrite(pinRF,HIGH);
  digitalWrite(pinLF,LOW);
  delay(100*x);  
}
void stopp(int X)
{
  analogWrite(PWM1,0);
  digitalWrite(pinLB,LOW);
  digitalWrite(pinRB,LOW);  
  analogWrite(PWM2,0);
  digitalWrite(pinLF,LOW);
  digitalWrite(pinRF,LOW);
  delay(300*X);
}
0 0
原创粉丝点击