Hallo, ich entwickle an einer Platine mit einem STM32F407VGT6. Vor einem Monat habe ich die Programmierarbeiten unterbrechen müssen, so dass ich jetzt erst weitermachen konnte. Nun kann ich auf einmal nicht mehr flashen. Der Controller läuft mit dem alten Programm, der Zugriff auf den Flash ist aber unmöglich. Ich habe sowohl J-Link als auch St-Link getestet, als Programme CooCox und J-Flash. Ich habe viel ausprobiert, Connect under Reset etc pp aber kein Land in Sicht. Was könnte das sein? Danke für Eure Hilfe! set tdesc filename C:/CooCox/CoIDE/bin/target_desc/arm-with-m-fpa-layout.xml target remote 127.0.0.1:2331 127.0.0.1:2331: Das System hat versucht, einem Verzeichnis, das sich auf einem mit JOIN zugeordneten Laufwerk befindet, ein Laufwerk mit SUBST zuzuordnen. monitor interface JTAG "monitor" command not supported by this target. monitor endian little "monitor" command not supported by this target. monitor speed auto "monitor" command not supported by this target. monitor flash device = STM32F407VG "monitor" command not supported by this target. monitor flash breakpoints = 1 "monitor" command not supported by this target. monitor flash download = 1 "monitor" command not supported by this target. monitor reset 0 "monitor" command not supported by this target. monitor halt "monitor" command not supported by this target. load C:\\CooCox\\CoIDE\\workspace\\InbetriebnahmeHWr2.0\\InbetriebnahmeHWr2.0 \\Debug\\bin\\InbetriebnahmeHWr2.0.elf You can't do that when your target is `exec' monitor reset 0 "monitor" command not supported by this target. Temporary breakpoint 1 at 0x80001f0: file C:\CooCox\CoIDE\workspace\InbetriebnahmeHWr2.0\main.c, line 27. tbreak main continue The program is not being run.
Hardware getestet? Also SWD/JTAG-Kabel hat keinen Wackelkontakt? Geht das Programmieren mit einem anderem Board? Bei einer Fehlersuche lernt man am besten :-) Viel Erfolg.
Moin, Hast du mal den J-Link Commander versucht der gibt recht gute Infos über die elektrische Verbindung zum Target. Gruß Tec
Ich würde auch Uwes Ansatz verfolgen: Die JTAG-Pins hat man ganz schnell mit Alternate Functions belegt. Kannst du deinen Aapter auf SWD "zurückstellen"? Sonst mal per Boot0 in den Bootloader und per USB-2-Serial neu flashen probieren. Unter Windows hiermit: http://www.st.com/web/en/catalog/tools/PF257525
1 | 127.0.0.1:2331: Das System hat versucht, einem Verzeichnis, das sich auf |
2 | einem mit JOIN zugeordneten Laufwerk befindet, ein Laufwerk mit SUBST |
3 | zuzuordnen. |
Sehe grade den Teil ... ist dein Projekt wirklich zugreifbar ode rliegt das irgendwo auf einem Netzlaufwerk? Ist auf deinem Rechner alles ok? Liefen ja paar MS-Updates durch, die SChannel und Kerberos betreffen, mithin Kryptopgraphie und ACLs auf dem Windows-System. Das kann da schonmal im Pipe-System krachen ...
Vielen Danik schonmal für die schnellen Beiträge! Der Reihe nach: @Nils: Ich habe sowohl verschiedene Debugger, als auch verschiedene Kabel probiert. Ein derartiges Problem schließe ich aus. @Tec: J-Link Commander Log siehe Anhang. @Uwe: Das ist ausgeschlossen, zumindest nicht programmierseitig. Board ist gerade erst in der Inbetriebnahme. @Dirk: SWD hat auch nicht geklappt. Programm liegt lokal auf der Platte. Werde das ganze von einem Zweitrechner mal probieren, danach gehts an den Bootloader. Ich halte euch auf dem laufenden. LG
Also vom Zweitrechner mit neuem Coocox, GCC und neuer J-Link Firmware: das gleiche Problem :-( GDB Hardware Debugger (20.11.14 14:45) (Suspended) <The program is not being run.> Thread [0] (Suspended)
So es gibt einen neuen Stand: Ich konnte den uC mit Hilfe des Bootloaders programmieren. Jetzt hilft mir das ganze nur marginal, da ich irgendwie den JTAG fixen muss, der nach wie vor nicht funktioniert. Wie könnte ich jetzt weitermachen? LG und schonmal danke! Tobi
Hast du vielleicht, beabsichtigt oder unbeabsichtigt, an den Option Bytes (Kapitel 3.7 im Rev.Manual) etwas geändert? Ein darin aktivierter Ausleseschutz (RDP) verhindert auch ein Zugriff über JTAG oder SWD. Ist Level 1 aktiv, kann man das noch rückgängig machen. Ist Level 2 aktiv wars das. Siehe auch Tabelle 17 in Abschnitt 3.7.3. Gruß Rainer
Das kann ich eigentlich ausschließen. Ich suche mal nach einer Möglichkeit das auszuschließen. Kann der Port auch einfach im Eimer sein?
Tobias P. schrieb: > Das kann ich eigentlich ausschließen. Ich suche mal nach einer > Möglichkeit das auszuschließen. Wenn du über den Bootloader noch Software aufspielen kannst, kannst du ja eine kleine Software schreiben, welche dir den Inhalt der Optionsbytes über eine Schnittstelle ausgibt. > Kann der Port auch einfach im Eimer sein? Klar, ist auch möglich.
Hi, ich hatte das gleiche mal bei Keil und einem STM32F3, hier kann kann man "Connect under Reset" einstellen, dann hält der Flasher den Controller im Reset und die Alternate Pin Functions sind deaktiviert. Sollte unter Coocox genauso funktionieren. http://www.coocox.org/CoIDE/How_to_use_J-Link.html Gruß Felix
Wie im Eingangspost beschrieben habe ich das schon probiert. Nächste Schritte sind die Überprüfung der Ports und das Auslesen der Statuspins. LG
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.