Gast
#460083
Hallo,
ich bin relativ neu auf dem gebiet der avr Progrmmierung, hab bis jetzt
durch das gute Tutorial alles verstanden. Als ich dann das senden mit
dem UART probierte hab ich es aber nich zum laufen bekommen. Baudrate
stimmt am Hyperterminal mit dem avr überein. Könnt ihr mir vieleicht
sagen wo der Fehler liegt?
Code:
#include <avr/io.h>
#include <stdint.h>
#ifndef F_CPU
#define F_CPU 1000000
#endif
#define UART_UBRR_CALC(BAUD_,FREQ_) ((FREQ_)/((BAUD_)*16L)-1)
#define UART_BAUD_RATE 9600
int main(void)
{
UBRRH = (uint8_t)( UART_UBRR_CALC( UART_BAUD_RATE, F_CPU ) >> 8 );
UBRRL = (uint8_t)UART_UBRR_CALC( UART_BAUD_RATE, F_CPU );
while (!(UCSRA & (1<<UDRE)))
{}
UDR = 'x';
}