개발/아두이노

[아두이노] LCD 동작소스코드

두노이노 2014. 12. 9. 19:48

디스플레이가 있다면 사용자로부터 편하고 직관적인 작품을 만들 수 있다.


LCD는 기본적으로 다룰 줄 알아야 한다.


아두이노에서 LCD는 기본으로 제공되는 소스가 있다.





이 중에 HelloWorld 라는 소스를 봐보자

 

참고로 LCD의 약자는 Liquid Crystal Display 이다.

 

<소스>

 

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
 lcd.begin(16, 2);
 lcd.print("hello, world!");
}

void loop() {
  lcd.setCursor(0, 1);
  lcd.print(millis()/1000);
}

 

</소스>

 

 

<회로도>

 




 

</회로도>

 

 

<동작설명>


LCD는 16*2 를 기준으로 생각한다.

 

16 * 2는 16칸에 2줄짜리 LCD를 말한다.

 

 lcd.setCursor(0, 0);

 lcd.setCursor(0, 1);

 

이 함수는 말그대로 커서위치를 말한다.

 

앞의 숫자는 16칸 중에 몇번째 인지 쓰면 되고 뒤의 숫자는 첫째줄인지 둘째줄인지 쓰면된다.

 

줄 : 0번째 줄, 1번째 줄

칸 : 0번째 칸 ~ 15번째 칸

 

으로 생각하면 된다.

 

lcd.print("test");

 

이 소스는 문자를 출력하는데 쓰인다.

 

코딩은 딱히 어려울것이 없지만 회로도에서 헷갈릴 수 있으니 아두이노와의 연결을 조심해야 한다.

 

LCD의 15, 16번 핀은 백라이트이다.

 

15, 16을 주게되면 불 들어오는것을 볼 수 있다.

 

 가끔 LED 백라이트가 없는 모듈이 있으니! 참고하길