Rutina de I2C para conectar 2 PICs

Hola. Estoy intentando conectar dos PICs por medio del bus I2C, pero me surgen varios problemas. El primero es que los cables del bus me dan una capacidad muy elevada, de 24nF, mientras que la máxima que salen en la gráfica de la página 21 de las especificaciones del bus es de 400 pF. Había pensado en conectar un condensador de 100pF en serie, pero no se muy bien donde conectarlo. Deduzco que por eso no consigo enviar ni recibir nada. De todas formas no estoy muy seguro de que mi rutina este bien, así que agradecería que si alguien ha conseguido comunicarlos, me mandara las rutinas del maestro y del esclavo.

Muchas gracias de antemano.

Reply to
Isra
Loading thread data ...

Yo lo he usado siempre como maestro, pero lo que sí es importante es poner resistencias de pull-up de unos 4k7 en las dos líneas (SDA y SCL).

--

Saludos de José Manuel García snipped-for-privacy@terra.es http://213.97.130.124

"Isra" escribió en el mensaje news:g2J2b.1572771$ snipped-for-privacy@telenews.teleline.es...

Había

De

Reply to
pepitof

Se me olvidaba, mírate esto, por si acaso:

formatting link

Habla de un error en el módulo I2C en módo slave. Lo mandan siempre con los samples, pero como yo no lo he usado en modo slave, ni lo he mirado.

--

Saludos de José Manuel García snipped-for-privacy@terra.es http://213.97.130.124

"Isra" escribió en el mensaje news:g2J2b.1572771$ snipped-for-privacy@telenews.teleline.es...

Había

De

Reply to
pepitof

Las resistencias las tengo bien, pero me sigue dando el problema de la capacidad demasiado elevada. Me di cuenta que el condensador no me valía ponerlo en serie, puesto que me haría de filtro. He probado separando los cables, pero sólo consigo pasar de 24 nF a 23.7 nF.

"pepitof" escribió en el mensaje news:bifuar$8icnf$ snipped-for-privacy@ID-165733.news.uni-berlin.de...

bien

Reply to
Isra

De todas formas me gustaría que me dijeras como has creado tu bus I2C, es decir, si has hecho algo especial, o simplemente has utilizado los dos cables, las resistencias y la alimentación.

Muchas gracias.

"pepitof" escribió en el mensaje news:bifuar$8icnf$ snipped-for-privacy@ID-165733.news.uni-berlin.de...

bien

Reply to
Isra

Pues no tiene nada raro. Es para comunicar un PIC16F876 con dos EEPROMs

24LC256 y un reloj en tiempo real DS1307. Las líneas SDA y SDL conectadas a las patillas SDA y SCL de los cuatro chips, y cada línea con una resistencia de 4k7 a +5V. También tengo un montaje parecido con un 18F252. Eso sí, la longitud de las pistas no pasa de 10cm. Ten en cuenta que el bus I2C no está pensado para grandes distancias, ni mucho menos, sino para comunicar chips en un mismo equipo (I2C = IIC = Inter Integrated Circuit). Tampoco sé qué capacidad habrá entre las líneas SDA y SCL en mi circuito, ni sé cómo lo habrás medido. Si lo mides funcionando la medida puede estar distorsionada por las tensiones que ponen los chips (aún estando en alta impedancia) y si lo mides sin alimentación la medida puede estar distorsionada por la electrónica en estado "flotante". Lo que puedo decirte es que no he tenido el menor problema con el hardware, y sí alguno con el software hasta conseguir que todo funcionara.

--

Saludos de José Manuel García snipped-for-privacy@terra.es http://213.97.130.124

"Isra" escribió en el mensaje news:W623b.1616001$ snipped-for-privacy@telenews.teleline.es...

poner

me

una

nada.

Reply to
pepitof

Hola, yo una vez me monté un adaptador de I2C al puerto paralelo, para loggear las comunicaciones entre integrados de una TV y para establecer datos manualmente. No tuve ningún problema, los cables del puerto paralelo al adaptador tenían 1 metro de largo y del adaptador al televisor 1 metro más y no había errores ni nada parecido. El adaptador era un circuito inversor con un 74LS05 y resistencias de 10K. Los cables nada en especial, cablecillos que tenía por ahí en la chatarra. Quizá prueba a acortar la longitud y usar cables más delgados, así puedes comprobar si el software funciona. Una vez que funcione así lo instalas en su sitio definitivo a ver qué pasa.

Isra expuso:

Reply to
Jeroni Paul

La longitud de los cables es pequeña, de unos 15cm como mucho. Son cables normalitos, finos. La capacidad la mido metiendo los dos cables en un polímetro que mida condensadores.

