Forum: Mikrocontroller und Digitale Elektronik STM32L051K8T6 wird vom ST-Link nicht erkannt


von Moot S. (mootseeker)



Lesenswert?

Hallo Zusammen,

ich möchte gerne den STM32L051K8T6 auf einer selbstgemachten 
Leiterplatte in Betrieb nehmen. Diesen möchte ich mit dem ST-Link V2 
Debugger und dem ST-Link Utility Tool auslesen. Leider erhalte ich immer 
eine Fehlermeldung (Siehe Dateianhang).

Mir ist bewusst, dass es zu diesem Thema mehrere Threads gibt, leider 
haben mir diese Lösungen noch nicht geholfen.


Meine erste Frage: Stimmen meine Verbindungen (Siehe Dateianhang)? Sie 
sollten schon, ich habe das nun mehrere male kontrolliert.


Was ich auch schon gemacht habe sind:
- Kabel des Programmers gekürzt (ca. 5-8cm)
- Kabel auf korrekten Kontakt durchgemessen
- Spannungen auf dem PCB kontrolliert (uC hat 3.28V, RST hat 3.28V)
- Pins Stecker zu MCU gemessen (macht alles Kontakt)
- Von Kabel (am ST-Link V2) bis zum MCU Pin (macht auch alles Kontakt)
- ST-LINK mit einem Nucleo programmieren (hat funktioniert)
- uC tauschen (2x ohne erfolg)
- uC diskret aufbauen (ohne erfolg)
- Firmware update ST-Link V2 (Version: V2.J37.S7)
- Update ST-Link Utility Tool (Version: 4.5)
- Debugger habe ich auch schon getauscht durch einen anderen ST-Link V2 
und einem Nucleo Onboard ST-Link V2 (leider auch erfolglos)

Hat jemand eine vermutung vor der Hacken sein könnte?

Gruss
MootSeeker

: Bearbeitet durch User
von Olaf (Gast)


Lesenswert?

> Hat jemand eine vermutung vor der Hacken sein könnte?

Die 100nF an Reset sind wahrscheinlich kacke weil es damit dem Debugger 
zu langsam wird.

Olaf

von Martin (Gast)


Lesenswert?

Versuche einen manuellen Reset auslösen (Taste o. s.). Hat bei mir 
funktioniert.

von Moot S. (mootseeker)


Lesenswert?

Olaf schrieb:
> Die 100nF an Reset sind wahrscheinlich kacke weil es damit dem Debugger
> zu langsam wird.

Ich denke nicht, dass der einen einfluss hat, da ich den in anderen 
Designs mit anderen STM kontroller auch immer verwendet hatte und diese 
haben immer funktioniert.

Ich habe es trotz dessen noch versucht, weil ich diesen Kontroller nicht 
kenne und es hätte ja sein können, aber das entfernen des Kondensators 
hat nichts gebracht.

von Moot S. (mootseeker)


Lesenswert?

Martin schrieb:
> Versuche einen manuellen Reset auslösen (Taste o. s.). Hat bei mir
> funktioniert.

Einen Manuellen Reset habe ich aus versucht (kurzschliessen des Lötfläts 
mit einer leitenden Pinzette) hat leider auch nicht funktioniert.

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


Lesenswert?

100 nF von NRST nach Masse sind die Standardapplikation von ST. Pullup 
ist es nicht, es  gibt den interne Puull-Up.

Target voltage detection failed hoert sich nicht gut an.

von Moot S. (mootseeker)


Lesenswert?

Mir ist noch aufgefallen, dass einige Pins (Pins der Status LED) einfach 
mit der Zeit leitend werden bzw. da plötzlich eine Spannung anliegt. 
Dies auch wenn die Speisung ausgeschalten ist. Stimmt doch mit dem 
Debugger etwas nicht?

von Moot S. (mootseeker)


Lesenswert?

Uwe B. schrieb:
> 100 nF von NRST nach Masse sind die Standardapplikation von ST. Pullup
> ist es nicht, es  gibt den interne Puull-Up.

Wusste ich noch nicht mit dem internen Pullup aber danke.
Leider löst dies mein Problem immer noch nicht. Ich habe nun nochmals 
die Spannungen gemessen auch wenn diese schon korrekt waren.


uC VDD: 3.26V

NRST uC: 3.27V

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


Lesenswert?

Boot0 schwebend ist auch keine gute Idee.

