www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik USART-Probleme beim Atmel AT91SAM7S64


Autor: Max (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich versuche gerade, über die Serielle Schnittstelle von einem alten 
Gerät Daten einzulesen. Diese müssen zunächst mit einem Datenwort, 
bestehend aus 2 Bytes angefordert werden, anschließend folgt die Antwort 
ebenfalls mit zwei Bytes. Das Anfordern klappt wohl bereits, lediglich 
die Antworten sind nur abschnittsweise verwertbar.
Ich hole in einer weiteren Funktion erst ab, wenn die Antworten da sind!
Dabei fällt Folgendes auf: Immer die unteren 4 Bits pro Antwortbyte ( 
beim HighByte und LowByte ) werden korrekt übermittelt, die oberen 4 
geben dagegen nie die erwarteten Werte wieder ( fordere momentan nur 
Testbytes an, die folgende Art haben müssten: 0x55 und 0xAA, ankommen 
tut 0x"?"5 sowie 0x"?"A.

Gestern kam noch der Einwand, dass es evtl. an der Baudrate liegen 
könnte, hab da aber auch nochmals alles überprüft. Das alte Gerät hat 
folgende Einstellungen: 8 Datenbits, No Parity, 2 StopBits, 9,6 kBaud.

Evtl. ist im Init-Bereich noch was faul und ihr seht den Fehler.

Danke jedenfalls schon mal.

Max

Autor: gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo max,
was mir bei deinem code abgeht ist die aktivierung des clocks für den 
uart.
außerdem würde ich dir empfehlen, die funktionen aus der atmel-library 
(lib_AT91SAM7S64.h)einzusetzen .
desweiteren kann ihc dir die examples von www.at91.com ans herz legen. 
die dir mal wie eine peripherie am besten zu init. ist

hier mal eine liste der funktionsaufrufe die bei mri zum ziel geführt 
haben:
AT91F_PIO_CfgPeriph(...);
AT91F_US0_CfgPMC();
AT91F_US_Configure(...),
AT91F_US_EnableTx();
AT91F_US_EnableRx();

gruss
gerhard



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.