Forum: Mikrocontroller und Digitale Elektronik Getting started mit STM32F4


von Stefan (Gast)


Lesenswert?

Hallo,

ich fange jetzt, so wie viele anderen auch mit einem STM32F4 Nucleo 
board an und würde gerne selber verstehen wie man Pins  bzw Ports high 
und low schalten kann. Ich möchte hierfür nicht die fertigen Libs von st 
nehmen. Ich würde es gerne selber mal ausprobieren. Hat jemand von euch 
gute Links für den Einstieg, wie man die Pins high und low schalten 
kann. Ich werde z.b. auch noch nciht ganz schlau aus dem Ref manual

von Dieter (Gast)


Lesenswert?

Ich fand das hier teilweise ganz hilfreich:
http://www.diller-technologies.de/stm32.html

Dort wird die Standard Peripheral Library benutzt, aber ob Dir das 
lieber ist?

von Steffen R. (steffen_rose)


Lesenswert?

Ich finde es immer ganz hilfreich, wenn erstmal etwas läuft und ich 
darauf aufbauend spielen kann.

Insofern kannst Du ein bestehendes Projekt, egal ob mit HAL oder 
Peripherie Library nutzen. Darauf aufbauen kannst Du die Pins mit den 
direkten Registerzugriffen manipulieren und so lernen, wie diese sich 
beeinflussen.

von m.n. (Gast)


Lesenswert?

Stefan schrieb:
> Hat jemand von euch
> gute Links für den Einstieg, wie man die Pins high und low schalten
> kann.

Ein Beispiel, wie man IO-Pins wackeln lassen kann, findet sich in 
STM32F4_lcd.c: Beitrag "Frequenz- und Pulsweitenmessung mit STM32F407"

Die Initialisierung wird mit noch mit "GPIO_Init(GPIOD, 
&GPIO_InitStructure);" erledigt, weil es nur einmalig ablaufen muß und 
übersichtlicher zu programmieren ist. Die Bits selber werden dann mit 
direkten Zugriffen auf die Register gesetzt und gelöscht.

  GPIOD->BSRRL = LCD_READ;              // setzen
  GPIOD->BSRRH = LCD_CMD;               // loeschen

von Stefan (Gast)


Lesenswert?

Vielen Dank für die schnellen Antworten.
ich stecke gerade noch an einem Problem mit OOCD und Eclipse.

Ich habe quasi diese Anleitung befolgt

https://www.youtube.com/watch?v=kjvqySyNw20

und bekomme am Ende eine Fehlermeldung das meine  "stlink-v2.cfg" File 
nicht gefunden werden kann :/

Hat irgendjemand eine Idee wie man diese Fehler beheben kann?

von Christian (Gast)


Lesenswert?

Wenn du sowieso mit Eclipse arbeiten willst,  warum nimmst du nicht 
einfach AC6 System Workbench?
http://www.openstm32.org/HomePage

von Stefan (Gast)


Lesenswert?

Christian schrieb:
> Wenn du sowieso mit Eclipse arbeiten willst,  warum nimmst du nicht
> einfach AC6 System Workbench?
> http://www.openstm32.org/HomePage

Habe ich gerade versucht zu installieren, aber die Internetseite 
funktioniert in eclipse nicht wenn man versucht die SOftware zu 
installieren

von Christian (Gast)


Lesenswert?

Wie meinst du das,  dass die Internetseite unter Eclipse nicht verfügbar 
wäre?
Hast du dich auf der Seite  registriert? Dann ganz normal Eclipse 
aufspielen und am Ende hat man Eclipse mit dem schon vorinstallierten 
Plugin.

von Stefan (Gast)


Lesenswert?

Christian schrieb:
> Wie meinst du das,  dass die Internetseite unter Eclipse nicht verfügbar
> wäre?
> Hast du dich auf der Seite  registriert? Dann ganz normal Eclipse
> aufspielen und am Ende hat man Eclipse mit dem schon vorinstallierten
> Plugin.

Wenn ich bei diesem Plugin z.B. die Firmware herunterladen möchte kommt 
die Fehlermeldung "firmware url invalid stm32f4_dsp_stdperiph_lib... ... 
Reason:Internal Error"

Dasselbe habe ich , wenn ich versuche selber die PLugins von Eclipse aus 
zu installieren...

von Stefan (Gast)


Lesenswert?

OK, es lag an meiner Firewall... Nun stehe ich aber vor einem anderen 
Problem. Wenn ich ein projekt aus mbed einbinden möchte und dieses 
exportiere ist meins leider nur 600 kB gross und nicht wie angepriesen 
30MB.

Ich habe es dennoch probiert mal einzurichten in eclipse . Habe die 
Anleitung befolgt -> Schaltfläche "Debug All" in eclipse  ausgewählt -> 
run klicken, aber leider wird angemeckert,dass keine binary files 
gefunden werden konnten. Woran könnte dies liegen oder mache ich etwas 
falsch ?

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.