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
light_adc [2020/01/06 16:34] – [Videozusammenfassung] huwilight_adc [2020/07/23 13:09] (aktuell) – [Übung 6] huwi
Zeile 1: Zeile 1:
 ====== Analogdaten erfassen und verarbeiten ====== ====== Analogdaten erfassen und verarbeiten ======
 +{{tag>UART USART ADC ANALOG}}
 Für eingebettete Systeme ist das Erfassen und die Verarbeitung analoger Daten oft essentiell. Das PEC-Framework stellt Klassen und Templates zur Verfügung, mit denen sich eine Vielzahl von Aufgabenstellungen rings um den Analog-Digital-Converter mit wenigen Handgriffen erledigen lassen. Viele Problemstellungen, bei denen ein Analogwert erfasst, verarbeitet und daraufhin etwas, was auch immer, getan werden soll, sind mit einer Auflösung von 8 Bit durchaus hinreichend zu lösen. Somit wollen wir in diesem Beispiel zunächst nur einen 8-Bit Wert zyklisch erfassen und per UART an das Controlcenter senden. Der Charm dabei ist, dass sich 8-Bit Werte sehr reibungslos per UART übertragen lassen da diese ja "zufällig" Datenworte zu je 8 Bit überträgt.  Für eingebettete Systeme ist das Erfassen und die Verarbeitung analoger Daten oft essentiell. Das PEC-Framework stellt Klassen und Templates zur Verfügung, mit denen sich eine Vielzahl von Aufgabenstellungen rings um den Analog-Digital-Converter mit wenigen Handgriffen erledigen lassen. Viele Problemstellungen, bei denen ein Analogwert erfasst, verarbeitet und daraufhin etwas, was auch immer, getan werden soll, sind mit einer Auflösung von 8 Bit durchaus hinreichend zu lösen. Somit wollen wir in diesem Beispiel zunächst nur einen 8-Bit Wert zyklisch erfassen und per UART an das Controlcenter senden. Der Charm dabei ist, dass sich 8-Bit Werte sehr reibungslos per UART übertragen lassen da diese ja "zufällig" Datenworte zu je 8 Bit überträgt. 
  
Zeile 46: Zeile 47:
  
 ===== Realisierung ===== ===== Realisierung =====
-Die Realisierung sollte die im obigen Entwurf beschriebenen Elemente beinhalten. Zusätzlich muss müssen wir noch die konkret verwendeten Ressourcen unseres Controllers zuweisen. Für die UART benutzen wir die bekannte Konfiguration aus der vorangegangenen Übung **uart1portA9_stm32f0**. Den ADC sollen wir an PinA7 anschließen. Wir könnten auch andere Pins benutzen aber das Pin A7 ist einfach den analogen Eingabegeräten auf unserem Board am nächsten. Wir ziehen wieder unsere Referenzkarte zu Rate.+Die Realisierung sollte die im obigen Entwurf beschriebenen Elemente beinhalten. Zusätzlich müssen wir noch die konkret verwendeten Ressourcen unseres Controllers zuweisen. Für die UART benutzen wir die bekannte Konfiguration aus der vorangegangenen Übung **uart1portA9_stm32f0**. Den ADC sollen wir an PinA7 anschließen. Wir könnten auch andere Pins benutzen aber das Pin A7 ist einfach den analogen Eingabegeräten auf unserem Board am nächsten. Wir ziehen wieder unsere Referenzkarte zu Rate.
  
 {{:stm32light:adcch7.png?nolink&300|}} {{:stm32light:adcch7.png?nolink&300|}}
Zeile 112: Zeile 113:
  
 ====== Videozusammenfassung ====== ====== Videozusammenfassung ======
 +{{tag>Video}}
 Erlernte und gefestigte Arbeitsschritte: Erlernte und gefestigte Arbeitsschritte:
  
   - Klassendiagramm anlegen und öffnen   - Klassendiagramm anlegen und öffnen
   - Diagrammvorlage für PEC Applikation auswählen, laden und Treiberpaket für STM32F4 einfügen   - Diagrammvorlage für PEC Applikation auswählen, laden und Treiberpaket für STM32F4 einfügen
-  - gewünschte Klasse im Explorer suchen und ins Diagramm ziehen+  - gewünschte Bausteine im Explorer/Navigator suchen und ins Diagramm ziehen
   - Klassen aggregieren   - Klassen aggregieren
   - Operationen einer Klasse anlegen   - Operationen einer Klasse anlegen
-  - Operationen einer Basisklasse überschreiben 
   - Attribute einer Klasse anlegen   - Attribute einer Klasse anlegen
   - Klassen und Templates zu Komponenten zusammenbauen   - Klassen und Templates zu Komponenten zusammenbauen
   - den nötigen Quellcode in den Operationen erstellen   - den nötigen Quellcode in den Operationen erstellen
   - Erstellen und Brennen eine ARM Applikation im Klassendiagramm   - Erstellen und Brennen eine ARM Applikation im Klassendiagramm
 +  - den Bibliotheksbaustein **PecAdcChannel** anwenden
   - das SiSy ControlCenter anwenden   - das SiSy ControlCenter anwenden
  
 Hier unsere übliche Videozusammenfassung. Hier unsere übliche Videozusammenfassung.
  
-###### ACHTUNG VERALTETES VIDEO ######+<html> <iframe width="1030" height="580" src="https://www.youtube.com/embed/til2mhQOVo0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> </html>
  
-<html><iframe width="640" height="400" src="https://www.youtube.com/embed/9ntPDTCE7VY" frameborder="0" allowfullscreen></iframe></html>+[[https://youtu.be/EwMTWc5anq0|oder die schnelle Version ohne Sprachkommentare]]
  
-====== Übung ====== +====== Übung ====== 
-Erweitern Sie zur Übung die Anwendung um um eine **ErrorLED**. Die ErrorLED soll bei Sensorwerten unter 100 leuchten. +Erweitern Sie zur Übung die Anwendung um eine **ErrorLED**. Die ErrorLED soll bei Sensorwerten unter 100 leuchten. 
  
 ====== Weiter mit: ====== ====== Weiter mit: ======
   * [[mystm32_board_light_tutorial|zurück zur Übersicht]]   * [[mystm32_board_light_tutorial|zurück zur Übersicht]]
-  * [[einen Timer mit dem mySTM32 light benutzen]]+  * [[light DIM|Eine LED mit dem light Board per PWM dimmen]] 
 + 
 +====== Suchbegriffe ======