Arduino 开源纸盒超声波测距仪

写小小实验也一段时间了,感觉现在可以通过组合小实验,拼装一些小小作品了。

就像玩积木一样,这次做的是:


纸盒超声波测距仪


组合的功能

使用HC-SR04超声波模块,用作测量传感器;

用LCD1602 和 LCD1602 I2C模块,用作做显示数据

任意门:Arduino 和LCD1602液晶屏 I2C接口实验

任意门:Arduino 和 HC-SR04 超声波传感器 测距


大概程序思路流程就是:

读取超声波传感器数据  --  换算成CM -- 把数据显示到LCD1602上


如果觉得写得不错,又有闲余,可以支持一下

套件链接:https://item.taobao.com/item.htm?id=532904542023


实例效果

精度还是有欠缺正负3cm ,不过用于学习还是不错的



BOM表

Arduino Uno                          ×1

HC-SR04超声波传感器          ×1

LCD1602                             ×1

LCD1602 I2C 模块               ×1

9v电池座                               ×1

9V电池                                  ×1

跳线                                     若干

纸盒(二次利用,环保)      ×1


接线图



程序开源代码


#include <Wire.h>
#include <LiquidCrystal_I2C.h> //注意先添加LiquidCrystal_I2C库

#define Trig 2 
#define Echo 3 


float cm;
float temp;

LiquidCrystal_I2C lcd(0x3F,16,2);//请确定I2C模块的正确地址

void setup() {
  pinMode(Trig, OUTPUT);
  pinMode(Echo, INPUT);

  lcd.init();
  lcd.backlight();
}

void loop() {

    digitalWrite(Trig, LOW);
    delayMicroseconds(2);
    digitalWrite(Trig,HIGH); 
    delayMicroseconds(10);    
    digitalWrite(Trig, LOW); 
  
    temp = float(pulseIn(Echo, HIGH));
    cm = (temp * 17 )/1000;

  
  lcd.setCursor(0,0); 
  lcd.print("                ");
  lcd.setCursor(0,0); 
   
  lcd.print("D = ");
  lcd.print(cm);
  lcd.print(" cm");

  lcd.setCursor(0,1);  
  lcd.print("          By L.L.");

  delay(500);
}


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值