Seguiré probando. De todas formas, muchas gracias por vuestra ayuda.

"pepitof" escribió en el mensaje news:biimfo$9p1v9$ snipped-for-privacy@ID-165733.news.uni-berlin.de...

la

pF.

las

Reply to
Isra

Soy el compañero de Isra en el proyecto y me gustaría saber si nos puedes mandar el esquema de montaje de la alimentación del bus I2C a ver si es que el nuestro mete alguna capacidad extraña. Por cierto, la capacidad del bus se media entre una línea del bus y Vss aunque midiéndolo así la cosa no nos ha mejorado en absoluto.

"pepitof" escribió en el mensaje news:biimav$9t0p3$ snipped-for-privacy@ID-165733.news.uni-berlin.de...

a

resistencia

bus

ni

hardware,

es

la

pF.

las

Reply to
Albeto

Si me das un email válido te lo mando, pero vamos, que la alimentación no tiene nada de especial, un 7805 con un electrolítico de 1000uF a la salida y los típicos condensadores de desacoplo de 100nF muy cerquita de cada chip. No entiendo qué tiene que ver la alimentación (mientras proporcione 5V medio decentes) con el I2C, ni cómo demonios habéis medido la capacidad de los cables para que salgan esos valores en 15cm. Casi mejor patentais ese método de fabricación de condensadores. ;-)

No os comais mucho el coco con los cables, y pensad más bien en depurar el software, que seguro que por ahí van los tiros. Y si me aceptas un consejo, es mejor ir por partes. En vez de intentar comunicar dos PICs, empieza por comunicar un PIC con un dispositivo que tengas la seguridad de que funciona, como una EEPROM 24LCxx. Cuando ya domines la comunicación en ese caso, no tocas para nada el soft de ese PIC, pones otro PIC en lugar de la EEPROM y te dedicas a depurar el soft del segundo PIC.

--
Saludos de José Manuel García
jose.mgg@terra.es
http://213.97.130.124


"Albeto"  escribió en el mensaje
news:rtj3b.1645213$iM4.2548644@telenews.teleline.es...
> Soy el compañero de Isra en el proyecto y me gustaría saber si nos puedes
> mandar el esquema de montaje de la alimentación del bus I2C a ver si es
que
> el nuestro mete alguna capacidad extraña. Por cierto, la capacidad del bus
> se media entre una línea del bus y Vss aunque midiéndolo así la cosa no
nos
> ha mejorado en absoluto.
Reply to
pepitof

Creo que tienes razón. Voy a probar a comunicar el PIC con una memoria

24LC256 que tengo. De todas formas te agradecería que me mandaras alguna rutina de algo similar. Mandala si puedes a snipped-for-privacy@mixmail.com

Muchas gracias por todo, y siento ser tan pesado.

"pepitof" escribió en el mensaje news:bil6us$aa8be$ snipped-for-privacy@ID-165733.news.uni-berlin.de...

y

medio

consejo,

funciona,

puedes

bus

Reply to
Isra

Eso es "imposible". ¿ el otro extremo de los 2 cables, no estará conectado al circuito ? XDDDD

Revisa el programa, porque no está bien, y olvídate de esas historias de la capacidad. El bus I2C, no es tan estricto como puede serlo el CAN u otros, que precisan transceptores específicos, para adaptar las señales eléctricas, a unas normas muy concretas. I2C envia y recibe datos digitales, como puede hacerlo RS232, SPI etc..

Mejor que utilizar memorias I2C, utiliza algún chip que pueda darte una indicación visual, como el SAA1064, que es un decodificador de 4 displays de

7 segmentos. Tambien puedes usar un PCF8574A, que es un puerto de 8 bits, bidireccional. Si conectas en sus salidas unos LED, puedes comprobar facilmente el programa.

Saludos.

PD: sin relación con este post, pero ¿ me he equivocado de grupo o este es el grupo de "electricidad y flames" ?...... como está degenerando el ambiente, que pocas ganitas da de intervenir y/o leer. A ver si os calmais un poquito, que lo importante no es saberlo todo, sino participar y "conversar" distendidamente. Todos tenemos mucho que aprender y que enseñar...

Reply to
KT88

Ya te lo he mandado. Espero que te sirva.

--

Saludos de José Manuel García snipped-for-privacy@terra.es http://213.97.130.124

"Isra" escribió en el mensaje news:NUq3b.1659652$ snipped-for-privacy@telenews.teleline.es...

Reply to
pepitof

Mea culpa. Ya me callo. Pero que conste que los 127V... estoooo... que he dicho que me callo. :-))

PD. ¿Cómo sabías que poniéndolo en este hilo lo iba a leer? ;-))

