Jak podrobně používat 12864 LCD modul?

May 07, 2017

Zanechat vzkaz

Poznámky na začátku článku: Tento článek je pouze konkrétním úvodem do provozu 12864. Je pouze pro nováčky, kteří právě kontaktovali 12864. Podívejte se na něj. Psaní článku je poměrně volné. Začátečníkům se doporučuje, aby si nejprve prostudovali příručku 12864 a anglickou příručku ovladače ST7920. , Přečtěte si tento článek znovu po předběžném pochopení, budete mít hlubší porozumění. Důrazně doporučujeme, abyste si pozorně přečetli anglickou příručku ST7920! V detailech je podrobný úvod a většina čínského 12864 je také přeložena z čínštiny.

Tento článek je rozdělen do tří kroků, které představují princip interních zdrojů 12864, podrobné vysvětlení sady instrukcí a příklady aplikací.

Pro 12864 existují čtyři typy operací:

1). Přečtěte si obsazený stav (současně bude načten obsah adresy ukazatele). Po inicializaci musí být každé čtení a zápis do 12864 detekováno zaneprázdněním. 2) Zápis příkazů: Můžete zkontrolovat seznam příkazů pro všechny příkazy a podrobné použití příkazů bude vysvětleno později. Adresa zápisu je také příkazem zápisu. 3) Zápis dat: Objekty provozu jsou DDRAM, CGRAM, GDRAM.

4), čtení dat: objektem provozu je také DDRAM, CGRAM, GDRAM.



12864液晶模块


Pro studium 12864 musíte nejprve porozumět jeho vnitřním zdrojům. Když víte, co v něm je, můžete jej používat pohodlněji.

Nejprve stručně představte několik anglických jmen:

DDRAM: (Data DisplayRam), datový displej RAM, co do ní zapíšete, zobrazí to, co zobrazí obrazovka.

CGROM: ​​(CharacterGeneration ROM), ROM pro generování postav. Uvnitř jsou písma pro ukládání čínských znaků, známá také jako knihovna čínských znaků. Metody kódování jsou GB2312 (zjednodušená čínština) a BIG5 (tradiční čínština). Autor používá QC12864B od Yusong Electronics a vysvětlení je založeno na tomto příkladu. CGRAM: (CharacterGeneration RAM), RAM generace znaků, 12864 poskytuje 64x2B CGRAM, kterou lze použít pro uživatelem definované 4 znaky 16×16, každý znak zabírá 32 bajtů.

GDRAM: (Graphic DisplayRAM): RAM grafického displeje. Tato oblast se používá pro kreslení. Totéž platí – ať je v něm napsáno cokoli, na obrazovce se zobrazí to, co je zobrazeno. Rozdíl mezi ní a DDRAM je v tom, že data zapsaná do DDRAM jsou Kódování znaků a zobrazení znaků jsou nejprve nalezeny v CGROM a poté mapovány na obrazovku, a při zápisu dat do GDRAM využívá informace tečkové matice grafiky 1 bit uložit jeho zobrazení nebo ne.

HCGROM: ​​(ROM pro generování znaků s poloviční výškou): Generátor znaků s poloviční šířkou, což jsou písmena a čísla, tedy kód ASCII. Pokud jde o ICONRAM (IRAM): Zdá se, že 12864 v současné době na trhu tuto funkci nemá a nenašel jsem ji. Informace o aplikaci, proto je zde nebudu představovat.

Níže začneme s vysvětlením 12864 kolem výše uvedeného seznamu zdrojů: DDRAM:

Autorem použitý 12864 má uvnitř 4 řádky x 32 bajtů prostoru DDRAM. Ale v určitém okamžiku může obrazovka zobrazit pouze 2 řádky x 32 bajtů prostoru, takže co se zbývajícím místem? Mohou být použity pro cache a tyto prostory se mohou hodit při implementaci rolovacího displeje.

Struktura DDRAM je následující:

80H, 81H, 82H, 83H, 84H, 85H, 86H, 87H, 88H, 89H, 8AH, 8BH, 8CH, 8DH, 8EH, 8FH90H, 91H, 92H, 94H,93H, 92H, 94H97H, 92H , 98H, 99H, 9AH, 9BH, 9CH, 9DH, 9EH, 9FHAOH, A1H, A2H, A3H, A4H, A5H, A6H, A7H, A8H, A9H, AAH, ABH, ACH, ADH, AEH, BH1HBOH, AFHHBOH , B3H, B4H, B5H, B6H, B7H, B8H, B9H, BAH, BBH, BCH, BDH, BEH, BFH

Shoda mezi adresou a zobrazením na obrazovce je následující:

Řada-80H, 81H, 82H, 83H, 84H, 85H, 86H, 87H Druhá řada: 90H, 91H, 92H, 93H, 94H, 95H, 96H, 97H Třetí řada: 88H, 8AH, 89H , 8CH, 8DH, 8EH, 8FH Čtvrtá řada: 98H, 99H, 9AH, 9BH, 9CH, 9DH, 9EH, 9FH

Poznámka: Údaje v červené části jsou zobrazeny v horní polovině obrazovky a údaje v zelené části jsou zobrazeny ve spodní polovině obrazovky. Obecně používáme k zobrazení znaků mezeru ve dvou výše uvedených řádcích, tedy 80H~8FH, 90H~9FH. Prostor každé adresy je 2 bajty, což je 1 slovo, lze jej tedy použít k uložení znaků Celkový prostor pro kódování je 128 bajtů. Protože kódování každého čínského znaku je 2 bajty, každá adresa potřebuje k uložení čínského znaku použít 2 bajty. Samozřejmě je také možné použít tyto 2 bajty od sebe, to znamená, že se zobrazí 2 znaky poloviční šířky.

