프로그래밍/IoT

I2C LCD 예제가 적용되지 않을 때.

최봉구 2017. 2. 5. 20:36

아두이노 키트셋을 처음사고 제일 먼저 해본게 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를 사용하자.





반응형