Delay für STM32F4Discovery

OP #2959411
Lesenswert?

Hallöchen

ich bin neu hier bei euch im Forum und noch neuer im Bereich der µC 
programmierung. Arbeite für die Uni mit einem STM32F4Discovery, was 
leider nicht so ganz einsteigerfreundlich ist ;-)

Ich bin auf der Suche nach einer Delay Funktion, mit der ich Delays im 
ms Bereich verwirklichen kann. Ich hab hier im Forum und auch bei google 
schon viel dazu gelesen und probiert...unter anderem mit dem Systick und 
einer einfachen for-Schleife. Aber irgendwie krieg ich das alles nicht 
hin :-(

Wäre nett, wenn mir jemand möglichst genau erklären kann, wie so etwas 
funktioniert.

Danke schonmal für eure Hilfe
#2959458
Lesenswert?

Google doch einfach
stm32 discovery delay
da findet sich doch schon im ersten Ergebnis was.

Wenn du aber wirklich daran denkst Delays zu verwenden, dann würde ich 
dir einen einfacheren 8bit µC ans Herz legen. PIC / AVR. Dann ist's 
einfach noch nicht so weit, dass du mit der Komplexität zu Recht kommst.
OP #2959469
Lesenswert?

Hey, danke für deine Antwort.

Google hat mir wie gesagt nichts geholfen...und bei dem Beispiel, dass 
du mit gezeigt hast ist die Zeit nicht genau Definiert, die gewartet 
wird.

Ich würde schon, seit ich mit dem Projekt angefangen habe lieber auf 
einen AVR arbeiten, würde für mich alles viel einfacher machen...Darf 
ich aber leider nicht, weil mit dieses Board von der Uni vorgeschrieben 
wurde...
Gast #2959509
Lesenswert?

Verwendest Du als Grundlage ein Demo-Programm?
Wenn nicht, solltest Du das am Anfang machen!

Darin findet sich zumeist eine Funktion
void SysTick_Handler(void), die typischerweise alle 10ms per Interrupt 
aufgerufen wird.

Initialisiert wird an anderer Stelle mit:
  RCC_ClocksTypeDef RCC_Clocks;

/* SysTick end of count event each 10ms */
  RCC_GetClocksFreq(&RCC_Clocks);
  SysTick_Config(RCC_Clocks.HCLK_Frequency / 100);

In dem oben erwähnten SysTick_Handler() kannst Du ein Flag setzen, was 
in einer Warte-Funktion ausgewertet wird, oder auch eine 
uint32_t-Variable auf '0' runterzählen und, und, und ...
Gast #2961325
Lesenswert?

Malte B. schrieb:
> Ich bin auf der Suche nach einer Delay Funktion, mit der ich Delays im
> ms Bereich verwirklichen kann.

Du erwartest offensichtlich eine Funktion, die den Prozessor für eine 
begrenzte Zeit zum Nichtstun verurteilt.
Sowas wäre machbar, es gibt aber auch die Möglichkeit, dass diese Zeit 
zur Erledigung anderer Aufgaben genutzt wird.
Welchen Vorteil siehst du, diese Zeit ungenutzt verstreichen lassen?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren