PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ATxmega128 USART Problem



Wsk8
26.11.2012, 12:37
Hallo,
ich bin gerade beim usart am xmega und der will einfach nicht und ich weiß auch nicht was ich noch einstellen soll.

Hier mal der code zum initialisieren und senden.



RESET:
; Txd out
ldi r16, 0x08
sts PORTD_DIR, r16


; 16 MHz
call SETUP_CLK


UART_INIT:
; Rx/Tx enable
ldi r16, USART_RXEN_bm | USART_TXEN_bm
sts USARTC0_CTRLB, r16


; no parity, 2 stop bits, 8 bit char size
ldi r16, USART_PMODE_DISABLED_gc | USART_SBMODE_bm | USART_CHSIZE_8BIT_gc
sts USARTC0_CTRLC, r16


; baud 38400
ldi r16, BSEL
sts USARTC0_BAUDCTRLA, r16


ldi r16, BSCALE
sts USARTC0_BAUDCTRLB, r16




UARTC0_SEND_BYTE:
ldi r16, USART_DREIF_bm ; set dreif bit
sts USARTC0_STATUS, r16 ; enable transmit
sts USARTC0_DATA, zeichen ; zeichen in data reg


ret


BSEL und BSCALE hab ich mit dieser Seite berechnet: http://prototalk.net/forums/showthread.php?t=188

mfg