//-----------------------------------------------------------------------------------------------------------
// *** Obsługa wyświetlaczy alfanumerycznych zgodnych z HD44780 ***
//
// - Sterowanie: tryb 4-bitowy
// - Dowolne przypisanie każdego sygnału sterującego do dowolnego pinu mikrokontrolera
// - Praca z pinem RW podłączonym do GND lub do mikrokontrolera (sprawdzanie BusyFLAG - szybkie operacje LCD)
//
// Pliki 			: lcd44780.c , lcd44780.h
// Mikrokontrolery 	: Atmel AVR
// Kompilator 		: avr-gcc
// Źródło 			: http://www.atnel.pl
// Data 			: marzec 2010
// Autor 			: Mirosław Kardaś
//----------------------------------------------------------------------------------------------------------
// Rozmiar kodu z załączonymi tylko funkcjami: lcd_init(), lcd_cls(), lcd_str() 				(RW<-->GND)
// dla procesorów AVR: 240 bajtów !!!
// Rozmiar kodu z załączonymi tylko funkcjami: lcd_init(), lcd_cls(), lcd_str(), lcd_locate()	(RW<-->GND)
// dla procesorów AVR: 254 bajty
// Rozmiar kodu z załączonymi tylko funkcjami: lcd_init(), lcd_cls(), lcd_str() 				(RW<-->uC)
// dla procesorów AVR: 326 bajtów !!!
// Rozmiar kodu z załączonymi tylko funkcjami: lcd_init(), lcd_cls(), lcd_str(), lcd_locate()	(RW<-->uC)
// dla procesorów AVR: 340 bajtów
//-----------------------------------------------------------------------------------------------------------
#ifndef LCD_H_
#define LCD_H_
//----------------------------------------------------------------------------------------
//
//		Parametry pracy sterownika
//
//----------------------------------------------------------------------------------------
// rozdzielczość wyświetlacza LCD (wiersze/kolumny)
#define LCD_Y 4		// ilość wierszy wyświetlacza LCD
#define LCD_X 16	// ilość kolumn wyświetlacza LCD

// tu ustalamy za pomocą zera lub jedynki czy sterujemy pinem RW
//	0 - pin RW podłączony na stałe do GND
//	1 - pin RW podłączony do mikrokontrolera
#define USE_RW 1

//----------------------------------------------------------------------------------------
//
//		Ustawienia sprzętowe połączeń sterownika z mikrokontrolerem
//
//----------------------------------------------------------------------------------------
// tu konfigurujemy port i piny do jakich podłączymy linie D7..D4 LCD
#define LCD_D7PORT  A
#define LCD_D7 6
#define LCD_D6PORT  A
#define LCD_D6 5
#define LCD_D5PORT  A
#define LCD_D5 4
#define LCD_D4PORT  A
#define LCD_D4 3


// tu definiujemy piny procesora do których podłączamy sygnały RS,RW, E
#define LCD_RSPORT A
#define LCD_RS 0

#define LCD_RWPORT A
#define LCD_RW 1

#define LCD_EPORT A
#define LCD_E 2
//------------------------------------------------  koniec ustawień sprzętowych ---------------




// resztę biblioteki można znaleźć na płycie DVD dołączonej do drugiej książki
//  http://atnel.pl/jezyk-c-pasja-programowania.html





#endif /* LCD_H_ */
