# Hardware User Interface The AVM Hardware User Interface, or in short hui, controls leds and buttons of a device. To do that, it provides a event store, led overlays, blink engines and led/buttons device drivers. [TOC] \todo Bitte dokumentiere hier die Schnittstelle. Eine textuelle Einführung ist sehr hilfreich, um dem Leser zunächst einen allgemeinen Überblick über die Projektschnittstelle zu geben. Insbesondere bei größeren Schnittstellen kann sie den logischen Aufbau der Schnittstelle auch sehr viel besser erklären als die Verzeichnisstruktur allein das abbilden kann. Zwar erstellt Doxygen auch automatisch verschiedene Listen, doch stößt jede Automatik hier schnell an ihre Grenzen. Mit einer guten Einführung hilfst Du vor allem Neueinsteigern, sich in Deinem Projekt zurecht zu finden: so können sie sich leicht selbst einarbeiten, und Du brauchst dieselben Fragen nicht wieder und wieder zu beantworten. # Markdown Tutorial {#markdown} ## Überschriften {#ueberschriften} \attention Enthält eine Markdown-Datei in der 1. Zeile eine Überschrift, verwendet Doxygen sie als Titel der Seite. \verbatim # H1 ## H2 ### H3 #### H4 \endverbatim **Ergebnis**

H1

H2

H3

H4

\note Damit eine Überschrift im Inhaltsverzeichnis angezeigt wird, muss ihr eine einzigartige doxygen-ID zugeordnet werden. Die ID beginnt mit einem Doppelkreuz ('#') und steht zwischen geschweiften Klammern: \verbatim # Überschrift {#id} \endverbatim ## Formatierung im Fließtext {#formatierung} \verbatim Text kann *kursiv* oder **fett** hervorgehoben werden. \endverbatim **Ergebnis** Text kann *kursiv* oder **fett** hervorgehoben werden. ## Listen {#listen} \verbatim 1. eine 2. nummerierte 3. Liste * oder ungeordnete Stichpunkte * Verschachtelte Listen sind erlaubt. * auch Kombinationen verschiedener Listen sind möglich 1. zum Beispiel so \endverbatim **Ergebnis** 1. eine 2. nummerierte 3. Liste * oder ungeordnete Stichpunkte * Verschachtelte Listen sind erlaubt. * auch Kombinationen verschiedener Listen sind möglich 1. zum Beispiel so ## Links {#links} \verbatim [AVM](https://www.avm.de) • [Ein interner Link wird mit \ref erstellt](\ref markdown) \endverbatim **Ergebnis** [AVM](https://www.avm.de) • [Ein interner Link wird mit \\ref erstellt](\ref markdown) ## Bilder {#bilder} \verbatim ![Beschreibung](doxygen.png) \endverbatim **Ergebnis** ![Beschreibung](doxygen.png) ## Code {#code} \verbatim Man kann `Quelltext` direkt in den Fließtext einbetten. \endverbatim **Ergebnis** Man kann `Quelltext` direkt in den Fließtext einbetten. - - - Code-Blöcke werden durch Zeilen mit mindestens 3 Tilde-Zeichen (~) umschlossen. Die Sprache kann in der ersten Zeile angegeben werden. \verbatim ~~~{.c} #include int main(int argc, char *argv[]) { return 0; } ~~~ \endverbatim **Ergebnis** ~~~{.c} #include int main(int argc, char *argv[]) { return 0; } ~~~ ## Tabellen {#tabellen} \verbatim Spalte 1 | Spalte 2 -------- | -------- Datum 1 | Datum 2 Datum 3 | Datum 4 \endverbatim **Ergebnis** Spalte 1 | Spalte 2 -------- | -------- Datum 1 | Datum 2 Datum 3 | Datum 4 ## Doxygen Kommandos {#kommandos} \verbatim \note Es ist möglich, Doxygen-Kommandos im Markdown aufzurufen. \endverbatim **Ergebnis** \note Es ist möglich, Doxygen-Kommandos im Markdown aufzurufen.