Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
hardware [2016/03/22 08:26] markhardware [2019/07/25 13:00] – [STM32F4 Discovery] huwi
Zeile 3: Zeile 3:
 Die standardisierte 32-Bit ARM-Architektur der Firma [[http://www.arm.com/about/company-profile/index.php|ARM Ltd.]] aus Cambridge bildet die Basis für jeden ARM-Prozessor. Im Laufe der Jahre hat sich die ursprüngliche ARM-Architektur rasant entwickelt. Die neueste Version des ARM bildet die [[http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php|ARMv8]] Architektur. Diese zeigt schon deutlich in Richtung 64-Bit Architekturen. Vielleicht werden Sie sich jetzt fragen, wozu sie solche Leistung brauchen. Aber selbst Hobbyprojekte wie [[http://youtu.be/gDX24Wpbqsg|Quadcopter]] oder eine [[http://youtu.be/GDaNkff5Yyg|Hexapod]] können recht schnell an die Leistungsgrenze eines 8/16- Biter stoßen. Die standardisierte 32-Bit ARM-Architektur der Firma [[http://www.arm.com/about/company-profile/index.php|ARM Ltd.]] aus Cambridge bildet die Basis für jeden ARM-Prozessor. Im Laufe der Jahre hat sich die ursprüngliche ARM-Architektur rasant entwickelt. Die neueste Version des ARM bildet die [[http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php|ARMv8]] Architektur. Diese zeigt schon deutlich in Richtung 64-Bit Architekturen. Vielleicht werden Sie sich jetzt fragen, wozu sie solche Leistung brauchen. Aber selbst Hobbyprojekte wie [[http://youtu.be/gDX24Wpbqsg|Quadcopter]] oder eine [[http://youtu.be/GDaNkff5Yyg|Hexapod]] können recht schnell an die Leistungsgrenze eines 8/16- Biter stoßen.
  
->>>{{:arm_timeline.jpg?700|}}+>{{:arm_timeline.jpg?700|}}
  
  
 ARM Controller sind dem Wesen nach [[http://de.wikipedia.org/wiki/Reduced_Instruction_Set_Computer|RISC (Reduced Instruction Set Computer)]] und unterstützen die Realisierung einer breiten Palette von Anwendungen. Inzwischen gilt ARM als führende Architektur in vielen Marktsegmenten und kann getrost als Industriestandard bezeichnet werden. Den Erfolg der ARM-Architektur kann man sehr gut an den aktuellen Trends bei Smart-Phone, Tablett und Co. ablesen. Mehr als 40 Lizenznehmer bieten in ihrem Portfolio ARM-basierende Controller an. Vor allem Effizienz, hohe Leistung, niedriger Stromverbrauch und geringe Kosten sind wichtige Attribute der ARM-Architektur. ARM Controller sind dem Wesen nach [[http://de.wikipedia.org/wiki/Reduced_Instruction_Set_Computer|RISC (Reduced Instruction Set Computer)]] und unterstützen die Realisierung einer breiten Palette von Anwendungen. Inzwischen gilt ARM als führende Architektur in vielen Marktsegmenten und kann getrost als Industriestandard bezeichnet werden. Den Erfolg der ARM-Architektur kann man sehr gut an den aktuellen Trends bei Smart-Phone, Tablett und Co. ablesen. Mehr als 40 Lizenznehmer bieten in ihrem Portfolio ARM-basierende Controller an. Vor allem Effizienz, hohe Leistung, niedriger Stromverbrauch und geringe Kosten sind wichtige Attribute der ARM-Architektur.
  
->>>>>{{:cortexroadmap.jpg?400|}}+>{{:cortexroadmap.jpg?400|}}
  
 ====== Cortex-M ====== ====== Cortex-M ======
Zeile 15: Zeile 15:
 Die folgende (mit Sicherheit nicht vollständige) Darstellung soll die Skalierung der Cortex-M Familie verdeutlichen. Die folgende (mit Sicherheit nicht vollständige) Darstellung soll die Skalierung der Cortex-M Familie verdeutlichen.
  
-{{:coretexportfolio.jpg?820|}}+>{{:coretexportfolio.jpg?820|}}
  
 Der Formfaktor dieser 32-Bit Controller lässt sich durchaus mit den größeren Mega und X-Mega Controllern der AVR-Familie von Atmel vergleichen. Für den blutigen Anfänger unter den Bastlern könnte jedoch die SMD-Bauweise eine nicht unerhebliche Einstiegshürde darstellen. Der Formfaktor dieser 32-Bit Controller lässt sich durchaus mit den größeren Mega und X-Mega Controllern der AVR-Familie von Atmel vergleichen. Für den blutigen Anfänger unter den Bastlern könnte jedoch die SMD-Bauweise eine nicht unerhebliche Einstiegshürde darstellen.
  
->>>{{:formfaktor.jpg?400|}}+>{{:formfaktor.jpg?400|}}
  
 Die Standardisierung des ARM betrifft nicht nur die Hardware, sondern auch die gemeinsamen Aspekte aller ARM-Applikationen. Die ARM-Lizenznehmer halten sich strikt an die Architektur des ARM-Kerns und fügen nur ihre spezifische Peripherie hinzu. Alle den Kern betreffenden Softwarefunktionen lassen sich somit herstellerübergreifend standardisieren. Die Standardisierung des ARM betrifft nicht nur die Hardware, sondern auch die gemeinsamen Aspekte aller ARM-Applikationen. Die ARM-Lizenznehmer halten sich strikt an die Architektur des ARM-Kerns und fügen nur ihre spezifische Peripherie hinzu. Alle den Kern betreffenden Softwarefunktionen lassen sich somit herstellerübergreifend standardisieren.
Zeile 43: Zeile 43:
   * Spezialanwednungen, STM32-W/L, Cortex M3   * Spezialanwednungen, STM32-W/L, Cortex M3
  
-{{:stm32roadmap.jpg|}}+>{{:stm32roadmap.jpg|}}
  
 ST bietet, wie jeder Hersteller, für verschiedene Anwendungsfälle Referenzhardware zum Kennenlernen und Testen an. Beispiele für solche [[http://www.st.com/internet/evalboard/subclass/959.jsp|STM32-Evaluierungsbords]] sind: ST bietet, wie jeder Hersteller, für verschiedene Anwendungsfälle Referenzhardware zum Kennenlernen und Testen an. Beispiele für solche [[http://www.st.com/internet/evalboard/subclass/959.jsp|STM32-Evaluierungsbords]] sind:
Zeile 74: Zeile 74:
   * onBoard Programmer ST-LINK V2   * onBoard Programmer ST-LINK V2
  
-{{:stm32f4discovery.jpg|}}+>{{:stm32f4discovery.jpg|}}
  
 Die Bestückung mit simplen Ein- und Ausgabegeräten ist auf dem Board mit einem Taster und vier frei verfügbaren LEDs doch eher spartanisch gehalten. In diesem Punkt bringt das Erweiterungsboard genügend Abhilfe. Interessant für anspruchsvollere Anwendungen sind natürlich die Audio-Features und der Lagesensor auf dem Board. Hervorzuheben ist ebenfalls der integrierte ST-LINK/V2 Programmer. Mit diesem können über den vorhandenen SWD-Pfostenstecker (Serial Wire Debugging) andere STM32 programmiert und debuggt werden.  Doch zunächst einige wichtige Aspekte zum Inneren des ARM-Cotrollers. Die Bestückung mit simplen Ein- und Ausgabegeräten ist auf dem Board mit einem Taster und vier frei verfügbaren LEDs doch eher spartanisch gehalten. In diesem Punkt bringt das Erweiterungsboard genügend Abhilfe. Interessant für anspruchsvollere Anwendungen sind natürlich die Audio-Features und der Lagesensor auf dem Board. Hervorzuheben ist ebenfalls der integrierte ST-LINK/V2 Programmer. Mit diesem können über den vorhandenen SWD-Pfostenstecker (Serial Wire Debugging) andere STM32 programmiert und debuggt werden.  Doch zunächst einige wichtige Aspekte zum Inneren des ARM-Cotrollers.
  
-{{:stm32sysml.jpg|}}+>{{:stm32sysml.jpg|}}
  
 Für das Verständnis des ARM-Cortex Controllers sind einige grundlegende Strukturmerkmale wichtig. Neben dem Programmier- und Debug-Interface, den getrennten Programm- und Daten-Speichern sind für den Anfänger, aber auch für Umsteiger, vom AVR folgende Bausteine von besonderer Bedeutung: Für das Verständnis des ARM-Cortex Controllers sind einige grundlegende Strukturmerkmale wichtig. Neben dem Programmier- und Debug-Interface, den getrennten Programm- und Daten-Speichern sind für den Anfänger, aber auch für Umsteiger, vom AVR folgende Bausteine von besonderer Bedeutung:
Zeile 88: Zeile 88:
 Im Tutorial werden diese Bausteine öfter eine Rolle spielen. Es ist einfach im Sinne des Lernens durch Wiederholung zweckmäßig, schon jetzt davon gehört zu haben. Im Tutorial werden diese Bausteine öfter eine Rolle spielen. Es ist einfach im Sinne des Lernens durch Wiederholung zweckmäßig, schon jetzt davon gehört zu haben.
  
-{{:stmfd4-1.jpg|}+>{{:stmfd4-1.jpg|}}
  
 ====== mySTM32-Board-F4D ====== ====== mySTM32-Board-F4D ======
Zeile 109: Zeile 109:
   * optionale Schnittstelle: Infrarot Sender und Empfänger   * optionale Schnittstelle: Infrarot Sender und Empfänger
   * optionale Schnittstelle: CAN Bus   * optionale Schnittstelle: CAN Bus
->>>{{:myst32f4d.jpg?600|}} 
  
-{{:bspdiscoverymitaddon.png?600|}}+>{{:myst32f4d.jpg?600|}} 
 + 
 +>{{:bspdiscoverymitaddon.png?600|}}
  
 ====== STM32 Peripherie Treiber ====== ====== STM32 Peripherie Treiber ======