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]]