Wire

De ArduWiki
Revisión del 16:57 18 jun 2018 de Kike GL (Discusión | contribuciones) (Página creada con «== Descripción == Esta biblioteca le permite comunicarse con dispositivos I2C. Usa dos lines: SDA (línea de datos) y SCL (línea de reloj). == Placas aplicables == {| cl...»)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Descripción

Esta biblioteca le permite comunicarse con dispositivos I2C. Usa dos lines: SDA (línea de datos) y SCL (línea de reloj).

Placas aplicables

!Arduino Pin SDA Pin SCL
UNO, Ethernet A4 (SDA) A5 (SCL)
Mega2560 20 (SDA) 21 (SCL)
Leonardo 2 (SDA) 3 (SCL)
Debido 20 (SDA) 21 (SCL), SDA1 , SCL1

Sintaxis


Métodos

Wirebegin()
Inicie la libreria Wire y únase al bus I2C como maestro o esclavo. Esto normalmente debería llamarse solo una vez.
Wire.beginTrasnmission()
Comience una transmisión al dispositivo esclavo I2C con la dirección dada. Posteriormente, coloque los bytes de cola para la transmisión con la función write() y transmítalos llamando a endTransmission().
Wire.read()
Wire.write()
Wire.send()
Envía datos de un dispositivo esclavo en respuesta a una solicitud de un maestro, o pone en cola los bytes para la transmisión de un dispositivo maestro a esclavo.
Wire.end()

Ejemplo

#include <Wire.h> 
byte valor = 0 ; 

void setup () {
   Wire.begin();       //unirse al bus i2c (dirección opcional para el maestro) 
} 

void loop ( ) {
   Wire.beginTransmission(44); //transmitir al dispositivo N° 44 (0x2c) 
   //la dirección del dispositivo se especifica en la hoja de datos
   Cableado.write(byte (0x00));// envía un byte de instrucción
   Wire.write(valor);          //envía el valor del potenciómetro Byte
   Wire.endTransmission();     //deja de transmitir
   val ++;                     //incrementa el valor 
   if (valor == 64){             //si se alcanza la posición 64 (max)
      valor = 0 ;                 //comienza desde el valor más bajo 
   } 
   delay(500) ; 
}

Vea también

  • [[]]

Referencias externas