Installationsanleitung verbessert
This commit is contained in:
parent
d0bf0bc218
commit
ec650a35ef
|
@ -24,64 +24,63 @@ Außerdem wird eine Bibliothek (*b15fdrv*) installiert, die eine einfache Entwic
|
||||||
### Installation von Hand (falls Installationsscript mit Fehler abbricht)
|
### Installation von Hand (falls Installationsscript mit Fehler abbricht)
|
||||||
|
|
||||||
#### 1. Abhängigkeiten installieren
|
#### 1. Abhängigkeiten installieren
|
||||||
(a) **sudo apt-get update**
|
(a) APT-Pakete aktualisieren: **sudo apt-get update**
|
||||||
(b) **sudo apt-get install git avr-libc avrdude libncurses5-dev g++ astyle**
|
(b) Notwendige Pakete installieren bzw. aktualisieren: **sudo apt-get install git avr-libc avrdude libncurses5-dev g++ astyle**
|
||||||
|
|
||||||
#### 2. Das Repository klonen
|
#### 2. Das Repository klonen
|
||||||
(a) **cd /home/famulus/**
|
(a) Home-Verzeichnis betreten: **cd /home/famulus/**
|
||||||
(b) **git clone "https://github.com/devfix/b15f.git"**
|
(b) B15F-Repository klonen (herunterladen): **git clone "https://github.com/devfix/b15f.git"**
|
||||||
|
|
||||||
#### 3. Die Firmware installieren
|
#### 3. Die Firmware installieren
|
||||||
(a) **cd "/home/famulus/b15f/firmware"**
|
(a) Installations-Verzeichnis betreten: **cd "/home/famulus/b15f/firmware"**
|
||||||
|
(b) Passen Sie in der Datei *Makefile* (im aktuellen Verzeichnis) die Option "MCU = ..." an die MCU des vorliegenden Boards an.
|
||||||
(b) Passen Sie in der Datei *Makefile* die Option "MCU = ..." an die MCU des vorliegenden Boards an
|
**Achtung**: *atmega1284* und *atmega1284p* sind nicht identisch!
|
||||||
(*atmega1284* und *atmega1284p* sind nicht identisch!)
|
(c) Schreiben Sie (mit root-Rechten) Folgendes in die Datei "*/etc/udev/rules.d/60-olimex.rules*":
|
||||||
(c) Schreiben Sie Folgendes in die Datei (mit root-Rechten) `/etc/udev/rules.d/60-olimex.rules`:
|
|
||||||
`ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", MODE="660", GROUP="dialout"`
|
`ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", MODE="660", GROUP="dialout"`
|
||||||
|
Damit wird per udev-rule der Zugriff auf das ISP-Programmiergerät ohne root-Rechte erlaubt.
|
||||||
(d) **sudo udevadm control --reload-rules**
|
(d) Laden Sie die udev-Regeln neu ein: **sudo udevadm control --reload-rules**
|
||||||
(e) **sudo udevadm trigger**
|
(e) Stoße Verarbeitung der udev-Regeln an: **sudo udevadm trigger**
|
||||||
(f) Programmiergerät rausziehen, drei Sekunden warten, wieder hineinstecken
|
(f) Programmiergerät rausziehen, drei Sekunden warten, wieder hineinstecken
|
||||||
(g) **make**
|
(g) Kompiliere Firmware: **make**
|
||||||
(h) **make upload**
|
(h) Lade Firmware auf das B15: **make upload**
|
||||||
|
|
||||||
#### 4. Die Steuersoftware (Bibliothek & CLI) installieren
|
#### 4. Die Steuersoftware (Bibliothek & CLI) installieren
|
||||||
(a) **cd "/home/famulus/b15f/control/src"**
|
(a) Installations-Verzeichnis betreten: **cd "/home/famulus/b15f/control/src"**
|
||||||
(b) **make**
|
(b) Kompiliere Steuersoftware: **make**
|
||||||
(Die Warnungen durch doxygen können ignoriert werden.)
|
(c) Installiere die Bibliothek und CLI (global): **sudo make install**
|
||||||
|
|
||||||
(c) **sudo make install**
|
|
||||||
|
|
||||||
## Aktualisierung
|
## Aktualisierung
|
||||||
|
|
||||||
### Aktualisierung mit Installationsscript (empfohlen)
|
### Aktualisierung mit Installationsscript (empfohlen)
|
||||||
|
|
||||||
Wiederholen Sie den Schritt "Installation mit Installationsscript". Das Script erkennt die bereits installierte Version und aktualisiert diese.
|
Wiederholen Sie den Schritt "Installation mit Installationsscript". Das Script erkennt die bereits installierte Version und aktualisiert diese.
|
||||||
|
|
||||||
### Aktualisierung von Hand (falls Installationsscript mit Fehler abbricht)
|
### Aktualisierung von Hand (falls Installationsscript mit Fehler abbricht)
|
||||||
(a) **cd /home/famulus/b15f/**
|
(a) Installations-Verzeichnis betreten: **cd /home/famulus/b15f/**
|
||||||
(b) **git pull --prune**
|
(b) Neuste Software-Version vom GitHub-Server ziehen: **git pull && git pull --prune**
|
||||||
(c) **cd "/home/famulus/b15f/firmware"**
|
(c) Betrete Firmware-Verzeichnis: **cd "/home/famulus/b15f/firmware"**
|
||||||
(d) **make clean**
|
(d) Lösche altes Kompilat der Firmware: **make clean**
|
||||||
(e) **cd "/home/famulus/b15f/control/src"**
|
(e) Betrete Steuersoftware-Verzeichnis: **cd "/home/famulus/b15f/control/src"**
|
||||||
(f) **make clean**
|
(f) Lösche altes Kompilat der Steuersoftware: **make clean**
|
||||||
(g) "Installation von Hand" ab Schritt 3 durchführen
|
(g) "Installation von Hand" ab Schritt 3 (g) durchführen
|
||||||
|
|
||||||
## Die CommandLineInterface (CLI) benutzen
|
## Die CommandLineInterface (CLI) benutzen
|
||||||
(a) Öffnen Sie ein Terminal und maximieren Sie das Fenster
|
(a) Öffnen Sie ein Terminal und maximieren Sie das Fenster
|
||||||
(b) Start des CLI erfolgt durch **b15fcli**
|
(b) Start des CLI erfolgt durch den Befehl **b15fcli**
|
||||||
(c) Die Navigation erfolgt durch <Tab>, die Pfeiltasten und <Enter> oder die Maus
|
(c) Die Navigation erfolgt durch <Tab>, die Pfeiltasten und <Enter> oder die Maus
|
||||||
(d) Mit <Strg + c> kann das Programm sofort verlassen werden
|
(d) Mit <Strg + c> kann das Programm sofort verlassen werden
|
||||||
|
|
||||||
## Eigene Programme mit B15F schreiben
|
## Eigene Programme mit der B15F-Bibliothek schreiben
|
||||||
|
|
||||||
### Grundsätzliches
|
### Grundsätzliches
|
||||||
Verwendet wird die Bibliothekt *b15fdrv*.
|
Verwendet wird die Bibliothekt *b15fdrv*.
|
||||||
Die wichtigste Klasse für die Steuerung des Board 15 ist [B15F](https://devfix.github.io/b15f/html/classB15F.html).
|
Die wichtigste Klasse für die Steuerung des Board 15 ist [B15F](https://devfix.github.io/b15f/html/classB15F.html).
|
||||||
Dort befindet sich auch eine Übersicht der verfügbaren Befehle.
|
Dort befindet sich auch eine Übersicht der verfügbaren Befehle.
|
||||||
|
|
||||||
|
Hinweise zur Struktur (sind für die Verwendung nicht weiter wichtig):
|
||||||
|
Die Header-Dateien sind global unter */usr/include/b15f/* installiert. Die *b15fdrv*-Bibliothekt befindet sich in dem Verzeichnis */usr/lib/* und die ausführbaren Programme (plotty, b15fcli) */usr/bin/*.
|
||||||
|
|
||||||
### Beispiele
|
### 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.
|
In dem Verzeichnis [b15f/control/examples](https://github.com/devfix/b15f/tree/master/control/examples) (des Repositories) 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. Durch das Makefile wird beim Kompilieren und Linken die Bibliothek *b15fdrv* automatisch einbezogen.
|
Zu jedem Beispiel gehört eine *main.cpp* mit dem Quellcode und eine *Makefile*-Datei. Durch das Makefile wird beim Kompilieren und Linken die Bibliothek *b15fdrv* automatisch einbezogen.
|
||||||
Das Beispiel muss durch Sie also nur mit **make** kompiliert und mit .**/main.elf** gestartet werden.
|
Das Beispiel muss durch Sie also nur mit **make** kompiliert und mit .**/main.elf** gestartet werden.
|
||||||
|
|
||||||
|
@ -91,7 +90,7 @@ Benötigt wird der B15F-Header:
|
||||||
und der Header für die plottyfile-Generierung, falls mit Kennlinien gearbeitet werden soll:
|
und der Header für die plottyfile-Generierung, falls mit Kennlinien gearbeitet werden soll:
|
||||||
`#include <b15f/plottyfile.h>`
|
`#include <b15f/plottyfile.h>`
|
||||||
|
|
||||||
Für die Interaktion wird eine Referenz auf die aktuelle Treiberinstanz gespeichert:
|
Für die Interaktion wird eine Referenz auf die aktuelle Treiberinstanz benötigt:
|
||||||
`B15F& drv = B15F::getInstance();`
|
`B15F& drv = B15F::getInstance();`
|
||||||
Falls noch keine existiert, wird automatisch eine erzeugt und Verbindung zum Board hergestellt.
|
Falls noch keine existiert, wird automatisch eine erzeugt und Verbindung zum Board hergestellt.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue