Page 59 - MDP2020-3
P. 59
················································································ 명장양성프로젝트 【MDP】 과제발표회 자료집 Ⅲ | 53
3) LCD 특징
가) 5[V]의 단일 전원으로 동작한다.
나) CG ROM, CG RAM, DD RAM을 내장하고 있다.
다) 인터페이스가 표준화 되어 있고, 8[bit] 데이터 버스와 4[bit] 데이터 버스 중 선택해서
제어가 가능하다.
라) 내부 제어 명령이 표준화되어 있어서 제조사나 모델에 상관없이 동일한 방법으로 구동
가능하다.
마) LCD 모듈은 일반적인 I/O 인터페이스 반도체 소자에 비해 엑세스 시간이 상당히 길어
동작이 느리다.
바) ASCII 코드와 일본어를 표시 가능하며 8개의 사용자 정의 문자를 만들어 사용할 수 있다.
사) 자동 커서 증가, 커서 이동, 커서 디스플레이 유무 등을 설정할 수 있다.
아) 문자를 5 x 7(혹은 5 x 10) 도트 매트릭스 방식으로 표시한다.
자) DD RAM, CG RAM에 데이터를 Read/Write 할 수 있다.
차) 백라이트가 있어 어두운 곳에서도 화면을 볼 수 있다.
4) CodeVision에서 제공하는 LCD 제어 함수들과 사용번 (LCD.h)
: CodeVision Compiler에서는 LCD를 활용할 수 있도록 “LCD.h” 헤더파일을 제공한다.
가) void _lcd-ready(void)
(1) LCD모듕이 데이터 수신 준비가 완료될 때까지 대기한다.
(2) 이 함수는 다음의 lcd_write_data() 함수로 LCD에 데이터를 쓰기 전에 실행해야 한다.
나) void _lcd_write_data(unsigned char data)
: LCD 인스트럭션 레지스터에 LCD 초기화 Byte 코드를 Write 한다.
다) void lcd_write_byte(unsigned char addr, unsigned char data)
: LCD CG RAM 또는 DD RAM에 Byte 데이터를 쓴다.
라) unsigned char lcd_init(unsigned char lcd_columns)
(1) LCD 모듈의 초기화 함수이다.
(2) 디스플레이를 클리어 하고 난 후 문자 표시 위치를 Column 0, Row 0 으로 설정한다.
(3) 커서는 표시하지 않는다.
(4) 이 함수는 LCD모듈이 정상적으로 연결되어 있으면 1, 아니면 0을 반환한다.
(5) 다른 LCD관련 함수를 호출하기 전에 제일 먼저 수행되어야 한다.
마) unsigned char lcd_read_byte(unsigned char addr)
: LCD Character Generator 또는 Display RAM으로부터 1[Byte]를 읽어온다.
바) void lcd_clear(void)
: 디스플레이를 클리어 하고, 그 후 문자 표시 위치를 Column 0, Row 0으로 설정한다.
사) void lcd_gotoxy(unsigned char x, unsigned char y)
(1) 현재 디스플레이 위치를 Column x와 Row y로 설정한다.
(2) 16 x 2 LCD의 경우 Column x = 0~15, Row y=0~1
아) oid lcd_putchar(char c): 문자 변수에 저장된 문자를 현재 문자 표시 위치에 표시한다.
자) void lcd_puts(chat *str): SRAM에 있는 문자열을 현재 문자 표시 위치에 표사한다.
차) void lcd_putsf(char flash *str): 플래시 메모리에 있는 문자열을 현재 문자 표시 위치
에 표시한다.