--

Saludos de José Manuel García snipped-for-privacy@terra.es http://213.97.130.124

"KT88" escribió en el mensaje news:bilfm2$an6k2$ snipped-for-privacy@ID-107781.news.uni-berlin.de...

es

Reply to
pepitof

Pobres electricistas, los llevas mártires XDDD. Suerte tienes que Gaspar, no te ha presentado batalla, porque sois igual de duros de roer, aunque él es más "hippie".

PD: no tengo nada en contra de los electricistas, pero en los 7 años que he trabajado como responsable de informática de una fábrica, cada vez que los he llamado no he conseguido sacarlos mas allá de cortar y pelar cables. Con las ganas me quedé, de que me averigüasen porque 2 SAIS (en perfecto estado), se disparaban todos los Viernes como locos durante varias horas, sin que hubieran subidas o bajadas de tensión. Cuando les hablaba de colocar un osciloscopio o un analizador de red (eléctrica, no de ordenadores), para verificar la existencia de parásitos de RF, me miraban con cara de corderos degollados.

Reply to
KT88

Yo soy fanático de leer las etiquetas de composición de los alimentos. Cuando voy al Carrefour, nada va al carro, sin la correspondiente inspección ocular. Si lleva leche en polvo, grasa saturada o hidrogenada, no pasa la inspección. Solo me falta controlar los conservantes, colorantes y demás bazofia que les ponen.

Reply to
KT88

"KT88" escribió en el mensaje news:bim0rt$asc7n$ snipped-for-privacy@ID-107781.news.uni-berlin.de...

[...] Si lleva leche en polvo, grasa saturada o hidrogenada, no pasa la

colorantes y demás bazofia que les

Mejor no lo hagas, o tendrás que criar tus propios pollos y gorrinos y plantar tus lechugas (y las de los pollos y gorrinos, claro) o morirte de jambre.

Reply to
Franois

¿ehhh, ehh? Estaba un poco despistado con este hilo ¿Qué ha ocurrido?

Ja, ja, muy bueno, pero tú estás hablando de 'instaladores elctricistas'. Ese problema de USI se lo debería plantear el fabricante o a un ingeniero eléctrico. Un instalador no utiliza para nada ese tipo de analizadores de los que hablas, aunque puede que el nuevo reglamento diga algo al rrespecto de los armónicos. Porque los equipos informáticos, como sabes, con sus fuentes conmutadas, producen muchos armónicos -si no son de calidad-.

Eso más parece tema de Sherlock Holmes. ¿los viernes?

formatting link
Palma.

Reply to
GasparV

"GasparV" escribió en el mensaje news: snipped-for-privacy@news.mad.ttd.net...

Probablemente porque se conectaba algún equipo automatizado o de seguridad (que el resto de la semana estaba apagado) o porque las SAIs se alimentaban de un circuito que se apagaba completamente al cesar la actividad. Sólo es cuestión de revisar qué se encendía o apagaba en esos momentos.

Reply to
bat

Pues andamos listos, al final habrá que llamar a la NASA, para hacer cosas tan básicas, como verificar la pureza de la senoide en una red eléctrica.

Ya, ya pude comprobar, que lo suyo es cortar y pelar cables. Lo peor no es eso, sino que no te dicen "claramente" que no tienen ni puta idea. Te miran con cara de "mirlo" y tiran "para lante", a ver si suena la flauta por casualidad.

Dudo mucho, que un AS400 de 15 millones de pesetas generé armónicos, y además lo haga un día concreto de la semana. :=D

No, es bastante simple, y ya me pasó años atrás en otra empresa. En aquel caso, todas las tardes a partir de las 4, una pantalla empezaba a vibrar (la imagen). El "electricista" de la empresa, no consiguió averiguar nada (electricista de los de cortar y pelar, típico cincuentón que no da para más). Incluso al final hasta se permitió el lujo de decir que los informáticos estabamos chiflados, y que todo estaba correcto. Yo no trabajaba en plantilla en esa empresa, ellos eran clientes de la empresa donde yo trabajaba, y me encontraba conviertiendo todas sus aplicaciones de un S36 a un AS400. Vamos que aquella guerra no iba conmigo, pero como hice muy buena amistad con el jefe de informática, le ayudaba en todo lo que podía, aunque no tenía obligación alguna.

Me tocó traer mi osciloscopio, para verificar lo que ya sabía, a partir de las 4 en esa linea en concreto, aparecían interferencias de RF. Seguimos la linea para localizar todo lo que se conectaba a ella. Al final encontramos una máquina de la fábrica, que por error, la estaban conectado a esa red.

Saludos.

Reply to
KT88

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.