summaryrefslogtreecommitdiff
path: root/Howtos/Arduino_Knowhow.mdwn
blob: b22dee0cf45ec651ed28d6fc0b34aa4305d0e3b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
## Fertige Module zum schnellen Testen

Mit den Arduino-Boards (und Konsorten) kann sofort eine Elektronik verdrahtet werden. Zum schnellen Testen und Rapid Prototyping bieten sich allerdings fertige Elektronikmodule an, die es inzwischen wie Sand am Meer gibt.

Auf der Seite [[Projekte/Elektronikmodule/]] werden einzelne Module von uns vorgestellt, mit Tipps dazu, was man beim jeweiligen Modul beachten sollte.

## Troubleshooting - Bugs

### Probleme mit avrdude und  µC ATMEL 328P

Falls avrdude den Atmel 328P wegen falscher Signatur ablehnt

    avrdude: Expected signature for ATMEGA328 is 1E 95 14

dann sollte in **/usr/share/arduino/hardware/tools/avrdude.conf** bzw. **/etc/avrdude.conf** folgendes hinzugefügt bzw. angepasst werden:

    part parent "m328"
        id                  = "m328p";
        desc                = "ATmega328P";
        signature           = 0x1e 0x95 0x0F;  #Achtung: unbedingt 0x0F und nicht 0x14 eintragen!
        ocdrev              = 1;
    ;

Auf den Besucherlaptops war dies falsch eingestellt. Zumindest Rechner Visitor 2 ist jetzt korrigiert.

Die Anleitung auf [[http://www.instructables.com/id/Bootload-an-ATmega328/step6/ATmega328-PU-workaround/]] ist nicht gut, weil sie die Signatur für alle 328er (ohne P) ändert - und diese dann nicht mehr programmiert werden können, es sei denn man ändert erneut von Hand...

Möglicherweise gilt das alles auch für den ATMEL 328PU. Falls nicht, einen neuen Abschnitt mit id "m329pu" erstellen und dort die neue Signatur anpassen. Möglicherweise ist diese identisch mit dem 328er?

    # this ist not verified, please check for yourself
    part parent "m328"
        id                  = "m328pu";
        desc                = "ATmega328PU";
        signature           = whateversig;  #insert real sig, e.g. 0x1e 0x95 0x14
        ocdrev              = 1;
    ;

## Entwicklungsumgebungen für Arduino (und andere Boards)

### Arduino IDE

Das Arduino IDE ist die Standardsoftware, wenn man in der Arduinowelt beginnen möchte. Sie ist aber teilweise spartanisch und könnte schicker sein. Mit ihr lassen sich allerdings die [[HelvePIC32|Projekte/HelvePIC32]]-Boards ebenfalls programmieren.

Unter Debian Linux kann es installiert werden mit:

    sudo apt-get install arduino

### UECIDE

Es handelt sich dabei um ein Integrierte Entwicklungsumgebung, mit der viele Microcontroller programmiert werden können. Darunter sind auch die gängigen Arduino-Boards und auch das [[HelvePIC32|Projekte/HelvePIC32]]-Board.

Im Gegensatz zum Arduino-IDE hat es einen besseren Editor und viele Funktionen integriert, die sonst mühesam von Hand hinzugefügt werden müssen.

Es gibt eine Windows, ein Mac und eine Linux-Version, die auf der Homepage [[http://uecide.org/download.html]] heruntergeladen werden können

### Installation unter Debian Linux

Mit dem Paket alleine ist es noch nicht lauffähig, Es wird Java benötigt:

    sudo apt-get install openjdk-7-jdk

Außerdem könnte es bei einer 64-bit Umgebung nötig sein, die 32-bit Libs mitzuinstallieren

    sudo dpkg --add-architecture i386
    sudo apt-get install libc6-i386 libstdc++6:i386 libgcc1:i386

Nachdem das System vorbereitet wurde, kann das Paket installiert werden mit:

    sudo dpkg -i /downloadpath/uecide-0.8.8alpha22-all.deb

Wenn keine Fehlermeldungen erscheinen, kann das Programm gestartet werden.

Danach können die gewünschten Plugins im Boards-Menü installiert werden. Nun steht der Programmierung nichts mehr im Wege.