#include "SPI.h" // library spi
int CS=10; // la broche 10 pour la sélection de l'esclave
int Res; // Résulat de conversion A/N sur 12 bits
void setup()
{Serial.begin(9600);
SPI.begin();
pinMode(CS, OUTPUT); // CS en sortie
digitalWrite(CS, HIGH); // initialiser CS à 1
SPI.setBitOrder(MSBFIRST);
SPI.setClockDivider(SPI_CLOCK_DIV8);
SPI.setDataMode(SPI_MODE0);
}
int GetADCValue()
{ byte dataL, dataH;
int data;
digitalWrite(CS, LOW); // sélectionner le circuit
dataH = SPI.transfer(0); // lire l'octet haut
dataL = SPI.transfer(0); // lire l'octat bas
digitalWrite(CS, HIGH); // remettre CS à 1
data = (dataH<<8) + dataL; // Ajuster la donnée
data = (data >> 1)&0x0FFF;
return(data);
}
void loop(){
Res = GetADCValue(); // conversion A/N
Serial.println(Res); // envoie sur le port série
delay(1000);
}