Gast
#302687
Hallo, ich verwende fuer die Einstellung der Baudrate immer das Beispiel aus dem AVR-GCC Tutorial: #ifndef F_CPU #define F_CPU 3686400 /* Oszillator-Frequenz in Hz */ #endif #define UART_BAUD_RATE 9600 #define UART_BAUD_CALC(UART_BAUD_RATE,F_OSC) ((F_CPU)/((UART_BAUD_RATE)*16L)-1) Frage: Was ist F_OSC? bzw muesste in der letzten Zeile nicht beidemale F_OSC oder beidemale F_CPU stehen? Bei der Initialisierung schreibe ich: UBRRH=(uint8_t)(UART_BAUD_CALC(UART_BAUD_RATE,F_CPU)>>8); UBRRL=(uint8_t)UART_BAUD_CALC(UART_BAUD_RATE,F_CPU); Ich verwende also nur F_CPU. Ich bin kein SPeziqlist mit den #defines und sonstigen PräProz Direktiven... Bitte um kurze Aufklaerung wieso es trotzdem funktioniert. mg, Johannes