von Cyblord -. (cyblord)


Lesenswert?

Warum ist im Schaltplan ein STM32L05 abgebildet, im Titel gehts aber um 
einen STM32F05?

von Moot S. (mootseeker)


Lesenswert?

Uwe B. schrieb:
> Boot0 schwebend ist auch keine gute Idee.

Boot0 ist nicht schwebend, der pin ist mit der Lötbrücke B1000 auf GND 
gezogen.

von Cyblord -. (cyblord)


Lesenswert?

Moot S. schrieb:
> Uwe B. schrieb:
>> Boot0 schwebend ist auch keine gute Idee.
>
> Boot0 ist nicht schwebend, der pin ist mit der Lötbrücke B1000 auf GND
> gezogen.

Nur warum eine Lötbrücke? Wenn die offen ist, ist er schwebend. Das ist 
nie gut.

Bei STM32F05 gibts übrigens noch den VDDA der auch gerne Spannung hätte.

von Moot S. (mootseeker)


Lesenswert?

Cyblord -. schrieb:
> Warum ist im Schaltplan ein STM32L05 abgebildet, im Titel gehts aber um
> einen STM32F05?

Sorry da hab ich mich verschrieben, geht natürlich um den L05

von Moot S. (mootseeker)


Lesenswert?

Cyblord -. schrieb:
> Nur warum eine Lötbrücke? Wenn die offen ist, ist er schwebend. Das ist
> nie gut.
>
> Bei STM32F05 gibts übrigens noch den VDDA der auch gerne Spannung hätte.

Die Lötbrücke ist dazu da, falls man den Chip mal in einem anderen Modus 
(RAM oder so) Booten möchte.

Beim meiner Schaltung sind alle Pins (VDD, VDDA) mit 3.26V gespiesen. 
Diese habe ich auch korrekt gemessen.

: Bearbeitet durch User
von W.S. (Gast)


Lesenswert?

Moot S. schrieb:
> Hat jemand eine vermutung vor der Hacken sein könnte?

Wenn dein SWD-Zeugs nicht funktioniert und du nicht weißt, woran das 
liegt, dann probiere es doch einfach mal aus, ob du den Chip per 
Bootlader ansprechen kannst. Mehr als RxD,TxD,BOOT,Reset brauchst du 
dafür ja nicht. Zumindest kannst du damit feststellen, ob sich dein Chip 
überhaupt rührt oder nicht. Könnte ja sein, daß du ihn durch irgendwas 
ermordet hast.

W.S.

von Moot S. (mootseeker)


Lesenswert?

W.S. schrieb:
> Moot S. schrieb:
>> Hat jemand eine vermutung vor der Hacken sein könnte?
>
> Wenn dein SWD-Zeugs nicht funktioniert und du nicht weißt, woran das
> liegt, dann probiere es doch einfach mal aus, ob du den Chip per
> Bootlader ansprechen kannst. Mehr als RxD,TxD,BOOT,Reset brauchst du
> dafür ja nicht. Zumindest kannst du damit feststellen, ob sich dein Chip
> überhaupt rührt oder nicht. Könnte ja sein, daß du ihn durch irgendwas
> ermordet hast.
>
> W.S.

Wie meinst du genau per Bootloader? Die Chips kommen abwerk ohne 
Bootloader so viel ich weiss.

von Johannes S. (Gast)


Lesenswert?

Ist VTarget am STLink angeschlossen? Die braucht der zwingend, damit 
werden die Treiber versorgt.

von Cyblord -. (cyblord)


Lesenswert?

Moot S. schrieb:

> Wie meinst du genau per Bootloader? Die Chips kommen abwerk ohne
> Bootloader so viel ich weiss.

Die STM32 haben einen UART Bootloader integriert.

Aber ich würde weiter SWD versuchen, was bring es, sich jetzt damit auch 
noch rum zu ärgern?

von Jörg (Gast)


Lesenswert?

Manchmal sind bei mir die Pins nicht richtig verlötet. Einmal nachlöten 
und schon ging's.

von Moot S. (mootseeker)


Lesenswert?

Johannes S. schrieb:
> Ist VTarget am STLink angeschlossen? Die braucht der zwingend, damit
> werden die Treiber versorgt.

Ja ist angeschlossen, mit dem Multimeter gemessen sind da auch die ca. 
3.3V (3.26V)

von Moot S. (mootseeker)


