original depuis l'IDE.
</note>
Cloner le projet
<code bash>
git clone https://github.com/AlanChatham/UnoJoy.git
cd UnoJoy
</code>
Le système se compose de 3 parties:
- outils ... e =====
Installer le paquet **dfu-programmer**
<code bash>
sudo apt install dfu-programmer
</code>
Activer le mode DFU((**D**evice **F**irmware **U**pdate
lé les paquets **python python-pip** et **git**
<code bash>
$ sudo pip install pyserial
</code>
Dans le répertoire de l'IDE Arduino, création de l'arborescence et clonage du dépôt:
<code bash>
$ cd hardware
$ mkdir espressif
$ cd espres... ://github.com/espressif/arduino-esp32.git esp32
</code>
<code bash>
$ cd esp32
$ git submodule update -
er la ligne de commande avec la valeur suivante:
<code>
${COMMAND} --cref -s -Os ${OUTPUT_FLAG}${OUTPUT_PREFIX}${OUTPUT} ${INPUTS} -lm ${FLAGS}
</code>
Feuille **AVR C++ Linker**->libraries
Dans la s... ine et observer les modifications dans les logs
<code bash>
yoann@hermes$ tail -f /var/log/messages
</code>
<file>
Apr 29 01:50:19 localhost kernel: [21128.
ps://www.arduino.cc/ et décompresser l'archive:
<code bash>
cd /tmp
wet "https://downloads.arduino.cc/a... .8.13-linux64.tar.xz --directory /opt/arduino/
</code>
L'utilisateur doit avoir le droit de lecture/éc... on ajoute l'utilisateur au groupe **dialout**:
<code bash>
sudo usermod --append --groups dialout my_user_name
</code>
===== Hello World =====
Lancer IDE et charger
) sauf si la charge consomme davantage de 40mA.
<code c>
void setup()
{
pinMode(broche2, OUTPUT);
digitalWrite(broche2, HIGH);
}
</code>
Si le port est configuré en sortie et qu'il est... 0 Kohm) intégrées à l'Atmega par configuration:
<code c>
pinMode(pin, INPUT); // définit la b... HIGH); // active la résistance de pullup
</code>
==== Remarques ====
Lorsque elle est activée,
eut être installé via le gestionnaire de paquets
<code bash>
$ sudo apt-get install eclipse-cdt
</code>
==== Installer/configurer AVR Plugin =====
=== Insta... liquer sur Next.
Cette bibliothèque contiendra le code stable distribué dans l'IDE Arduino, la case debu
nfigurer la gestion des interruptions externes.
<code c>
#define PIN_2 0
#define PIN_3 1
void traiteme... (PIN_2, traitementSurInterruption, RAISING);
}
</code>
Le troisième argument est une constante, le mod... * delay() qui permet de suspendre l’exécution de code pendant un temps donné
* milli() qui compte le
la plage 0-100°C
===== Montage =====
===== Code =====
<code>
// Le capteur LM35 doit etre connecté sur une
// entrée analogique, ici A0
const int CAPT... t);
Serial.println("C");
delay(1000);
}
</code>
A voir avec thermometre tarage et fonction de p
Sketch =====
Ci-dessous le programme complet.
<code c>
/*
Fun MOOC, Programmer un objet avec Ardui... té dans la boucle principale et la maintenance du code.
// Définition du type enuméré traffic_light pou... ur laisser le servo atteindre la position de consigne pos
}
break;
}
}
</code>
l'état de l'encodeur rotatif sur le port série.
<code c>
/*********************************************... current_counter = s.count();
isr_count++;
}
</code>
Le téléversement de ce code et quelques manipulations de l'encodeur rotatif retournent un affichage d
ter
bootloader
Quelque chose sur port série?
si code je le range ou il faut
ICSP: s'appuie sur le bu... bootloader mais pas que
Le bootloader intègre du code de configuration, mais on peut au aussi modifier
des valeurs sur le port serie en les formattant
<code c>
//Affiche de la variable var en binaire sur la... Serial.print("var=");
Serial.println(var, HEX);
</code>
Pour transmettre des valeurs binaires sur le p
ndant est indiqué ci dessous.
Croquis de test
<code>
// la LED est placée sur la broche PB0 de l'ATti... ); // wait for a second
}
</code>
Sélectionner la cible:
* Outils -> Type de