fbpx

Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

Avisos
Vaciar todo

crash de PCF8574P (expansor de lineas) al controlar ULN2003

17 Respuestas
4 Usuarios
0 Reactions
5,569 Visitas
isotopo
Respuestas: 113
Topic starter
(@isotopo)
Estimable Member
Registrado: hace 18 años

Estoy usando un PCF8574P Remote 8-bit I/O expander for I2C-bus para controlar el driver para dos motores paso a paso ULN2003, con el fin de ahorrarme 6 pines.

El caso es que cuando hice la prueba funcionó bien, pero al usarlo en el circuito final, donde he soldado los dos zócalos a una placa agujereada, y ver que no funcionaba nada, saqué el PCF8574P para probarlo en la protoboard y comprobé que estaba como colgado o roto, porque las 8 líneas estaban siempre activadas.

Pero resulta que tenía otro, y tras comprobar en la protoboard que éste sí funcionaba, pensé que el anterior estaría estropeado. Así que tras revisar las conexiones decidí colocarlo y probarlo, y entonces...... crash, le pasó lo mismo.

Entonces ahora ya no sé qué hacer, aparte de que compraré un par de PCF más. ¿realmente se han roto o habrá algún modo de reiniciarlos?. ¿Y cómo puede ser que se rompa así?, ¿cómo podría verificarlo?, ¿le habrá pasado a alguien esto antes?...... También compraré otro par de ULN2003 aprovechando que son baratos, porque igual pudiera ser que fuera eso lo que estuviera mal ¿no?

Con diodos, podría asegurarme totalmente de que no me volverá a pasar, ¿verdad?. ¿Debería colocar uno en cada línea?, ¿o bastaría con un Zener de 12v a la entrada del ULN2003?, ¿qué tipo de diodos debería colocar para las líneas entre los dos controladores?, ¿ 1N4148 ?

Responder
16 respuestas
ranganok
Respuestas: 3875
(@ranganok)
Ardero
Registrado: hace 19 años

Yo tube un problema similar, casqué un latch D conectado a un ULN... La solución poner unas resistencias de limitación de corriente entre el Latch y el ULN.

S2

Ranganok Schahzaman

PD: de todas formas pon el esquema por si tienes algo más.

Responder
isotopo
Respuestas: 113
Topic starter
(@isotopo)
Estimable Member
Registrado: hace 18 años

Solucionado, era porque necesitaba las resistencias pullup, y las 3 líneas de direccionamiento conectadas a masa.

Pero ha valido la pena porque ha sido una buena lección, y es que aunque funcione en un primer momento puede no hacerlo en otra circunstancia. Es curioso el hecho de que dejasen de funcionarme justo después de conectarlas en el zócalo de la placa, que digo yo que en ese momento se quedarían en algún estado diferente por alguna razón, tal vez algún tipo de estado cuántico extraño... :P.

También es curioso que en el PCF8574, en las pruebas que he estado haciendo, no era necesario conectar los 3 pines de direccionamiento, y en cambio al sustituirlo por un PCF8574A, no servía el dejarlo así. Por tanto lo mejor será hacer lo correcto y olvidarme del tema. Así que ya sabéis niños.... seguid bien las especificaciones 😀

En cuanto a las protecciones no sé qué hacer, lo del las resistencias o diodos en las líneas entre integrados me viene fatal por cómo lo tengo montado, y no lo voy a hacer, pero colocar un diodo Zener en la patilla de los 12V no habría problema (que al parecer lo recomiendan por ahí), ¿sirve para algo?. De todos modos he comprado otro PCF, así que ahora tengo de repuesto por si se rompe de verdad.

Como siempre, mil gracias.

Responder
ranganok
Respuestas: 3875
(@ranganok)
Ardero
Registrado: hace 19 años

Supongo que el zener será para evitar picos de tensión en la línea de 12V que te afecten a la electrónica (si sólo es para eso ponle además en paralelo un condensador cerámico).

S2

Ranganok Schahzaman

Responder
isotopo
Respuestas: 113
Topic starter
(@isotopo)
Estimable Member
Registrado: hace 18 años

Me está volviendo loco ya esto....

Ahora resulta que el bus 0 del PCF8574P siempre da 1,5v, de forma que cuando se activa da 5v, mientras que los otros siete al activarlos dan 3,5v y cero al apagarlos, como debe ser. Lógicamente el motor que está controlado en los buses 0-3 está en descontrol permanente.

El bus 0 se trata del 4º pin, que va justo después de los 3 puertos de direccionamiento, los cuales tengo conectados a tierra. Si le desconecto la alimentación al integrado todos dan cero, y si desconecto el bus todos dan 5v, pero en estado normal de uso, ese bus se queda siempre con 1,5v adicionales.

🙁

Responder
ranganok
Respuestas: 3875
(@ranganok)
Ardero
Registrado: hace 19 años

A ver si va a estar tocado ese pin y te está fastidiando a los demás.

S2

Ranganok Schahzaman

Responder
Página 3 / 4
Compartir: