;==========================================================
;
; HEAD of LCD (HD44780) library 
; 4-bit interface
; 
; (C) HELIUM  
; http://helium.webz.cz/
;
; this file is not for compiling
;==========================================================

$MOD51

;XTAL	EQU	11		; XTAL 11.0592 MHz, zakomentovat !!!

RS	EQU	P1.2
EN	EQU	P1.3
DB4	EQU	P1.4
DB5	EQU	P1.5
DB6	EQU	P1.6
DB7	EQU	P1.7
LCD	EQU	P1

;==========================================================
; organizace dat  [Lo - Hi] 
	DSEG AT 028h
wait:	DS	2		; 2 bytes na cekaci smycky
LCD_pos:DS	1		; 1 byte, aktualni pozice, adresa

	CSEG
;==========================================================
; inicializace displeje
;
LCD_init:	LCD_init

;==========================================================	
; vymazani displeje
;
LCD_clr:	LCD_clr

;==========================================================	
; zapis ZNAKU z ACC do LCD displeje
;
LCD_wrT:	LCD_wrT

;==========================================================	
; nastaveni kurzoru displeje na adresu v ACC
;
LCD_at:		LCD_at

;==========================================================	
; zapis bytu do LCD displeje
; nici obsah ACC
;
LCD_wr:		LCD_wr

;==========================================================	
; zapis 2x 4 bitu z ACC do LCD displeje
; nici obsah ACC
;
LCD_wr2:	LCD_wr2

;==========================================================	
; cekani 50us (doba trvani po zapisu do displeje)
;
LCD_wait:	LCD_wait

;==========================================================	
; zapis R2 DAT od adresy DPTR do CG/DD-RAM
;
LCD_ld:		LCD_ld

;==========================================================	
; nastaveni vlastnich znaku na pozicich 0-7 CG-RAM
; uziva registr R2
;
LCD_ldF:	LCD_ldF

;==========================================================
; Tabulky dat
;
;----------------------------------------------------------
; users char for CG-RAM, DD-RAM position 0-7
;
; active matrix for font 5x7 pixels
; char_x:    DB	xxx10001b
;            DB	xxx10001b
;            DB	xxx01010b
;            DB	xxx00100b
;            DB	xxx01010b
;            DB	xxx10001b
;            DB	xxx10001b
;            DB	xxxxxxxxb
;
char_tab:            
char_0:     DB	00011111b
            DB	00011111b
            DB	00011111b
            DB	00011111b
            DB	00011111b
            DB	00011111b
            DB	00011111b
            DB	0h
		
;==========================================================
; Data pro LCD modul
;
tab1:	DB	'Hello LCD world!'
tab2:	DB	' Helium library '
;==========================================================

;	END