#include <avr/io.h>

#define LCD_Data        PORTA
#define LCD_ControlP	PORTB
#define LCD_DataD		DDRA
#define LCD_ControlPD	DDRB
#define LCD_SetEnable() PORTB |= 16
#define LCD_ClrEnable() PORTB &= ~16
#define LCD_SetData()   PORTB |= 4
#define LCD_SetCommand()PORTB &= ~4
#define LCD_SetRead()   PORTB |= 8;
#define LCD_SetWrite()  PORTB &= ~8;
#define SoundOn()       PORTB |= 32;
#define SoundOff()      PORTB &= ~32;
#define SoundInvert()   PORTB ^= 32;

void LCD_WriteDelay();
void LCD_WriteData(unsigned char co);
void LCD_WriteCommand(unsigned char co);
void LCD_Init();
void LCD_Clear();
void LCD_Position(unsigned char radek, unsigned char sloupec);
void LCD_WriteString(char* retezec);
void LCD_WriteCString(const char* retezec);
void LCD_PrDec(unsigned char co);
void LCD_PrHexByte(unsigned char co);
void LCD_PrHexInt(unsigned int co);
