I2C LCD 예제가 적용되지 않을 때.
아두이노 키트셋을 처음사고 제일 먼저 해본게 LCD 였는데
키트자체에 I2C 칩이 달려있어서 구글에 많이 나와있는 1602 LCD 모듈 사용하는 방법을 따라해 보았으나 아무런 표시가 되지않는다.
--------------------------------------------------------------------------------------
I2C 제어를 위한 라이브러리는 Arduino-LiquidCrystal-I2C-library를 사용.
깃허브 링크
(https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library)
예제 Hello, World조차 실행되지 않음.
--------------------------------------------------------------------------------------
구글링으로 찾을 수 있는 블로그 포스트 링크
(http://www.hardcopyworld.com/ngine/aduino/index.php/archives/181)
다만 위 블로그에서 설명하는 라이브러리는 구버전인지 Setup이 조금 다르다.
위 블로그를 참고하려면 위블로그에 올라와 있는 라이브러리를 사용하자.
--------------------------------------------------------------------------------------
문제가 되는 부분은 LCD 변수를 선언할 때 사용되는 주소이다.
LiquidCrystal_I2C lcd(0x27, 16, 2);
잘은 모르겠으나 H/W에 종속된 주소인거 같은데, 보통은 해당 예제처럼 0x27이다.
그러나 H/W에 따라서 다를 수도 있으니, 이를 찾아야한다.
라이브러리 관리로 들어가서 i2c detect를 검색하여 설치하자.
그러면 예제에 새로운 라이브러리가 추가된다.
해당 예제를 업로드하고 시리얼모니터(우측 상단의 돋보기)를 보면 다음과 같이 표시된다.
내 아두이노에는 현재 I2C LCD밖에 연결되어 있지않다. 고로 표시되는 주소3F는 LCD의 주소.
이제 LiquidCrystal_I2C lcd(0x3F, 16, 2);
를 선언하고 LCD를 사용하자.