USB: Data toggle PID error

Gast #3854684
Lesenswert?
• ▲
▼
Hallo,
ich arbeite gerade an einem Programm welches Daten per USB Übertragen 
soll. Aber vielleicht erstmal kurz zur Hardware:
µC: AT32UC3 auf eigener Platine
USB Seriellwandler MCP2200 auf Demoboard. Verbunden über circa 1m USB 
Kabel.

Ich benutze das Atmelstudio zusammen mit dem ASF und dem CDC Treiber für 
den USB-Seriel Wandler.
Ich kann Bytes per "uhi_cdc_putc" senden und diese kommen auch an. Wenn 
ich aber Bytes vom PC (UART->MCP2200->)an den µC sende, dann kommt nicht 
jedes Byte an!
Wenn ich mehrere Bytes gleichzeitig sende kommen alle an außer das 
erste. Wenn ich Bytes einzeln sende kommt exakt jedes zweite an.
z.B ich Sende "1" "2" "3" "4" und es kommt an 2 3 4
Beispiel 2: ich Sende "1", kommt an. Ich sende "1", kommt nicht an,...
Das ganze verhält sich immer gleich.
An den Stellen wo mir Bytes verloren gehen bekomme ich ein 
"UHD_TRANS_DT_MISMATCH" was laut Header Datei "Data toggle PID did not 
match the expected value" bedeutet.

Ich benutze von Atmel die Option "multiple Host" mit MSC und CDC. Einen 
USB Stick kann ich ohne Probleme lesen und schreiben, nur beim CDC habe 
ich das Problem.

Jetzt weis ich leider nicht mehr weiter.
Hat es eine Hardwareursache? Dagegen spricht, dass es sich immer gleich 
verhält, beim USB Stick nicht passiert und auch das Senden des CDC 
fehlerfrei abläuft.
Hat es eine Softwareursache? So tief kenne ich mich mit USB leider nicht 
aus. Ich komme sonst eigentlich mit dem ASF gut aus und ich gehe davon 
aus, dass die USB funktionen von Atmel funktionieren sollten.
Könnt ihr mir einen Tipp geben in welche Richtung ich suchen könnte?
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.