9
1

Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도icbank.com/data/ICBShop/board/[14]참고자료.pdf · (AVR, 8051, PIC) 4.혹은 본 회사에서 제공하는

Embed Size (px)

Citation preview

Page 1: Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도icbank.com/data/ICBShop/board/[14]참고자료.pdf · (AVR, 8051, PIC) 4.혹은 본 회사에서 제공하는

1

Page 2: Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도icbank.com/data/ICBShop/board/[14]참고자료.pdf · (AVR, 8051, PIC) 4.혹은 본 회사에서 제공하는

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 )

모듈의 상하좌우를 정확히 확인하십시오!

사용자의 부주위로 인한 제품손상에 대해서는 본사가 책임을 지지 않

습니다.

Page 3: Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도icbank.com/data/ICBShop/board/[14]참고자료.pdf · (AVR, 8051, PIC) 4.혹은 본 회사에서 제공하는

3

※ ※ Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도

Page 4: Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도icbank.com/data/ICBShop/board/[14]참고자료.pdf · (AVR, 8051, PIC) 4.혹은 본 회사에서 제공하는

4

Page 5: Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도icbank.com/data/ICBShop/board/[14]참고자료.pdf · (AVR, 8051, PIC) 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

Page 6: Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도icbank.com/data/ICBShop/board/[14]참고자료.pdf · (AVR, 8051, PIC) 4.혹은 본 회사에서 제공하는

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);}

Page 7: Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도icbank.com/data/ICBShop/board/[14]참고자료.pdf · (AVR, 8051, PIC) 4.혹은 본 회사에서 제공하는

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;

Page 8: Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도icbank.com/data/ICBShop/board/[14]참고자료.pdf · (AVR, 8051, PIC) 4.혹은 본 회사에서 제공하는

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);}

Page 9: Dr. Kim GRAPHIC LCD Module 각 부분 설명 및 모듈 전체 회로도icbank.com/data/ICBShop/board/[14]참고자료.pdf · (AVR, 8051, PIC) 4.혹은 본 회사에서 제공하는

9

실행 파일 및 다른 Training

Module 자료는 자사 홈페이지

⇨ 정보공간 ⇨ 자료실 에 있

습니다. www.drkimrobot.com

교육로봇(주)

TEL) 02-908-3170

FAX) 02-908-3171

www.robotkim.com /www.drkimrobot.com