Paso 4: Programación / código
#include
void setup()
{
Dirección I2C del ADC121C021, 0 x 50 interconectado con TA12-200
#define ADC_ADDR 0 x 50
A Bus I2c como maestro
Wire.Begin();
Iniciar la comunicación serial para la salida de consola serial
Serial.Begin(9600);
}
void loop()
{
La transmisión comienza con dada dispositivo I2C bus
Wire.beginTransmission(ADC_ADDR);
Resultado de conversión llamada registro, 0x00(0)
Wire.Write(0x00);
Delay(500);
Solicitud de 2 bytes
Wire.requestFrom (ADC_ADDR, 2);
Leer los bytes si están disponibles
if(Wire.Available() == 2)
{
int msb = Wire.read();
lsb de int = Wire.read();
Fin transmisión y lanzamiento bus I2C
Wire.endTransmission();
Calcular el valor
int rawADC = msb * 256 + lsb;
rawADC = rawADC & 0x0fff;
Salida a la pantalla
Serial.Print ("ADC valor:");
Serial.println(rawADC);
}
otra cosa
{
Serial.println ("no hay suficientes bytes disponibles en alambre.");
}
Delay(100);
}
///////////////////////////////////////////////////////////////////////////NOTE///////////////////////////////////////////////////////////////////////////////////////////////////
Estos valores son en mili amperios
También puede buscar el valor rms de la corriente de encontrar maxinmum lectura y dividirlo por 1.414