Lcd12864 Wprowadzenie
128X64 z chińską biblioteką znaków jest graficznym modułem graficznym z 4-cyfrowym / 8-bitowym równoległym, 2-przewodowym lub 3-przewodowym interfejsem szeregowym oraz chińskimi czcionkami chińskimi pierwszego poziomu i drugiego poziomu. Stawka wynosi 128 i TImes; 64, 8192 16 * 16 kropek chińskich znaków i 128 16 * 8 kropek zestawów znaków ASCII. Zastosowanie elastycznego interfejsu tego modułu oraz prostych i wygodnych instrukcji obsługi może stanowić pełny chiński interfejs interakcji człowiek-komputer. Może wyświetlać 8 i TImes; 4 linie 16 i TImes; 16 znaków kratowych. Wyświetlanie graficzne może być również zakończone. Niskie napięcie i niski pobór mocy to kolejna znacząca cecha. Schemat wyświetlania ciekłokrystalicznego złożony z tego modułu jest znacznie prostszy niż ten sam rodzaj graficznego modułu wyświetlacza ciekłokrystalicznego z matrycą punktową, niezależnie od struktury układu sprzętowego lub programu wyświetlającego, a cena modułu jest również nieco niższa niż cena modułu. graficzny moduł ciekłokrystaliczny z tej samej matrycy punktowej. .
Podstawowe parametry Lcd12864

