/*
 * uart.h
 *
 * Created: 04.10.2018 11:32:14
 *  Author: Ebert
 */ 


#ifndef UART_H_
#define UART_H_

#ifndef F_CPU
#define F_CPU 8000000UL /* evtl. bereits via Compilerparameter definiert */
#endif

#ifndef BAUD
#define BAUD 76800 
#endif

#define UBRR_VAL ((F_CPU+BAUD*8)/(BAUD*16)-1)   // clever runden
#define BAUD_REAL (F_CPU/(16*(UBRR_VAL+1)))     // Reale Baudrate
//#define BAUD_ERROR ((BAUD_REAL*1000)/BAUD) // Fehler in Promille, 1000 = kein Fehler.

//#if ((BAUD_ERROR<990) || (BAUD_ERROR>1010))
//#warning Systematischer Fehler der Baudrate groesser 1% und damit zu hoch!
//#endif

#include <util/setbaud.h>
#include <avr/io.h>
/*Protoypen*/
void uart_init();
int uart_putc(unsigned char c);
void uart_puts(const char *s);
void uart_puti (int i);
#endif /* UART_H_ */