Lesenswert?

Cyblord -. schrieb:
> Moot S. schrieb:
>
>> Wie meinst du genau per Bootloader? Die Chips kommen abwerk ohne
>> Bootloader so viel ich weiss.
>
> Die STM32 haben einen UART Bootloader integriert.
>
> Aber ich würde weiter SWD versuchen, was bring es, sich jetzt damit auch
> noch rum zu ärgern?

würde mich auch lieber auf das SWD konzentrieren.

von Moot S. (mootseeker)


Lesenswert?

Jörg schrieb:
> Manchmal sind bei mir die Pins nicht richtig verlötet. Einmal nachlöten
> und schon ging's.

Hab nochmals mit Flussmittel nachgelötet. Hat aber nicht geholfen.

von Moot S. (mootseeker)


Lesenswert?

Müssen alle VCC / GND Pins beim Debugger zusammen geschlossen werden?
Ich versuche dies mal und melde mich dann wieder!

von Moot S. (mootseeker)


Angehängte Dateien:

Lesenswert?

Stimmt dieses Pinout für den ST-Link V2?

von pegel (Gast)


Lesenswert?

Wird der µC zufällig warm?
So viele Probleme hören sich schon nach verdreht eingelötet an.....

von Moot S. (mootseeker)


Angehängte Dateien:

Lesenswert?

Hab diesen kleinen Adapter gemacht, wo ich alle GND und VCC Leitungen 
zusammen gelötet habe. Hat aber keinen Einfluss auf das Resultat.

Ich kann den Kontroller immer noch nicht ansprechen und es wird auch 
keine Spannung angezeigt obwohl ich die Spannung am Pin messen kann.

von Moot S. (mootseeker)


Angehängte Dateien:

Lesenswert?

pegel schrieb:
> Wird der µC zufällig warm?
> So viele Probleme hören sich schon nach verdreht eingelötet an.....