Data uložená v paměti DDRAM jsou všechny kódy znaků a kódy, které lze zapsat, zahrnují kód ASCII, kód GB2312 a kód BlG5. Knihovna písem 12864 použitá autorem se zdá být neúplná a"číslo" znaků nelze zobrazit, ale zobrazí se jiné znaky. Pokud zobrazíte dlouhý článek s čínskými znaky, výhoda není vhodná.

Čtení a zápis dat DDRAM:

Všechna data pro čtení a zápis by měla nejprve odeslat adresu a poté číst a zapisovat. Při zápisu dat do DDRAM se ujistěte, že jsou v základní instrukční sadě (otevřete instrukcí 0x30), poté zapište adresu a poté zapište dva bajty dat po sobě. Při čtení dat nejprve zapište adresu pod základní instrukční sadu, poté ji znovu načtěte a poté čtěte nepřetržitě 2 bajty dat. Po přečtení je ukazatel adresy automaticky jeden a přeskočí na další slovo. Pokud potřebujete přečíst další Obsah slova potřebuje nepřetržitě číst pouze 2 bajty dat. Zde je třeba poznamenat falešné čtení. Nejen čtení CGRAM vyžaduje falešné čtení, ale čtení jiných GDRAM a DDRAM vyžaduje nejprve falešné čtení a následné čtení je skutečné čtení. Falešným čtením je přečíst data jednou, ale data nebudou uložena. To znamená, že data načtená poprvé po odeslání adresy jsou chybná a data poté jsou správná. (figurína znamená falešné čtení)

12864液晶模块




Věci, které je třeba vysvětlit o ukládání kódu v DDRAM, jsou následující:

1) Pokaždé, když je operační jednotkou DDRAM jedno slovo, tj. 2 bajty. Při zápisu dat do DDRAM nejprve zapište adresu a poté průběžně posílejte 2 bajty dat a nejprve odešlete vysoké slovo. Odesílají se data sekce, pak data dolního bajtu. Totéž platí při čtení dat. Nejprve zapište adresu, poté čtěte data o vysokém bajtu a poté čtěte data o nízkém bajtu (při čtení dat dávejte pozor na falešné čtení).

2). Při zobrazení znaků s poloviční šířkou kódu ASCII odešlete na každou adresu 2 bajty kódu ASCII a zobrazí se 2 znaky poloviční šířky odpovídající pozici na obrazovce. Levý je vysokobajtový znak a pravý je nízkobajtový znak.

3). Při zobrazování čínských znaků musí být dva bajty kódování čínských znaků uloženy ve stejném adresním prostoru a nelze je uložit do dvou adres odděleně, jinak zobrazené znaky nebudou znaky, které chcete. 2 bajty v každém slově se automaticky spojí, aby se našlo písmo a zobrazily se znaky. Pokud tedy na adresu zapíšeme 2bajtové kódování čínského znaku, znak se zobrazí správně. Horní bajt kódování je uložen v dolním bajtu předchozí adresy a nižší bajt kódování je uložen v horním slově následující adresy. Sekce, zjevně se nebudou kombinovat, aby našli písmo, ale našli písmo ve spojení s odpovídajícím bajtem každé adresy.


12864液晶模块


4). Protože ovladač ST7920 poskytuje 4 uživatelské znaky, lze tyto 4 uživatelské znaky také plně zobrazit. Podobně jsou kódovány také tyto 4 vlastní znaky, ale kódování těchto 4 znaků je pevné, jedná se o 0000H, 0002HO004H a 0006H. Jak je ukázáno níže:

12864液晶模块




Výše uvedený obrázek pouze kreslí prostor CGRAM o 2 znacích a v budoucnu zde budou 2 znaky. Je vidět, že každý znak má 16 řádků a 16 sloupců a každý řádek používá 2 bajty. Prostor obsazený znakem je tedy 32 bajtů a adresa je 6 bitů. Adresy 4 znaků jsou: O0H~ OFH,

10H-1FH, 20H-2FH, 30H-3FH. Kódování používá 2 bajty. Je vidět, že 2 bity jsou libovolné, což naznačuje, že pro tyto 4 znaky může existovat více kódování, ale často používáme výše uvedená 4 kódování.

CGRAM: (čtení a zápis dat)

Struktura CGRAM je uvedena výše. Zde přidáváme nějaký obsah pro čtení a zápis CGRAM. Před čtením a psaním nejprve napište adresu. Instrukce k zápisu CGRAM je adresa Ox4O{{1}}. Když ale píšeme adresu, stačí napsat adresu prvního řádku. Například první znak je Ox40+OOH a poté zapište nepřetržitě 2 bajty dat a poté se ukazatel adresy automaticky zvýší o jeden a přeskočí na další řádek. Adresa a poté zapište 2 bajty dat. Ve skutečnosti je programování zapsat adresu a pak nepřetržitě zapisovat 32 bajtů dat. Chcete-li číst data, zapište nejprve první adresu, poté jednou chybně přečtete a poté nepřetržitě čtěte 32 bajtů dat.

GDRAM: (RAM grafického displeje)

Prostorová struktura výkresové paměti RAM je znázorněna na obrázku níže:




Odeslat dotaz