#ifndef MYDEFS_H
#define MYDEFS_H 1

#define NOP() asm volatile ("nop" ::)
#define sbi(portn, bitn) ((portn)|=(1<<(bitn)))
#define cbi(portn, bitn) ((portn)&=~(1<<(bitn)))
#define RX_ENABLE (1<<2)
#define ENABLE 1
#define DISABLE 0
#define READY_TO_SEND (1<<0) 
#define START (1<<1)
#define ERROR_TO_READ_DATA (1<<2)
#define WAIT_TO_START (1<<3)
#define SYN 0xAA


#define ident_string 0
#define identifikation 1
#define identifikation_anforderung 2
#define wrsol_ident_anfrage 4

#define MASTER_ADRESSE 0x77
#define SLAVE_ADRESSE 0x7C
#define WRSOL_MASTER 0xF7
#define WRSOL_SLAVE 0xFC

#define REC_DATA 0
#define ANALYSE_DATA 1
#define SEND_DATA 2
#define SYSTEM_START 3
#define READ_DATA 4
#define ANALYSE_READ_DATA 5

extern void ser_init(void);
extern void ser_putc(unsigned char c);
extern void ser_puts(unsigned char *s);
extern int ser_gets(unsigned char *s, unsigned char len);
extern unsigned char ser_getc(void);
extern volatile unsigned int ebus_control;
extern volatile unsigned char Folge_Bytes;
extern volatile unsigned int ebus_pos;
extern unsigned char ebus_buffer[20];


#endif //MYDEFS_H