Nein wird nicht warm und zieht ca. 10mA.
Die Position habe ich kontrollier (Siehe Dateianhang). Pin 1 ist unten 
rechts (LED's sind Oben)

: Bearbeitet durch User
von oweiowei (Gast)


Lesenswert?

Moot S. schrieb:
> Hab diesen kleinen Adapter gemacht

Ist falsch angeschlossen.

Links ist Vcc, das ist ok, dann müssen zwei Pins (3, 5)
freibleiben. Bei dir ist nur einer frei.

von Moot S. (mootseeker)


Lesenswert?

oweiowei schrieb:
> Moot S. schrieb:
>> Hab diesen kleinen Adapter gemacht
>
> Ist falsch angeschlossen.
>
> Links ist Vcc, das ist ok, dann müssen zwei Pins (3, 5)
> freibleiben. Bei dir ist nur einer frei.

Stimmt Danke war ich etwas zu schnell, es funktioniert leider immer noch 
nicht.
Das Problem lag nicht an der Verbindung die Stimmt und das kleine Board 
das ich gebastelt habe hat keinen unterschied gemacht.

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


Lesenswert?

Trotzdem liegt das Problem zu 99,999 % auf Deiner Seite...

von oweiowei (Gast)


Lesenswert?

Moot S. schrieb:
> Stimmt Danke war ich etwas zu schnell

Dementsprechend ist natürlich die Reset-Leitung auf diesem Bild
auch falsch angeschlossen. Muss dritter Pin von rechts sein, bei
dir ist es der vierte Pin.

Ich frage mich dabei was sonst noch für Chaos in deiner Welt
herrscht. Wahrscheinlich sind deine Dupont-Verbindungen auch
noch total wirr verdrahtet.

Ich war zu faul nachzuforschen: braucht denn dein Controller
keinen externen Quarz?

von drm (Gast)


Lesenswert?

>- Update ST-Link Utility Tool (Version: 4.5)
veraltet, aktuell ist der ST32CubeProgrammer 2.5
wird dein uC überkaupt von der Version unterstützt ?

der ST-Link V2 sollte nicht rot leuchten sondern grün

V-Target 3,3V sollte auch ohne Verbindung angezeigt werden,
das Pinout von ST-Link zu deinem Board ist definitiv falsch.

Wenn du deinen Programmierport wie auf den Nucleo Boards belegst
1- VCC/Vtarget
2- SWCLK
3- Gnd
4- SWDIO
5- Reset
6- SWO ( nicht bei Cortex-M0 ohne + )
machst du dir das Leben vielleicht einfacher in Zukunft.

Lochrasterplatinen kann man in die passende Größe schneiden.

Mache dir jetzt zum Testen 6 Patchkabel Buchse-Buchse um die Belegung 
durchzutesten.
Pin 1 und 2 nicht brücken, 2 kann auch Gnd sein, nutze nur Pin 1 für 
Vtarget

von oweiowei (Gast)


Lesenswert?

drm schrieb:
> V-Target 3,3V sollte auch ohne Verbindung angezeigt werden

Nein, ST-Link zeigt das genau richtig an! Das was am Pin zu
sehen ist. Die ST-Link Clones dagegen befriedigen sich selbst.

von drm (Gast)


Lesenswert?

auch ohne Datenverbindung zum uC, weil Pindreher meinte ich

Natürlich muss das Kabel vom ST-Link an VCC/GND vom uC-Board 
angeschlossen sein.

Deswegen mein Hinweis Pin 1+2 nicht zu brücken.

von oweiowei (Gast)


Lesenswert?

drm schrieb:
> auch ohne Datenverbindung zum uC

Wenn du es so ausdrückst dann stimme ich dir zu.

von Moot S. (mootseeker)


Lesenswert?

oweiowei schrieb:
> Moot S. schrieb:
>> Stimmt Danke war ich etwas zu schnell
>
> Dementsprechend ist natürlich die Reset-Leitung auf diesem Bild
> auch falsch angeschlossen. Muss dritter Pin von rechts sein, bei
> dir ist es der vierte Pin.
>
> Ich frage mich dabei was sonst noch für Chaos in deiner Welt
> herrscht. Wahrscheinlich sind deine Dupont-Verbindungen auch
> noch total wirr verdrahtet.
>
> Ich war zu faul nachzuforschen: braucht denn dein Controller
> keinen externen Quarz?

Also so ein chaos wars jetzt nicht, ich bin einfach bei allen Pins um 1 
verrutscht...

Der Chip braucht keinen externen Quarz. Per default ist der interne 
eingestellt. Wenn einen benötigen würde wäre ein 8Mhz Quarz bestückt, da 
ich nachher wenn es dann mal läuft auf den externen Quarz wechseln 
möchte.

von Moot S. (mootseeker)


Lesenswert?

drm schrieb:
>>- Update ST-Link Utility Tool (Version: 4.5)
> veraltet, aktuell ist der ST32CubeProgrammer 2.5
> wird dein uC überkaupt von der Version unterstützt ?
>
> der ST-Link V2 sollte nicht rot leuchten sondern grün
>
> V-Target 3,3V sollte auch ohne Verbindung angezeigt werden,
> das Pinout von ST-Link zu deinem Board ist definitiv falsch.
>
> Wenn du deinen Programmierport wie auf den Nucleo Boards belegst
> 1- VCC/Vtarget
> 2- SWCLK
> 3- Gnd
> 4- SWDIO
> 5- Reset
> 6- SWO ( nicht bei Cortex-M0 ohne + )
> machst du dir das Leben vielleicht einfacher in Zukunft.
>
> Lochrasterplatinen kann man in die passende Größe schneiden.
>
> Mache dir jetzt zum Testen 6 Patchkabel Buchse-Buchse um die Belegung
> durchzutesten.
> Pin 1 und 2 nicht brücken, 2 kann auch Gnd sein, nutze nur Pin 1 für
> Vtarget

STm32Programmer kenne ich garnicht, werde ich testen bzw. nachsehen ob 
der Kontroller unterstützt wird.

Ein Patchkabel mit 6 Pins habe ich am Anfang schon gemacht. Die Belegung 
war wie folgt am ST-Link V2:

Pin1: VCC
Pin2: NC
Pin3: NC
Pin4: GND
Pin5: NC
Pin6: NC
Pin7: SWDIO
Pin8: NC
Pin9: SCLK
Pin10: NC
Pin11: NC
Pin12: NC
Pin13: NC
Pin14: NC
Pin15: NRST
Pin16: NC
Pin17: NC
Pin18: NC
Pin19: NC
Pin20: NC

Den anderen Bastel habe ich nur gemacht, weil es mit dem 6 Pin Kabel 
nicht ging.

von Bauform B. (bauformb)


Lesenswert?

Lautet denn die Fehlermeldung immer "Target voltage detection failed"?

von Moot S. (mootseeker)


Lesenswert?

Bauform B. schrieb:
> Lautet denn die Fehlermeldung immer "Target voltage detection failed"?

Nein die Fehlermeldung im ST-Link Utility lautet: "Could not connect to 
target!"

von Johannes S. (Gast)


Angehängte Dateien:

Lesenswert?

aber im Einstellungen Dialog im ersten Post steht 'detection fail' bei 
Target Spannung. Da muss der Fehler liegen, denn wenn diese Spannung 
nicht richtig anliegt geht auch die digitale Kommunikation nicht.

Verbinde doch mal pin 1+2 mit VTarget, so steht es in der Doku die man 
über die Hilfe vom ST-Link Utility aufrufen kann. Pin 2 steht da nicht 
(optional).

von Moot S. (mootseeker)


Lesenswert?

Johannes S. schrieb:
> Verbinde doch mal pin 1+2 mit VTarget, so steht es in der Doku die man
> über die Hilfe vom ST-Link Utility aufrufen kann. Pin 2 steht da nicht
> (optional).

Das habe ich mit einem Bastel versucht, aber es steht immer "detection 
failed" aber ich messe ja an diesem Pin die 3.3V (auch mit einem anderen 
Debugger)

von W.S. (Gast)


Lesenswert?

Moot S. schrieb:
> würde mich auch lieber auf das SWD konzentrieren.

Na dann konzentriere dich mal. Jetzt hast du schon alles mögliche 
gemacht und dein SWD rührt sich noch immer nicht. Dabei wäre es ne 
einfache Sache, per Ansprechen des Bootladers erstmal zu testen, ob dein 
Chip sich überhaupt noch rührt. Aber mach nur so weiter, das übt auch. 
Mir kommen da dieselben gedanken wie schon weiter oben geäußert: Chip 
verdreht eingelötet, Haarrisse in den Leiterbahnen, Anschlüsse vergessen 
und noch eins: daß der Chip erstmal entsperrt und komplett abgelöscht 
werden muß. Der seggersche JLink kann sowas, dein StLink hoffentlich 
auch.

W.S.

von J. -. (Gast)


Lesenswert?

W.S. schrieb:
> Na dann konzentriere dich mal. Jetzt hast du schon alles mögliche
> gemacht und dein SWD rührt sich noch immer nicht.
Sehe ich auch so. Der Uart ist ja auch schon als Pinheader 
herausgeführt, ein Resettaster ist schnell angelötet, und BOOT0 auf 1 
erfordert eine Leitung. Was allerdings nicht ganz klar ist: Da PB2 
(BOOT1) fehlt, kann man den nicht ganz einfach auf Masse legen, sondern 
da scheinen beim L051K programmierbare Bootbits zu existieren (nBOOT1). 
Da müßte man sich nochmal schlau machen.
Ansonsten kann man mit dem Flash Loader Demonstrator den Chip auch 
einfach mal erasen, um sicherzugehen.

von pegel (Gast)


Lesenswert?

Mit dem CubeProgrammer kann man auf alle Funktionen wie löschen oder 
Option Bytes auch über die serielle Schnittstelle zugreifen. Wie bei 
SWD.

von Cyblord -. (cyblord)


Lesenswert?

pegel schrieb:
> Mit dem CubeProgrammer kann man auf alle Funktionen wie löschen oder
> Option Bytes auch über die serielle Schnittstelle zugreifen. Wie bei
> SWD.

Aber nicht debuggen. Man will also SWD ans laufen bringen. Eine zweite 
Baustelle bringt nichts.

von Moot S. (mootseeker)


Lesenswert?

Cyblord -. schrieb:
> Aber nicht debuggen. Man will also SWD ans laufen bringen. Eine zweite
> Baustelle bringt nichts.

Ich sehe das auch so eine zweite Baustelle bringt mir gerade nicht viel.
Auch wenn ich dann weiss, dass die UART funktioniert, läuft das SWD 
immer noch nicht.



Mein nächster Versuch ist folgender:
Ich habe ein altes PCB von mir gefunden, auf welchem ich erfolgreich 
einen anderen STM32 Chip verwendet hatte. Bei diesem PCB bin ich mir 
sicher, dass die Leitungen funktionieren und alles richtig beschalten 
ist. Wenn dies dann auch nicht funktioniert, werde ich mir einen anderen 
Chip suchen...

