2023电赛复盘:超声波HC-SR04模块使用(三)

在此部分,我们将深入探讨如何在OLED显示器上显示来自HC-SR04超声波传感器的数据。以下是关键代码段及其解释:

#include 
#include 
#include 

#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64

Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);

void setup() {
  if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { 
    Serial.println(F("SSD1306 allocation failed"));
    for(;;);
  }
  display.display();
  delay(2000);
  display.clearDisplay();
  display.setTextSize(1);
  display.setTextColor(SSD1306_WHITE);
  display.setCursor(0,0);
  display.print("Distance: ");
  display.display();
}

void loop() {
  long duration, distance;
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  distance = (duration / 2) / 29.1;
  display.setCursor(0, 10);
  display.print(distance);
  display.println(" cm");
  display.display();
  delay(2000);
}

这段代码展示了如何初始化OLED显示器,并从HC-SR04传感器获取距离数据并在显示器上显示出来。

通过setup()函数初始化显示器,并在loop()函数中不断更新距离数据,使其实时显示在OLED屏幕上。

此方法不仅可以增强系统的可视化效果,还能提高用户对数据的实时监控能力。

zip 文件大小:4.26KB