编辑
2024-04-13
发癫
00
请注意,本文编写于 392 天前,最后修改于 392 天前,其中某些信息可能已经过时。

今天买的杜邦线到了,测试一下超声波传感器

74b0caf4a9458b771c00b4a150ad484.jpg

架不住他便宜,能用就行

代码:

cpp
#include <Adafruit_GFX.h> #include <Adafruit_ST7735.h> #include <SPI.h> #include <NewPing.h> // 添加超声波传感器库 #define TFT_CS 5 #define TFT_RST 4 #define TFT_DC 15 #define TRIGGER_PIN 25 // 超声波传感器的触发引脚 #define ECHO_PIN 26 // 超声波传感器的回波引脚 #define MAX_DISTANCE 200 // 最大检测距离,单位为厘米 Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST); NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // 定义超声波传感器对象 unsigned long startTime = 0; void setup() { Serial.begin(9600); tft.initR(INITR_BLACKTAB); tft.setRotation(1); tft.fillScreen(ST7735_BLACK); startTime = millis(); } void loop() { tft.fillScreen(ST7735_BLACK); // 清除屏幕内容 int distance = sonar.ping_cm(); // 读取超声波传感器距离值 // 根据距离显示不同的信息 if (distance < 50) { // 距离小于50厘米时显示红色警告信息 displayWarning(distance); } else { // 距离大于等于50厘米时显示绿色安全信息 displaySafe(distance); } delay(1000); } // 显示警告信息 void displayWarning(int distance) { tft.setTextColor(ST7735_RED); tft.setCursor(10, 80); tft.setTextSize(1); tft.print("Current Distance: "); tft.println(distance); tft.println("Warning!!!"); } // 显示安全信息 void displaySafe(int distance) { tft.setTextColor(ST7735_GREEN); tft.setCursor(10, 80); tft.setTextSize(1); tft.print("Current Distance: "); tft.println(distance); tft.println("Safing......"); }

本文作者:yowayimono

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!