목차
I2C LCD1602 모듈
I2C LCD1602 는 16×2 배열의 캐릭터 LCD 를 I2C 로 제어할 수 있는 모듈입니다. 전원 2개핀과 2개의 핀으로 제어할 수 있어 회로 구성이 간단해 집니다.
컨트롤 신호
4개의 핀이 사용되며 SCL, SDA, VCC, GND 핀입니다.
핀명 | 기능 |
---|---|
SCL | I2C SCL 신호 |
SDA | I2C SDA 신호 |
VCC | 5V |
GND | GND |
부품 목록
부품명 | I2C LCD |
|
---|---|---|
기능 | TEXT 출력 | |
수량 | 1 | |
색상 | BLUE |
부품명 | 아두이노 UNO R3 |
|
---|---|---|
기능 | 아두이노 모듈 | |
수량 | 1 | |
핀 연결
아래와 같이 I2C LCD와 Arduino UNO R3 핀을 연결합니다.
I2C LCD핀 | Arduino UNO R3 핀 |
---|---|
SCL | SCL (우측 상단에 위치) 또는 A5 |
SDA | SDA(우측 상단에 위치) 또는 A4 |
VCC | 5V |
GND | GND |
소스코드
소스코드는 [파일]=>[예제]=>[WhiteAT UNO] => [Starter] => [02_I2C_LCD] 에 있으며
라이브러리는 아두이노 개발환경 을 참조하세요
/* 알찬 아두이노 세트(입문자용) 예제중 I2C LCD 제어 예제 입니다. 알찬 아두이노 세트(입문자용): https://kit128.com/goods/view?no=133 개별 부품 .UNO R3 : https://kit128.com/goods/view?no=337 .I2C LCD : https://kit128.com/goods/view?no=80 출처: http://whiteat.com/Arduino */ #include <Wire.h> #include <LiquidCrystal_I2C.h> // I2C LCD 기본 어드레스는 0x27 LiquidCrystal_I2C lcd(0x27); // 프로그램 시작 - 초기화 작업 void setup() { // 자동으로 I2C address 설정 lcd = LiquidCrystal_I2C(GetAddress()); lcd.begin (16,2); // 16 x 2 } // 계속 실행할 무한 루프 void loop() { lcd.setBacklight(HIGH); lcd.setCursor(0,0); lcd.print("KIT128.com "); lcd.setCursor(0,1); lcd.print("LCD I2C Module "); delay(1000); lcd.setBacklight(LOW); delay(1000); } // I2C address 찾기 byte GetAddress() { Wire.begin(); for (byte i = 1; i < 120; i++) { Wire.beginTransmission(i); if (Wire.endTransmission() == 0) { Serial.print("Found address: "); Serial.print(i, DEC); Serial.print(" (0x"); Serial.print(i, HEX); Serial.println(")"); return i; delay(10); } } }
결과 화면
화면에 TEXT를 출력한 상태로
1초마다 백라이트를 ON/OFF 합니다.
제품 구매
알찬 아두이노 키트(초보자용) 은 https://kit128.com/goods/view?no=133 에서 구매하실 수 있습니다.
Troubleshooting
I2C Address 확인
I2C LCD 의 기본 address 는 0x27 이나 모델에 따라 0x3F 인 경우도 있습니다.
I2C address 찾기문서(https://docs.whiteat.com/?p=673) 를 참조하여 address 을 먼저 확인하셔야 합니다.
Text 밝기 확인
Text 가 흐리거나 어둡게 나올 경우 가변저항(뒷면 파란색 부품)을 작은 십자 드라이버로 약간 돌려 가면서 Text의 밝기를 조절할 수 있습니다.
.