Forum: Mikrocontroller und Digitale Elektronik Artikel zur STM32F10x Standard Peripherals Library


von Thomas B. (escamoteur)


Lesenswert?

Hi,

ich wollte nur hurz sagen, dass ich mit einem neuen Artikel zur 
STM32F10x Standard Peripherals Library angefangen habe.

Mitarbeit sehr willkommen.

And die Admins: Könnt Ihr eine Kategorie STM32 für Artikel anlegen? Das 
werden wohl bald noch mehr werden.

Gruß
Tom

von Thomas B. (escamoteur)


Lesenswert?

Wow, das geht ja mächtig voran! Dank an Heddie und Prx.

Ich hab ein bisschen eränzt und umstrukturiert, ich hoffe das passt so.

Tom

von Dennis (Gast)


Lesenswert?

Dieser Artikel war sehr hilfreich um die ersten Schritte mit dem STM32 
zu verstehen. Danke euch!

von Mic (Gast)


Lesenswert?

Finde den Artikel auch sehr gelungen.
Hat mir schon etwas Arbeit abgenommen.
Als Anregung hätte ich vielleicht, dass man bei Verwendung der FW Lib. 
einen 8 MHz Quarz verwenden sollte - sonst muss man an doch recht vielen 
Stellen in die Lib. eingreifen.

Grüße,
Michael

von Thomas B. (escamoteur)


Lesenswert?

Dann schreib es doch einfach rein :-)

von Michael K. (michael007)


Lesenswert?

ist erledigt ;)

von Tobias (Gast)


Lesenswert?

>Aufgrund mehrfacher Anfragen, hier ein Archiv, dass meine Arbeitsumgebung 
>Datei:CrossWorks StandardLib Setup.zip mit zwei Crossworks Projekten 
>(ARM_LED_TEST und ARM_USB_Test). Einfach alles in ein Verzeichnis
>entpacken und schon sollte es Laufen.

Wenn ich unter "Build -> Build and Debug" wähle, meckert Crossworks, daß 
stm32f10x_exti.h, stm32f10x_gpio.h etc. nicht gefunden wurden. Ich 
denke, ich muß noch irgendwo den Pfad in der IDE zur Lib einstellen muß; 
scheint im Projekt nicht drin zu sein.

von Thomas B. (escamoteur)


Lesenswert?

Neee, sollte eigentlich direkt so funktionieren. Hast Du beide Projekte 
probiert?
Gruß
Tom

von Tobias (Gast)


Lesenswert?

Thomas Burkhart schrieb:
> Hast Du beide Projekte
> probiert?

Ja. Beim USB-Programm kommt er ziemlich weit mit dem Kompilieren, bringt 
dann aber 
C:/GlaubstNichWirklich/CrossWorks_StandardLib_Setup/ARM_USB_Test/../ST_S 
tandardLib/STM32F10x_StdPeriph_Driver/src/stm32f10x_rcc.c:282: 
undefined reference to `assert_param'

Vielleicht mach ich aber auch was verkehrt; ich arbeite mich gerade erst 
in Crossworks ein. Und die Onlinehilfe stimmt nicht immer mit meiner 
Version überein. Ich gehe über "File -> Open Solution -> 
ARM_LED_Test.hzp", dann auf "Build -> Build ARM_LED_Test".

von Tobias (Gast)


Lesenswert?

Bis auf die assert_param Meldung habe ich jetzt alles wegbekommen, indem 
ich unter "User Include Directories" meine Pfade zu den ganzen 
Libverzeichnissen reingebracht habe, bis nichts mehr angemeckert wurde.

Einen Cyclecounter habe ich ja in der Statusleiste gefunden. Kann man 
sich auch irgendwo die dabei abgelaufene Zeit anzeigen lassen oder muß 
man das mit dem Taschenrechner ausrechnen?

von Lutz (Gast)


Lesenswert?

Versuch mal, die Datei stm32f10x_conf.h "manuell" mit einzubinden. Das 
Problem hatte ich letztens auch.
So richtig verstanden habe ich diese Datei zwar noch nicht, aber es 
scheint wohl mehrere Wege zu geben. Einmal kann man wohl die o.g. Datei 
anpassen und damit die Peripheriemodule inkludieren oder man schreibt 
wie sonst auch #include "stmf10x_modulname.h".
Warum dann die assert_param-Geschichte aber nun gerade auch in dieser 
Datei steht, hat sich mir noch nicht erschlossen.

von Bernhard L. (bernhard_r84)


Lesenswert?

Hallo!
Habe mir gerade den sehr hilfreichen Artikel durchgelesen.

Leider fehlen mir einige Infos, wie man denn mit dem ARM-GCC (unter 
Linux) in Verbindung mit der Standard Peripherals Library arbeitet.
Ich möchte gerne mit Eclipse entwickeln und bin etwas ratlos wie ich 
denn die einzelnen Teile der Bibliothek anwenden soll.
Hat vielleicht jemand ein Beispielprojekt?

Danke für Rat und Tat!

Grüße,

Bernhard

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Im Artikel STM32 ist ein Demo-Projekt für Eclipse verlinkt:

http://www.mikrocontroller.net/articles/STM32#Demo-Projekte

"ChaN's FAT-Module with STM32 SPI"

von Ich (Gast)


Lesenswert?

Hallo,

eine Frage zum Abschnitt, der "die dritte Möglichkeit, Daten auszugeben" 
beschreibt:
1
GPIO_Write(GPIOA,0x0011); //Setzt die Bits 1 und 5 am GPIOA auf high
2
GPIO_Write(GPIOA, GPIO_Pin_1 | GPIO_Pin_5); // Geht natürlich auch und ist verständlicher                
3
 
4
GPIO_ResetBits(GPIOA,0x0102); //Setzt die Bits 2 und 9 am GPIOA auf low

Kann sein, dass ich gerade auch völlig auf dem Schlauch stehe, aber 
müsste 0x0011 nicht 'GPIO_Pin_0 | GPIO_Pin_4' sein? Also schon erster 
und fünfter Pin, aber eben ab "0"?
Gleiches für 0x0102 -> Bit 1 und Bit 8 statt 2 und 9?

von Konrad B. (Firma: HSKA) (holoki)


Lesenswert?

wo kann ich denn die alten zip files der lib bekommen?

aktuell bietet ST die V3.5.0 an

ich bräuchte aber die V2.0.1 ?!

bin schon eine weile am suchen und finde nicht das richtige ...

Danke und Grüße

von Patrick B. (p51d)


Lesenswert?

Wofür brauchst du denn die alte Version? Im Normalfall sind die 
Versionen ja kompatibel.

von vhtl (Gast)


Lesenswert?

Soweit ich weiß, ist die SPL veraltet und durch die STMCube-Bibliothek 
ersetzt worden. Ich kann die SPL nicht mal mehr bei ST herunterladen.

Ich würde daher einen großen Warnhinweis an den Beginn des Artikels 
setzen.

von STK500-Besitzer (Gast)


Lesenswert?

vhtl schrieb:
> Soweit ich weiß, ist die SPL veraltet und durch die STMCube-Bibliothek
> ersetzt worden. Ich kann die SPL nicht mal mehr bei ST herunterladen.

Und der Thread hier auch...

>
> Ich würde daher einen großen Warnhinweis an den Beginn des Artikels
> setzen.

Den darfst du gerne setzen.

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.