STM32F4 Schaltung um Controller über USB zu programmieren

Gast #4748014
Lesenswert?

Ich finde allerdings keine Beschreibung für den ST-Link oder einen 
Schaltplan.
Nur dieses Datenblatt: 
http://www.st.com/content/ccc/resource/technical/document/data_brief/80/76/2b/dc/45/c5/46/90/DM00027105.pdf/files/DM00027105.pdf/jcr:content/translations/en.DM00027105.pdf

Aber das ist ein richtiges "Gerät", allerdings sollte es doch einfach 
ein IC sein oder nicht??? Bei meinem Discovery benötige ich ja auch 
nicht solch ein Gerät zum programmieren.
#4748019
Lesenswert?

jorg schrieb:
> Aber das ist ein richtiges "Gerät", allerdings sollte es doch einfach
> ein IC sein oder nicht??? Bei meinem Discovery benötige ich ja auch
> nicht solch ein Gerät zum programmieren.

Wenn Du ein Discovery Board hast, kannst Du dessen ST-Link auch für 
externe Sachen benutzen, IIRC auch mit Keil. Handbuch mal lesen..?
Gast #4748029
Lesenswert?

Jim M. schrieb:
> Wenn Du ein Discovery Board hast, kannst Du dessen ST-Link auch für
> externe Sachen benutzen, IIRC auch mit Keil. Handbuch mal lesen..?

Ja genau, mein STM32F4 Discovery programmiere ich mit Keil µVision über 
einen USB-Anschluss. Und das müsste mit dem ST-Link funktionieren, wenn 
ich das richtig weiß.

Nun möchte ich eine kleine Platine mit dem Controller machen, den ich 
dann ja auch irgendwie programmieren will. Hier muss ich nun rausfinden, 
wie ich das mache, dass das Programmieren wie beim Discovery 
funktioniert (auch mit Keil).

Hat mir jemand hierfür einen Schaltplan oder kann mir sagen, wo ich ein 
IC für den ST-Link finde.
Gast #4748031
Lesenswert?

jorg schrieb:
> Hat mir jemand hierfür einen Schaltplan oder kann mir sagen, wo ich ein
> IC für den ST-Link finde.
Das ist auch nur ein Mikrocontroller, und an die Firmware kommst du 
nicht so einfach (ohne viel Geld). Führe doch einfach das 
JTAG/SWD-Interface auf einen Stecker, die kannst du dann mit dem 
Pinheader auf dem Discovery verbinden und darüber programmieren. Da 
gibts sogar eine Standard-Pinbelegung (JTAG-Stecker), dann ist das auch 
kompatibel mit anderen/besseren Programmern als dem ST-Link.
Alternativ kannst du dir auch einen USB-Bootloader auf dem Controller 
flashen, aber darüber kannst du dann halt nicht debuggen.
#4749360
Lesenswert?

Dr. Sommer schrieb:
> an die Firmware kommst du
> nicht so einfach (ohne viel Geld)

Ich weiß ja nicht ob ST die Firmware für Geld überhaupt anbietet. Was es 
für Geld zu kaufen gibt, ist die J-Link Firmware. Ansonsten kann man 
aber auch einfach die Black Magic Firmware nehmen. Die kostet nichts und 
lässt sich wie J-Link und ST-Link auf den STM32F103CBT6 flashen. Sogar 
die entsprechenden Schaltpläne sind frei verfügbar.
Falls es doch unbedingt der ST-Link sein muss, wären "i am key, wawawa" 
und "best performance" wichtige Schlüsselwörter um an die Firmware zu 
kommen.
Gast #4750403
Lesenswert?

jorg schrieb:
> ich möchte eine Platine mit einem STM32F4 machen, den ich dann über eine
> USB-Buchse programmieren (mit Keil µVision) möchte.

Also was denn nun?

Entweder du benutzt den eingebauten Bootlader, sofern der über USB 
ansprechbar ist,

ODER

du brennst deinen µC per SWD, wofür du ein JTAG/SWD-Geschirre (JLink, 
ULink, STLink, sonstigen XYZLink) brauchst und guckst nach, ob dieses 
Geschirre von µVision unterstützt wird.

Es ist tatsächlich ein entweder oder und nicht ein sowohl-als-auch.
Ob der verbaute Bootlader per uSB geht, mußt du bei ST nachlesen. Die 
haben dafür eine spezielle AppNote, wo all die in den verschiedenen µC 
verbauten BL aufgelistet und beschrieben sind.

W.S.
#4750678
Lesenswert?

Dr. Sommer schrieb:
> Alternativ kannst du dir auch einen USB-Bootloader auf dem Controller
> flashen, aber darüber kannst du dann halt nicht debuggen.

Der USB-Bootloader ist integriert
AN2606
http://www.st.com/content/ccc/resource/technical/document/application_note/b9/9b/16/3a/12/1e/40/0c/CD00167594.pdf/files/CD00167594.pdf/jcr:content/translations/en.CD00167594.pdf
Wie man den aus der eigenen Software nutzt:
https://my.st.com/public/STe2ecommunities/mcu/Lists/cortex_mx_stm32/Flat.aspx?RootFolder=%2Fpublic%2FSTe2ecommunities%2Fmcu%2FLists%2Fcortex_mx_stm32%2FJump%20to%20internal%20bootloader&currentviews=10061
(wird z.T. auch am Anfang der AN2606 erklärt)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren