Tutorial für Fortgeschrittene
In diesem Tutorial werden wir mit Meta Genius und EmStaMaG eine voll funktionale Embedded Software Applikation für das ATtiny 1607 Curiosity Nano Evaluation Kit entwickeln. Mit zwei Zustandsmaschinen und mehreren Units werden wir eine zyklische Temperatur-Messung realisieren und damit eine optische Übertemperatur-Anzeige steuern.
Ziel dieses Tutorials
Das Anfänger Tutorial war dazu gedacht, an einem möglichst einfachen Beispiel die grundlegende Bedienung von Meta Genius und dem Embedded Statemachine Generator EmStaMaG kennen zu lernen.
In diesem Tutorial geht es gleich ans Eingemachte. Anhand des ATtiny 1607 Curiosity Nano Evaluation Kits von Microchip soll eine Temperatur-Überwachung mit optischer Übertemperatur-Anzeige entwickelt werden.
Das Board ist für diese Anwendung ideal, denn es bringt alle erforderlichen Features mit:
- Onchip/Onboard Programmer/Debugger über USB
- Timer Modul für Zeitsteuerungen
- Interner Temperatur Sensor
- ADC Modul für Temperatur Messung
- Interne Referenzspannungsquelle für ADC
- User LED an GPIO
- Plug and Play mit Atmel Studio (kostenlose Entwicklungsumgebung)
Also nicht lange herumlöten, sondern nur anstecken und loslegen!
Softwaremäßig soll die Temperatur-Überwachung und Übertemperatur-Anzeige mit zwei Zustandsmaschinen realisiert werden. Eine Zustandsmaschine names AdcSm
ist für die zeitliche Steuerung der Temperaturmessung und die Auslösung der AD-Konvertierung verantwortlich. Dabei kommen vom ATtiny sowohl TIMER Modul, VREF Modul als auch ADC Modul zum Einsatz.
Die zweite Zustandsmaschine namens TempSm
realisiert die tatsächliche Temperatur-Überwachung und Übertemperatur-Anzeige. Mit dieser Zustandmaschine können wir sehr einfach und elegant eine Hysterese-Funktion realisieren und damit ein Flackern der Anzeige-LED im Temperatur-Übergangsbereich verhindern. Vom ATtiny wird hier die Ansteuerung der LED über einen GPIO verwendet.
Vorbereitungen
Falls Sie vorher noch nie mit Meta Genius und EmStaMaG gearbeitet haben, wäre es vorab empfehlenswert, das Anfänger Tutorial zu absolvieren. Dieses beinhaltet wichtige Informationen zur Bedienung von Meta Genius und EmStaMaG zur Modellierung und Generierung von Zustandsmaschinen.
Zur Durchführung dieses Tutorials benötigen Sie alle Tools aus dem Tutorial für Anfänger bzw. der Installationsanleitung.
Falls Sie den generierten Source Code tatsächlich compilieren und auf dem AtTiny Eval Board ausführen möchten, benötigen Sie noch das kostenlose:
Falls Sie nur Interesse an der Generierung der Zustandsmaschinen haben, können Sie den ersten Teil des Tutorials überspringen und gleich bei Teil 2 einsteigen.
Navigation
Adc Tutorial Gesamtübersicht
Adc Tutorial Teil 1 – Atmel Studio Projekt aufsetzen
Adc Tutorial Teil 2 – Zustandsmaschinen in Meta Genius modellieren und mit EmStaMaG generieren
AdcTutorial Teil 3 – Source Code integrieren und manuell vervollständigen