前言
接触Arduino有一段时间了,Arduino也算得上是容易上手的开发板之一,对于Arduino开发板也有了一定的了解,在本内容也算得上是本人发表的第一个项目(这个项目应该不少专业的人士有做过);《倒车雷达》,那么现在开始
步骤
第一步:在电脑安装Arduino IDE
(步骤:略,Windows、Linux,Mac,都有)
第二步:准备硬件
一个Arduino UNO开发板(为什么是这个呢…主要是个头小)
一个超声波传感器
一个面包板
三颗LED灯(有条件就三颗不同颜色)
一个蜂鸣器
若干根导线
第三步接线
超声波模块的接线:
VCC >>> 5V
TRIG >>> 2
ECHO >>> ~3
GND >>> GND
蜂鸣器的接线:
正极 >>> 4
负极 >>> GND
LED灯珠接线
正极:5,6,7
负极:GND
第四步:写代码
//ARDUINO-SR04倒车雷达
const int TrigPin = 2;//发出超声波
const int EchoPin = 3;//收到反射回来的超声波
const int BeepPin = 4;
const int LedPin = 5;
const int Led1Pin = 6;
const int Led2Pin = 7;
int val=0;
int distance=0;
void setup()
{
Serial.begin(9600);//设置波特率
pinMode(TrigPin, OUTPUT);
pinMode(EchoPin, INPUT);
pinMode(BeepPin, OUTPUT);
pinMode(LedPin, OUTPUT);
pinMode(Led1Pin, OUTPUT);
pinMode(Led2Pin, OUTPUT);
Serial.println("Sensor Value:");
}
void loop()
{
digitalWrite(TrigPin, LOW);
delayMicroseconds(2);
digitalWrite(TrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(TrigPin, LOW);//通过这里控制超声波的发射
distance = pulseIn(EchoPin, HIGH) /58.0;//将回波时间换算成cm
Serial.print("Distance=");
Serial.print(distance);
if(distance < 30)
{
//digitalWrite(BeepPin, HIGH);
digitalWrite(LedPin, HIGH);
}
else
{
//digitalWrite(BeepPin, LOW);
digitalWrite(LedPin, LOW);
}
if(distance < 20)
{
digitalWrite(Led1Pin, HIGH);
}
else
{
digitalWrite(Led1Pin, LOW);
}
if(distance < 10)
{
digitalWrite(fengPin, LOW);
digitalWrite(BeepPin, HIGH);
digitalWrite(Led2Pin, HIGH);
}
else
{
digitalWrite(fengPin, HIGH);
digitalWrite(BeepPin, LOW);
digitalWrite(Led2Pin, LOW);
}
}
最后:编译,运行
效果视频在B站
视频号:BV1154y137mP
一开始是打算用5VUSB风扇,由于USB母座还没到,下次在发理想效果