Gast
#1225051
Hallo liebe AVR gemeinde, hab Problem mit meinem at90pwm216. Hab ein kleines Program, das 16 Bit sendet soll, er überträgt nur dann wenn ich denn Write Flash Baten klick neben dem Connect obwohl eine while schleife existiert. Weis jemand die Lösung für mein Problem. Vielen dank! #include <avr/io.h> #include <avr/interrupt.h> void EUSART_Transmit_data( unsigned int data ) { // Wartet, bis Transmit lehr ist while ( !( UCSRA & (1<<UDRE))) { }; //Die datei wird in den Buffer geladen und dann gesendet EUDR = data>>8; UDR = data; } int main (void) { UBRRL = 207; //Setzt Baudrate des Transmitters auf 1200; UCSRC = 0b00001000; //Setzt die Stop-Bits auf 2; MUBRR = 833; //Setzt Baudrate des reveivers auf 1200 und Frequenz auf 1MHz EUCSRA = 0b10110111; //Hier wird die Anzahl der zu senden Bits eingestellt (16) EUCSRB = 0b00011010; //EUSART-Mode wird eingeschaltet UCSRB = 0b00011000; //EUSART Transmitter wird eingeschaltet unsigned int data = 0b1010100101111001; EUSART_Transmit_data(data); while(1) { } }