Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

das_stm32f0_discovery [2017/04/05 14:16]
huwaldt
das_stm32f0_discovery [2019/02/04 14:10]
Zeile 1: Zeile 1:
-====== Das STM32F0 Discovery ====== 
-Die STM32 F0 Serie vereint eine Kombination von Echtzeitfunktionen,​ low-power Operationen und erweiterter Architektur zum STM32 System. Das STM32F0-Discovery hilft Ihnen, die Funktionen des STM32F0 zu entdecken und eigene Anwendungen zu entwickeln. Das Discovery-Board ermöglicht sowohl Anfängern als auch Fortgeschrittenen eine schnelle Einarbeitung in die ARM Technologie. Dabei bieten frei verfügbare Beispielanwendungen auf www.st.com Unterstützung beim Start. ​ 
-Das STM32F0-Discovery nutzt den ARM Cortex M0 Controller STM32F051R8T6 und beinhaltet eingebettet ST-Link/V2 zum Programmieren und Debuggen. 
- 
-**Eigenschaften:​**{{ :​stm32f0.png?​200|}} 
-  * Mikrocontroller STM32F051R8T6 im LQFP64 Gehäuse mit 
-    * 32 Bit ARM Cortex-M0 Kern 
-    * 64 KByte Flash 
-    * 8 KByte RAM 
-  * 4 LEDs{{ :​discovery-f0-plus_g.png?​250|}} 
-    * 1 für USB Kommunikation 
-    * 1 Power-LED für 3,3 V 
-    * 2 für Ausgaben 
-  * 2 Taster ​ 
-    * 1 für Reset 
-    * 1 frei verfügbar für den Anwender 
-  * ST-Linkk V2 Programmer onboard 
- 
-Beschaffung: ​ 
-  * [[http://​shop.myavr.de/​ARM-Produktlinie/​STM32F0-Discovery.htm?​sp=article.sp.php&​artID=200080|das STM32F0 Discovery im Shop]] 
-  * [[http://​shop.myavr.de/​ARM-Produktlinie/​mySTM32-Board-F0D,​%20Bausatz.htm?​sp=article.sp.php&​artID=200098|das Zusatzboard für den STM32F0 im Shop]] 
-  * [[http://​shop.myavr.de/​ARM-Produktlinie/​mySTM32%20F0%20Discovery%20PLUS.htm?​sp=article.sp.php&​artID=200099|oder beides im Bundle]] 
- 
-====== Schnelleinstieg mit dem STM32F0 Discovery ====== 
- 
-  - SiSy starten 
-  - neues Projekt anlegen, Profil ARM Vorgehensmodell auswählen 
-  - keine Vorlage aus dem Libstore wählen 
-  - kleines Programm anlegen, Zielsprache ARM C++, Ziel Hardware STM32F0 Discovery mit JLink 
-  - Grundgerüst laden 
- 
- 
->>><​code c> 
-//​---------------------------------------------------------------------- 
-// Titel     : Grundgerüst einer einfachen ARM C Anwendung in SiSy 
-//​---------------------------------------------------------------------- 
-// Funktion ​ : ... 
-// Schaltung : ... 
-//​---------------------------------------------------------------------- 
-// Hardware ​ : STM32F3 Discovery 
-// MCU       : STM32F051R8T6 
-// Takt      : 48 MHz 
-// Sprache ​  : ARM C 
-// Datum     : ... 
-// Version ​  : ... 
-// Autor     : ... 
-//​---------------------------------------------------------------------- 
-#include <​stddef.h>​ 
-#include <​stdlib.h>​ 
-#include "​stm32f0xx.h"​ 
-#include "​mySTM32.h"​ 
-  
-void initApplication() 
-{ 
- SysTick_Config(SystemCoreClock/​100);​ 
- // weitere Initialisierungen durchführen 
-} 
-int main(void) 
-{ 
- SystemInit();​ 
- initApplication();​ 
- do{ 
- // Eingabe 
- // Ausgabe 
- // Verarbeitung 
- } while (true); 
- return 0; 
-} 
-extern "​C"​ void SysTickFunction(void) 
-{ 
- // Application SysTick 
-} 
-</​code>​ 
- 
-====== Blinky ====== 
- 
->>><​code c> 
-//​---------------------------------------------------------------------- 
-// Titel     : Einfache digitale Ausgabe mit dem STM32F0-Discovery 
-//​---------------------------------------------------------------------- 
-// Funktion ​ : lässt die grüne LED blinken 
-// Schaltung : grüne LED an PC9 
-//​---------------------------------------------------------------------- 
-// Hardware ​ : STM32F0 Discovery 
-// MCU       : STM32F051R8T6 
-// Takt      : 48 MHz 
-// Sprache ​  : ARM C 
-// Datum     : 21.01.2013 
-// Version ​  : 1 
-// Autor     : Alexander Huwaldt 
-//​---------------------------------------------------------------------- 
-#include <​stddef.h>​ 
-#include <​stdlib.h>​ 
-#include "​stm32f0xx.h"​ 
-#include "​mySTM32.h"​ 
- 
-#define LED3 (1<<​9) 
-GPIO_InitTypeDef GPIO_InitStructure;​ 
- 
-void initApplication() 
-{ 
- SysTick_Config(SystemCoreClock/​100);​ 
- // weitere Initialisierungen durchführen 
-  
- /* LED Periph clock enable */ 
- RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOC,​ ENABLE); 
- 
- /* Configure PD3 = red LED in output pushpull mode */ 
- GPIO_InitStructure.GPIO_Pin = LED3; 
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;​ 
- GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;​ 
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_Level_3;​ 
- GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;​ 
- GPIO_Init(GPIOC,​ &​GPIO_InitStructure);​  
-} 
- 
-int main(void) 
-{ 
- SystemInit();​ 
- initApplication();​ 
- do{ 
- GPIO_SetBits(GPIOC,​LED3);​ 
- waitMs(100);​ 
- GPIO_ResetBits(GPIOC,​LED3);​ 
- waitMs(100);​ 
- } while (true); 
- return 0; 
-} 
- 
-extern "​C"​ void SysTick_Handler(void) 
-{ 
- // Application SysTick 
-} 
-</​code>​ 
- 
-====== Übersetzen,​ übertragen und testen ====== 
-Die Programme sind getestet und können sofort übersetzt (kompilieren,​ linken) und in den Programmspeicher des Controllers übertragen werden (brennen). ​ 
- 
->​{{:​uebersetzen.jpg?​350|}} {{:​brennen.jpg?​350|}} 
- 
- 
-====== Weitere Beispiele ====== 
-Weitere Beispiele erhalten sie aus dem [[http://​www.sisy.de/​index.php?​id=6&​_cmd=showPage&​_para=searchLibList&​searchTxtLib=Beispiele STM32|SiSy-Libstore]]. 
- 
->​{{:​beispielef0.png?​700|}} 
- 
-====== Videozusammenfassung ====== 
- 
->>><​html><​iframe width="​640"​ height="​480"​ src="​https://​www.youtube.com/​embed/​84Y3jYLWYpo"​ frameborder="​0"​ allowfullscreen></​iframe></​html>​ 
- 
-====== Weitere Hinweise ====== 
-  * [[Programmierung anderer Controller]] ​ 
-  * [[http://​www.sisy.de/​index.php?​id=6&​_cmd=showPage&​_para=searchLibList&​searchTxtLib=STM32F0|der STM32F0 im SiSy-LibStore]] 
-  * [[http://​shop.myavr.de/?​sp=schulungen.sp.php|Seminarangebote]]