Wie gut das viele STM32 Pin gleich sind :)

von Moot S. (mootseeker)


Angehängte Dateien:

Lesenswert?

Mit dem STM32Cube Programmer wird eine Spannung eingelesen (Siehe 
Anhang).
Es kommt aber immer noch wie Fehlermeldung "No Target found"

von A. F. (artur-f) Benutzerseite


Lesenswert?

Moot S. schrieb:
> Meine erste Frage: Stimmen meine Verbindungen (Siehe Dateianhang)? Sie
> sollten schon, ich habe das nun mehrere male kontrolliert.
Sieht soweit in Ordnung aus, vorausgesetzt B1000 Lötjumper ist gesetzt.

> Hat jemand eine vermutung vor der Hacken sein könnte?
Hast du in ST-Link Utility unter den Settings "Connect under Reset" und 
"Reset-Mode -> HW Reset" ausgewählt?

von Mehmet K. (mkmk)


Lesenswert?

Moot S. schrieb:
> Ich sehe das auch so eine zweite Baustelle bringt mir gerade nicht viel.

Ich würde sagen, das bringt Dir sehr viel. Denn dann weisst Du 
zumindest, dass Dein STM32 überhaupt noch keucht und fleucht.
Macht ja keinen Sinn am SWD eines eventuell toten Chips herumzustochern.

von pegel (Gast)


Lesenswert?

Moot S. schrieb:
> Debugger habe ich auch schon getauscht durch einen anderen ST-Link V2
> und einem Nucleo Onboard ST-Link V2 (leider auch erfolglos)

Hast Du es auch anders herum probiert?
Habe nicht noch mal alles gelesen, aber hast Du deinen original ST-Link 
zum programmieren des Nucleo - dessen ST-Link abgeschaltet - probiert?
Also ST-Link Jumper weg, Anschluß an 6Pin Leiste?

von pegel (Gast)


Lesenswert?

Ach und die Verbindung vom Nucleo ST-Link zum L051 auch richtig an 
Stelle der Jumper und nicht an der 6Pin Leiste benutzt?

von Moot S. (mootseeker)


Lesenswert?

Ich habe alle Einstellungen im ST-Link Utility versucht. Bin mit dem 
STM32Cube Programmer aber weiter gekommen, konnte da die Spannung 
auslesen.
Ich habe auch schon den ST-Link von den Nucleos verwendet aber habe 
immer den selben Fehler.


Gefühlt habe ich nun alles gemacht was möglich ist. Hatte dieses Problem 
mit 3 verschiendenen L051 Chips... Ich hatte das gleiche Problem auch 
mit dem F091 auf einem anderen PCB, welches mit diesem PCB verbunden 
worden wäre...

Da ich nun nach 4 Tagen Fehlersuchen keinen Fortschritt erreichen konnte 
und es mich langsam richtig nervt, habe ich mich dazu entschieden, 
andere Kontroller von ST zu nehmen welche ich kenne und auch schon 
gearbeitet habe. Vielleicht habe ich einen schlechten Batch in meiner 
Mouser Bestellung erwischt, aber diesen Kontroller werde ich nicht mehr 
verwenden.

Die Lösung meines Problemes ist folgendes: den L051 habe ich durch einen 
Pin gleichen F103 getauscht (hat nach dem einlöten gleich funktioniert) 
und den F091 auf dem anderen Board habe ich durch einen F303RET6 
getauscht (hat auch gleich nach dem Löten funktioniert). Ich habe nun 
durch die etwas grösseren Kontroller einen etwas höheren Stromverbrauch, 
aber ich konnte auf beiden PCB schon ein Test Programm laufen lassen und 
konnte feststellen, dass beide Boards perfekt funktionieren.


Ich weiss aufgeben ist nicht die beste Lösung aber für mich sehe ich 
keine Zukunft mit dem Cortex-M0.

von m.n. (Gast)


Lesenswert?

Moot S. schrieb:
> Gefühlt habe ich nun alles gemacht was möglich ist.

Den Bootloader hast Du doch garnicht getestet. Weiter so!
Der Haken ist an der Hacke.

von Moot S. (mootseeker)


Lesenswert?

m.n. schrieb:
> Moot S. schrieb:
>> Gefühlt habe ich nun alles gemacht was möglich ist.
>
> Den Bootloader hast Du doch garnicht getestet. Weiter so!
> Der Haken ist an der Hacke.

So damit ihr auch alle glücklich seit, ich habe noch versuch den 
Bootloader zu testen. Habe folgende verbindungen gemacht:

- USART2 RX -> TX
- USART2 TX -> RX
- BOOT0 -> High (3.3V)
- VCC -> 3.3V
- GND -> GND

Der Bootloader gab mir zeichen aus. Daraus schliesse ich, dass der Chip 
nicht Tot ist, er sich aber nicht programmieren lässt.

Ich werde das Thema nun nicht mehr verfolgen, da ich mit den anderen 
Chips zufrieden bin.

von Johannes S. (Gast)


Lesenswert?

Die SWD brauchen Pull up/down die in den uC drin sind, vielleicht machen 
die L da eine Ausnahme? Was sagt das Datenblatt zur Beschaltung?

von m.n. (Gast)


Lesenswert?

Moot S. schrieb:
> Ich werde das Thema nun nicht mehr verfolgen, da ich mit den anderen
> Chips zufrieden bin.

Schlechte Voraussetzung, um in der Elektronik weiter zu kommen.
'Seid' wann gibt man so schnell auf?
Mache einen Tag Pause und mache es dann richtig!

von A. F. (artur-f) Benutzerseite


Lesenswert?

Johannes S. schrieb:
> Die SWD brauchen Pull up/down die in den uC drin sind, vielleicht
> machen
> die L da eine Ausnahme? Was sagt das Datenblatt zur Beschaltung?

Nein machen die nicht. Ich habe schon L031, L051 und L071 durch und alle 
liefen perfekt.

von Moot S. (mootseeker)


Angehängte Dateien:

Lesenswert?

Johannes S. schrieb:
> Die SWD brauchen Pull up/down die in den uC drin sind, vielleicht machen
> die L da eine Ausnahme? Was sagt das Datenblatt zur Beschaltung?

Die haben intern ihre Pullup/Pulldowns.

von Bauform B. (bauformb)


Lesenswert?

Moot S. schrieb:
> den L051 habe ich durch einen
> Pin gleichen F103 getauscht (hat nach dem einlöten gleich funktioniert)
> und den F091 auf dem anderen Board habe ich durch einen F303RET6
> getauscht (hat auch gleich nach dem Löten funktioniert). Ich habe nun
> durch die etwas grösseren Kontroller einen etwas höheren Stromverbrauch

Dann schau die mal die STM32L412KBT bzw. L412RBT, L451RET an. Verglichen 
mit dem uralten F103 ist das eine andere Welt.

Moot S. schrieb:
> Der Chip braucht keinen externen Quarz. Per default ist der interne
> eingestellt. Wenn einen benötigen würde wäre ein 8Mhz Quarz bestückt, da
> ich nachher wenn es dann mal läuft auf den externen Quarz wechseln
> möchte.

Die L4 können den internen MSI-Oszillator per Hardware mit externen 
32kHz synchronisieren. Oder den HSI per Software auf z.B. externe 1Hz. 
Wenn zufällig eine RTC in Nähe ist, brauchst du keinen MHz-Quarz, wieder 
1mA gespart ;) Für 32kHz gibt es einen MEMS-Oszillator im SOT-23 
(SIT1630AI-S4-DCC-32.768), der braucht max. 3uA.

von A. F. (artur-f) Benutzerseite


Lesenswert?

Moot S. schrieb:
> Hab diesen kleinen Adapter gemacht, wo ich alle GND und VCC
> Leitungen
> zusammen gelötet habe. Hat aber keinen Einfluss auf das Resultat.
>
> Ich kann den Kontroller immer noch nicht ansprechen und es wird auch
> keine Spannung angezeigt obwohl ich die Spannung am Pin messen kann.

Wenn ich mir das Bild von deinem gelöteten Adapter anschaue, hast du 
keine Leitung am RESET bzw. bist um ein Pin verrutscht. Das gleiche gilt 
auch für SWDIO und SWDCLK.

Wenn man sich am VCC Pin und der GND Seite orientiert. Muss
RESET vom PIN 13 auf PIN 15
SWDIO vom PIN 5 auf PIN 7
SWCLK vom PIN 7 auf PIN 9

von och nee (Gast)


Lesenswert?

A. F. schrieb:
> Wenn ich mir das Bild von deinem gelöteten Adapter anschaue, hast du
> keine Leitung am RESET bzw. bist um ein Pin verrutscht. Das gleiche gilt
> auch für SWDIO und SWDCLK.

Mann bist du schlau.

oweiowei schrieb:
> Ist falsch angeschlossen.

von A. F. (artur-f) Benutzerseite


Lesenswert?

och nee schrieb:
> A. F. schrieb:
>> Wenn ich mir das Bild von deinem gelöteten Adapter anschaue, hast du
>> keine Leitung am RESET bzw. bist um ein Pin verrutscht. Das gleiche gilt
>> auch für SWDIO und SWDCLK.
>
> Mann bist du schlau.
>
> oweiowei schrieb:
>> Ist falsch angeschlossen.

Hab ee übersehen, dass es angesprochen wurde....

von Johannes S. (Gast)


Lesenswert?

Moot S. schrieb:
> So damit ihr auch alle glücklich seit, ich habe noch versuch den
> Bootloader zu testen. Habe folgende verbindungen gemacht:
>
> - USART2 RX -> TX
> - USART2 TX -> RX
> - BOOT0 -> High (3.3V)
> - VCC -> 3.3V
> - GND -> GND

hast du auch mal SWD probiert als BOOT0 High war?
Man kann die SWD pins auch umprogrammieren, wenn im Controller schon ein 
Programm ist das dies macht dann kommst du auch nicht per SWD ran. 
Ausser man startet in den Bootloader (oder mit connect under reset ?).

von Moot S. (mootseeker)


Lesenswert?

Bauform B. schrieb:
> Dann schau die mal die STM32L412KBT bzw. L412RBT, L451RET an. Verglichen
> mit dem uralten F103 ist das eine andere Welt.


Mit ist klar, das der 103 nicht der neuste ist, hatte aber nur gerade 
den in der Schublade :)

Beitrag #6407759 wurde vom Autor gelöscht.
von Moot S. (mootseeker)


Lesenswert?

Johannes S. schrieb:

> hast du auch mal SWD probiert als BOOT0 High war?
> Man kann die SWD pins auch umprogrammieren, wenn im Controller schon ein
> Programm ist das dies macht dann kommst du auch nicht per SWD ran.
> Ausser man startet in den Bootloader (oder mit connect under reset ?).

Habe beides per Boot0 = 1 und per connect under reset versucht.

von Moot S. (mootseeker)


Lesenswert?

So für alle noch. Das Problem konnte gelöst werden.

Die Schaltung ist korrekt designed. Das Problem lag an den beiden 
Kontrollern die ich eingelötet habe. Diese werden höchstwahrscheinlich 
von der Produktion/Lieferung oder vom einlöten einen Schaden genommen 
haben. Da ich denke, dass ST keine kaputten Chips rausgibt wird irgendwo 
zwischen Lieferung und einlöten des Chips der Fehler sein.

Nachdem ich den 3. Chip eingelötet habe funktioniert das Programmieren 
und ich kann auch den Beispiel Code wo die UART angesteuert wird ohne 
Probleme laufen lassen.

von Bauform B. (bauformb)


Lesenswert?

Moot S. schrieb:
> Vielleicht habe ich einen schlechten Batch in meiner Mouser Bestellung
> erwischt, aber diesen Kontroller werde ich nicht mehr verwenden.

Mir wäre es natürlich lieber, wenn du die Chips kaputt gemacht hast. 
Aber wer LQFP dreimal erfolgreich tauschen kann und noconnect-Symbole 
verwendet, kann kein ganz schlechter Mensch sein ;)

Ich bin erschüttert. Mouser liefert doch immer im 
Antistatik-Trocken-Beutel? Hat schon mal jemand Schrott bekommen?

von m.n. (Gast)


Lesenswert?

Moot S. schrieb:
> Nachdem ich den 3. Chip eingelötet habe funktioniert das Programmieren
> und ich kann auch den Beispiel Code wo die UART angesteuert wird ohne
> Probleme laufen lassen.

Ich finde es gut, daß Du nicht aufgegeben hast!
Einen Defekt der µCs würde ich ausschließen. Die müßte man schon sehr 
grob behandeln, um sie kaputt zu bekommen (Beine abreißen, 
Elektroschock).
Vielmehr vermute ich Lötbrücken bei der Bestückung. Das kann passieren - 
an schlechten Tagen auch 2 x nacheinander.

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.