ATMega8 UART
Dukai Zoltan
dzoolee at yunord.net
Sat Aug 16 16:35:48 CEST 2003
En is olvastam a PDF_et, csak probaltam mar mindent...
most ez a verzio van, es a 10MHz-es kvarccal ugy mukodik mintha 4MHZ-es
lenne...
void uart_init(void)
/* initialize uart */
{
/* enable RxD/TxD and ints */
outp((1<<RXCIE)|(1<<TXCIE)|(1<<RXEN)|(1<<TXEN),UCSRB);
outp(0x86,UCSRC);
/* set baud rate */
UBRRH=0;
UBRRL=26;
}
0: outp((1<<RXCIE)|(1<<TXCIE)|(1<<RXEN)|(1<<TXEN),UCSRB);
+00000071: ED88 LDI R24,0xD8 Load immediate
+00000072: B98A OUT 0x0A,R24 Out to I/O location
81: outp(0x86,UCSRC);
+00000073: E886 LDI R24,0x86 Load immediate
+00000074: BD80 OUT 0x20,R24 Out to I/O location
83: UBRRH=0;
+00000075: BC10 OUT 0x20,R1 Out to I/O location
84: UBRRL=26;
+00000076: E18A LDI R24,0x1A Load immediate
+00000077: B989 OUT 0x09,R24 Out to I/O location
86: }
+00000078: 9508 RET Subroutine return
8
Papp Zoltán wrote:
> Ha utánaszámolsz, valószínűleg rá is tudsz jönni, mi ez a szám. Vagy ha
> megnézed a lefordított assembly kódot.
> Mivel említetted, hogy 16 helyett kb. 42-vel kell osztani, így a számod
> valószínűleg 2 vagy 3 lesz.
>
> Üdv
>
More information about the Elektro
mailing list