Arduino/usiamo scons su gentoo: differenze tra le versioni
(integrazione pagina) |
(sistemazione codice) |
||
| Riga 9: | Riga 9: | ||
<div style="background-color:#f1f1f1"> | <div style="background-color:#f1f1f1"> | ||
| − | + | <?xml version="1.0" encoding="UTF-8"?> | |
| − | + | ||
| − | <?xml version="1.0" encoding="UTF-8"?> | + | <repositories version="1.0"> |
| − | + | <repo priority="50" quality="experimental" status="unofficial"> | |
| − | <repositories version="1.0"> | + | <name>arduPn</name> |
| − | + | <description>piccoli ebuild personali</description> | |
| − | + | <homepage>http://cloc3.dyndns.org/arduPn</homepage> | |
| − | + | <owner> | |
| − | + | <email></email> | |
| − | + | <name></name> | |
| − | + | </owner> | |
| − | + | <source type="tar">http://www.cloc3.net/arduPn/arduPn.tar.bz2</source> | |
| − | + | </repo> | |
| − | + | </repositories> | |
| − | + | ||
| − | </repositories | + | |
| − | + | ||
</div> | </div> | ||
| Riga 31: | Riga 28: | ||
<div style="background-color:#f1f1f1"> | <div style="background-color:#f1f1f1"> | ||
| − | + | $ layman -f -a arduPN | |
| − | + | ||
| − | + | ||
</div> | </div> | ||
| Riga 41: | Riga 36: | ||
<div style="background-color:#f1f1f1"> | <div style="background-color:#f1f1f1"> | ||
| − | + | dev-python/pyserial | |
| − | + | dev-embedded/avrdude | |
| − | + | dev-embedded/arduino | |
| − | + | app-vim/arduino-syntax | |
| − | + | ||
| − | + | ||
</div> | </div> | ||
| Riga 61: | Riga 54: | ||
Nella cartella utente, aggiungiamo le righe seguenti righe: | Nella cartella utente, aggiungiamo le righe seguenti righe: | ||
| − | <div style="background-color:#f1f1f1" | + | <div style="background-color:#f1f1f1"> |
| − | export EXTRA_LIB="${HOME}/arduino/librerie" | + | export EXTRA_LIB="${HOME}/arduino/librerie" |
| − | export SKETCHBOOK_HOME="${HOME}/arduino" | + | export SKETCHBOOK_HOME="${HOME}/arduino" |
| − | + | </div> | |
Generiamo le cartelle di lavoro: | Generiamo le cartelle di lavoro: | ||
<div style="background-color:#f1f1f1"><code> | <div style="background-color:#f1f1f1"><code> | ||
| − | mkdir -p ${HOME}/arduino/librerie | + | $ mkdir -p ${HOME}/arduino/librerie |
| − | mkdir ${HOME}/arduino/lucciola | + | $ mkdir ${HOME}/arduino/lucciola |
| − | cd ${HOME}/arduino/lucciola | + | $ cd ${HOME}/arduino/lucciola |
| − | ln -s /usr/share/arduino/arscons/SConscruct ./ # vedi il readme in /usr/share/arduino/arscons/README.md.bz2 | + | $ ln -s /usr/share/arduino/arscons/SConscruct ./ # vedi il readme in /usr/share/arduino/arscons/README.md.bz2 |
| − | + | </div> | |
Per creare un file di test, utilizziamo il comando seguente: | Per creare un file di test, utilizziamo il comando seguente: | ||
| − | <div style="background-color:#f1f1f1" | + | <div style="background-color:#f1f1f1"> |
| − | + | $ cat >lucciola.ino <<EOF | |
| − | $ cat >lucciola.ino <<EOF | + | // This is just a mockup sketch for test scons works |
| − | // This is just a mockup sketch for test scons works | + | |
| − | + | #define PIN_LED 13 | |
| − | #define PIN_LED 13 | + | |
| − | + | void setup(void) | |
| − | void setup(void) | + | { |
| − | { | + | pinMode(PIN_LED, OUTPUT); |
| − | + | } | |
| − | } | + | |
| − | + | void loop(void) | |
| − | void loop(void) | + | { |
| − | { | + | digitalWrite(PIN_LED, HIGH); |
| − | + | Serial.println("Acceso"); | |
| − | + | delay(1000); | |
| − | + | digitalWrite(PIN_LED, LOW); | |
| − | + | Serial.println("Spento"); | |
| − | + | delay(1000); | |
| − | + | } | |
| − | } | + | EOF |
| − | EOF | + | </div> |
| − | + | ||
colleghiamo ora il nostro arduino alla connesione usb e inseriamo un led con il polo positivo sul pin 13 e il polo negativo a terra. | colleghiamo ora il nostro arduino alla connesione usb e inseriamo un led con il polo positivo sul pin 13 e il polo negativo a terra. | ||
| Riga 104: | Riga 96: | ||
digitiamo i comandi: | digitiamo i comandi: | ||
| − | <div style="background-color:#f1f1f1" | + | <div style="background-color:#f1f1f1"> |
| − | $ scons upload | + | $ scons upload |
| − | $ miniterm.py -b 115200 /dev/arduino | + | $ miniterm.py -b 115200 /dev/arduino |
| − | + | </div> | |
E Allegria!!! | E Allegria!!! | ||
Versione delle 16:41, 18 nov 2013
Per usare Arduino serve precompilare il software su un computer esterno, perché non è disponibile un compilatore integrato.
Da https://code.google.com/p/arduino si può ricavare un insieme di tool che comprende sia alcune librerie fondamentali, sia un'ide dedicato scritto in java. Forse, per un principiante, è meglio evitare l'ide e attrezzarsi in riga di comando.
Su gentoo, si può integrare questo overlay artigianale per installare scons.
Copiare il seguente file sul percorso: /etc/layman/overlays/arduPn.xml
(serve app-portage/layman )
<?xml version="1.0" encoding="UTF-8"?>
<repositories version="1.0">
<repo priority="50" quality="experimental" status="unofficial">
<name>arduPn</name>
<description>piccoli ebuild personali</description>
<homepage>http://cloc3.dyndns.org/arduPn</homepage>
<owner>
<email></email>
<name></name>
</owner>
<source type="tar">http://www.cloc3.net/arduPn/arduPn.tar.bz2</source>
</repo>
</repositories>
Aggiungere il repository con il seguente comando:
$ layman -f -a arduPN
Compilare con:
La compilazione dovrebbe integrare i seguenti pacchetti:
dev-python/pyserial dev-embedded/avrdude dev-embedded/arduino app-vim/arduino-syntax
Scegliere opportunamente le use flag utili per le proprie necessità ( ftdi, in particolare).
Modificare opportunamente il file /etc/env.d/11arduino se non si utilizza arduino UNO.
Integrare, se neccessario, un regola di udev nella cartella /etc/udev/rules.d sull'esempio del file /lib/udev/rules.d/99-arduino.rules
Aggiungere il proprio utente al gruppo uucp.
Cominciamo ora a testare l'installazione, come semplici utenti.
Inseriamo l'utente locale al gruppo uucp.</br> Nella cartella utente, aggiungiamo le righe seguenti righe:
export EXTRA_LIB="${HOME}/arduino/librerie"
export SKETCHBOOK_HOME="${HOME}/arduino"
Generiamo le cartelle di lavoro:
$ mkdir -p ${HOME}/arduino/librerie
$ mkdir ${HOME}/arduino/lucciola
$ cd ${HOME}/arduino/lucciola
$ ln -s /usr/share/arduino/arscons/SConscruct ./ # vedi il readme in /usr/share/arduino/arscons/README.md.bz2
</div>
Per creare un file di test, utilizziamo il comando seguente:
$ cat >lucciola.ino <<EOF
// This is just a mockup sketch for test scons works
#define PIN_LED 13
void setup(void)
{
pinMode(PIN_LED, OUTPUT);
}
void loop(void)
{
digitalWrite(PIN_LED, HIGH);
Serial.println("Acceso");
delay(1000);
digitalWrite(PIN_LED, LOW);
Serial.println("Spento");
delay(1000);
}
EOF
colleghiamo ora il nostro arduino alla connesione usb e inseriamo un led con il polo positivo sul pin 13 e il polo negativo a terra.
digitiamo i comandi:
$ scons upload
$ miniterm.py -b 115200 /dev/arduino
E Allegria!!!