Witam,
w jaki sposób przesyłać cały łańcuch, a nie żeby był rozbity na litery(różnicę widać na snifferach i w moim tunerze sat, który w taki sposób nie chce działać)?
moje ustawienia i procedury:
w jaki sposób przesyłać cały łańcuch, a nie żeby był rozbity na litery(różnicę widać na snifferach i w moim tunerze sat, który w taki sposób nie chce działać)?
moje ustawienia i procedury:
// inicjacja UASART
USART_Init:
; Ustawianie predkosci
ldi R16,high(MYUBRR)
out UBRRH, R16
ldi R16,low(MYUBRR)
out UBRRL, R16
; Walczenie odbiornika i nadajnika
ldi R16, (1<<RXEN)|(1<<TXEN)
out UCSRB,R16
; Ustawienia ramki: 8bitow, 1 stop
ldi R16, (1<<URSEL)|(0<<USBS)|(3<<UCSZ0)
out UCSRC,R16
ret
// wyslanie znaku
USART_Transmit:
; Czekanie na pusty bufor wysylania
sbis UCSRA,UDRE
rjmp USART_Transmit
; 'Wyslanie' znaku z R16
out UDR,R16
ret
// wyslanie lancucha z pamieci programu o adresie Z do R17
USART_String2:
; ustawianie ile brakuje do 0
com R17
inc r17
USART_String2_:
; czy juz wszystkie znaki
tst R17
breq USART_String2_koniec
; pobieranie znaku
lpm R0, Z+
mov R16,R0
call USART_Transmit
inc R17
rjmp USART_String2_
USART_String2_koniec:
ret