Für Mikrocontrollerlösungen ist das Erfassen und die Verarbeitung analoger Daten oft essentiell. Mit den ADC-Klassen und Templates des PEC-Framework lassen sich eine Vielzahl von Aufgabenstellungen rings um den Analog-Digital-Converter mit wenigen Handgriffen erledigen. Das folgende Bild zeigt die Signatur des PecAdcSingle Templates.
Bevor wir beginnen benötigen wir ein neues Klassendiagramm. Dazu müssen Sie zurück in die oberste Ebene gehen (rechte Maustaste / nach oben oder einfach Taste ESC). Dort legen Sie ein neues Klassendiagramm an. Zur Erinnerung:
Wahrscheinlich sind die meisten einfachen Problemstellungen, bei denen ein Analogwert erfasst, verarbeitet und daraufhin etwas, was auch immer, getan werden soll, mit einer Auflösung von 8 Bit absolut hinreichend zu lösen. Somit soll im ersten Beispiel ein 8 Bit Wert erfasst und per UART an das Controlcenter gesendet werden. Der Charm dabei ist, dass 8 Bit Werte sich auch sehr reibungslos per UART übertragen lassen. Nun denn - der UML Entwurf:
Gehen Sie wie folgt vor:
Die so vorbereitete Systemstruktur muss jetzt nur noch mit dem gewünschten Verhalten ergänzt werden. Ergänzen Sie in der Operation onWork der Klasse Controller den folgenden Code:
Controller::onWork
uint8_t wert; wert=poti.getValue(); konsole.writeByte(wert); waitMs(100);
Zum Testen müssen wir ein analoges Eingabegerat an den Kanal 0 (Port C Bit 0) anschließen. Benutzen Sie dafür eines der Potentiometer auf dem myAVR Board.
Wenn wir die Zeile richtig eingegeben und das Modell korrekt erstellt haben können wir aus dem Klassendiagramm wie gehabt den Quellcode generieren, diesen übersetzen und auf den Controller übertragen. Das erfolgt über das Aktionsmenü in der Objektbibliothek. Wählen sie dort den Menüpunkt Erstellen, Brennen & Ausführen.
Patchen Sie das Potentiometer auf Port C Bit 0 (vgl. Bild). Starten Sie das ControlCenter und beachten die korrekten Einstellungen für den COM-Port. Nachdem Sie die Verbindung mit geöffnet haben stellen Sie die Ansicht auf „Oszi“ um. Sie können über die Optionen für die Oszi-Ansicht verschiedene Darstellungsvarianten auswählen. Nun können Sie jede Veränderung am Potentiometer auf dem Bildschirm verfolgen.