Forum: Mikrocontroller und Digitale Elektronik Flash-Problem mit STM32F1 China Board


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Stm M. (stmfresser)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich versuch eine .bin auf einem China Board STM32F1 zu flashen mit
1
st-flash write prog.bin 0x8000000
2
2017-01-24T18:44:14 INFO src/stlink-common.c: Loading device parameters....
3
2017-01-24T18:44:14 INFO src/stlink-common.c: Device connected is: F1 High-density device, id 0x10036414
4
2017-01-24T18:44:14 INFO src/stlink-common.c: SRAM size: 0x10000 bytes (64 KiB), Flash: 0 bytes (0 KiB) in pages of 2048 bytes

Die Ausgabe scheint dass es nix geschrieben wurde.

Ist der China Board schreibgeschützt?

Wenn ja, wie behebt man das Problem?

Danke!

: Bearbeitet durch User
von hp-freund (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Stm M. schrieb:
> Ist der China Board schreibgeschützt?

Vermutlich.

Stm M. schrieb:
> Wenn ja, wie behebt man das Problem?

st-flash erase

von Stm M. (stmfresser)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hp-freund schrieb:
> Stm M. schrieb:
>> Ist der China Board schreibgeschützt?
>
> Vermutlich.
>
> Stm M. schrieb:
>> Wenn ja, wie behebt man das Problem?
>
> st-flash erase

Danke, das funktioniert bei STM32F4 Board und den Erase-Verlauf sieht 
man, aber bei dem F1 nicht, nur das
1
19:26:42
2
> st-flash erase
3
2017-01-24T19:26:53 INFO src/stlink-common.c: Loading device parameters....
4
2017-01-24T19:26:53 INFO src/stlink-common.c: Device connected is: F1 High-density device, id 0x10036414
5
2017-01-24T19:26:53 INFO src/stlink-common.c: SRAM size: 0x10000 bytes (64 KiB), Flash: 0 bytes (0 KiB) in pages of 2048 bytes
6
Mass erasing

: Bearbeitet durch User
von hp-freund (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Stm M. schrieb:
> SRAM size: 0x10000 bytes (64 KiB), Flash: 0 bytes (0 KiB)

Das sagt eigentlich das er ihn nicht richtig erkannt hat.
Habe mein STM32F103 blaues China Board probiert, funktioniert.

Hast Du versucht noch mal neu zu stecken und die neueste Version von 
st-flash?

von Stm M. (stmfresser)


Bewertung
0 lesenswert
nicht lesenswert
hp-freund schrieb:
> Stm M. schrieb:
>> SRAM size: 0x10000 bytes (64 KiB), Flash: 0 bytes (0 KiB)
>
> Das sagt eigentlich das er ihn nicht richtig erkannt hat.
> Habe mein STM32F103 blaues China Board probiert, funktioniert.
>
> Hast Du versucht noch mal neu zu stecken und die neueste Version von
> st-flash?

Ich hab mehrmals versucht, ging nicht. st-flash ist neu.

von hp-freund (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Dann musst Du wohl mit ST-Link Utility unter Windows ran.

von Johannes S. (jojos)


Bewertung
0 lesenswert
nicht lesenswert

von Stm M. (stmfresser)


Bewertung
0 lesenswert
nicht lesenswert
hp-freund schrieb:
> Dann musst Du wohl mit ST-Link Utility unter Windows ran.

Ne, bin osx-freund

von hp-freund (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich liebe meinen Pinguin, habe aber auch ein XP in die Virtual Box 
gesperrt
;-)

von hp-freund (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Dann gibt es auch noch openocd / gdb.

von grundschüler (Gast)


Bewertung
0 lesenswert
nicht lesenswert

von Stm M. (stmfresser)


Bewertung
0 lesenswert
nicht lesenswert
hp-freund schrieb:
> Dann gibt es auch noch openocd / gdb.

mit gdb versucht ohne erfolg
1
> st-util -p 4242
2
2017-01-24T23:32:46 INFO src/stlink-usb.c: -- exit_dfu_mode
3
2017-01-24T23:32:46 INFO src/stlink-common.c: Loading device parameters....
4
2017-01-24T23:32:46 INFO src/stlink-common.c: Device connected is: F1 High-density device, id 0x10036414
5
2017-01-24T23:32:46 INFO src/stlink-common.c: SRAM size: 0x10000 bytes (64 KiB), Flash: 0 bytes (0 KiB) in pages of 2048 bytes
6
2017-01-24T23:32:46 INFO gdbserver/gdb-server.c: Chip ID is 00000414, Core ID is  1ba01477.
7
2017-01-24T23:32:46 INFO gdbserver/gdb-server.c: Target voltage is 2905 mV.
8
2017-01-24T23:32:46 INFO gdbserver/gdb-server.c: Listening at *:4242...
9
2017-01-24T23:33:04 INFO gdbserver/gdb-server.c: GDB connected.
1
> arm-none-eabi-gdb prog.hex
2
GNU gdb (GNU Tools for ARM Embedded Processors) 7.8.1.20141128-cvs
3
Copyright (C) 2014 Free Software Foundation, Inc.
4
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
5
This is free software: you are free to change and redistribute it.
6
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
7
and "show warranty" for details.
8
This GDB was configured as "--host=x86_64-apple-darwin10 --target=arm-none-eabi".
9
Type "show configuration" for configuration details.
10
For bug reporting instructions, please see:
11
<http://www.gnu.org/software/gdb/bugs/>.
12
Find the GDB manual and other documentation resources online at:
13
<http://www.gnu.org/software/gdb/documentation/>.
14
For help, type "help".
15
Type "apropos word" to search for commands related to "word"...
16
Reading symbols from prog.hex...(no debugging symbols found)...done.
17
(gdb) tar extended-remote :4242
18
Remote debugging using :4242
19
0xfffffffe in ?? ()
20
(gdb) load
21
Loading section .sec1, size 0x8a28 lma 0x8000000
22
Load failed

von Stm M. (stmfresser)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
wie auf dem Schaltplan sieht, ist BOOT0 geerdet.

Ich versuch es über SWD zu programmieren mittels eines Discovery Boards.

von hp-freund (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Du müsstest in deinem arm-none-eabi-gdb das mass_erase unterbringen.

Es ist aber wieder st-util als Server aktiv, da kann es sein das er den 
µC auch wieder nicht erkennt.

Deshalb meinte ich openocd als Server.
Ist die bin von irgendwo, oder hast Du die selbst erstellt?
Falls selbst erstellt, womit?

eclipse gibt es auch für OSX, dazu das AC6 Plugin und alles ist 
komplett.

von Stm M. (stmfresser)


Bewertung
0 lesenswert
nicht lesenswert
OpenOcd unterstützt den stm32f1 nicht
1
> ls stm32f*
2
stm32f0discovery.cfg  stm32f3discovery.cfg  stm32f4discovery.cfg
3
stm32f334discovery.cfg  stm32f429discovery.cfg
4
/usr/local/share/openocd/scripts/board 
5
01:06:50
6
>

von Stm M. (stmfresser)


Bewertung
0 lesenswert
nicht lesenswert
hp-freund schrieb:
> Du müsstest in deinem arm-none-eabi-gdb das mass_erase unterbringen.
>
> Es ist aber wieder st-util als Server aktiv, da kann es sein das er den
> µC auch wieder nicht erkennt.
>
> Deshalb meinte ich openocd als Server.
> Ist die bin von irgendwo, oder hast Du die selbst erstellt?
> Falls selbst erstellt, womit?

Die bin habe ich mit objcopy erstellt.

von hp-freund (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Stm M. schrieb:
> OpenOcd unterstützt den stm32f1 nicht

Welcher ist es genau?
Ich habe hier den STM32F103C8T6.
Mit dem gibt es keine Probleme.

Habe das Programm aus dem Video oben unter wine getestet, läuft fast, 
man muss aber die linux/osx Schnittstelle auf COMx legen.

von hp-freund (Gast)


Bewertung
0 lesenswert
nicht lesenswert

von Stm M. (stmfresser)


Bewertung
0 lesenswert
nicht lesenswert
hp-freund schrieb:
> Stm M. schrieb:
>> OpenOcd unterstützt den stm32f1 nicht
>
> Welcher ist es genau?
> Ich habe hier den STM32F103C8T6.
> Mit dem gibt es keine Probleme.
1
> openocd --v
2
Open On-Chip Debugger 0.9.0 (2015-05-28-12:05)
3
Licensed under GNU GPL v2
4
For bug reports, read
5
  http://openocd.org/doc/doxygen/bugs.html

das Board finde ich nicht bei /usr/local/share/openocd/scripts/board
1
> ls stm32f*
2
stm32f0discovery.cfg  stm32f3discovery.cfg  stm32f4discovery.cfg
3
stm32f334discovery.cfg  stm32f429discovery.cfg

https://github.com/texane/stlink/issues/543

: Bearbeitet durch User
von hp-freund (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Na ja, neu ist relativ.

Open On-Chip Debugger 0.10.0-dev-00274-g2ee83e0 (2017-01-12-17:06)

./st-flash --version
v1.2.0-166-g77acc50

Ich würde vorschlagen wenn Du bei st-flash bleiben willst, baue das aus 
meinem letzten link:

git://github.com:UweBonnes/stlink.git

Aber erst mal:

Gute Nacht.

von Stm M. (stmfresser)


Bewertung
0 lesenswert
nicht lesenswert
hp-freund schrieb:
> Na ja, neu ist relativ.
>
> Open On-Chip Debugger 0.10.0-dev-00274-g2ee83e0 (2017-01-12-17:06)
>
> ./st-flash --version
> v1.2.0-166-g77acc50
>
> Ich würde vorschlagen wenn Du bei st-flash bleiben willst, baue das aus
> meinem letzten link:
>
> git://github.com:UweBonnes/stlink.git
>
> Aber erst mal:
>
> Gute Nacht.

Mit ST Link Utility hat es geklappt. Es war schreibgeschützt

von hp-freund (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Sehr schön.
Jetzt funktioniert es auch mit st-flash?

von Bernd K. (prof7bit)


Bewertung
0 lesenswert
nicht lesenswert
Übrigens: Beim flashen mit openocd muss man nicht über den gdb gehen, 
das geht mit openocd alleine.

von Stm M. (stmfresser)


Bewertung
0 lesenswert
nicht lesenswert
hp-freund schrieb:
> Sehr schön.
> Jetzt funktioniert es auch mit st-flash?

Ja ^^

von Stm M. (stmfresser)


Bewertung
0 lesenswert
nicht lesenswert
Bernd K. schrieb:
> Übrigens: Beim flashen mit openocd muss man nicht über den gdb gehen,
> das geht mit openocd alleine.

Ja,

In openocd/scripts/board hab ich immer die stm32vldiscovery.cfg 
übersehen, Das Board hat die stm32f1 Controller. :D

von Rechtsklick (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Stm M. schrieb:
> Bernd K. schrieb:
>> Übrigens: Beim flashen mit openocd muss man nicht über den gdb gehen,
>> das geht mit openocd alleine.
>
> Ja,
>
> In openocd/scripts/board hab ich immer die stm32vldiscovery.cfg
> übersehen, Das Board hat die stm32f1 Controller. :D

Das ist nicht das Einzigae, das Du übersehen hast.

Die STM3210xx und ähnliche sind ebenfalls mit F1 bestückt.

$ grep stm32f1x.cfg

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]
  • [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.