生成一段代码,使用ARDUINO UNO、MLX90614、OLED、KY-008以及开关,实现开关按下测温显示、激光开5S,不按清屏不显示、激光关闭
时间: 2024-01-26 14:02:45 浏览: 119
针对您的需求,以下是一段使用 ARDUINO UNO、MLX90614、OLED、KY-008和开关的代码,实现了开关按下测温显示,激光开5S,不按则清屏不显示,激光关闭的功能:
```C++
#include <Wire.h>
#include <Adafruit_MLX90614.h>
#include <Adafruit_SSD1306.h>
#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);
#define laserPin 5
#define switchPin 6
Adafruit_MLX90614 mlx = Adafruit_MLX90614();
void setup() {
Serial.begin(9600);
mlx.begin();
pinMode(laserPin, OUTPUT);
pinMode(switchPin, INPUT);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
}
void loop() {
if (digitalRead(switchPin)) { // if switch is pressed
float temp = mlx.readObjectTempC(); // read temperature
display.setCursor(0,0);
display.println("Temp: ");
display.println(temp);
digitalWrite(laserPin, HIGH); // turn on laser
delay(5000); // wait 5 seconds
digitalWrite(laserPin, LOW); // turn off laser
} else {
display.clearDisplay();
display.display();
}
}
```
希望以上代码能够满足您的需求,如有疑问或需要进一步的帮助,请随时联系我!
阅读全文