mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik STM3210E EVAL SD-Controller SDIO + HiTOP


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

Bewertung
0 lesenswert
nicht lesenswert
Hallo Gemeinde,

ich schreibe hier mal meinen ersten Beitrag, eure Diskussionen haben 
mich schon sehr oft weitergeholfen. Hierzu erstmal ein Danke. Nun habe 
ich folgendes Problem:

Ich hab ein STM3210E-EVAL Board, auf welchem ich die SD-Karte zum Laufen 
bekommen möchte. Hierzu habe ich die "STM32F10x_StdPeriph_Lib_V3.4.0" 
zum laufen gebracht. Das Kompilieren funktioniert einwandfrei, nur bei 
der Ausführung hakt es bei mir.

HiTop 5.4 meckert, dass JTAG entweder nicht richtig konfiguriert sei, 
oder defekt ist bzw. die Schnittstelle mit Anfragen überlastet sei. Die 
Verbindung zu dem Cortino Stick funktioniert einwandfrei.

Kurios ist auch, dass die alte Version (Build 3.1.2) vor einem Monat 
einwandfrei bei mir gelaufen ist, nun jedoch die gleichen Fehler bringt.

Errorcodes:

An error occurred with Error Code 302
overrun detected accessing the access port
The system could not connect to the target!

The initialization of the debug port failed after a system reset.
The JTAG/SW interface is corrupted or misconfigured.

An error occurred with Error Code 306
Target communication error detected.
Probably the target does not respond to emulator.

An error occurred with Error Code 307
Target communication error detected.
Possible cause: the JTAG configuration is not sufficient.
Check derivative selection and JTAG settings.
Probably a reset of the system executing the command
'System > Reset test system' may help.

Es funktioniert wenn ich die SD Karte rausnehme. Dann geht sowohl das 
Connecten, als auch das Flashen und Abspielen des Programms.
Wenn man die Karte einsteckt und auf RUN klickt -> Fehler siehe oben.

Die SD-Karte habe ich vorher komplett mit Nullen beschrieben. Dadurch 
konnte ich dann mit einem Hexeditor und SD-Kartenlesegerät feststellen, 
wie viel Blöcke geschrieben werden, bevor das Programm abstürzt. Dabei 
habe ich festgestellt, dass die Datenmenge nicht immer gleich ist, bis 
zum Absturz des Programms. Einmal habe ich 243 KByte schreiben können, 
ein anderes mal nur rund 135 KByte, dann wieder über 1 Mbyte…


Lange Rede, kurzer Sinn:

bei dem Befehl:
TransferStatus2 = Buffercmp(Buffer_MultiBlock_Tx, Buffer_MultiBlock_Rx, MULTI_BUFFER_SIZE); 
stürzt das Programm immer wieder ab. Code wurde nicht verändert, alles 
original STM Code.

An was könnte das liegen? Board defekt? Fehlerhafter Code von STM? 
SD-Karte defekt?

Autor: Mehmet Kendi (mkmk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit den MultiBlock Befehlen hatte auch ich gestern mein Aha-Erlebnis, 
siehe
Beitrag "STM32: Probleme mit SD_ReadMultiBlocks"
Habe aber z.Zt. keine Musse, der Sache nachzugehen, weshalb ich nur mit 
SD_ReadBlock und SD_WriteBlock arbeite. Und damit gibts keine Probleme.

Ob aber Dein Problem dasselbe ist?

Autor: Mehmet Kendi (mkmk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch ein Nachtrag:
Der erste Aufruf mit MultiBlock funktioniert. Zum Haenger kommt es, wenn 
dem MultiBlock ein Read/Write Block folgt. Und zwar kommt es zum Timeout 
bei der Initialisierung.

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.