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_hallo_uml [2020/01/28 13:23] – [Videozusammenfassung] huwilight_hallo_uml [2023/07/17 15:13] (aktuell) – [Lösungsansatz] huwi
Zeile 1: Zeile 1:
 ====== Das erste Blinky ====== ====== Das erste Blinky ======
 +{{tag>BLINKY ANFANG LED}}
 So, dann frisch ans Werk. Die erste Übung mit der wahrscheinlich ungewohnten Umgebung soll das einfache Einschalten einer LED sein.\\ Der Sinn und Zweck von Klassenbibliotheken ist natürlich vor allen der, dass Dinge die öfters gebraucht werden oder typische Problemstellungen die einfach schon mal gelöst wurden, dem Anwender komfortabel zur Wiederverwendung zur Verfügung stehen.\\ Das werden wir nutzen. So, dann frisch ans Werk. Die erste Übung mit der wahrscheinlich ungewohnten Umgebung soll das einfache Einschalten einer LED sein.\\ Der Sinn und Zweck von Klassenbibliotheken ist natürlich vor allen der, dass Dinge die öfters gebraucht werden oder typische Problemstellungen die einfach schon mal gelöst wurden, dem Anwender komfortabel zur Wiederverwendung zur Verfügung stehen.\\ Das werden wir nutzen.
  
Zeile 10: Zeile 11:
 Falls Sie jetzt noch das vorherige Klassendiagramm geöffnet haben wählen Sie im Kontextmenü (rechte Maustaste) des Diagramms den Menüpunkt nach oben. Falls das Projekt nicht mehr geöffnet ist, öffnen sie das SiSy UML-Projekt wieder.  Falls Sie jetzt noch das vorherige Klassendiagramm geöffnet haben wählen Sie im Kontextmenü (rechte Maustaste) des Diagramms den Menüpunkt nach oben. Falls das Projekt nicht mehr geöffnet ist, öffnen sie das SiSy UML-Projekt wieder. 
   - Legen Sie ein neues Klassendiagramm an und    - Legen Sie ein neues Klassendiagramm an und 
-  - wählen Sie die Sprache //ARM C++//+  - wählen Sie die Sprache //ARM C + +//. 
   - Beachten Sie die Einstellungen für die Zielplattform //STM32F042 mySTM32 Board light HAL//   - Beachten Sie die Einstellungen für die Zielplattform //STM32F042 mySTM32 Board light HAL//
   - Beim Öffnen des Diagramms (rechte Maustaste, nach unten) laden Sie aus dem SiSy LibStore die Diagrammvorlage //Application Grundgerüst für PEC Anwendungen (XMC, STM32, AVR)//   - Beim Öffnen des Diagramms (rechte Maustaste, nach unten) laden Sie aus dem SiSy LibStore die Diagrammvorlage //Application Grundgerüst für PEC Anwendungen (XMC, STM32, AVR)//
Zeile 38: Zeile 39:
 Dazu nutzen wir in diesem Fall die UML-**Realisierung**. Dazu nutzen wir in diesem Fall die UML-**Realisierung**.
  
-{{::ledpecpinout.png?nolink&650|}}+{{::ledpecpinout.png?direct&650|}}
  
 Diese Darstellung lässt sich zur Verifikation sehr schön wie folgt lesen:\\ Diese Darstellung lässt sich zur Verifikation sehr schön wie folgt lesen:\\
Zeile 93: Zeile 94:
   * Das Attribut //statusLED// der Klasse Controller ist öffentlich   * Das Attribut //statusLED// der Klasse Controller ist öffentlich
  
-Die eigentliche Verhaltenslogik für das Blinken der LED notieren wir als C++ Code in der Operation //onWork()// der Klasse //Controller//. Um die LED blinken zu lassen schalten wir die LED zyklisch um (togglen). Damit das Auge dieses toggeln auch wahrnimmt bauen wir eine kleine Pause ein. Die Möglichkeiten die der Bibliotheksbaustein **PecPinOutput** bietet sehen Sie rechst angezeigt. Notieren Sie den folgenden Code in der Operation onWork:+Die eigentliche Verhaltenslogik für das Blinken der LED notieren wir als C + + Code in der Operation //onWork()// der Klasse //Controller//. Um die LED blinken zu lassen schalten wir die LED zyklisch um (togglen). Damit das Auge dieses toggeln auch wahrnimmt bauen wir eine kleine Pause ein. Die Möglichkeiten die der Bibliotheksbaustein **PecPinOutput** bietet sehen Sie rechst angezeigt. Notieren Sie den folgenden Code in der Operation onWork:
  
 {{ ::pecpinout.png?nolink&250|}}{{:stm32light:step7.png?direct&800|}} {{ ::pecpinout.png?nolink&250|}}{{:stm32light:step7.png?direct&800|}}
Zeile 124: Zeile 125:
  
 ====== Videozusammenfassung ====== ====== Videozusammenfassung ======
 +{{tag>Video}}
 Erlernte und gefestigte Arbeitsschritte: Erlernte und gefestigte Arbeitsschritte:
   - //Klassendiagramm// anlegen und öffnen   - //Klassendiagramm// anlegen und öffnen
Zeile 139: Zeile 141:
 [[https://youtu.be/xgvWU2bTGy4|oder die schnelle Version ohne Sprachkommentare]] [[https://youtu.be/xgvWU2bTGy4|oder die schnelle Version ohne Sprachkommentare]]
  
-====== Übung ======+====== Übung 1======
 Erweitern Sie zur Übung die Anwendung um eine weitere ErrorLED an Pin B1. Orientieren sie sich an den obigen Arbeitsschritten. Lassen Sie die ErrorLED im Gegentakt zur StatusLED blinken.  Erweitern Sie zur Übung die Anwendung um eine weitere ErrorLED an Pin B1. Orientieren sie sich an den obigen Arbeitsschritten. Lassen Sie die ErrorLED im Gegentakt zur StatusLED blinken. 
  
Zeile 145: Zeile 147:
   * [[mystm32_board_light_tutorial|zurück zur Übersicht]]   * [[mystm32_board_light_tutorial|zurück zur Übersicht]]
   * [[einfache Ein und Ausgaben mit dem mySTM32 light]]   * [[einfache Ein und Ausgaben mit dem mySTM32 light]]
 +
 +====== Suchbegriffe ======