Hallo zusammen, ich wollte per eclipse meinen stm32f030R8 programmieren, als Debugger benutz ich OpenOCD. Eigentlich dächte ich das ich jegliche Konfiguration richtig gemacht habe, dabei hat mir ein Youtuber Namens Ultr@FX geholfen. (genaue Video https://www.youtube.com/watch?v=J8grxNDuAfg, ist ziemlich lang) Wenn ich den Code über den Debugger flashen möchte kommt folgender Fehler: Error: address + size wrapped(0xfffffffe, 0x00000004) Error: error writing to flash at address 0x08000000 at offset 0x00000000 Sitze mittlerweile ein paar Stunden daran und bin absolut ratlos. Die ganze Consolenausgabe beim debuggen sieht wie folgt aus: GNU ARM Eclipse 32-bits Open On-Chip Debugger 0.10.0-dev-00287-g85cec24-dirty (2016-01-10-10:23) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD adapter speed: 1000 kHz adapter_nsrst_delay: 100 none separate none separate Started by GNU ARM Eclipse Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : clock speed 950 kHz Info : STLINK v2 JTAG v23 API v2 SWIM v9 VID 0x0483 PID 0x374B Info : using stlink api v2 Info : Target voltage: 3.255010 Info : stm32f0x.cpu: hardware has 4 breakpoints, 2 watchpoints Info : accepting 'gdb' connection on tcp/3333 Info : device id = 0x20006440 Info : flash size = 64kbytes Error: address + size wrapped(0xfffffffe, 0x00000004) Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : Unable to match requested speed 1000 kHz, using 950 kHz adapter speed: 950 kHz stm32f0x.cpu: target state: halted target halted due to debug-request, current mode: Thread xPSR: 0xc1000000 pc: 0xfffffffe msp: 0xfffffffc Info : Unable to match requested speed 8000 kHz, using 4000 kHz Info : Unable to match requested speed 8000 kHz, using 4000 kHz adapter speed: 4000 kHz Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : Unable to match requested speed 1000 kHz, using 950 kHz adapter speed: 950 kHz stm32f0x.cpu: target state: halted target halted due to debug-request, current mode: Handler HardFault xPSR: 0xc1000003 pc: 0xfffffffe msp: 0xffffffd8 cleared protection for sectors 0 through 11 on flash bank 0 semihosting is enabled Error: address + size wrapped(0xfffffffe, 0x00000004) Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : Unable to match requested speed 1000 kHz, using 950 kHz adapter speed: 950 kHz stm32f0x.cpu: target state: halted target halted due to debug-request, current mode: Thread xPSR: 0xc1000000 pc: 0xfffffffe msp: 0xfffffffc, semihosting Info : Unable to match requested speed 8000 kHz, using 4000 kHz Info : Unable to match requested speed 8000 kHz, using 4000 kHz adapter speed: 4000 kHz Error: error writing to flash at address 0x08000000 at offset 0x00000000 Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : Unable to match requested speed 1000 kHz, using 950 kHz adapter speed: 950 kHz stm32f0x.cpu: target state: halted target halted due to debug-request, current mode: Thread xPSR: 0xc1000000 pc: 0xfffffffe msp: 0xfffffffc, semihosting Error: address + size wrapped(0xffffffff, 0x00000004) Error: address + size wrapped(0xffffffff, 0x00000002) Error: address + size wrapped(0xffffffff, 0x00000004) Error: address + size wrapped(0xffffffff, 0x00000002) Info : dropped 'gdb' connection
Okay, es lag wohl an den Defines in den Compiler Options. Das Problem mit dem Adapter Speed besteht trotzdem noch: GNU ARM Eclipse 32-bits Open On-Chip Debugger 0.10.0-dev-00287-g85cec24-dirty (2016-01-10-10:23) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD adapter speed: 1000 kHz adapter_nsrst_delay: 100 none separate none separate Started by GNU ARM Eclipse Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : clock speed 950 kHz Error: libusb_open() failed with LIBUSB_ERROR_ACCESS Error: open failed in procedure 'init' in procedure 'ocd_bouncer' jemand eine Idee oder Vorschlag?
Ich hatte genau das selbe Problem (allerdings mit einem STM32F103 und ST-Link) und keine Lösung gefunden. Am Ende habe ich auf die SW4STM32 gewechselt, in der funktioniert das alles. Wo genau der Knackpunkt ist, habe ich nicht herausgefunden. Ich hatte keine Lust mehr, an der Stelle weiter nachzuforschen.
Der Speed ist irrelevant. Die Meldung kommt bei mir immer. Dein Fehler (2. Post) ist: "libusb_open() failed with LIBUSB_ERROR_ACCESS" Der kann also den ST-Link nicht öffnen. Welchen hast Du bei openocd denn angegeben? v2 (z.B. für china klon) oder v2-1 (für aktuelle nucleo)? Oder hast Du parallel noch die ST-Link Software offen?
:
Bearbeitet durch User
Peter G. schrieb: > Info : clock speed 950 kHz > Error: libusb_open() failed with LIBUSB_ERROR_ACCESS Unter Windows: Falscher Treiber..? Unter Linux: man sudo ;-) oder per UDEV die Geräterechte korrekt setzen lassen. Ansonsten fehlt eventuell ein "reset init" an der OpenOCD Konsole (telnet localhost 4444).
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.