(1) Niskie napięcie zasilania (VDD: +3,0 - + 5,5 V)
(2) Rozdzielczość wyświetlacza: 128 i czasy rzeczywiste; 64 punkty
(3) Wbudowana chińska biblioteka znaków, zapewniająca 8192 16 x 16 znaków chińskich (chiński uproszczony i tradycyjny)
(4) Wbudowane 128 16 × 8 znaków matrycy punktowej
(5) Częstotliwość zegara 2 MHz
(6) Tryb wyświetlania: STN, półprzezroczysty, pozytywny wyświetlacz
(7) Napęd: 1/32 DUTY, 1/5 BIAS
(8) Kierunek widzenia: 6 punktów
(9) Tryb podświetlania: Biało podświetlona biała dioda LED, pobór mocy to tylko 1 / 5-1 / 10 zwykłej diody LED
(10) Komunikacja: szeregowa i równoległa
(11) Wbudowany obwód konwersyjny DC-DC bez zewnętrznego podciśnienia
(12) Uprość projektowanie oprogramowania bez sygnału wyboru chipa
(13) Temperatura pracy: 0 ° C- + 55 ° C, temperatura przechowywania: -20 ° C- + 60 ° C
Schemat i funkcja pinów Lcd12864
Lcd12864 Chińskie podsumowanie danych (12864 opis i funkcja pinu _ parametry parametrów i współdzielenie sterownika)
Moduł masy 1VSS
Zacisk dodatni 2VDD modułu
Napięcie wejściowe 3V0-LCD
4RS (CS) H / L Sygnał równoległy / Sygnał wyboru danych; Serial Chip Select Signals
Sygnał wyboru zapisu / odczytu 5R / W (SID) H / L; port szeregowy danych
6E (CLK) sygnał aktywacji równoległej H / L; szeregowy zegar synchroniczny
Dane 7DB0H / L 0
Dane 8DB1H / L 1
Dane 9DB2H / L 2
Dane 10DB3H / L 3
Dane 11DB4H / L 4
Dane 12DB5H / L 5
Dane 13DB6H / L 6
Dane 14DB7H / L 7
15PSBH / L Wybór równoległego / szeregowego interfejsu: H-Parallel; L-Serial
16NC pusta stopa
17 / RETH / L reset aktywny niski
18NC pusta stopa
19LED_A (LED + 5V) Dodatnie podświetlenie
Podświetlenie 20LED_K (LED-OV) i ujemne
Opis interfejsu interfejsu sterownika
1, RS, R / W z wyborem interfejsu sterowania określa cztery tryby:
Lcd12864 Chińskie podsumowanie danych (12864 opis i funkcja pinów _ parametry parametrów i współdzielenie sterownika)
Sygnał 2, E
Lcd12864 Chińskie podsumowanie danych (12864 opis i funkcja pinu _ parametry parametrów i współdzielenie sterownika)
● Zajęty znacznik: Flaga BFBF zapewnia wewnętrzne warunki pracy. BF = 1 oznacza, że moduł wykonuje operacje wewnętrzne. W tym momencie moduł nie akceptuje zewnętrznych instrukcji i danych. Gdy BF = 0, moduł jest gotowy do zaakceptowania zewnętrznych instrukcji i danych w dowolnym czasie. Instrukcja STATUSRD umożliwia odczytanie BF na magistrali DB7 w celu sprawdzenia stanu pracy modułu.
● ROM generowania czcionek (CGROM) ROM generowania czcionek (CGROM) zapewnia 8192 Ten wyzwalacz służy do sterowania wyświetlaniem na ekranie modułu. DFF = 1 to DISPLAY ON, zawartość DDRAM jest wyświetlana na ekranie, DFF = 0 to DISPLAY OFF. Status DFF jest kontrolowany przez polecenia DISPLAYON / OFF i RST.
● Dane wyjściowe RAM danych z wewnętrznej pamięci RAM (DDRAM) zapewniają 64 x 2 bajty przestrzeni, do 4 wierszy po 16 słów (64 słowa) na chińskim wyświetlaczu czcionek, po zapisaniu w pamięci RAM wyświetlania, wyświetleniu czcionek CGROM i CGRAM odpowiednio; moduł ten może wyświetlać trzy typy czcionek, które są w połowie alfanumeryczne (16 * 8), czcionka CGRAM i chińska czcionka CGROM. Wybór trzech czcionek oparty jest na DDRAM. W opcji kodowania napisanej w języku chińskim, niestandardowa czcionka CGRAM zostanie wybrana w kodowaniu 0000H-0006H (jej kody to odpowiednio 0000, 0002, 0004 i 0006), a znaki alfanumeryczne o połowie szerokości zostaną wybrane w Kodowanie 02H-7FH. Czcionka, podobnie jak kod powyżej A1, będzie automatycznie łączona z następnym bajtem, a kodowanie dwóch bajtów tworzy chiński kod postaci BIG5 (A140-D75F), GB (A1A0-F7FFH).
● RAM generowania czcionek RAM (CGRAM) Generowanie czcionek RAM zapewnia funkcję definicji obrazu (budowania wyrazów), która może zapewnić cztery grupy 16 × 16 punktów niestandardowej przestrzeni obrazu. Użytkownicy mogą dostarczać znaki graficzne, których nie zapewniają wewnętrzne czcionki. Typ jest samoczynnie zdefiniowany w CGRAM i może być wyświetlany na ekranie poprzez DDRAM zgodnie z definicją w CGROM.
● Licznik adresu licznika adresu służy do przechowywania adresu jednego z DDRAM / CGRAM. Można go zmienić za pomocą rejestru instrukcji ustawień. Następnie, tak długo jak wartość DDRAM / CGRAM jest odczytywana lub zapisywana, wartość licznika adresu będzie automatycznie dodawana. Gdy RS jest "0", a R / W jest "1", wartość licznika adresu jest odczytywana do DB6 - DB0.
Obwód sterowania kursorem / migotaniem
Ten moduł zapewnia sprzętowy układ sterowania kursorem i migotaniem, który określa położenie kursora lub migania w pamięci DDRAM przez wartość licznika adresu.
Instrukcje Lcd12864
Lcd12864 Chińskie podsumowanie danych (12864 opis i funkcja pinu _ parametry parametrów i współdzielenie sterownika)
Lcd12864 Chińskie podsumowanie danych (12864 opis i funkcja pinów _ parametry parametrów i współdzielenie sterownika)
Uwaga: Zanim IC1 zaakceptuje instrukcję, mikroprocesor musi najpierw potwierdzić, że wewnętrzny jest w stanie zajętości. Podczas odczytywania flagi BF, BF musi wynosić zero, aby przyjąć nowe instrukcje; jeżeli nie jest sprawdzane przed wysłaniem instrukcji Flaga BF musi zostać przedłużona na dłuższy okres czasu między poprzednią instrukcją a instrukcją, czyli czekanie na wykonanie poprzedniej instrukcji.
Przykład zastosowania Lcd12864
1. Przygotowanie przed użyciem: Najpierw nałóż napięcie robocze do modułu, a następnie wyreguluj kontrast wyświetlacza LCD zgodnie z metodą połączenia przedstawioną na poniższym rysunku, aby pokazać czarny obraz. Proces ten może również początkowo wykryć brak segmentu LCD.
2. Wyświetlanie znaków: 128X64-0402B z chińską biblioteką znaków może wyświetlać 4 wiersze i 8 kolumn po 32 znaki z 16 16 punktowymi matrycami na ekranie. Każda wyświetlana pamięć RAM może wyświetlać 1 chiński znak lub 2 16 × 8 kratowych pełnych wysokości. Znaki ASCII, które mogą wyświetlać do 32 znaków chińskich lub 64 znaków ASCII na ekranie. 128X64-0402B z chińską biblioteką czcionek wewnętrznie zapewnia bufor pamięci o formacie 128 x 2 bajty (DDRAM). Wyświetlanie znaków uzyskuje się poprzez zapisanie kodów wyświetlania znaków w pamięci RAM postaci. W zależności od zawartości napisu, zawartość CGROM (chińska biblioteka czcionek), HCGROM (czcionka ASCII) i CGRAM (czcionka niestandardowa) mogą być wyświetlane na ekranie LCD. Trzy różne znaki / zakres kodu wyboru czcionki: 0000 ~ 0006H (kod to 00000002,0004,0006 w sumie 4) wyświetla niestandardową czcionkę, 02H ~ 7FH wyświetla znak połowy szerokości znaków ASCII, A1A0H ~ F7FFH pokazuje czcionkę 8192 GB2312 czcionki. Znak pokazuje adres 80H do 9FH pamięci RAM w module ciekłokrystalicznym. Adres pamięci RAM wyświetlanej przez znak zawiera korespondencję jeden-do-jednego z 32-znakowym obszarem wyświetlania. Odpowiednie wartości przedstawiono w poniższej tabeli.
Lcd12864 Chińskie podsumowanie danych (12864 opis i funkcja pinu _ parametry parametrów i współdzielenie sterownika)
3, wyświetlacz graficzny
Najpierw ustaw adres pionowy, a następnie ustaw adres poziomy (wpisz dwa bajty danych, aby uzupełnić pionowe i poziome adresy współrzędnych)
Pionowy zakres adresów AC5. .AC0
Poziomy zakres adresów AC3 ... AC0
Licznik adresów (AC) RAM-u rysunku automatycznie zwiększy tylko adres poziomy (oś X). Kiedy adres poziomy = 0FH, zostanie zresetowany do 00H, ale nie zwiększy automatycznie adresu pionowego o jeden. Dlatego, gdy adres jest zapisywany w sposób ciągły, gdy dostępnych jest wiele dokumentów, program musi ustalić, czy adres pionowy musi zostać zresetowany. Adres współrzędnych GDRAM i uporządkowanie danych, jak pokazano poniżej:
4, opis zastosowania
Podczas korzystania z modułu wyświetlacza 128X64 z chińską biblioteką czcionek należy zwrócić uwagę na następujące punkty:
1 Gdy chcesz wyświetlić chińskie znaki w określonej pozycji, najpierw musisz ustawić pozycję znaku, tzn. Najpierw ustawić adres wyświetlania, a następnie wpisać chiński kod znaku.
2 Proces wyświetlania znaków ASCII jest taki sam jak proces wyświetlania chińskich znaków. Jednak podczas wyświetlania znaków ciągłych wystarczy ustawić tylko jeden adres wyświetlania. Moduł automatycznie dodaje 1 do następnej pozycji znaku. W przeciwnym razie wyświetlana litera będzie miała pustą pozycję znaku ASCII.
3 Kiedy kod znaku ma 2 bajty, górny bajt powinien być zapisany jako pierwszy, a następnie niższy bajt.
4 Zanim moduł otrzyma instrukcję, procesor musi najpierw potwierdzić, że moduł jest w stanie niepołączonym. Oznacza to, że po odczytaniu flagi BF, BF musi być "0", aby przyjąć nową instrukcję. Jeżeli flaga BF nie jest sprawdzona przed wysłaniem instrukcji, musi być opóźniona o długi czas między poprzednią instrukcją a instrukcją, to znaczy czekaniem, aż poprzednia instrukcja ustali, że wykonanie jest zakończone. Informacje na temat czasu wykonania instrukcji znajdują się w opisie czasu wykonywania instrukcji w tabeli instrukcji. 5 "RE" to bit kontrolny wyboru podstawowego zestawu instrukcji i rozszerzonego zestawu instrukcji. Gdy "RE" zostanie zmieniony, następny zestaw instrukcji pozostanie w ostatnim stanie, chyba że bit "RE" zostanie ponownie zmieniony. Podczas korzystania z tego samego zestawu instrukcji nie ma potrzeby resetowania bitu "RE" za każdym razem.
Sterownik Lcd12864
/ ******************************************** ************************* /
/ * * /
/ * Prawa autorskie (c) 2012, pcwebmaster * /
/* Wszelkie prawa zastrzeżone. * /
/ * * /
/ * E-mail: pcwebmaste@163.com * /
/ * * /
/ ******************************************** ************************* /
/ ******************************************** ************************* /
/ * Nazwa pliku: LCD12864.c * /
/ * Wersja: Wersja 1.0 * /
/ * Opis: Realizacja protokołu komunikacyjnego między LCD a MCU i wykonywanie interakcji człowiek-komputer zgodnie z poleceniami wydanymi przez komputer * /
/ * Producent: pcwebmaste * /
/ * Funkcja: * /
/ * LCD12864_init * /
/ * LCD12864WriteCommand * /
/ * LCD12864WriteByte * /
/ * LCD12864_init * /
/ * LCD12864SetXY * /
/ * LCD12864PrintfString * /
/ * rekord historii: * /
/ * pcwebmaste 2008-07-10 Wersja Creat Inital. (Wersja 1.0) * /
/ * Modular 2012-06-02 Wersja Creat Inital. (Wersja 2.0) * /
/ ******************************************** ************************* /
#include "12864.h"
#define LOW 0
#define WYSOKI 1
Sbit wela = P2 ^ 6;
Sbit dula = P2 ^ 7;
#define LCD12864_RS (x) {if ((x)) P3 | = 1 "LCD12864_RS_PIN; \
Else P3 & = ~ (1 "LCD12864_RS_PIN);} // rejestruj wejście wyboru
#define LCD12864_RW (x) {if ((x)) P3 | = 1 "LCD12864_RW_PIN; \
Else P3 & = ~ (1 "LCD12864_RW_PIN);} // Kontrola odczytu / zapisu LCD
#define LCD12864_EN (x) {if ((x)) P3 | = 1 "LCD12864_EN_PIN; \
Else P3 & = ~ (1 "LCD12864_EN_PIN);} // LCD Włącz kontrolę
#define LCD12864_MD (x) {if ((x)) P3 | = 1 "LCD12864_MD_PIN; \
Else P3 & = ~ (1 "LCD





