#include #define F_CPU 11059200UL #include #include // *************** globale Variablen *********************** int8_t Telegramm[5]; // Puffer fürs Telegramm int8_t DO_Port_A=0,DO_Port_B=0,DO_Port_C=0,DO_Port_D=0; int AO_1=0,AO_2=0; /* UART-Init: Berechnung des Wertes für das Baudratenregister aus Taktrate und gewünschter Baudrate */ #define BAUD 9600UL // Baudrate //Berechnungen #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)) #error Systematischer Fehler der Baudrate grösser 1% und damit zu hoch! #endif void uart_init(void) { UBRRH = UBRR_VAL >> 8; // Einstellen der Taktrate UBRRL = UBRR_VAL & 0xFF; UCSRC = (1< Spannung BT Modul, PC0-->RCK Ausgange, PC1--> SH/LD Eingänge DDRD =0x00; // ************************ Variablen *********************** for (int i=5;i!=0;i--) // Telegrammvariable initialisieren Telegramm[i-1]=0; //_delay_ms(1000); uart_init(); sei(); init_BT(); /* Replace with your application code */ while (1) { } }