Autor Tema: reconocimiento de dispositivos en I2C???  (Leído 4010 veces)

0 Usuarios y 4 Visitantes están viendo este tema.

Desconectado fidodido18

  • PIC18
  • ****
  • Mensajes: 312
Re: reconocimiento de dispositivos en I2C???
« Respuesta #15 en: 22 de Agosto de 2009, 15:59:34 »
Código: [Seleccionar]
#define sda_entrante()   TRISA |= 1
#define sda_saliente()   TRISA &= ~1
#define scl_entrante()   TRISA |= 2
#define scl_saliente()   TRISA &= ~2

para que utilizas esto??


Desconectado fabianjsm

  • PIC18
  • ****
  • Mensajes: 255
    • fabianjsm is on twitter
Re: reconocimiento de dispositivos en I2C???
« Respuesta #16 en: 23 de Agosto de 2009, 01:13:47 »
Esas macros definen la direccion de las señales.
Por ejemplo, despues de utilizar la macro 'sda_entrante()', la linea de datos queda configurada como 'de entrada', y podes leerla.
Lo unico que hacen es poner a uno o a cero el bit correspondiente del registro TRIS.
Como no se utiliza directamente los registros TRIS en ninguna funcion, si queres que SDA sea RB2 por ejemplo, solo tendrias que hacer estas modificaciones:
#define sda   RB2
#define sda_entrante()   TRISB |= 4  /* El cuatro sale de 1<<2 */
#define sda_saliente()   TRISB &= ~4
@fabianjsm is on twitter

Desconectado anfelgo

  • PIC10
  • *
  • Mensajes: 16
Re: reconocimiento de dispositivos en I2C???
« Respuesta #17 en: 24 de Agosto de 2009, 14:33:28 »
Muchas gracias fabianjm por el codigo. Los comentarios que agregaste hace que quede muy facil entenderlo.