LCD
1. GND - 접지
2. VCC - 전원
3. VO - 대비 ( 화면 글자 밝기 )
4. RS - 레지스터 (명령어)
5. RW - read, write (읽고 쓰는 핀)
6. E - 데이터 준비 상태
7. DB 0 ~ 7 : 데이터 전송 핀 ( 보통은 8Bit 모드 , 핀이 부족한 경우 4Bit 모드도 사용함 - 2번 나누어서 전송)
8. LED - led 관련 핀 (백그라운드 밝기 )
한글 입력 X , 16개의 글자 x 2줄
- 버튼을 누르면 문장이 바뀌는 LCD 코드
#include <LiquidCrystal.h>
LiquidCrystal lcd(12,11,7,6,5,4);
// C++ code
//
int val;
int press=0;
int noPress =0;
void setup()
{
lcd.begin(16,2);
pinMode(3,INPUT);
}
void loop()
{
val = digitalRead(3);
if(val == HIGH){
press +=1;
delay(250);
}
if(press != noPress){
lcd.clear();
noPress = press;
}
if(press%2 == 0){
lcd.setCursor(5,0);
lcd.print("Hello");
}else{
lcd.setCursor(5,0);
lcd.print("Bye");
}
}
우측 이동 : lcd.scrollDisplayRight();
LCD 모듈 초기화 : lcd.begin(x , y ); , 16X2 LCD의 경우 lcd.begin(16,2)
LCD 값 출력 : lcd.print(값) / lcd.print(값, 옵션);
+ 값 : char, byte, int, long, string / 옵션(선택적 사용) BIN,DEC,OCT,HEX(진법)
커서 or 출력 위치 설정 : lcd.Cursor(x , y);
LCD 초기화 : lcd.init()
LCD 백라이트를 켬 : lcd.backlight();
LCD 백라이트를 끔 : lcd.noBacklight();
LCD 표시된 내용을 숨김 : lcd.noDisplay();
LCD 표시내용을 보임 : lcd.display();
커서를 표시함 : lcd.cursor();
커서를 없앰 : lcd.noCursor();
해당 LCD 좌표로 커서 이동 : lcd.setCursor(0,0);
커서를 0,0 좌표로 이동 (초기위치) : lcd.home();
커서를 깜빡임 : lcd.blink()
커서를 깜빡이지 않음 : lcd.noBlink()
LCD 화면에 값을 출력, 아스키코드 입력 시 해당문자 출력 : lcd.write(아스키코드값)
또는 다음과 같은 코드의 내용은, 시리얼모니터에 입력된 문자 그대로 lcd로 출력
if (Serial.available()) {lcd.write(Serial.read());}
LCD 화면에 값을 출력 : lcd.print("출력할 내용을 쓰세요")
LCD 모든 내용 지운 다음에 커서의 위치를 (0,0)으로 옮김 : lcd.clear()
lcd 내용을 우측으로 1칸 스크롤 : lcd.scrollDisplayRight()
lcd 내용을 좌측으로 1칸 스크롤 : lcd.scrollDisplayLeft()
출력내용을 자동으로 우에서 좌로 스크롤 : lcd.autoscroll()
LCD에 자신이 원하는 문양을 직접 디자인해서 출력할 때 사용 : lcd.createChar(배열의 인자 번호, 배열의 이름)
'IT Study > 개발 공부' 카테고리의 다른 글
GIT 참고자료 (0) | 2021.09.08 |
---|---|
아두이노 사용법 03 - LCD 실습 (0) | 2021.05.10 |
아두이노 사용법 01 - 기본 사용법 (0) | 2021.05.07 |
Git 사용법 02 - config (0) | 2021.04.28 |
Git 사용법 - 01 (0) | 2021.04.15 |