Čeština / English
Login

Firmware / Řadič LCD displeje

Autor: Zdeněk Vašíček ()
Update: 19.3.2009

1. Úvod

Součástí FITkitu v1.X je sěstnácti znakový jednořádkový (16x1) LCD displej CM1610NR-j2. FITkit v2.0 je osazen dvouřádkovým displejem (16x2) CM160224. Displej je připojen přímo na piny FPGA. Modul displeje se skládá z interního řadiče a vlastního LCD prvku (viz obrázek). Interní řadič obsahuje tři paměti - paměť typu ROM, která obsahuje bodové předlohy ASCII znaků, malé paměti RAM, sloužící k definování vlastních znaků a RAM paměti uchovávající aktuální stav.

lcd_bctrl.png

Obrázek 1.1: LCD displej.

1.1. Popis ovládaní

Displej se ovládá pomocí několika instrukcí, zasílaných přes datovou sběrnici, které jsou vnitřním řadičem displeje zpracovávány. Že se jedná o instrukci řadič pozná podle signálu RS. Časový průběh zápisu dat do LCD a jeho časování ukazuje obrázek 1.2.

display_timing_write.png

Obrázek 1.2: Časování zápisu na displej.

Pro snadné ovládání displeje byl vytvořen externí řadič jako komponenta pro FPGA. Displej sice umožňuje číst Busy Flag případně aktuální pozici kurzoru, avšak externí řadič umožňuje pouze zápis (jednak poskytovaná data nejsou třeba a návic se tím ušetří místo v FPGA). Interní řadič displeje poskytuje následující instrukce: Clear Display, Cursor At Home, Entry Mode Set, Display On/Off Control, Cursor or Display Shift, Function Set, Set CGRAM Address, Set DDRAM Address, Read Busy Flag and Address, Write Data to RAM a Read Data from RAM. Popis jednotlivých instrukcí naleznete v dokumentaci k displeji CM1610NR-j2 CM160224.

Popis

Symbol

Napájení

Min

Max

E cycle time

tC

VDD=3V

1000ns

--

E pulse time

tW

450ns

--

E rise/fall time

tR,tF

--

25ns

R/W and RS setup time

tsu1

60ns

--

R/W and RS hold time

th1

20ns

--

Data setup time

tsu2

195ns

--

Data hold time

th2

10ns

--

Tabulka : Časování zápisu na display

2. Implementace řadiče

Rozhraní navrženého externího řadiče je na obrázku 2.1.

lcd_ctrl.png

Obrázek 2.1: Rozhraní LCD řadiče.

Popis rozhraní LCD řadiče:

  • RST : std_logic

    Signál, který uvádí řadič do výchozího stavu

  • CLK : std_logic

    Hodinový signál, kterým je řízen celý řadič

  • DISPLAY_RS, DISPLAY_DATA, DISPLAY_RW, DISPLAY_EN : std_logic

    Signály displeje

  • RS : std_logic

    Rozlišení, zda se jedná o data nebo instrukci řadiče

  • DATA_IN : std_logic_vector(7 downto 0)

    Vstupní data, která budou zapsána do řadiče LCD displeje

  • WRITE_EN : std_logic

    Zápis dat do řadiče LCD displeje

Zobrazeno: 2064x Naposledy: 23.9.2017 12:43:52