Willkommen beim SPiCboard!
==========================

Dieser Ordner beinhaltet neben der Bibliothek zum SPiCboard v3 im Verzeichnis

    libspicboard/

auch noch

- die Dokumentation, aufrufbar via

      documentation-spicboard.html

- den Java-SPiCboard3 Simulator, startbar mit

      spicsim.bat

- die Atmel Studio 7 Projektvorlage

      AtmelStudio7_Project_Template.zip

- sowie ein kurzes Beispiel mit einem Atmel Studio 7 Projekt im Ordner

      beispiel/

und ist als Zip-Archiv online auf
    https://www4.cs.fau.de/Lehre/current/V_SPIC/SPiCboard/libspicboard.zip
zu finden.


Ein kurzer Crashkurs fuer die Benutzung auf dem eigenen Rechner
---------------------------------------------------------------

### Linux

Hierfuer muss fuer den AVR eine C Standardbibliothek, ein Uebersetzer sowie ein 
Programm zur Uebertragung installiert sein.
Auf Debain-artigen Betriebssysteme geht das mit

    sudo apt install avr-libc gcc-avr avrdude

Anschliessend kann -- nach dem Entpacken der Libspicboard -- das beigefuegte
Beispielprogramm uebersetzt und uebertragen werden:

    cd libspicboard/beispiel/
    make

Gegebenfalls muessen noch Berechtigungen gesetzt werden, dies wird auf
    https://www4.cs.fau.de/Lehre/SS19/V_SPIC/SPiCboard/zuhause_linux.shtml
erklaert.


### Windows

Unter diesem Betriebssystem wird das Atmel Studio 7 benoetigt, welches ueber
    https://www.microchip.com/mplab/avr-support/atmel-studio-7
bezogen werden kann.

Bei der ersten Verwendung muss die Projektvorlage installiert werden:
Atmel Studio 7 starten und `File` - `Import` - `Project Template...` auswaehlen.
Im neuen Fenster bei `Select a project template` auf `...` klicken, in diesen
Ordner navigieren und die `AtmelStudio7_Project_Template` auswaehlen, anschliessend
auf `OK`. Es sollte eine Meldung

    Project Template has been successfully imported.

erscheinen.

Nun kann zukuenftig ueber `File` -> `New` -> `Project...` unsere Vorlage 

    SPiCboard Projekt

ausgewaehlt werden.

Der Name kann beliebig gewaehlt werden (wobei `aufgabe` und die jeweilige
Aufgabennummer durchaus sinnvoll ist).
Als `Location` sollte am Heimrechner das aktuelle Verzeichnis (oder einen
Unterordner) gewaehlt werden, da die Projekte i.d.R. die `libspicboard`
brauchen und diese im dann Verzeichnis gesucht werden.

Mit dem neuen Projekt wird auch eine `main.c` erstellt, welche bereits das
Grundgeruest vorgibt. Die Datei kann beliebig umbenannt werden (es empfiehlt
sich dazu den `Solution Explorer` ueber das Menue `View` einzublenden).

Im Ordner `beispiel` findet sich bereits ein Projekt mit einem (sehr kurzen)
Testprogramm, das auf der 7-Segement-Anzeige `ok` ausgibt.

Um ein Programm auf das SPiCboard zu uebertragen, muss es zuerst angeschlossen
werden (Windows installiert ggf. die Treiber, was einige Minuten dauern kann),
danach muss es noch im Atmel Studio als Ziel konfiguriert werden.
Hierzu werden die `Properties...` ueber das Menue `Project` aufgerufen (letzter
Menuepunkt), dann bei `Tool` in `Selected debugger/programmer` das SPiCboard mit
der Bezeichnung `mEDBG ATML252304...` ausgewaehlt (das Ende entspricht der
Seriennummer, die auch auf der Rueckseite des SPiCboards steht).
Die restlichen Optionen sollten nur von fortgeschrittenen Benutzern geaendert 
werden.

Sollte eine Fehlermeldung wie

    Failed to launch debug session with debugWIRE. This could be caused by reset
    line circuitry or disabled debugWIRE interface. Make sure that the reset
    line is free before continuing. Do you want to use SPI to enable the DWEN
    fuse?

erscheinen, du aber dein SPiCboard nicht mit Linux verwendet hast, so ist es
vermutlich die fehlende Konfiguration als Zielgeraet - einfach `No` auswaehlen
und wie zuvor beschrieben durchfuehren.

Weitere Informationen und Hilfen auf
    https://www4.cs.fau.de/Lehre/current/V_SPIC/SPiCboard/zuhause_win.shtml
