아두이노 우노에서 2줄짜리 lcd에 문자와 숫자를 출력해보자. 1602 lcd 출력용 PCB는 다리 핀 수(16개)가 너무 많아 지나치게 많은 점퍼선 와이어링 부담으로 인해 초보 사용자를 쫄게 하는 면이 있는 것이 사실이나 한번 정도 해봐야 하는 통과 의례로 생각하자.
GND(VSS) 와 Vcc(VD0)는 0V 와 5V 배선이다.
Contrast adjust는 lcd 의 배경과 출력 내용과의 밝기 대비를 조절한다. 가변 저항의 양단에 5V를 걸어준 상태에서 손잡이를 돌리면 가운데 배선에서 0∼5V 사이
의 전압이 출력되어 lcd 화면 밝기가 조절된다.
RS는 0 이면 명령(Instruction)을 수행하고 1이면 데이터(Data)를 처리한다. 클라스 명령 즉 lcd()에서 RS 핀 번호 아두이노의 12를 설정해 두면 된다.
Read/Write Select에 LOW 값을 설정하면 Write 상태가 되며 HIGH 값을 설정하면 Read 상태가 된다. lcd 출력은 Write 모드이므로 핀을 GND에 연결한다.
lcd Read/Write를 위해서는 Enable signal 핀이 설정되어야 한다. 마찬가지로 클라스 명령 즉 lcd()에서 아두이노 의 핀 번호 11번을 지정해 줄 필요가 있다.
아울러 문자를 출력하기 위한 lcd PCB의 데이터 핀들은 DB0,DB1,⚫⚫⚫,DB7 까지 8핀을 모두 다 사용하는 방법과 DB4,DB5,DB6,DB7 4핀만을 사용하는 방법이 있다. 여기서는 4핀만을 사용하는바 아두이노의 데이터 핀들 D2,D3,D4,D5 핀을 사용하여 코딩해 본다.
lcd 출력을 위한 코딩 단계에서 LiquidCristal.h 라이브러리가 필요하며 스케치 탭의 라이브러리 추가 메뉴의 라이브러리 관리 메뉴에서 다음과 같이 LiquidCrystal 이라는 명칭으로 검색하면 이미 이 라이브러리가 깔려 있는지 여부가 확인된다. LiquidCrystal Built-in ⚫⚫⚫이라는 메시지가 뜨는 것으로 보아서 이미 아두이노 편집기 설치 시에 포함되어 있음을 알 수 있다.
Hellow World! 코드는 lcd 디스플레이 체크를 위한 가장 간단한 코드이다.
setup()에서 16글자 2줄로 정의 후 출력한다.
loop()에서 setCursor(0,1) 즉 가로로 첫 번째 즉 0번째에서 세로로 두 번째 즉 1번째에 정수 n을 출력한다. 정수 n의 값을 증가 시키면서 반복 출력한다.
lcd_01
#include <LiquidCrystal.h>
LiquidCrystal lcd(12,11,5,4,3,2);
int n = 0;
void setup() {
lcd.begin(16,2);
lcd.write(" Hellow World! ");
}
void loop() {
lcd.setCursor(0,1);
lcd.print(n);
delay(500);
n++;
}
'아두이노프로세싱 프로그래밍' 카테고리의 다른 글
백팩(backpack)PCB 회로를 부착한 I2C인터페이스 1602 lcd 출력 (0) | 2017.12.15 |
---|---|
초보자를 위한 아두이노 DHT11 온습도 측정 결과 1602 lcd 출력 (0) | 2017.11.28 |
weMos의 LED 및 DHT11 사물인터넷 와이파이 제어를 위한 HTML 코딩 (0) | 2017.11.22 |
아두이노 NodeMCU GP2Y1010A 미세먼지 신호 디지털 저주파 필터링 (0) | 2017.10.31 |
ESP8266WiFi.h ZIP (0) | 2017.10.10 |