Hab den code jetzt verändert aber es funktioniert immer noch nicht!
Sofort nach der ersten Übertragung(O) werden zwei pins
low und bleiben es auch! Kann mir mal bitte jemand nen code schreiben
wie ich eine Zahl über den uart empfange und sie dann an portB ausgebe?
//mein code:
.include "8515def.inc"
.def temp = r16
.EQU Data = 0x0060
ldi temp,$FF
out DDRB,temp
ldi temp ,RAMEND
out SPL, temp
sbi UCR ,RXEN
sbi UCR, TXEN
ldi temp, 23
out UBRR, temp
out PortB , r20
void:
sbis USR, RXC
rjmp void
in r19,UDR
out PortB, r19
rjmp void
Hi! Das einzige was nicht stimmt ist das der Stack aus H und L-Byte besteht, nur den brauchst du momentan garnicht. Was in R20 drinnsteht ist irgendwie ungeklärt, aber eigentlich auch nicht wichtig. Frage: Quarz = 3,68..MHz und 9600 Baud? Wenn ja, ok. ääääm an PortB ist Mosi, Miso, SCK drann. Stören die eventuell? MFG Uwe
Kann sein das Mosi und Miso stören! Aber wie kann ich das abstellen? Wie kann ich das mit dem Stack denn ausstellen?
Hi Tobi! Stack: ldi temp,High(Ramend) out SPH,temp ldi temp,low(Ramend) out SPL,temp ;Stackadresse festlegen Mosi/Miso: teste doch mal mit etwas Progr. ob sich das komplette Port ansprechen lässt. PAP: -Port auf Ausgang -an Port $FF ausgeben -Pause damit was zu sehen ist -an Port $00 ausgeben -und noch eine Pause damit was zu sehen ist -zurück zur $FF-Ausgabe Stimmen Quarz und Baud? Das ist viel wichtiger. MFG Uwe
Ja wenn ich ohne uart arbeite dann läuft alles wie es soll! Quarz und baud stimmen auch! 3,69MHz und 9600 Baud!!!!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.