#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define BUTTON_PIN PC13 // ปุ่มบนบอร์ด Nucleo (PC13)
LiquidCrystal_I2C lcd(0x27, 16, 2); // ที่อยู่จอ LCD I2C
void setup() {
pinMode(BUTTON_PIN, INPUT_PULLUP); // ปุ่มดึงขึ้น
Wire.begin(); // เริ่มต้น I2C
lcd.begin(16, 2); // กำหนดขนาดจอ
lcd.backlight(); // เปิด backlight
lcd.setCursor(0, 0);
lcd.print("Press Button");
}
void loop() {
if (digitalRead(BUTTON_PIN) == LOW) {
int sensorValue = random(0, 1001); // สุ่มค่า 0-1000
int humidity = map(sensorValue, 0, 1000, 0, 100); // แปลงเป็น %
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Humidity:");
lcd.setCursor(0, 1);
lcd.print(humidity);
lcd.print("%");
delay(1000); // แสดงผล 1 วิ
lcd.clear();
lcd.print("Press Button");
while (digitalRead(BUTTON_PIN) == LOW); // รอปล่อยปุ่ม
delay(50); // กันสัญญาณเด้ง
}
}
Loading
st-nucleo-c031c6
st-nucleo-c031c6