본문 바로가기
C++

[C++] 아두이노로 I2C LCD 모듈 사용하기

by teamnova 2024. 4. 26.

안녕하세요.

이번 시간에는 아두이노로 I2C LCD 모듈을 사용해보겠습니다.

 

아두이노에 대해 기본적인 내용을 알고 싶다면 아래 게시글을 참고해주세요. 

https://stickode.tistory.com/1044

 

[C++] 아두이노로 서보 모터 사용하기

이번 시간에는 아두이노로 서보 모터 사용하는 예제를 진행하겠습니다. 1. 아두이노란? 아두이노(Arduino)는 사용하기 쉬운 하드웨어와 소프트웨어를 기반으로 한 오픈 소스 전자 플랫폼입니다.

stickode.tistory.com

 

1. I2C LCD 모듈이란?

LCD에 I2C를 합친 모듈입니다. I2C는 "Inter-Integrated Circuit"의 약자로 여러 디바이스가 하나의 데이터 버스를 공유하는 통신 프로토콜이고, 아두이노와 LCD 사이의 통신을 간소화하며 필요한 핀 수를 줄여줍니다.

 

 

2. 준비물

아두이노 우노, I2C LCD

 

 

3. 회로도

 

 

4. 소스 코드

LCD에 "Hello World"를 표시하는 소스 코드입니다.

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// LCD 디스플레이는 A4, A5 사용 (IIC) (scl은 우노에서 A5)
// HEX코드는 테스터를 통해 반드시 확인. 16문자 2줄
// 아두이노 1.64로 컨버팅 (16-02-25)
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  lcd.init();  //LCD 초기화
  lcd.backlight(); // 백라이트 활성화
}

void loop() {
  lcd.init(); // LCD 초기화 (필요한 경우)
  lcd.setCursor(0, 0); // 커서를 첫 번째 줄의 시작 위치로 이동

  lcd.print("Hello TeamNova!"); // 첫 번째 줄에 텍스트 출력
  delay(2000); // 2초 대기
  
  lcd.setCursor(0, 1); // 커서를 두 번째 줄 첫 번째 위치로 이동

  lcd.print("Hello Stickode!"); // 두 번째 줄에 텍스트 출력
  delay(2000); // 2초 대기
 
  lcd.clear(); // LCD 화면 지우기
}

 

 

5. 실행 결과