I2C를 이용하여 LCD에 출력을 하는데 메시지와 함께 백라이트를 점멸시킨다.
※ 명령어
- LiquidCrytral_I2C(I2C 주소, 가로 글자수, 세로 글자수) : LCD 모듈이 연결된 I2C 주소와 LCD의 가로, 세로 글자수를 설정한다.
- lcd.init( ) : LCD 모듈을 설정한다.
- lcd.clear( ) : lcd란 이름의 LCD 모듈의 화면의 모든 표시를 지우고 커서를 왼쪽 위로 옮긴다.
- lcd.home( ) : lcd란 이름의 LCD 모듈의 커서를 왼쪽 위로 옮긴다.
- lcd.setCursor(열, 행) : lcd란 이름의 LCD 모듈의 커서를 원하는 위치로 이동시킨다.
- lcd.print(데이터) : lcd란 이름의 LCD 모듈에 데이터를 출력한다.
- lcd.noBacklight( ) : lcd란 이름의 LCD 모듈의 백라이트를 소등한다.
- lcd.backlight( ) : lcd란 이름의 LCD 모듈의 백라이트를 점등한다.
/*
* 예제
* I2C를 이용한 LCD 출력
*/
#include <Wire.h> // I2C 통신 라이브러리 설정
#include <LiquidCrystal_I2C.h> // I2C LCD 라이브러리 설정
LiquidCrystal_I2C lcd(0x27, 16, 2); // LCD I2C adrress 설정
void setup() {
Serial.begin(9600); //9600 bps로 시리얼 통신 설정
lcd.init(); // LCD 설정
lcd.clear(); // LCD를 모두 지운다.
lcd.backlight(); // 백라이트를 켠다
// Arduino LCD, Welcome 표시
lcd.setCursor(0,0);
lcd.print("Arduino LCD");
delay(1000);
lcd.setCursor(0,1);
lcd.print("Welcom!");
delay(250);
//LCD 백라이트를 두 번 점멸
lcd.noBacklight();
delay(250);
lcd.backlight();
delay(250);
lcd.noBacklight();
delay(250);
lcd.backlight();
delay(3000);
//Open Serial Monitor, Type to dispaly 표시
lcd.clear();
lcd.setCursor(0,0); // Start at character 0 on line 0
lcd.print("Open Serial Monitor");
lcd.setCursor(0,1);
lcd.print("Type to display");
}
void loop() {
//시리어 통신 수신값이 있을 때
if(Serial.available()){
delay(100);
lcd.clear(); // 모두 삭제
lcd.setCursor(0,0); // 커서를 좌측 상단으로
lcd.print("Message for PC"); // 메지지 출력
lcd.setCursor(0,1); // 커서를 두 번째 줄로
// LCD에 PC에서 전송된 데이터를 출력
while(Serial.available()>0){
lcd.write(Serial.read());
}
}
}
'아두이노' 카테고리의 다른 글
[아두이노] LED 밝기 조절 (0) | 2020.10.13 |
---|---|
[아두이노] LED 점멸 (0) | 2020.10.13 |
[아두이노] I2C를 이용한 LCD 출력 ① (0) | 2020.10.10 |
[아두이노] 아두이노에서 시리얼 통신을 이용하여 데이터 수신하기 (0) | 2020.10.10 |
[아두이노] 변수 유형별로 컴퓨터에 전송하기 (0) | 2020.10.10 |