mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik STM32-comStick USB-Bootloader


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

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen,

wollte mit dem ComSticke etwas mit dem Bootloader spielen. Genauer 
gesagt ist das Ziel vom USB-Stick das Device flashen zu können.
Nun verlangt der µC (STM32F107VC) dafür einen externen Oscillator. ich 
habe aber keinen gefunden auf dem Stick selber, was bedeuten würde, dass 
ich einen an den PD0-Pin anschließen müßte.
Wollte nur fragen, ob ichs richtig verstanden habe, bevor ich den 
Lötkolben in die Hand nehm (so wie ich löte ist es immer wieder ein 
Abenteuer, obs danach tut :D).

MfG

blup

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

Bewertung
0 lesenswert
nicht lesenswert
Hier noch das Datenblatt des Sticks

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

Bewertung
0 lesenswert
nicht lesenswert
Und Di schematics habe ich auch noch :)

Autor: Erwin Reuss (er-tronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So wie ich das im Schaltplan sehe, befindet sich ein 25MHz Quarz auf der 
Platine. Laut Datenblatt des STM32F107 (Seite 89) reicht dieser für den 
Betrieb von USB aus. An PD0 kann kein Oszillator angeschlossen werden, 
hier kommt höchstens ein CAN-Transceiver dran.

Da ich mich in den letzten Tagen auch mit diesen Controllern beschäftigt 
habe, kann ich Dir sagen, daß der Bootloader absolut nicht funktioniert. 
Ich hab auch schon mit dem Gedanken gespielt, mit den STM32-ComStick von 
Hitex zuzulegen, weil ich keinerlei Erfolge mit dem Bootloader in meiner 
selbst aufgebauten Schaltung habe. Aber anscheinend kann ich mir das 
sparen.

Um den Controller zu flashen, benötigst du derzeit unbedingt ein 
JTAG-Interface, denn der Bootloader scheint in den derzeit 
ausgelieferten Controllern fehlerhaft zu sein. Dies trifft jedoch nur 
auf die neuen STM32F105 und F107 zu, die "alten" F101 und F103 haben 
einen sehr gut funktionierenden UART-Bootloader.

Als Kunde nimmst du vielleicht mal mit Hitex Kontakt auf, was die dazu 
sagen.
Wäre schön, wenn du mich auf dem Laufenden halten könntest.

Erwin

Autor: blup (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Erwin,

vielen Dank. Man ich soltle vllt doch zum Optiker gehen :) Das Teil ist 
sogar mit blankem Auge zu sehen auf dem Stick. PD0 habe ich gedacht, da 
es nach dem Reset ebenfalls OSC_IN funktion hat.

Aber das ist schon mal gut, dass ich mich nciht als einziger damit 
rumschlag :D

Ich habe Hitex jetzt mal angeschrieben und werde berichten.

MfG aus Stuttgarter Ecke

Autor: blup (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Von Hitex immer noch keine Antwort. Aber ich habe das nächste was nicht 
läuft :(
Hat jemand von Euch schon die Netzwerkverbindung am laufen?
Bei der Beispiel-Applikationkann ich zwar die IP+ Subnet-Mask + Gateway 
einstellen, jedoch bewirkt es gar nichts. Man kann weder den Stick 
anpingen noch irgendwelche Pakete versenden oder ähnliches.
So langsam fange ich an das Ding zu hassen :)

ratlose Grüße

Autor: Erwin Reuss (er-tronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mir scheint, diese neuen STM32F105 und F107 haben einen dicken 
Hardwarefehler. Der Bootloader funktioniert nicht, weil die Baudrate 
falsch berechnet wird. Die Antwort vom Controller (UART-Port) kommt 
zwar, aber mit einer falschen Baudrate. Dann habe ich Experimente mit 
dem USB-Controller gemacht, auch hier habe ich keinerlei Erfolge 
erziehlt. Es scheint wohl ein globales Timing-Problem bei diesen 
Controllern zu existieren. Dies wird auch der Grund sein, warum Ethernet 
nicht funktioniert, das hab ich jedoch bisher nicht getestet, weil der 
externe Aufwand zu hoch ist.
Ich verstehe nur nicht, wie Hitex die Teile verkaufen kann, obwohl sie 
nicht funktionieren.

Erwin

Autor: blup (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
http://developers.stf12.net/just-another-eclipse-demo-str91x

Ich versuchs erstmal damit. Das STM3210C-EVAL habe ich auch hier. Und 
wenn das läuft kann man ja schauen, ob man das nicht auch auf dem Stick 
zumm laufen bekommt.

MfG

Autor: Christoph Budelmann (Firma: Budelmann Elektronik GmbH) (christophbudelmann) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
blup schrieb:
> Ich versuchs erstmal damit. Das STM3210C-EVAL habe ich auch hier. Und
> wenn das läuft kann man ja schauen, ob man das nicht auch auf dem Stick
> zumm laufen bekommt.

Über JTAG und OpenOCD kann man auch einfache Programme auf den Chip 
laden, nur mit dem Bootloader wirst du (momentan noch) keine Freude 
haben. Ich stehe momentan genau vor dem gleichen Problem wie Erwin: 
Sowohl die Samples von STM als auch die ersten verfügbaren Chips haben 
ein Timing-Problem.

Autor: blup (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wir sind jetzt einfach auf den NXP LPC1768 umgestiegen.
Habe hier das Keil MCB1760-Board liegen udn hoffe, dass ich nun 
schneller vorankomme :)

MfG und frohes Schaffen

Autor: J. V. (janvi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Läuft das F107 Teil zwischenzeitlich ??? Ich kompiliere auch mit der 
Hitex GCC Version und Überlege ob ich mir ein STM3210-C Eval dazu kaufen 
soll

Autor: Christoph Budelmann (Firma: Budelmann Elektronik GmbH) (christophbudelmann) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
J. V. schrieb:
> Läuft das F107 Teil zwischenzeitlich ???

Ja, müsste es. Ich habe bislang nur den STM32F105 verwendet, der aber 
die gleichen anfänglichen Bugs hatte wie der 107er. Du musst nur beim 
Kauf unter Umständen auf den Datecode achten, Details dazu stehen im 
Errata Sheet. Grundsätzlich funktionieren alle Chips ab KW 52 / 2009, 
wenn ich mich recht erinnere.

Autor: elral (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Christoph,

d.h. bei Dir funktioniert der Bootloader über UART1?

Wir haben einen STM32F105RCT6, mit data code 937. Demnach sollten bei 
dem die Probleme mit dem Bootloader schon behoben sein (Errata Sheet).
ABER das Ding ist einfach nicht dazu zu bewegen, in den Bootloader zu 
springen. Eigenartiger Weise löst er auch schön regelmäßig einen RESET 
aus, immer kurz bevor die TX-Leitung auf H wechselt, alle ~0,43 sek.

Das Projekt ist jetzt ersteinmal etwas in den Hintergrund getreten, aber 
wir würden den schon ganz gerne mal zum laufen bekommen.

Welche genaue Ausführung setzt Du ein, ggf. welche auch mit data code 
937?

Vielen Dank und Grüße

Ralf

Autor: Christoph Budelmann (Firma: Budelmann Elektronik GmbH) (christophbudelmann) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
elral schrieb:
> Welche genaue Ausführung setzt Du ein, ggf. welche auch mit data code
> 937?

Wir haben momentan zwei Chargen STM32F105 in Betrieb:

STM32F105RC mit Datecode 952: Bootloader funktioniert problemlos

STM32F105V8 mit Datecode 926: Bootloader funktioniert nach Workaround 
gemäß Errata Sheet (zwei Pins auf High-Level legen).

Bevor ihr jetzt viel Zeit in die Fehler-Suche investiert würde ich 
einfach einen neueren Controller einlöten und testen, ob es damit geht. 
Die letzten Muster, die wir bei Farnell bestellt haben vom STM32F105RC 
waren Datecode 952 und laufen wie gesagt problemlos. Wenn es damit immer 
noch nicht läuft, ist es wohl eure Schaltung.

Autor: elral (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Christoph,

vielen Dank schon mal.
Wahrscheinlich ist es tatsächlich das beste, ersteinmal einen neueren 
einzulöten. Zwischenzeitlich habe ich aber auch ein Problem mit dem 
Quarz fest gestellt (Amplitidenmodulierte 8MHz mit 1Hz !??) Allerdings 
sollte das keine Rolle spielen, da für den Bootloader ja der interne 
Takt benutzt wird. Nichts desto trotz fliegt ersteinmal der Quarz 'raus, 
dann wird der STM32F105 ausgetauscht.
Die Schaltung ist so, wie ich sie auch bei einem anderen Projekten mit 
dem STM32F103 verwende, könnte dann "nur" das Boarddesign sein.
Den Workaround kann ich nicht nutzen, da wir die 64Pin Ausführung haben. 
Mit dieser Ausführung ist laut Errata Sheet kein Bootloader über UART1 
möglich.

Aber gut zu wissen, dass zumindestens die neueren funktionieren.

Vielen Dank und Grüße

Ralf

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.