mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Fehlfunktion am Uart


Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann sein das Mosi und Miso stören! Aber wie kann ich das abstellen?

Wie kann ich das mit dem Stack denn ausstellen?

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja wenn ich ohne uart arbeite dann läuft alles wie es soll!
Quarz und baud stimmen auch! 3,69MHz und 9600 Baud!!!!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.