// khởi tạo 01 biến có nhiệm vụ đọc tín hiệu Analog;
//Bài tập: Sử dụng -3 biến trở đọc và in ra giá trị trên ô cửa sổ Serial monitor
//Tương ứng chân A0; A1;A2
// thông tin biến trở https://docs.wokwi.com/parts/wokwi-potentiometer
// thông tin biến trở https://docs.wokwi.com/parts/wokwi-potentiometer
/* Lưu ý có thể nhân bản linh kiện bằng cách sử dụng tổ hợp phím ctrl + c; ctrl+v
để xoay linh kiện chọn linh kiện nhấn phím R*/
const int analogpin0=A0;
const int analogpin1= A1;
const int analogpin2 =A2;
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); // thay đổi màn hình LCd 20x4
void setup() {
Serial.begin(115200);
lcd.init();
lcd.backlight();
lcd.setCursor(3,0);// cột 3 và hàng 0 kí tự đầu tiên wokwi
lcd.print("wowki");
// put your setup code here, to run once:
}
void loop() {
// lặp nhiều lần
// put your main code here, to run repeatedly:
int Sensor0 = analogRead(analogpin0);
int Sensor1 = analogRead(analogpin1);
int Sensor2 = analogRead(analogpin2);
// in data 03 cảm biến lên màn hình lcd
lcd.clear();// cho phép xoá kí tự cũ
//in tên data
lcd.setCursor(0,0);
lcd.print("D1");
lcd.setCursor(5,0);
lcd.print("D2");
lcd.setCursor(10,0);
lcd.print("D3");
// in data sensor 1
lcd.setCursor(0,1);
lcd.print(Sensor0);
// in data sensor 2
lcd.setCursor(5,1);
lcd.print(Sensor1);
// in data sensor 3
lcd.setCursor(10,1);
lcd.print(Sensor2);
// sử dụng hàm Serial.println();
Serial.print("sensor0: ");
Serial.println(Sensor0);
Serial.print("sensor1: ");
Serial.println(Sensor1);
Serial.print("sensor2: ");
Serial.println(Sensor2);
//Serial.print(" ");
delay(1000);
}
/*
Giải thích code
LiquidCrystal_I2C: Thư viện điều khiển màn hình LCD I2C.
addr: Địa chỉ I2C của màn hình (kiểm tra datasheet).
lcd_cols, lcd_rows: Số cột và số dòng của màn hình.
lcd.init(): Khởi tạo màn hình.
lcd.backlight(): Bật đèn nền.
lcd.setCursor(x, y): Đặt con trỏ đến cột x, hàng y (đếm từ 0).
lcd.print(): In chuỗi ký tự.
Các hàm thường dùng
lcd.clear(): Xóa toàn bộ màn hình.
lcd.home(): Đặt con trỏ về vị trí đầu tiên (cột 0, hàng 0).
lcd.print(): In chuỗi ký tự.
lcd.setCursor(x, y): Đặt con trỏ đến vị trí x, y.
lcd.write(): In một ký tự.
lcd.print(number, base): In một số với cơ số base (ví dụ: base 10 là số thập phân).
*/