arduino之超声波测距仪的制作及源码分享

材料清单

arduino uno r3;
超声波模块;
lcd1602显示屏带转接板;
杜邦线公对母若干;
arduino数据线一根;
材料图
arduino之超声波测距仪的制作及源码分享

线的连接

arduino 超声波 lcd1602
A4 SDA
A5 SCL
2 Trig
3 echo
VCC VCC VCC
GND GND GND

测试代码

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x3f,16,2); //SDA --A4,SCL -- A5
//当用了转接板以后需要查看自己lcd地址我的是0x3f,还有一种是0x27
const int TrigPin = 2;//超声波定义数字接口2,3
const int EchoPin = 3;
float cm;
void setup()
{
  lcd.init();                      // initialize the lcd 

  // 点亮LCD
  lcd.backlight();

lcd. begin(16, 2);
pinMode(TrigPin, OUTPUT);
pinMode(EchoPin, INPUT);
}
void loop()
{
digitalWrite(TrigPin, LOW); //低高低电平发一个短时间脉冲去TrigPin
delayMicroseconds(2);
digitalWrite(TrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(TrigPin, LOW);
int timer=-500;
cm=pulseIn(EchoPin, HIGH)/58.0;
cm=(int (cm*100.0))/100.0;
delay(1500);
 
 
if(millis()>timer +500)
{
lcd. print ("Distancce:");
lcd. setCursor(6,1);
lcd. print (cm);
lcd. print ("cm ");
lcd. home();
timer=millis()+500;
}
}

效果图
arduino之超声波测距仪的制作及源码分享

上一篇:解决vscode-pandoc插件生成pdf中文显示问题


下一篇:节假的一天