1
2
※ 개 요
전기-광학적 성질을 표시장치에 응용한 것으로서 액정은 전압이 걸리
면 일정한 방향으로 늘어나는 성질을 가지고 있어 전압이 걸린 곳은
검게 표시가 됩니다.
이러한 성질을 Microcontroller를 이용하여 숫자뿐만 아니라 모양과 글
을 표현할 수 있는 모듈입니다.
※ 장 점
확장형 Port가있는 Simulator와 직접 연결할 수 있는 Connector가 있
어 간단히 확장이 가능하고 Breadboard또는 만능기판에 바로 연결할
수 있는 Connector Pin이 있어 손쉽게 사용할 수 있습니다.
LCD 패널과 제어기가 하나로 된 모듈 형태로 되어 있어 제어기에서
데이터 버스를 통하여 데이터를 전송하기만 하면 원하는 표시를 얻을
수 있습니다.
※ 실습 항목
Microcontroller를 이용하여 128 x 64 GRAPHIC LCD 에 원하는 곳을
Display하여 원하는 모양 또는 글을 나타냄
※ 구 성 품
Dr. Kim GRAPHIC LCD Module (20Pin 확장 케이블 별도판매)
※ 사 양
LCD: 128 x 64 GRAPHIC LCD(32자 표현)
Breadboard 연결Pin: Pin Header 2.54
Connector: Box Header 2 x 10
VCC 전압 : 5V (보드 전압)
※ 사용법
1. Dr. Kim GRAPHIC LCD Module는 GRAPHIC LCD를 쉽게 사용할 수
있도록 간단한 모듈로 구성하였으며 연결 포트가Connector와 DIP형
식의 Pin으로 되어있어 회로를 구성할 때 간단하게 연결하여 사용할
수 있습니다.
2. DIP타입 구조의 Pin을 갖은 모듈을 만능기판이나 Breadboard에 삽입
후 외부 회로를 결선합니다.
3. 원하는 Microprocessor와 연결하여 실험합니다. (AVR, 8051, PIC)
4. 혹은 본 회사에서 제공하는 Dr. Kim ATmega128 Training Kit 또는
Dr. Kim Robot Simulator와는 간단히 Connector로만 연결하여 실험
가능 합니다.
5. PC에서 작성한 Program파일을 Download해서 Microprocessor에 저
장합니다.
6. Microprocessor의 출력에 대한 변화를 Dr. Kim GRAPHIC LCD
Module보고 확인합니다.
※ 주의 사항
전압을 절대 5.5V이상 사용하지 마십시오! ( VCC-5V )
모듈의 상하좌우를 정확히 확인하십시오!
사용자의 부주위로 인한 제품손상에 대해서는 본사가 책임을 지지 않
습니다.
3
※ ※ Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도
4
5
※ Dr. Kim GRAPHIC LCD 모듈을 MAT128-100, MAT128-300 모듈에 결선 하는 방법 및 테스트 프로그램
ATmeg128 Port
Port C0 ~ Port C7
Port G 3
Port G 2
Port G 1
PortG 0
MLCD-200 Port
DB0 ~ DB7
E
RS
CS1
CS2
MAT128-300 모듈과
Training Module을 연결
할 경우, 아래의 그림과
같이 20pin 확장
케이블만 연결하면
됩니다.
VCC - 5V
GND - GND
6
/*================================= File Name : MLCD-200-v1_1.c Process : ATmega128 Crystal : 14.7456MHz Explanation 1.Graphic LCD에 "AVR"을 표시한다. 2.가변 저항을 조절한다.=================================*/#include <avr/io.h>
#define GLCD_CTRL PORTG #define GLCD_DATA PORTC#define GLCD_E 0x08 #define GLCD_CS12 0x04 #define GLCD_CS1 0x06#define GLCD_CS2 0x05#define GLCD_OFF 0x00
unsigned char A_font[]= //8x16 ASCII character font {0xE0,0xF0,0x98,0x8C,0x98,0xF0,0xE0,0x00,0x0F,0x0F,0x00,0x00,0x00,0x0F,0x0F,0x00}; //A
unsigned char V_font[]= {0xFC,0xFC,0x00,0x00,0x00,0xFC,0xFC,0x00,0x01,0x03,0x06,0x0C,0x06,0x03,0x01,0x00}; //V
unsigned char R_font[]= {0x04,0xFC,0xFC,0x44,0xC4,0xFC,0x38,0x00,0x08,0x0F,0x0F,0x00,0x00,0x0F,0x0F,0x00}; //R
void delay (int del);void initialize_glcd(void);void glcd_ctrl(unsigned char ctrl);void glcd_data(unsigned char select,unsigned char _data);void glcd_data_char(unsigned char x,unsigned char y,unsigned char *string);
int main(void){ DDRG = 0xff; //Port G 출력
DDRC = 0xff; //Port C 출력
GLCD_CTRL = 0x00; GLCD_DATA = 0xff; delay(30000); initialize_glcd(); glcd_data_char(0,1,A_font); glcd_data_char(0,2,V_font); glcd_data_char(0,3,R_font); while(1);}
7
void glcd_data_char(unsigned char x,unsigned char y,unsigned char *string){ unsigned char i,a,y_address;
if(y<=7){ a = 1; y_address = y*8; } else{ a = 2; y_address = (y-8)*8; } glcd_ctrl(0xb8 + x*2); glcd_ctrl(0x40 + y_address); for(i=0; i<=7; i++){ glcd_data(a,*string); string++; } glcd_ctrl(0xb8 + x*2 +1); glcd_ctrl(0x40 + y_address); for(i=8; i<=15; i++){ glcd_data(a,*string); string++; }}
void delay (int del){ while(del--);}
void initialize_glcd(void){ unsigned char i, j, x, y;
glcd_ctrl(0x3f); glcd_ctrl(0xc0); x = 0xB8; //X start address y = 0x40; //Y start address for(i=0; i<=7; i++){ glcd_ctrl(x); glcd_ctrl(y); for(j = 0; j <= 63; j++) glcd_data(0,0x00); //clear CS1 and CS2 x++; }}
void glcd_ctrl(unsigned char ctrl){ GLCD_CTRL = GLCD_E; delay(10); GLCD_DATA = ctrl;
8
delay(10); GLCD_CTRL = GLCD_OFF; delay(1000);}
void glcd_data(unsigned char select,unsigned char _data){ switch(select){ case 0: GLCD_CTRL = GLCD_E | GLCD_CS12; delay(10); GLCD_DATA = _data; delay(10); GLCD_CTRL = GLCD_OFF; break; case 1: GLCD_CTRL = GLCD_E | GLCD_CS1; delay(10); GLCD_DATA = _data; delay(10); GLCD_CTRL = GLCD_OFF; break; case 2: GLCD_CTRL = GLCD_E | GLCD_CS2; delay(10); GLCD_DATA = _data; delay(10); GLCD_CTRL = GLCD_OFF; break;
default: break; } delay(1000);}
9
실행 파일 및 다른 Training
Module 자료는 자사 홈페이지
⇨ 정보공간 ⇨ 자료실 에 있
습니다. www.drkimrobot.com
교육로봇(주)
TEL) 02-908-3170
FAX) 02-908-3171
www.robotkim.com /www.drkimrobot.com