TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: headbreacker en 29 de Julio de 2006, 22:59:13

Título: compartir bus de datos!!!
Publicado por: headbreacker en 29 de Julio de 2006, 22:59:13
necesito que dos pic compartan un solo bus de datos de 8 bits que va hacia una tarjeta usb dlp245bm, ¿ Como puedo solucionar este problema sin crear algun corto circuito que pueda dañar el puerto de algun PIC? estoy utilizando un PIC18f452
Título: Re: compartir bus de datos!!!
Publicado por: Chaly29 en 30 de Julio de 2006, 06:25:00
Hola headbreacker, tienes dos maneras de encarar ese problema, una es colocando una resistencia por cada pin de cada micro, y la otra es sincronizando adecuadamente cada micro para asegurarte de que nunca ambos esten con sus salidas en baja impedancia, de esta forma mientras uno transmite, el otro debe permanecer sus salidas en alta impedancia (se las configura como entradas) entonces no tendras conflictos entre ellos.

Espero te sea de ayuda.

Un saludo.

Atte. CARLOS.
Título: Re: compartir bus de datos!!!
Publicado por: headbreacker en 30 de Julio de 2006, 11:38:44
muchas gracias!!!
Título: Re: compartir bus de datos!!!
Publicado por: patolinec en 30 de Julio de 2006, 18:14:05
Pues aunque un poco mas complicado puede ser una mejor solución, utilizar un director de trafico, puede este ser un PIC12f675 o un pequeño protocolo entre micro y micro para que entre ellos se pongan de acuerdo cual es el que va a trasmitir.

Sin embarga puede haber problemas si esque alguno de ellos tiene un pequeño problema de ruido y se resetea, desincronizando y poniendo en riesgo la trasmision, motivo por el cual tampoco pienso que la asignacion de tiempo exacto entre dos micros cada uno independiente funcione del todo bien.

Si se usa el 12f675, solo el podra dar el bus a uno u otro segun la necesidad ya que este solo deberia manejar la interrupcion externa de cada micro para avisar que puede empezar a usar el bus y esperar a que este termine de usarlo para asiganarle al otro.

Esa es mi propuesta yo aplico ese principio en un sistema de carro que usa un solo bus de 8bits para comunicar el tablero con la computador d a bordo, para que puedan funcionar simultamente sistemas de registro de datos y de revoluciones.

Suerte :mrgreen: