Forum: Mikrocontroller und Digitale Elektronik STM CUBE IDE - Usercode wird gelöscht beim Neuconfig Device


von Paul (Gast)


Lesenswert?

Hallo zusammen,

ich versuche gerade die Welt der 8-bit AVRs zu verlasen und mit der Zeit 
zu gehen und auf 32bit umzusteigen.

Nach der Frage ob LPC oder STM, dem Abscannen der üblichen 
Privatbelieferer fiel die Wahl auf STM32.

Um erstmal keine Sorgen mit der Hardware zu haben, fix ein fertiges 
Board bestellt: "STM 32 Blue Pill". Darauf werkelt ein stm32f103c8t6 und 
hat seine Pins im Arduino Style auf Stiftleisten rausgeführt.

Als IDE habe ich die CubeIDE von STM installiert inklusive CubeMX.

Erster Schritt: Über das Device Configuration Tool (eine grafische 
Oberfläche zur Konfiguration der Hardwarekomponenten) habe ich einen PIN 
als Ausgang gesetzt. Das Tool fragte mich dann, ob ich den Code 
(Initialisierung der Pins) automatisch generieren möchte. Habe ich 
gemacht und in der main.c erscheint auch die Config für meinen gewählten 
Pin.

Fix einen Blik Code geschrieben und programmiert.
Dies war erfolgreich, die LED auf dem Board blinkt nach meinem Wusch.

Jetzt wollte ich I2C probieren und habe wieder über die grafische 
Oberfläche "Device Configuration Tool" das I2C1 Interface aktiviert. 
Beim verlassen wurde ich wieder gefragt, ob ich den Code generiern 
wollte, wieder mit JA bestätigt.

In der main.c wird die I2C Config angelegt, aber gleichzeitig auch mein 
User Code gelöscht?

Das kann doch nicht so gewollt sein? Kann man das irgendwo einstellen?

Ich habe im Laufe eines Projekts ab und zu mal den Wunsch/die 
Notwendigkeit noch einen Timer oder eben das I2C Interface zu nutzen. 
Das Konfigurieren ist sehr bequem und das möchte ich eigetlich auch 
nicht unbedingt jedes mal selber Register für Register selbst machen. 
Kann doch nicht sein das ich da vorher allen Usercode per Copy Paste aus 
der CubeIDE rauskopieren muss um ihn dann wieder einzufügen?

VG Paul

von Stefan F. (Gast)


Lesenswert?

Paul schrieb:
> gleichzeitig auch mein User Code gelöscht?
> Das kann doch nicht so gewollt sein?

Klar, das soll nicht so sein.

Es ist wichtig, den eigenen Code zwischen die entsprechenden Kommentare 
zu schreiben. Am Besten änderst du in den generierten Quelltexten so 
wenig wie möglich (ist nicht ganz vermeidbar) und lagerst so viel wie 
möglich in eigene Dateien aus.

Hier habe ich so eine Stelle gelb markiert, wo der eigene Code hin 
gehört: http://stefanfrings.de/stm32/stm32f1.html#vcphal

Die generierten Kommentare sind da eigentlich eindeutig, finde ich.

von Paul (Gast)


Lesenswert?

Hey Stefan,

vielen Dank für die schnelle Hilfe!
Genau da lag mein Fehler. Wer lesen kann ist klar im Vorteil ;).

Falls du das verlinkte Tutorial geschrieben hast:
Vielen, vielen Dank! Das hat mir unzählige Stunden gespart!

VG Paul

von Stefan F. (Gast)


Lesenswert?

Paul schrieb:
> vielen Dank für die schnelle Hilfe!

Gern geschehen.

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.