정보를 화면으로 표시하는 디스플레이 장치는 매우 많은 종류가 있으나, 가장 저렴하고 간편하게 정보를 출력하는 방식중에 LCD( Liquid Crystal Display:액정표시장치) 방식  즉, 전기적 신호로 액정의 모양을 변화시킨 후 화면 뒷부분에서 백라이트로 빛을 비추면 액정의 모양이 화면에 정보로서 표시되는 방식이 있다. 

 

 

 

 

 

LCD 방식 중에서도 제한된 숫자의 문자만을 표시하도록 하여 저렴하게 판매하는  LCD 문자 디스플레이 장치가 아두이노 정보표시용으로 많이 사용된다.   

 

 

 

 

위 그림은 일반적으로 가장 흔하게 사용하는 16X2(16자 2열) 표시용 이지만 이 외에도 표시 문자수 크기별로 또는 백라이트 컬러별로 다양한 종류들이 시판되고 있다.

 

 

 

구매시 주의사항 : 장치 뒷면에 보면 I2C 인터페이스모듈이 부착되어 있는 장치도 있고, 부착되어 있지 않고 단순 디스플레이 장치만 있는 경우도 있는데 I2C 인터페이스 모듈이 부착되어 있는 제품이 사용하기 편리하므로 되로록이면 I2C 부착형을 구매하는 것이 좋다.  

 

 

 

 

 

I2C 인터페이스 모듈이 부착되어 있지 않는 경우에는 디스플레이 보드의 매우 많은 핀들을 일일히 제어하는 프로그램을 개발하거나 아래와 같은 I2C 인터페이스 모듈을 별도로 구매하여 납땜작업을 해야 만이 편리한 I2C 4핀 연결방식으로 사용할 수 있게 된다.     

 

 

 

사용법 및 아두이노와의 연결

 

 

I2C방식의 연결이므로 아두이노의 SDA핀과 SCL핀을 찾아 연결해 주어야 하는데, 아두이노 기종별 SDA와 SCL핀의 배정은 다음과 같으므로  장치의 SDA핀과 SCL핀을 해당 기종의 핀에 연결하고 VCC와 GND는 5V와 GND에 각각 연결해 준다.   

 

 기종

 SDA핀 번호

SCL핀 번호 

 우노 ,나노

 아날로그 4번

 아날로그 5 번

 메가2560, 듀에

 디지털 20번

 디지털 21 번 

 ESP8266, D1mini

 디지털 2 번

 디지털 1번

 ESP32

 GPIO 21

 GPIO 22

 

 

 

라이브러리 설치

 

- 아두이노와 LCD장치간 연결( I2C방식통신)을 하기 위해서는 전용 라이브러리를 추가로 설치해 주어야 한다.

 - IDE 스케치 메뉴 -> 라이브러리 포함하기 -> 라이브러리관리하기 화면에서 "LiquidCrystal I2C" 를 검색하여 설치한다.

 

 

샘플프로그램

 

 

3 line :  LiquidCrystal_I2C lcd(0x3F,16,2);   0x3F Adress에 연결되는 16문자 2줄 짜리 I2C방식 LCD장치를  lcd라는 이름으로 선언

8 line :  lcd.backlight();  : 백라이트 켜기

9 line :  lcd.setCursor(col,line) 로 커서의 위치를 지정한다 ( 숫자는 0부터 시작함에 주의 )     
    -예 ) (0,0) : 첫째 줄 첫째 문자,     (2,1) : 둘째 줄 세번째 문자,

10 line : lcd.print("Hello, everyone!"); 현재 커서 위치에 지정하는 문자열을 출력시킨다. 

    -lcd.clear();  : lcd 문자 모두 지우기

 

 

LCD 화면에 문자가 표시 되지 않을 경우  

 

- LCD 밝기 조절 볼륨을 돌려 화면 밝기을 조절 해 보면 밝기부족으로 보이지 않던 문자가 보이는 경우도 있다.

 

- LCD I2C장치의 Address는 통상 0x3F이지만 장치 제조사별로 다른 Adress를 사용하는 경우도 있는데 다음의 장치 Address scan 프로그램으로 알아 낼수 있다.  알아낸 장치 고유 Address를 LiquidCrystal_I2C lcd(0x3F, 16,2); 문장의 0x3F 대신 지정한 후 다시 프로그램 업로드하여 테스트해 본다.

 

 

 

 

위 코드를 아두이노로 업로드하여 실행시키고 툴->시리얼모니터화면에 표시되는 메세지를 보면 현재 연결된 장치의 Adress를 확인할 수 있다.

 

+ Recent posts