Sehr komischer Fehler (avr-gcc)

Gast #3143749
Lesenswert?
• ▲
▼
Hallo,

normalerweise kann ich meine Fragen selbst beantworten,
doch dieses mal brauche ich eure Hilfe.
Ich versende Bytes per UART. Alles außer die Zeichen
0x11 und 0x13 werden übertragen. Ich kann das Problem
mit einem minimalistischen Beispiel repoduzieren.
Wie in der Überschrift gesagt benutze ich avr-gcc.

Einen Hardwarefehler habe ich ausgeschlossen, indem
ich folgende Komponenten ausgetauscht habe,
ohne den Fehler zu beseitigen:
- den Controller (Atmega32, Atmega16, Atmega8 probiert)
- den Quartzoszillator (2x 14.7456 MHz)
- die UART-Brücke (2x FT232R, unterschiedl. PCBs)

Wenn ich die Ausgabe aufzeichne, erscheint folgendes im Hex-Editor:
00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 12 14 15 16 17 18 ...
Alle folgenden Bytes bis FF werden empfangen.

main.c und Makefile sind angehängt.
Ich freue mich über jede Hilfe.
Angehängte Dateien:
Gast #3143776
Lesenswert?
• ▲
▼
Danke, das ist ein wertvoller Hinweis.
Derartiges hatte ich nicht bedacht, weil
ich ein Terminal-Programm und auch ein
anderes Tool benutzt habe. Als Vorlage
für das Tool habe ich bootloader-launch
von Foodloader benutzt.
Dort wird dieser Handshake nicht abgeschaltet.
Ist es eine Eigenschaft der Schnittstelle
(/dev/ttyUSB0) oder ist es abhängig vom Programm?

Weisst du, mit welcher API man den Handshake
unter Linux/GCC abstellt?
Angehängte Dateien:
Gast #3143790
Lesenswert?
• ▲
▼
Danke für die Hilfe, A.K.
Scheinbar ist der USART mehr als eine einfach Pipe ;)
Folgendermaßen habe ich es jetzt am Laufen:

  t.c_iflag &= ~(IXON | IXOFF | IXANY);
  err = tcsetattr (fd, TCSAFLUSH, &t);


Vielen Dank!

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.