diff --git a/control/src/README.md b/control/src/README.md index 0ce177d..f4b0b4a 100644 --- a/control/src/README.md +++ b/control/src/README.md @@ -13,10 +13,10 @@ ### 3. Die Firmware installieren (a) **cd "/tmp/b15f/firmware"** - + (b) Passen Sie in der Datei *Makefile* die Option "MCU = ..." an die MCU des vorliegenden Boards an (*atmega1284* und *atmega1284p* sind nicht identisch!) - + (c) **make** Wenn udev richtig konfiguriert wurde: @@ -31,6 +31,55 @@ (c) **sudo make install** -## Einführung +## Das CommandLineInterface (CLI) benutzen + (a) Öffnen Sie ein Terminal und maximieren Sie das Fenster + (b) Start des CLI erfolgt durch **b15fcli** + (c) Die Navigation erolgt durch <Tab>, die Pfeiltasten und <Enter> oder die Maus + (d) Mit <Strg + c> kann das Programm sofort verlassen werden + +## Eigene Programme mit B15F schreiben + +### Grundsätzliches Die wichtigste Klasse für die Steuerung des Board 15 ist [B15F](classB15F.html). -Dort befindet sich auch eine Übersicht der verfügbaren Befehle. +Dort befindet sich auch eine Übersicht der verfügbaren Befehle. + +### Beispiele +In dem Verzeichnis [b15f/control/examples](https://github.com/devfix/b15f/tree/master/control/examples) sind einige Beispiele für die Verwendung einzelner B15F Funktionen. +Zu jedem Beispiel gehört eine *main.cpp* mit dem Quellcode und eine *Makefile*-Datei. +Das Beispiel kann mit **make** kompiliert und mit **./main.elf** gestartet werden. + +### Den B15F Treiber verwenden +Benötigt wird der B15F-Header: +`#include ` +und der Header für die plottyfile-Generierung, falls mit Kennlinien gearbeitet werden soll: +`#include ` + +Für die Interaktion wird eine Referenz auf die aktuelle Treiberinstanz gespeichert: +`B15F& drv = B15F::getInstance();` +Falls noch keine existiert, wird automatisch eine erzeugt und Verbindung zum Board hergestellt. + +Ab jetzt können auf dem Object `drv` verschiedene Methoden angewand werden, siehe [B15F](classB15F.html). + +### Kennlinien mit plottyfile generieren +Die Beschreibung zu Plottyfile befindet sich [hier](classPlottyFile.html). +Nach dem Include von plottyfile kann ein neues Objekt erzeugt und konfiguriert werden: +```C++ +PlottyFile pf; +pf.setUnitX("V"); +pf.setUnitY("V"); +pf.setUnitPara("V"); +pf.setDescX("U_{OUT}"); +pf.setDescY("U_{IN}"); +pf.setDescPara(""); +pf.setRefX(5); +pf.setRefY(5); +pf.setParaFirstCurve(0); +pf.setParaStepWidth(0); +``` +Messpunkte können anschließend hinzugefügt werden. +Dabei gehören Punkte mit dem gleichen Index für `curve` (*uint8_t*) zur selben Kurve und erhalten durch Plotty automatisch die gleiche Farbe. +```C++ +pf.addDot(Dot(x, y, curve)); +``` +`x` und `y` sind *uint16_t*, also keine Gleitkommazahlen. +