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...»)
Contenido
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
- [[]]