Direccionamiento I2C

Hola Queria utilizar el bus I2C para controlar esta placa http://www.superrobotica.com/S310180.htm controladora de servos

Por defecto tiene la direccion 0xC2, pero las librarias wire dicen que solo pueden direccionar hasta 127...

No puedo usar arduino para esto???

saludos

Si que puedes. Es cierto que el I2C sólo puede direccionar 127 dispositivos pero teniendo en cuenta que los 7 bits más altos es la dirección del dispositivo y el bit menos significativo es el que indica si es una escritura o lectura en el dispositivo. Con todo esto la dirección 0xC2 es en binario: 11000010. Como el bit menos significativo es un cero quiere decir que vas a escribir en el dispositivo. Si en vez de poner 0xC2 pones 0xC3, estarás leyendo del dispositivo. Espero que te sirva de ayuda. Más información en:

http://es.wikipedia.org/wiki/I%C2%B2C

Un saludo. Ray.

Humm... Entonces el error que tengo es otro...

Sabes si he de modificar twi.h o wire.h ???

Estoy con el decimilia....

define ATMEGA8

ifndef CPU_FREQ

define CPU_FREQ 16000000L

endif

ifndef TWI_FREQ

define TWI_FREQ 100000L

endif


un saludo y gracias por tu respuesta y valiosa informacion

Ya esta!

No tengo que usar el 0xC2 sino el (0xC2 >> 1) desplazado a la derecha un bit. Es decir he de poner un 0x61.

El hecho de escribir o leer no se controla a nivel de bit, sino a nivel de comando basta con Wire.requestFrom, para leer y Wire.beginTransmission para escribir

uf! que descanso...

un saludo