17.2.2 Conversion digitale analogique
#include <Wire.h>
byte valeur
= 0;
void
setup()
{
Wire.setSDA(16);
Wire.setSCL(17);
Wire.begin();
Wire.setClock(10000);
// Serial a 9600 bauds et attente d'initialisation
Serial.begin(9600);
while
(!Serial);
}
void
loop()
{
// Ecriture dans le convertisseur digital analogique
Wire.beginTransmission(0x48);
Wire.write(0x40);
Wire.write(valeur);
Wire.endTransmission();
// Affiche la valeur
Serial.println(valeur);
// Incrémente la valeur (sur un byte, passe de 0 a 255 puis repasse a 0)
valeur++;
// Tempo
delay(10);
}
Le programme affichera des valeurs entre 0 et 255 et la LED orange du convertisseur s'allumera
cycliquement de plus en plus fort toutes les 2.56 secondes.
Pour que le circuit soit autonome et fonctionne dès le branchement, il faut supprimer les instructions
« Serial »
//include Wire.h library