X-Git-Url: https://hackdaworld.org/gitweb/?a=blobdiff_plain;f=beginners%2Ftest_uart.asm;h=6ec9b5602d99b98ec78b0bf02bd1e459b8735097;hb=HEAD;hp=53974a3528b403b47a8b5201eb0e61fa17d627e3;hpb=30183fca9fd29d2a3aa7eff0deaf8b84bafab9eb;p=my-code%2Fatmel.git diff --git a/beginners/test_uart.asm b/beginners/test_uart.asm index 53974a3..6ec9b56 100644 --- a/beginners/test_uart.asm +++ b/beginners/test_uart.asm @@ -1,17 +1,39 @@ ; specify device -.DEVICE AT90S2313 +.include "../include/2313def.inc" ; baudrate einstellen -ldi r16, 11 ; "38400 bps wert" in r16 -out 0x09, r16 ; write to uart baudrate register -sbi 0x0a, 3 ; enable tx at uart control register +ldi r16, 51 ; "9600 bps @ 8mhz" in r16 +out UBRR, r16 ; write to uart baudrate register +sbi UCR, TXEN ; enable tx at uart control register ; transmit 0x23 all the fucking time ... ldi r16, 0x23 ; load 0x23 to register -out 0x0c, r16 ; write that to uart data register port +out UDR, r16 ; write that to uart data register port LOOP: -sbis 0x0b, 5 +sbis USR, UDRE rjmp LOOP -out 0x0c, r16 +ldi r16, 0x0a +out UDR, r16 +rjmp LOOP_H + +LOOP_H: +sbis USR, UDRE +rjmp LOOP_H +ldi r16, 0x68 +out UDR, r16 +rjmp LOOP_D + +LOOP_D: +sbis USR, UDRE +rjmp LOOP_D +ldi r16, 0x64 +out UDR, r16 +rjmp LOOP_W + +LOOP_W: +sbis USR, UDRE +rjmp LOOP_W +ldi r16, 0x77 +out UDR, r16 rjmp LOOP