#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
#define pot A0 //กำหนดชื่อและขาต่ออุปกรณ์
#define led1 10
#define led2 11
int status_pot; //ประกาศตัวแปรเก็บค่าpot
int map_pot; //ประกาศตัวแปลเก็บค่าที่mapแล้ว
void setup() {
pinMode(pot, INPUT); //กำหนดให้เป็นอินพุท
pinMode(led1, OUTPUT); //กำหนดให้เป็นเอาท์พุต
pinMode(led2, OUTPUT);
lcd.init();
lcd.backlight(); //เปิดไฟพื้นหลัง
}
void loop(){
status_pot = analogRead(pot); //อ่านค่าจากpotเข้ามาเก็บไว้ในstatus_pot (0-1023)
lcd.setCursor(0,0);
lcd.print("status_pot=");
lcd.setCursor(12,0);
lcd.print(status_pot);
delay(1000); //หน่วงเวลา1วินาที
lcd.clear(); //เคลียร์หน้าจอ
map_pot = map(status_pot,0,1023,0,255); //เปลี่ยนค่าstatus_potแล้วเก็บไว้ใน map_pot
lcd.setCursor(0,1);
lcd.print("map_pot = ");
lcd.setCursor(12,1);
lcd.print(map_pot);
analogWrite(led1,map_pot); //สั่งให้LEDสว่างตามที่เราหมุน
analogWrite(led2,255-map_pot);
}