STM32 kann nicht resetet werden

Gast #7015156
Lesenswert?

Hallo alle,

wenn ich mit der STM32CubeIDE den Resetbutton drücke landet mein PC 
immer im Nirvana: Break at address "0x1fff2122" with no debug 
information available, or outside of program code.

Ich habe gerade ein neues Board erstellt und das erste mal den STM32G070 
verwendet. Ich muss jedes mal die Debugsession komplett neu starten. 
NRST hat einen 100nF.

Woran kann das liegen?
1
STMicroelectronics ST-LINK GDB server. Version 6.1.0
2
Copyright (c) 2022, STMicroelectronics. All rights reserved.
3

4
Starting server with the following options:
5
        Persistent Mode            : Disabled
6
        Logging Level              : 1
7
        Listen Port Number         : 61234
8
        Status Refresh Delay       : 15s
9
        Verbose Mode               : Disabled
10
        SWD Debug                  : Enabled
11
        InitWhile                  : Enabled
12

13
Waiting for debugger connection...
14
Debugger connected
15
Waiting for debugger connection...
16
Debugger connected
17
Waiting for debugger connection...
18
      -------------------------------------------------------------------
19
                       STM32CubeProgrammer v2.10.0                  
20
      -------------------------------------------------------------------
21

22
ST-LINK SN  : 52FF6E065266545442261387
23
ST-LINK FW  : V2J39S7
24
Board       : --
25
Voltage     : 3.22V
26
SWD freq    : 4000 KHz
27
Connect mode: Under Reset
28
Reset mode  : Hardware reset
29
Device ID   : 0x460
30
Revision ID : Rev B
31
Device name : STM32G07x/STM32G08x
32
Flash size  : 128 KBytes
33
Device type : MCU
34
Device CPU  : Cortex-M0+
35
BL Version  : --
36
Debug in Low Power mode enabled
37

38
Memory Programming ...
39
Opening and parsing file: st-link_gdb_server_a04560.srec
40
  File          : st-link_gdb_server_a04560.srec
41
  Size          : 109.47 KB 
42
  Address       : 0x08000000 
43

44
Erasing memory corresponding to segment 0:
45
Erasing internal memory sectors [0 54]
46
Download in Progress:
47

48
File download complete
49
Time elapsed during download operation: 00:00:02.84
50

51
Verifying ...
52

53
Download verified successfully
Gast #7015227
Lesenswert?

Stefan ⛄ F. schrieb:
> Wie meinst du das? Ich denke nicht, dass die IDE einen Reset Button hat.
>
> Wenn du auf dem Board den Reset Knopf drückst, unterbrichst du die
> Kommunikation zum Debugger.

Während ich debugge und an einem Haltepunkt pausiere kann ich über 
"reset chip and restart debug session" normalerweise ein Reset machen. 
Mache ich das jetzt beim stm32g070 landet der PC im Nirvana.
#7015261
Lesenswert?

Bill schrieb:
> ...landet mein PC immer im Nirvana: Break at address "0x1fff2122"

nicht im Nirvana, im integrierten Bootloader:
1
Common to all bootloaders: System memory:
2
28 Kbytes starting from address 0x1FFF0000
3
contain the bootloader firmware
Entweder dein Programm startet und springt da hin oder der Bootloader 
startet und läuft auf einen BKPT? Beides ziemlich unwahrscheinlich?

Nach einem Reset startet der Bootloader auch, wenn er meint, das Flash 
wäre leer. Dazu testet er (nur) die ersten 4 Byte ab 0x0800000. Aber 
warum dann
"Break"? VT: das ist Absicht, der Bootloader merkt, dass der Debugger 
angeschlossen ist.
Gast #7015274
Lesenswert?

Aber warum macht der das? Der Boot Pin ist durch die Option Bytes 
deaktiviert und der soll immer laut Option Bytes im Flash starten?

nBOOT_SEL = Checked = BOOT0 signal is defined by nBOOT0 ootion bit
nBOOT0 = UNCHECKED
nBOOT1 = CHECKED = Boot from Flash if BOOT0 = 0, otherwise system memory

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