Forum: Mikrocontroller und Digitale Elektronik Stk500 will keine Daten empfangen (rs232)


von Horst (Gast)


Angehängte Dateien:

Lesenswert?

He Leute

ich habe den Code zum Empfangen vom PC vom Tutorial übernommen. Der
Code  uart-receive.asm (ohne Interrupt)

Mit folgenden Änderungen
- Ausgabe nicht an PortD, sondern PortB. Wer hat sich eigentlicxh PortD
ausgedacht? Ich denke die Masse nutzt das stk500 und da ist PortD nicht
voll verfügbar wegen dem RX,TX Anschluss.
- Weglassen der Zeilen :

        ; Frame-Format: 8 Bit
        ldi temp, (1<<URSEL)|(3<<UCSZ0)
        out UCSRC, temp

weil aVR Studio da meckert (kennt URSEL nicht), habs auch net im
Datenblatt gefunden. Was ist das für ein Syntax?


Ich dachte mir das Wegfallen dieser Zeilen macht nix. Aber wenn ich
dann das Stk500 einschalte, leuchtet die gesamte LED-Leiste und nix tut
sich wenn ich vom PC was sende.

von Andreas (Gast)


Lesenswert?

Dann sende doch einfach mal und sieh Dir am PC an was ankommt.
Am besten für sowas Hyperterminal nehmen. Oder noch besser Hterm.
Gibt es hier zum runterladen.

Mir ist nämlich nicht klar woher Du die 4 Mhz für den Clock nimmst.
Hast Du einen externen Quarz? Ich meine der interne ist max. 3.68 Mhz.
Wahrscheinlich wird Deine Baudrate nicht stimmen.

Grüße
Andreas

von Irgwer (Gast)


Lesenswert?

Hallo Horst,

wenn dein STK500 nicht allzu alt ist, sollte da bereits ein ATMega8515
und kein AT90S8515 dabei sein. In dem Fall solltest du auch das
Include-File 'm8515def.inc' anstatt '8515def.inc' benutzen.

Bist du sicher das die Fuses für 4Mhz eingestellt sind?

von Horst (Gast)


Lesenswert?

ja ein externer Quarz hängt dran. Funktioniert auch mit anderen Progs im
AVR.

achso, ich dachte AT90S8515 ist das gleiche wie ATMega8515 ... hmm

Senden zum PC funktioniert auch (mit TXEN).

werd wohl weiter rumprobieren...
danke euch

von Rahul (Gast)


Lesenswert?

Ich hab auch ein STK500. Wenn ich den ATmega162 benutze, kann ich weder
PortB noch PortD richtig benutzen, da beide eine serielle Schnittstelle
enthalten. (Es liegt also am Controller und nicht am Board...)

Bei dem Codefragment würde ich vermuten, dass es für einen Mega-AVR
ist. Der 8515 ist "mature"...

von Irgwer (Gast)


Lesenswert?

Dein letzter Post hat's verraten.

Wenn du empfangen willst, solltest du auch RXEN setzen und nicht TXEN.

von Horst (Gast)


Lesenswert?

ach ja, das wär ja zu schön wenn das der Fehler wär..... es funktioniert
immer noch nicht.

von Horst (Gast)


Lesenswert?

ok das isses: es muss heissen:
sbis USR, RXC

USR , nicht UCR

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
Noch kein Account? Hier anmelden.