Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
1
제4장. 문자 LCD 인터페이스
제3편 8051 인터페이스와 주변기기16 character * 4 line
5 * 8 dot matrix(Cursor 라인 포함)
64 바이트 CG RAM
LCD Back Light
5V 단 전원 사용
1. 문자 LCD Spec.
2. 문자 LCD 핀 사양
RS 신호와 R/W 신호에 따라 내장된 LCD Controller 리소스의 엑세스를달리함
RS 신호에 따라 내장된 DR과 IR 엑세스 구분
R/W에 따라 읽기 쓰기 구분, 0-쓰기 동작으로 인식, 1-읽기 동작으로 인식
IR(Instruction Register)- 명령을 저장하는 레지스터
DR(Data Register)- 마이크로 컨트롤러와 데이터 입출력을 담당하는 레지스터
3. 문자 LCD 엑세스 제어 신호
4. 문자 LCD 읽기 타이밍 5. 문자 LCD 쓰기 타이밍
2
6. LCD 엑세스 시간 파라미터
A1, A0에 의한 RS, R/W 제어- 이는 어드레스에 통한 엑세스 제어의도를 포함하고 있음
8. 학습보드 LCD 회로 구성
Status Reg.1의 비트7에 의한 LCD Backlight 제어(Q3을 제어함)
PLD 어드레스 디코더에 의한 LCD 선택 신호 구현: 0xC000~3
9. 어드레스에 따른 엑세스 선택
어드레스 디코더와 A1, A0에 의한 엑세스 선택 진리표
11. LCD 모듈 Block Diagram
RS, R/W에 의한 내부 IR과 DR 선택 엑세스
12. LCD 모듈 내부의 세부 구조
DR 엑세스에 의한 LCD 디스플레이
IR 엑세스에 의한 명령 전달 및 Address Counter, LCD 기능제어
13. LCD 패널과 CGROM의 관계
CGROM의 구성
DDRAM에 CGROM 코드를 써 넣으면CGROM 코드에 해당하는 문자가 LCD패널에 디스플레이됨
CGROM의 코드는 PC의 영문 ASCII 테이블과 동일한 값을 가짐
좌측 (1)~(8)은 다음에 설명할 사용자가CGRAM에 만든 폰트데이터의 코드를 의미함, 8개의 새로운 폰트 생성 가능
즉 사용자가 8문자를 새로 추가할 수있음
3
14. LCD 패널과 DDRAM, CGRAM과의 관계
CGRAM을 이용한 새로운 폰트 생성 가
CGRAM의 8바이트가 한 문자를 구성하며 DDRAM은 CGRAM의 8 문자에해당하는 코드를 가지고 있다.
DDRAM : LCD 패널에 디스플레이하려는 CGROM이나 CGRAM의 문자코드를 저장하는 80바이트의 메모리 공간
15. 리셋 후의 DDRAM과 LCD 패널의 대응 관계
위의 회색 부분은 16*4 라인의 LCD패널을 의미, 그 안의 숫자는 그 LCD 패널 셀에 대응되는 DDRAM 어드레스
우측 20~27H, 60~67H의 DDRAM은 대응되는 LCD 패널이 없는 공간이된다.
16. 쉬프트 명령 후 DDRAM과 LCD 패널의 대응 관계
우로 쉬프트 명령 후의 DDRAM과 LCD 패널의 대응 관계
좌로 쉬프트 명령 후의 DDRAM과 LCD 패널의 대응 관계
디스플레이 클리어 명령
17. LCD 제어 명령
커서 홈 명령
엔트리 모드 셋
디스플레이 On/Off 설정 명령
디스플레이 커서 시프트 명령
CGRAM 어드레스 설정 명령
DDRAM 어드레스 설정 명령
BUSY 비트/어드레스 읽기 명령
DDRAM/CGRAM 데이터 쓰기 명령
DDRAM/CGRAM 데이터 읽기 명령
디스플레이 클리어 명령
18. 디스플레이 클리어/커서 홈 명령
0
D2
0
D1
1
D0
0000000
D3D4D5D6D7R/WRS
커서 홈 명령
0
D2
1
D1
*
D0
0000000
D3D4D5D6D7R/WRS
DDRAM의 모든 영역에 ASCII의 'Space Code' 20H를 써넣어 LCD를 클리어하고DDRAM의 AC를 0H로 세트한다. 즉 커서는 첫 번째 줄 첫 문자에 대기하고 엔트리모드의 I/D 비트 값은 1(AC 자동증가)로 세트되며 디스플레이가 시프트된 경우원위치 된다.
커서가 홈으로 온다. 즉, AC는 0이 되며 디스플레이가 시프트된 경우 원위치 된다.이때 DDRAM의 내용은 변하지 않는다.
19. 엔트리 모드/디스플레이 On/Off 명령
엔트리 모드 설정 명령
1
D2
I/D
D1
S
D0
0000000
D3D4D5D6D7R/WRS
디스플레이 On/Off 명령
D
D2
C
D1
B
D0
1000000
D3D4D5D6D7R/WRS
I/D : DDRAM과 CGRAM에 엑세스 시 AC의 자동증가 모드를 설정 비트0- AC의 자동 1 감소 모드 , 1- AC의 자동 1 증가 모드
S : DDRAM과 CGRAM 엑세스 시 전체 디스플레이의 자동 쉬프트 설정 비트0-전체 디스플레이 자동 쉬프트 없음, 1-자동 쉬프트 모드
D 비트 : LCD전체 디스플레이 On/Off 제어비트로서 D=0인 경우 Off, D=1인 경우 OnC 비트 : 커서의 디스플레이 여부를 설정하는 비트로서 C=0일 때 커서 Off, C=1 일 때
커서가 On B 비트 : 블링크(Blink) 비트로서 커서의 깜박임을 제어하는 비트로서 1이면 깜박 거리
며 0이면 깜박거림이 없다.
4
20. 디스플레이 커서 쉬프트
디스플레이 커서 쉬프트 명령
R/L
D2
*
D1
*
D0
S/C100000
D3D4D5D6D7R/WRS
21. 전체 기능/CGRAM 어드레스 설정 명령
전체 기능 설정 명령
F
D2
*
D1
*
D0
ND/L10000
D3D4D5D6D7R/WRS
CGRAM 어드레스 설정 명령
A2
D2
A1
D1
A0
D0
A3A4A51000
D3D4D5D6D7R/WRS
DL 비트 : 마이크로 컨트롤러의 인터페이스를 위한 버스 크기를 설정0-4비트(D3~D0), 1-8비트(D7~D0)
N 비트 : 디스플레이 라인 수를 설정0-1라인 디스플레이, 1-2라인 디스플레이
F 비트 : 문자 폰트를 설정0-5*7 Dot, 1-5*10 Dot
CGRAM의 엑세스를 위해 AC에 어드레스 값을 설정하는 명령이다.
22. DDRAM 어드레스 설정 및 비지비트/어드레스 읽기 명령
DDRAM 어드레스 설정 명령
A2
D2
A1
D1
A0
D0
A3A4A5A6100
D3D4D5D6D7R/WRS
비지 비트/어드레스 읽기 명령
A2
D2
A1
D1
A0
D0
A3A4A5A6BF10
D3D4D5D6D7R/WRS
DDRAM에 엑세스할 어드레스를 AC에 설정하는 명령이다.
BF 비트 : LCD전체 디스플레이 On/Off 제어비트로서 D=0인 경우 Off, D=1인 경우 On0-LCD 컨트롤러의 명령 수신 가능 상태1-명령 수행 중인 상태
A6~A0 : 현제의 AC의 값과 동작 상태를 읽어 들이는 명령, 이전 엑세스가 DDRAM이면DDRAM의 어드레스를, CGRAM이면 CGRAM의 어드레스를 읽어 들인다.
23. DDRAM/CGRAM 엑세스 명령
DDRAM/CGRAM에 데이터 쓰기 명령
D2
D2
D1
D1
D0
D0
D3D4D5D6D710
D3D4D5D6D7R/WRS
DDRAM/CGRAM에 데이터 읽기 명령
D2
D2
D1
D1
D0
D0
D3D4D5D6D701
D3D4D5D6D7R/WRS
D7~D0 : 현제 AC에 들어있는 DDRAM이나 CGRAM의 어드레스에 D7~D0의 값을써 넣는 명령
D7~D0 : 현제 AC에 들어있는 DDRAM이나 CGRAM의 어드레스로부터 D7~D0의값을 읽어 오는 명령
24. LCD 모듈의 초기화
리셋 후에 반드시 이와 같은 초기화 과정이있어야만 정상적인 동작을 한다.