unir dos pic16f876 por i2c

hice un mounstruito, que es un bus en el que pincho targetas, la papi tienen un 876 y una rs232 para hablar con el pc, y controla todo el bus, que no es mas que lineas de alimentacion y todos los pines del 876.

ya tengo otra targeta con otro 876 que controla dos trafos que me dan hasta

1kv, la cosa ya funciona bastante bien, ahora queria controlar la tension de salida por soft, tenia pensao el i2c.

tambien tengo en mente colgar memorias 24c16, una tda4666 (8xdac i2c),

ya perdi una noche estudiando el tema, es mucho mi morro pero la verdad que no me apetece nada romperme la cabeza, ruego a alma caritativa y ociosa me pase programilla similar. el mejor que encontre esta en

formatting link

tengo unas dudas muy gordas sobre el tema:

1º ¿como distinguen el maestro y esclavo si manda dato o pregunta?

2º con una rs232 yo le pregunto algo al pic, lo piensa, y contesta, el pc espera la respuesta, pero con i2c el maestro cloquea y el esclavo debe responder a caballo del clock, ¿como sabe el maestro que le envio dato bueno?.

3º he visto que solo hay un unico registro de datos, ¿no es un coñazo?, ¿no deberia haber dos? (emisor y receptor).

4º repasando este foro he visto que hay bugs de hard ¿es cierto?, (me pase una semana con el puerto paralelo del 877 y termine haciendolo por soft, hay una bandera que no va).

para ablandar e incitar a la caridad invito a mi www.

formatting link

no os perdais esta de mi profe favorito.

formatting link

Reply to
baldo
Loading thread data ...

Hola, nosotros tenemos un par de robots que tienen dos 16F876 que se comunican por bus I2C,dentro de poco publicaremos el código y un programita para poder monitorizar de modo "transparente" los datos de un bus I2C a 100Khz

formatting link
también hay la pagina de Alejandro
formatting link
que esta MUY bien

baldo escribió:

Reply to
Joan

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.