Forum: Mikrocontroller und Digitale Elektronik JLink Problem mit einem STM32?


von Vanye R. (vanye_rijan)


Lesenswert?

Moin Leute,

Bin gerade was am programmieren/ausprobieren als mir am Oszi
auffaellt das sich mein STM32L451 nicht so verhaelt wie ich den
Programmiere.

Der J-Link hat wohl Probleme da was reinzuflashen:
1
STM32 (Protection Detection): Unexpected IDCODE DEV_ID 0x0462 found. Only checking the 1st flash bank for write protection.

Hab mich mal von Hand mit dem Teil verbunden und dort
ein "erase" eingetippt:
1
Erasing device (STM32L451CC)...
2
Comparing flash   [100%] Done.
3
Erasing flash     [010%]
4
****** Error: Failed to erase sectors 0 @ address 0x08000000 (Algo87: Unspecified error #1)
5
100%] Done.
6
Verifying flash   [100%] Done.
Der Mikrocontroller selber funktioniert und fuehrt das zuletzt
reingeflashte Programm aus!

Hat das schonmal einer gesehen?

Sieht so aus als wenn da nun irgendein Schreibschutz gesetzt ist.
Ich bin mir keiner Schuld bewusst. :-D

Vanye

von Uwe B. (Firma: TU Darmstadt) (uwebonnes)


Lesenswert?

Vanye R. schrieb:
..
> STM32 (Protection Detection): Unexpected IDCODE DEV_ID 0x0462 found.
> Only checking the 1st flash bank for write protection.
..
Dein Jlink kennt den STM32L451 noch nicht => Update noetig!

von Vanye R. (vanye_rijan)


Lesenswert?

> Dein Jlink kennt den STM32L451 noch nicht => Update noetig!

Nein, der kennt den allerbestens und redet andauernd mit ihm
und hat es ja auch heute bis zum auftreten meines Problems getan. .-)

Es gibt aber von Segger ein kleines Tool:

JLinkSTM32Exe

Damit kann man die ganzen Protectionbits automatisch loeschen:
1
Please select the correct device family: 13
2
Connecting to J-Link via USB...O.K.
3
Using SWD as target interface.
4
Target interface speed: 1000 kHz.
5
VTarget = 3.314V
6
Reset target...O.K.
7
Reset option bytes to factory settings...
8
Resetting FLASH_OPTR...
9
Reset target...O.K.
10
Reset target...O.K.
11
Resetting Write protection (WRP) and PCROP...O.K.
12
Reset target...O.K.
13
Option bytes reset to factory settings.
14
Press any key to exit.

Jetzt funktioniert wieder alles!

Vanye

von Mehmet K. (mkmk)


Lesenswert?

Location: /opt/SEGGER/JLink/

von Vanye R. (vanye_rijan)


Lesenswert?

Ich konnte das Problem uebrigens gerade noch ein paar mal
reproduzieren, verstehen und loesen. Lernt was draus. :)

Ich hab am Controller einen SX1262 Lora-Transceiver den
ich programmiere und wo ich ein Problem in der SPI-Übertragung
vermutet habe. Das war ich eigentlich am debuggen.

Tatsaechlich lief der aber irgendwann und ich hatte mein
Labornetzteil auf 50mA Strombegrenzung stehen. Die Schaltung
zieht im Mittel so 20mA. (SX1262, STM32, Oled)

Allerdings wenn der SX1262 fuer 10ms seinen Sender einschaltet
dann kann das Modul bis zu 120mA ziehen. Das war so nicht gross
sichtbar, reicht aber wohl aus damit der STM32 eine kurze
Unterspannung sieht. Interessant das dies ausgerechnet zu
so einem Fehlerbild fuehrt.

Vanye

von Harald K. (kirnbichler)


Lesenswert?

Vanye R. schrieb:
> Interessant das dies ausgerechnet zu
> so einem Fehlerbild fuehrt.

Tja, man lernt nie aus.

Gut, daß Du diesen Fehler beobachtet und hier beschrieben hast.

von Vanye R. (vanye_rijan)


Angehängte Dateien:

Lesenswert?

> Gut, daß Du diesen Fehler beobachtet und hier beschrieben hast.

Ich bin echt baff erstaunt von der Reproduzierbarkeit. Waehrend ich
neuen Source in den Controller flashe ist der SX1262 ja aus.
Ich hab schon ueberlegt ob der Sendebetrieb in den Controller einstreut,
das ist hier jetzt nicht der beste Aufbau, aber ich hab an der Antenne
einen UF.L Pigtail mit 50R Abschluss dran. Da sollte erstmal nicht 
soviel
raus gehen.
Andererseits, wenn ich nicht sende gibt es kein Problem. Kann also nur
Stromaufnahme sein. Und es ist nicht so das Controller im Betrieb
abstuerzt, das wuerde ich im Diagnoseterminal sehen.

Hier mal ein Bild mit der Stromaufnahme im +14dBm Sendebetrieb.
Bei 22dBm sind es noch 100mA mehr. :)
Gemessen mit iProber als Kabelsonde also nicht 100% genau!

Aber gut zu wissen das es extra ein Programm zum zurueckstellen gibt,
waer ja doof wenn man jedesmal von Hand die Register beschreiben
muesste.

Vanye

von Harald K. (kirnbichler)


Lesenswert?

Vanye R. schrieb:
> Gemessen mit iProber als Kabelsonde also nicht 100% genau!

Das kostet ja mehr als so manches Oszilloskop ...

von Vanye R. (vanye_rijan)


Lesenswert?

> Das kostet ja mehr als so manches Oszilloskop ...

Was vor einigen Jahren noch so bei 500. Erstaunliche inflation!
Aber nettes Spielzeug...

Vanye

von A. B. (funky)


Lesenswert?

Es gibt bei den STM32 eigentlich den Angriffsvektor, über gewisse 
low-power und reset Zeiten die readout protection des Controllers zu 
umgehen.
Den Weg andersherum und quasi für mehr Sicherheit sorgen ist neu ;)

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
Noch kein Account? Hier anmelden.