GLCD 64x128 (Chip điều khiển ST7920) 1.Hình dạng, sơ đồchân và chức năng từng chân. Hình 12.1GLCD 128x64 Hình 12.2Sơ đồchân GLCD 128x64Chân sốTên chânChức năng1 - 2 VSS -VDD -Cấ p nguồn 3 V0 -Chỉnh độtương phản 4 RS (Register select) CS (Chip select ) -Chọn thanh ghi 0: Chọn thanh ghi mã lệnh 1: Chọn thanh ghi dữliệu -Khi giao tiế p theo chuẩn SPI thì chân này là chân chip select 0: Không chọn GLCD 1: Chọn GLCD 5 R/W (Read/Write) SID (Serial Data Input) -Chọn chếđộđọc hoặc ghi GLCD 0: Ghi 1: Đọc -Khi giao tiế p theo chuẩn SPI thì chân này là chân nhận dữliệu nối tiế p. 6 E (Enable) SCLK (Serial Clock ) -Nhận xung cho phép-Khi giao tiế p theo chuẩn SPI thì đây là chân nhận xung clock. 7-10 D0-D3 -4 bit dữliệu thấ p khi giao tiế p theo chuẩn 8 bit 11-14 D4-D7 -4 bit dữliệu cao khi giao tiế p theo chuẩn 8 bit -4 bit dữliệu khi giao tiế p theo chuẩn 4 bit 15 PSB -Chọn chếđộđiều khiển 0: SPI (nối tiế p) 1: 8 hoặc 4 bit (song song) 16 NC (No Connect) Bỏtrống 17 RST (Reset) Reset GLCD 18 Vout Điện áp ra GLCD19-20 BLA-BLK (Back Light Anode–Cathode) Cấp điện cho led nền giúp quan sát đượ c trong bóng tối
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
7/17/2019 GLCD 64x128
http://slidepdf.com/reader/full/glcd-64x128 1/13
GLCD 64x128
(Chip điều khiển ST7920)
1.Hình dạng, sơ đồ chân và chức năng từng chân.
Hình 12.1 GLCD 128x64 Hình 12.2 Sơ đồ chân GLCD 128x64
Chân số Tên chân Chức năng 1 - 2 VSS -VDD -Cấ p nguồn
Bài mẫu 12.2 Sử dụng chế độ text hiển thị lên GLCD nội dung sau:
Chương trình:
#include<TV_PICKIT2_SHIFT_1.c>
#include<tvglcd.c>
0x80 0x81 0x82 0x83 0x84 0x85 0x86 0x87
0x90 0x91 0x92 0x93 0x94 0x95 0x96 0x97
0x88 0x89 0x8A 0x8B 0x8C 0x8D 0x8E 0x8F
0x98 0x99 0x9A 0x9B 0x9C 0x9D 0x8E 0x9F
Dai Hoc SPKTBo Mon: DTCN
TTVXL Pic18F4550Module LCDGraphic
7/17/2019 GLCD 64x128
http://slidepdf.com/reader/full/glcd-64x128 9/13
void main()
{
SET_UP_PORT_IC_CHOT();
ktglcd(text); // Khở i tạo chế độ text
glcdcmd(0x01); // Xóa màn hình
delay_ms(5);
glcdcmd(0x80); // Đầu hàng 1
glcdchar(" Dai Hoc SPKT");
glcdcmd(0x90);
glcdchar(" Bo Mon: DTCN");
glcdcmd(0x88);
glcdchar("TTVXL Pic18F4550");
glcdcmd(0x98);
glcdchar("Modul LCDGraphic");
WHILE(TRUE);
}
Bài 12.3 Viết chương trình đo nhiệt độ LM35, DS18B20,đếm sản phẩm 99-79 đồng thời đếm
giây chính xác 00-59 hiển thị GLCD ở chế độ text theo hình sau.
Chú ý: Để hiển thị giá trị số SV tách số và chuyển qua mã ASCII giống như LCD text mà SVđã đượ c học.
Phần B: Chế độ Graphic
1. Hướ ng dẫn chuyển ảnh thành file mã hex dùng 2 phần mềm GNU(thay đổi kích thước vàchuyển ảnh bất k ỳ thành ảnh nhị phân) và LCDAssistant ( chuyển ảnh nhị phân sang mãhex)
a.
Sử dụng phần mềm GNU
- Click vào icon để chạy phền mềm GNU- Mở ảnh cần chuyển đổi Tậ p tin/ Mở => chọn ảnh cần mở - Thay đổi kích thướ c ảnh cho phù hợp đề hiển thị lên được màn hình 128x64: Chọn
Ảnh/Co dãn ảnh
LM: 32DS: 33SP: 82TI : 28
7/17/2019 GLCD 64x128
http://slidepdf.com/reader/full/glcd-64x128 10/13
Sửa lại kích thướ c ảnh mong muốn r ồi click “Co dãn” - Chuyển ảnh về thành ảnh nhị phân: Chọn Ảnh/Chế độ / Đã phụ lục..
Click chọn “Dùng bảng chọn màu đen và trắng (1bit)” r ồi chọn “Chuyển đổi”
- Lưu ảnh dướ i dạng đuôi BMP : Chọn Tập tin/ Lưu dạng…
b. Sử u dụng phần mềm LCDAssistant
- Click vào icon để chạy phần mềm
- Mở file cần chuyển đổi: File/Load image
- Cấu hình file lấy mã theo chiều ngang bằng cách click vào mục “Horizontal”
- Chuyển ảnh sang mã hex: Chọn File/Save output => đặt tên file ( tenfile.c) rồi nhấn
“Save”
7/17/2019 GLCD 64x128
http://slidepdf.com/reader/full/glcd-64x128 11/13
Bài mẫu 12.4 Viết chương trình hiển thị Logo DH SPKT kích thước 64x64 đồng thờ i hiển
thị game Ping Pong bên nửa LCD còn lại
Chương trình
#include<TV_PICKIT2_SHIFT_1.c>
#include<spkt.c> // mã hex của logo SPKT
#include<tvglcd.c>#include<graphics.c> // Thư viện chứa các chương trình vẽ đườ ng
#include <stdlib.H> // thẳng, đườ ng tr òn ….
void main()
{ unsigned int8 xb,yb,sstop=0,xt=82,lt=15,diem=0;
signed int chieux=1, chieuy=1;
int tatdiem=0;
set_tris_b(0x3c);
SET_UP_PORT_IC_CHOT();
ktglcd(text); // Khở i tạo chế độ text
glcdcmd(0x01); delay_ms(5); // Xóa màn hình
glcdcmd(0x94);glcdchar(" 0="); glcdchar(0x1a); // Giao diện hướ ng dẫn chơi game
glcdcmd(0x8c);glcdchar(" 1="); glcdchar(0x1b);
glcdcmd(0x9c);glcdchar(" 2=Play");
delay_ms(5);
ktglcd(graphic); // Khở i tạo chế độ Graphic
glcdmaunen(0) ;
xuatanh(64,64,0,0) ; // Hiển thị Logo SPKT (chiều r ộng, chiều cao, x,y)
glcd_rect(65, 0, 127, 63, 0, 1); // Hiển thị khung vuông bao quanh cửa sổ game
if((yb<=7))chieuy=rand()%2+1; // Khi banh đụng các cạnh bao thì đổi chiều di chuyểnif(yb>=60) // Khi tọa độ y của banh >59 thì Game Over { ktglcd(text); // Khở i tạo chế độ text để hiển thị Game Over
if(input(pin_b2)==0) // Kiểm tra nút điều khiển qua phải
{
glcd_rect(xt, 60, xt+lt, 62, 1, 0);
if(xt<110) xt+=2;
}
if(input(pin_b3)==0) // Kiểm tra nút điều khiển qua trái {
glcd_rect(xt, 60, xt+lt, 62, 1, 0);
if(xt>69) xt-=2;
}if(input(pin_b4)==0) // Kiểm tra nút Play
{ delay_ms(10);
if(input(pin_b4)==0)
{
diem=0;
xb= 75;yb= 10;
sstop=1;
ktglcd(text);
glcdcmd(0x01); delay_ms(2);ktglcd(graphic);
glcd_rect(67, 3,112, 63, 1, 0);
capnhatvung (67,3,45,61) ;
while(input(pin_b4)==0);
}
}
}
}
7/17/2019 GLCD 64x128
http://slidepdf.com/reader/full/glcd-64x128 13/13
Bài 12.5 Viết chương trình đồng hồ số DS13B07 hiển thị GLCD theo hình sau:
( ví dụ: 6 giờ 40 phút 15 giây)
Bài 12.7 Viết chương trình vẽ 1 hình người ( dùng chương trình vẽ đườ ng thẳng và hình tròn)hiển thị GLCD và dùng các phím 1,9,4,6 của phím ma trận để điều khiển cho người này dichuyền qua trái , phải , lên , xuống.