Arduino爱好者

 找回密码
 立即注册

QQ登录

只需一步,快速开始

楼主: eagler8

[经验] 【Arduino】168种传感器模块系列实验(58)---SR04超声波测距...

[复制链接]
发表于 2020-12-29 01:31 | 显示全部楼层
为什么我做的uno+sr0+tm1637显示距离数字很奇怪,离探头越近数字变大,而且有莫名其妙的数值显示, 2222.png 333.png 4444.png 555.png
 楼主| 发表于 2020-12-29 08:59 | 显示全部楼层
pooooyhb 发表于 2020-12-29 01:31
为什么我做的uno+sr0+tm1637显示距离数字很奇怪,离探头越近数字变大,而且有莫名其妙的数值显示,
...

换帖子前面的示例程序试试看
发表于 2021-2-5 21:34 | 显示全部楼层

我用的是Esp32-cam这块板子,可以吗,只要和你Uno3的端口一样就行?
 楼主| 发表于 2021-2-6 05:58 | 显示全部楼层
HelloArduion 发表于 2021-2-5 21:34
我用的是Esp32-cam这块板子,可以吗,只要和你Uno3的端口一样就行?

早上好,主要做的是Arduino的系列实验,Esp32-cam还没有接触
发表于 2021-2-21 14:02 | 显示全部楼层
eagler8 发表于 2021-2-6 05:58
早上好,主要做的是Arduino的系列实验,Esp32-cam还没有接触

中午好,我用ESP32-cam找到相应的GPIO给高低电平一样可以,非常感谢你的分享,给我提供初学者需要的思路。请问有MP3模块的实验吗,我正在学习语音播报
 楼主| 发表于 2021-2-21 16:57 | 显示全部楼层
HelloArduion 发表于 2021-2-21 14:02
中午好,我用ESP32-cam找到相应的GPIO给高低电平一样可以,非常感谢你的分享,给我提供初学者需要的思路 ...

真棒!

【Arduino】168种传感器模块系列实验(85)--- Mini MP3 Player模块
https://www.arduino.cn/forum.php ... mp;extra=#pid490057
 楼主| 发表于 2021-4-5 15:23 | 显示全部楼层
实验开源图形编程(Mixly、Mind+、编玩边学)
最简单的超声波测距程序及串口显示

13.jpg




 楼主| 发表于 2021-4-12 09:54 | 显示全部楼层
  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

  实验八十八: LCD1602A液晶屏5V显示模块(IIC/I2C接口)

  项目:显示超声波测距开源代码

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.   实验八十八: LCD1602A液晶屏5V显示模块(IIC/I2C接口)
  4.   项目:显示超声波测距
  5.   Arduino------LCD1602
  6.   5V-------------VCC
  7.   GND-----------GND
  8.   A4-----------SDA IIC 数据线
  9.   A5-----------SCL  IIC 时钟线
  10. */

  11. #include <Wire.h>
  12. #include <LiquidCrystal_I2C.h>
  13. #include <LiquidCrystal.h>
  14. double angle_rad = PI / 180.0;
  15. double angle_deg = 180.0 / PI;
  16. float getDistance(int trig, int echo) {
  17.   pinMode(trig, OUTPUT);
  18.   digitalWrite(trig, LOW);
  19.   delayMicroseconds(2);
  20.   digitalWrite(trig, HIGH);
  21.   delayMicroseconds(10);
  22.   digitalWrite(trig, LOW);
  23.   pinMode(echo, INPUT);
  24.   return pulseIn(echo, HIGH, 30000) / 58.0;
  25. }

  26. byte getLCDaddress() {
  27.   Wire.begin();
  28.   byte LCDaddress = 0x27;
  29.   Wire.beginTransmission(LCDaddress);
  30.   byte resultNumber = Wire.endTransmission();
  31.   if (resultNumber == 0) {
  32.     return LCDaddress;
  33.   } else {
  34.     LCDaddress = 0x3F;
  35.   }
  36.   Wire.beginTransmission(LCDaddress);
  37.   resultNumber = Wire.endTransmission();
  38.   if (resultNumber == 0) {
  39.     return LCDaddress;
  40.   }
  41. }
  42. LiquidCrystal_I2C lcd = LiquidCrystal_I2C(0x3F, 16, 2);

  43. void setup(){
  44.   lcd = LiquidCrystal_I2C(getLCDaddress(), 16, 2);
  45.   lcd.init(); //初始化LCD
  46.   lcd.backlight(); //打开背光
  47.   lcd.display();
  48. }

  49. void loop() {
  50.   lcd.setCursor(0, 0);
  51.   lcd.print(getDistance(7, 8));
  52.   lcd.setCursor(10, 1);
  53.   lcd.print(getDistance(7, 8));
  54.   delay(1 * 1000);
  55. }
复制代码

 楼主| 发表于 2021-4-12 10:13 | 显示全部楼层
实验场景图

17.jpg



 楼主| 发表于 2021-4-12 10:15 | 显示全部楼层
实验开源图形编程(Mixly、Mind+、编玩边学)

LCD1602A显示超声波测距



16.jpg


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino爱好者

GMT+8, 2023-2-4 16:52 , Processed in 0.071973 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表