Forum: Compiler & IDEs IAR St Link V2 Target doesnt match


von Leopold N. (leo_n)


Lesenswert?

Hallo,

ich habe mir IAR installiert und benutze den ST Link V2.
Programmieren möchte ich einen STM32F103C8T6 über SWD.
Das Programm selbst compiliert ohne Probleme.
Aber das Flashen + Debuggen (STRG + D) aus der IDE heraus funktioniert 
nicht.
Hier kommt ein Fehler:

Fatal Error: The selected device does not match the target device
Session aborted!

Wenn ich das ST Link Utility benutze, funktioniert das Flashen ohne 
Probleme.
Stelle ich ich in den Projektoptionen das Target nicht auf STM32F103C8, 
sondern auf Cortex M3, dann funktionierts auch.

1. Frage: Was macht die IDE anders (Lib-technisch und so...) wenn ich 
nur Cortex M3 angebe und nicht den genauen Chip.

2. Frage: Hat jemand eine Erklärung / Lösung für das Problem?

Und bevor ihr fragt: Ja es ist ein STM32F103C8T6, den ich da eingelötet 
habe :)


Grüße

von Leopold N. (leo_n)


Lesenswert?

Keiner eine Idee?

von A. G. (grtu)


Lesenswert?

Zeigt dir St-Link und IAR den Typ beim Flashen richtig an?

von Walter T. (nicolas)


Lesenswert?

Schuß ins Blaue: Hat der IAR seine STM32F103xx.svd ?

von Leopold N. (leo_n)


Lesenswert?

A. G. schrieb:
> Zeigt dir St-Link und IAR den Typ beim Flashen richtig an?

ST Link Utility zeigt mir Device ID 0x410, Device STM32F10xx Medium 
Density,
Revision ID unknown und Flash Size 128kBytes an.

IAR sagt gar nichts bis auf den Fehler.

Leopold N. schrieb:
> Fatal Error: The selected device does not match the target device
> Session aborted!

Gibts evtl ein Log File, um herauszufinden, was IAR ausliest?

Walter T. schrieb:
> Schuß ins Blaue: Hat der IAR seine STM32F103xx.svd ?

Ja.

von pegel (Gast)


Lesenswert?

Leopold N. schrieb:
> Flash Size 128kBytes

Wenn er das anzeigt, ist es für ihn eher ein F103CB.
Ist sicher einer dieser CN µC.

von Leopold N. (leo_n)


Lesenswert?

pegel schrieb:
> Leopold N. schrieb:
>> Flash Size 128kBytes
>
> Wenn er das anzeigt, ist es für ihn eher ein F103CB.
> Ist sicher einer dieser CN µC.

Puh, stimmt eigentlich.
Aber auf Ebay steht definitiv C8...IAR juckts aber net.
Der sagt auch beim CB falsches Device.
Aufm Chip selbst steht aber auch C8.

Was ist ein CN µC?

: Bearbeitet durch User
von pegel (Gast)


Lesenswert?

Ach Entschuldigung, das war das ST Link Utility.

Die Suche nach der Meldung läuft immer auf Updates oder Patches von IAR 
hinaus.

von pegel (Gast)


Lesenswert?

Leopold N. schrieb:
> Was ist ein CN µC?

China Hinterhof. ;)

von Leopold N. (leo_n)


Lesenswert?

Hat sonst noch jemand eine Idee?

pegel schrieb:
> Leopold N. schrieb:
>> Was ist ein CN µC?
>
> China Hinterhof. ;)

Achso, ja ist er :)

: Bearbeitet durch User
von pegel (Gast)


Lesenswert?


von Leopold N. (leo_n)


Lesenswert?

pegel schrieb:
> Bist du aktuell?
>
> http://supp.iar.com/Updates/?product=EWarm

Hab Version 8.32.3, gerade erst frisch installiert.

von pegel (Gast)


Lesenswert?

Meine letzte Idee zum Thema:

https://os.mbed.com/questions/70475/IAR-STM32F103C8-with-ST-Link-Download-CP/

unten der link geht von einem ST-Link Treiber Problem aus.
Benutzt du Win10? Da hat es jemand mit dem Win8 Kompatibilitätsmodus 
geschafft, ein anderer jedoch nicht.

Viel Glück!

von Leopold N. (leo_n)


Lesenswert?

Höchstwahrscheinliche Ursache:
Defekt des µC.

Grund: Ich habe ein DEV Board von Olimex mit IAR programmieren und 
debuggen können.

Werde dann mal das Board wechseln... :)
Dann berichte ich euch.

von Leopold N. (leo_n)


Angehängte Dateien:

Lesenswert?

Hier mal der Schaltplan.
Passt der so?

von Leopold N. (leo_n)


Lesenswert?

Kann sich den keiner kurz mal ansehen?
Ist doch net so groß...

Einfach nur drüberschauen, ob alles richtig beschaltet ist.

von m.n. (Gast)


Lesenswert?

Es fehlen ein paar mehr Abblockkondensatoren. C7 entspricht bestimmt 
nicht den Herstellervorgaben. Der Spannungsregler ist mit 100 nF Cs auch 
etwas unterversorgt. Zwischen PH1 und Quarz könnte ein Widerstand 100 - 
220 Ohm empfehlenswert sein.
Mit Deinem ursprünglichen Problem hat das aber alles nichts zu tun.

Leopold N. schrieb:
> Stelle ich ich in den Projektoptionen das Target nicht auf STM32F103C8,
> sondern auf Cortex M3, dann funktionierts auch.

Dann mach das doch einfach so.

von Leopold N. (leo_n)


Lesenswert?

m.n. schrieb:
> Leopold N. schrieb:
>> Stelle ich ich in den Projektoptionen das Target nicht auf STM32F103C8,
>> sondern auf Cortex M3, dann funktionierts auch.
>
> Dann mach das doch einfach so.

Ist aber kacke, schließlich sollte es ja eigentlich funktionieren.
Außerdem sehe ich dann nur die Prozessorregister und nicht die 
Peripherie...

Ich habe jetzt noch ein wenig herumprobiert, auch mit einem neuen Board 
und habe festgestellt, dass der eine µC 128k Flash tatsächlich besitzt, 
der andere hingegen nur die vorgesehenen 64k...

Ich hab jetzt bei Reichelt mal originale Chips bestellt und hoffe, dass 
es daran liegt.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Leopold N. schrieb:

> Programmieren möchte ich einen STM32F103C8T6 über SWD.

Schau mal genau auf den µC, vermutlich hast Du einen CS32F103C8T6 und 
keinen STM32F103C8T6. Die Chinesen rüsten die Bluepills mittlerweile mit 
CS-Clones aus, die kompatibel sind, aber eine andere Signatur liefern.

Desweiteren haben die CS32F103C8 "echte" 128 KB Flash, während das bei 
den STM32F103C8 nicht so dokumentiert ist (offiziell lediglich 64 KB 
Flash) und hier die kompletten 128KB nur über den Bootloader ansprechbar 
sind.

Siehe auch:

Beitrag "Unterschiede CS32F103C8T6 und STM32F103C8T6"

: Bearbeitet durch Moderator
von Leopold N. (leo_n)


Lesenswert?

Frank M. schrieb:
> Leopold N. schrieb:
>
>> Programmieren möchte ich einen STM32F103C8T6 über SWD.
>
> Schau mal genau auf den µC, vermutlich hast Du einen CS32F103C8T6 und
> keinen STM32F103C8T6. Die Chinesen rüsten die Bluepills mittlerweile mit
> CS-Clones aus, die kompatibel sind, aber eine andere Signatur liefern.
>
> Desweiteren haben die CS32F103C8 "echte" 128 KB Flash, während das bei
> den STM32F103C8 nicht so dokumentiert ist (offiziell lediglich 64 KB
> Flash) und hier die kompletten 128KB nur über den Bootloader ansprechbar
> sind.
>
> Siehe auch:
>
> Beitrag "Unterschiede CS32F103C8T6 und STM32F103C8T6"

Es steht STM32 drauf, aber sonst könnte das wirklich die Lösung sein.
Naja, habe jetzt die von Reichelt draufgelötet und die funktionieren...
Werde mir wohl was einfallen lassen müssen.

Aber mal ne andere Frage:
Gibt es irgendein Plugin für IAR, dass die AutoComplete Funktion wie in 
Visual Studio Intellisense verbessert, weil wenn ich mir etwas über 
#define definiere, dann schlägt er diese gar nicht vor, also auch nicht 
mit CTRL+SPACE...
Habe nur AutoType gefunden, aber irgendwie geht der Link zum Download 
nicht..

https://windows.podnova.com/software/318478.htm

von Hdudzevdjfd (Gast)


Lesenswert?

Eclipse mit IAR plugin. Die IDE von denen ist immer noch ein Krampf. 
Debuggen geht zwar ganz ok aber code schreiben überhaupt nicht.

von Leopold N. (leo_n)


Lesenswert?

Hdudzevdjfd schrieb:
> Eclipse mit IAR plugin. Die IDE von denen ist immer noch ein
> Krampf.
> Debuggen geht zwar ganz ok aber code schreiben überhaupt nicht.

Eclipse stinkt aber.
Gibts net irgendwie die möglichkeit das VS Intellisense in IAR zu 
integrieren?

von Leopold N. (leo_n)


Lesenswert?

Am besten wäre es, wenn ich die STM32 in Visual Studio programmieren und 
debuggen könnte. Ganz einfach und simpel wie in Atmel Studio. Das muss 
doch gehen.
Kann mir da jemand helfen?

von W.S. (Gast)


Lesenswert?

Leopold N. schrieb:
> Am besten wäre es, wenn ich die STM32 in Visual Studio programmieren und
> debuggen könnte. Ganz einfach und simpel...

Also, du kannst keinen STM32 debuggen, auch keine andere Hardware. Was 
du debuggen kannst, sind die Ergüsse deiner Programmierkunst - oder der 
Programmierkunst anderer Leute. Nur mal zur Klarstellung.

Warum eigentlich kommt hier keiner mit einem ganz normalen Editor und 
seiner Toolchain zu Potte? Weil alle erstmal per Debugger angucken 
wollen, was sie da eigentlich an Quellcode verzapft haben?

Irgendwie hab ich den Eindruck, daß demnächst die Leute ihre 
Mikrocontroller nur noch "GANZ EINFACH" per Office-Suite programmieren 
wollen, weil es ja alles so aussieht wie ein Brief an die Omi.

W.S.

von Michael F. (Gast)


Lesenswert?

Leopold N. schrieb:
> Ganz einfach und simpel wie in Atmel Studio.

Beziehst Du Dich auf die AVR oder Arm basierten Controller von 
Microchip?

von Leopold N. (leo_n)


Lesenswert?

Michael F. schrieb:
> Leopold N. schrieb:
>> Ganz einfach und simpel wie in Atmel Studio.
>
> Beziehst Du Dich auf die AVR oder Arm basierten Controller von
> Microchip?

AVR basiert.

W.S. schrieb:
> Also, du kannst keinen STM32 debuggen, auch keine andere Hardware. Was
> du debuggen kannst, sind die Ergüsse deiner Programmierkunst - oder der
> Programmierkunst anderer Leute. Nur mal zur Klarstellung.

Hilfreich.

W.S. schrieb:
> Leopold N. schrieb:
>> Am besten wäre es, wenn ich die STM32 in Visual Studio programmieren und
>> debuggen könnte. Ganz einfach und simpel...
>
> Also, du kannst keinen STM32 debuggen, auch keine andere Hardware. Was
> du debuggen kannst, sind die Ergüsse deiner Programmierkunst - oder der
> Programmierkunst anderer Leute. Nur mal zur Klarstellung.
>
> Warum eigentlich kommt hier keiner mit einem ganz normalen Editor und
> seiner Toolchain zu Potte? Weil alle erstmal per Debugger angucken
> wollen, was sie da eigentlich an Quellcode verzapft haben?
>
> Irgendwie hab ich den Eindruck, daß demnächst die Leute ihre
> Mikrocontroller nur noch "GANZ EINFACH" per Office-Suite programmieren
> wollen, weil es ja alles so aussieht wie ein Brief an die Omi.
>
> W.S.

Den Debugger habe ich in Atmel Studio nie benutzt, nur ein paar Mal den 
Simulator, als ich mein Betriebssystem programmiert habe...
Bei den STM32 wollte ich mir aber die Möglichkeit offen halten, falls 
ich nicht mehr durchblicke.

von Michael F. (Gast)


Lesenswert?

Leopold N. schrieb:
> AVR basiert.

Zwischen der Komplexität eines AVR8 und eines Cortex-M liegen Welten, 
die sich auch irgendwie in der Konfiguration / Programmierung des 
Controllers widerspiegeln. Somit bin ich mir nicht sicher, ob Deine 
Erfahrungen und Erwartungen, die vom AVR kommen, auch auf Arm 
übertragbar sind...



Leopold N. schrieb:
> Den Debugger habe ich in Atmel Studio nie benutzt, nur ein paar Mal den
> Simulator, als ich mein Betriebssystem programmiert habe...
> Bei den STM32 wollte ich mir aber die Möglichkeit offen halten, falls
> ich nicht mehr durchblicke

Ohne sinnvollen Debugger, bzw. Simulator stelle ich mir 
Softwareentwicklung auf Cortex-M recht 'sportlich' vor ;-)

von Leopold N. (leo_n)


Lesenswert?

Michael F. schrieb:
> Ohne sinnvollen Debugger, bzw. Simulator stelle ich mir
> Softwareentwicklung auf Cortex-M recht 'sportlich' vor ;-)

Gibts es keinen Debugger, der mit der arm gcc toolchain kompatibel ist?

von Michael F. (Gast)


Lesenswert?

Debugger wären in den von Dir im parallelen Thread ausgeschlossenen IDEs 
(Embedded Workbench, TrueSTUDIO, SW4STM32) enthalten.

GDB wäre der GNU Debugger und der sollte in Eclipse laufen, aber das 
(Zitat) "stinkt".

von Leopold N. (leo_n)


Lesenswert?

Michael F. schrieb:
> Debugger wären in den von Dir im parallelen Thread
> ausgeschlossenen IDEs
> (Embedded Workbench, TrueSTUDIO, SW4STM32) enthalten.
>
> GDB wäre der GNU Debugger und der sollte in Eclipse laufen, aber das
> (Zitat) "stinkt".

Naja, der sollte sich doch aber auch in VSC installieren lassen oder?

von Leopold N. (leo_n)


Lesenswert?

Thread wäre dann wohl geschlossen, siehe:

Beitrag "Re: STM32 in Visual Studio"

Grüße

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.