Probleme beim der Softwareentwicklung und dem Debugging mit dem XMega128A1U

Blackwolf

Neues Mitglied
06. Nov. 2015
1
0
1
43
Grundlagen:
1. PC Win10, AtmelStudio 6.2 + 7
2. PC Win10, AtmelStudio 6.2
3. PC Win 7, AtmelStudio 7
Debugger: Atmel-Ice, JTAG3Ice
Boards: XMega128B1, Selbsterstelle Platine mit XMega128A1U + Flash + USB
Externe Libarys: LUFA, FatFS

Gemachte Tests:
Ich hab es mit allen PC’s, AtmelStudios, Debuggern und Interfaces (Jtag und PDI) mit dem gleichen Quellcode probiert. In allen möglichen Konstellationen. Dabei konnte ich feststellen das meine Probleme mit dem Jtag Interface geringer sind, aber trotzdem nicht weg.

Ziel der Anwendung:
Der aktuelle Umfang der SW soll den auf dem Board befindlichen Flash-Speicher als Massstorage Device zur Verfügung stellen. Ziel ist es Konfigurationsdaten auf dem Flash zu speichern, beim Starten einzulesen bzw. zu erstellen. Wenn ein USB-Anschluss angesteckt ist wird die ganze Hardware zum USB-Stick auf dem die Konfigurationen bearbeitet werden können.

Wie äußeren sich meine Probleme:

Zu Beginn noch der Hinweis ich bin neu im Feld der Microcontrollern aber nicht in der Entwicklung. Angefangen hab ich mit dem Demoboard des XMega128B1 Boards mit der Entwicklung der Software, dort hat alles wie gewünscht funktioniert. Nachdem das neue Board fertig war (gefertigt und getestet) hab ich die Ports der SW auf das neue Layout angepasst und wollte die bestehende SW auf der Hardware testen. Damit fingen die Probleme an.

Zuerst ist mir aufgefallen, dass bei angehängtem Debugger auf dem VCOM Port (über USART) keine sinnvollen Texte ausgegeben wurden. Teilweise haben die Debug Ausgaben die Ablaufzeiten der Software so verändert, dass gar nichts mehr ging. Wenn ich den Debug-Modus verlassen habe waren die Ausgaben teilweise richtig. Nach abschalten des VCOMs lief die SW mit angehängtem Debugger trotzdem nicht und ohne hat es funktioniert wie sie sollte, aber auch hier mit Einschränkung. Daraufhin hab ich ein Oszilloskop an den Flash-Speicher gehängt und konnte mitverfolgen das mit aktiver VCom Ausgabe überhaupt keine Datenübertagung vom Prozessor zum Flash weder über SPI noch USART-SPI stattgefunden hat. Hab ich den Printf Befehl am Ende der Übertragung entfernt wurden Daten übertragen (trotz aktivem VCom). Diese Daten waren trotzdem fehlerhaft. Ohne VCom und ohne angehängtem Debugger unter Verwendung der Jtag Schnittstelle waren die Daten sofort fehlerfrei und die Kommunikation zwischen Flash und Prozessor hat grundlegend funktioniert. Beim Versuch das gleiche unter Verwendung der PDI Schnittstelle zu machen lief es beim 1. Mal richtig, beim 2-5 Mal nicht beim 6 wieder richtig und so weiter. Kurz gesagt das Verhalten war überhaupt nicht deterministisch. Wenn ich am Stück die Software im Prozessor gelöscht habe und neu aufgespielt, lief die sie ein einziges Mal richtig und danach wieder nicht. Das konnte ich am Stück ohne Änderungen am Quellcode reproduzieren. Das Verhalten hat sich aber auch von einem Tag zum nächsten geändert.

Hat jemand eine Idee, woher meine Probleme kommen könnten, bzw. wie ich die Ursache näher eingrenzen kann??

Ich habe hier noch ein Demoboard vom XMega128A1U bei ersten Tests hat sich dieses äquivalent verhalten. Ich warte gerade noch auf den Flash-Chip, damit ich den Code mit dem Demoboard testen kann.
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)