Autor Tema: max485 y max232 en un mismo pic como?  (Leído 8142 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado redep

  • PIC12
  • **
  • Mensajes: 75
max485 y max232 en un mismo pic como?
« en: 17 de Octubre de 2008, 16:34:10 »
Hola, estoy haciendo un proyecto en el cual una serie de variables cogidas por un pic son enviadas a traves de rs485 a un pic este las recoge, almacena y las vas mandando a un pc(rs232) mi problema llega en este segundo pic los pines de la usart deben ser los mismo para el max485 que para el 232 como puedo diferenciar entre las dos comunicaciones, perdonar mi ignoracia.


Hasta luego y gracias

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: max485 y max232 en un mismo pic como?
« Respuesta #1 en: 17 de Octubre de 2008, 17:07:40 »
Puedes usar una USART para el RS485 y otra para el RS232 para el PC, aunque podrias tambien declarar al PC como maestro en la RS485 y pedir directamente los datos desde ahi.

Saludos
El papel lo aguanta todo

jacrmr

  • Visitante
Re: max485 y max232 en un mismo pic como?
« Respuesta #2 en: 17 de Octubre de 2008, 17:19:22 »
Por lo que entiendo, el segundo PIC sólo tiene un puerto USART, es decir solo las terminales RX que viene de tu primer PIC (en RS485) y TX que va a la PC (en RS232). Si en el segundo PIC todo el tiempo estás solamente recibiendo con RS485, y todo el tiempo estás solamente transmitiendo con RS232, además de usar la misma velocidad en baudios para transmitir y recibir no le veo en donde está el problema. ¿para qué necesitas diferenciar las comunicaciones, o si puedes ser más específico en lo que intentas hacer?
Un saludo.

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5544
    • Picmania by Redraven
Re: max485 y max232 en un mismo pic como?
« Respuesta #3 en: 17 de Octubre de 2008, 17:40:09 »
Yo hice eso con una sola USART conmutando los pines TX-RX TTL de la USART del PIC con un CD4053.

« Última modificación: 17 de Octubre de 2008, 17:48:08 por RedPic »
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: max485 y max232 en un mismo pic como?
« Respuesta #4 en: 17 de Octubre de 2008, 23:16:08 »
muy interesante arreglo redpic, nos queda descifrarlo (al menos yo no lo entiendo a primera  :mrgreen: )
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: max485 y max232 en un mismo pic como?
« Respuesta #5 en: 17 de Octubre de 2008, 23:20:06 »
Hola.

Creo que es un multiplexor analogico
El papel lo aguanta todo

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: max485 y max232 en un mismo pic como?
« Respuesta #6 en: 18 de Octubre de 2008, 00:24:55 »
Si las condiciones siempre van a ser las mismas (recepción por RS485 y envío por RS232) no veo dónde estaría el problema de conectar el Rx del PIC al MAX485 y el Tx del PIC al MAX232, sin multiplexar nada.

Desconectado redep

  • PIC12
  • **
  • Mensajes: 75
Re: max485 y max232 en un mismo pic como?
« Respuesta #7 en: 20 de Octubre de 2008, 05:11:26 »
Perdon por responder tan tarde mis pic´s son el 18f4550, como habeis entendido el rs385 tan solo iria en una direccion pero por otro lado el el rs232 conectado al ordenador ademas de recibir datos del pic tambien podra mandar ordenes, como por ejemplo (resetear el reloj), pedir un volcado total de la memoria.Ya que no siempre estara conectado al ordenador.


gracias por las repuestas.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: max485 y max232 en un mismo pic como?
« Respuesta #8 en: 20 de Octubre de 2008, 06:33:07 »
En ese caso yo emularía una USART por software y no complicaría el hardware.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: max485 y max232 en un mismo pic como?
« Respuesta #9 en: 20 de Octubre de 2008, 09:47:56 »
En ese caso yo emularía una USART por software y no complicaría el hardware.

Coincido pero yo le agregaría además un control de flujo por hardware con las señales RTS y CTS o DSR/DTR.  El tema es que una usart por software, por lo general, no se implementan con timers e interrupciones y por ende, puede ocurrir que el PC quiera enviar algo y el PIC esté atendiendo otra cosa en ese momento (el RS485 u otra cosa). 

- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: max485 y max232 en un mismo pic como?
« Respuesta #10 en: 20 de Octubre de 2008, 12:00:49 »
El tema es que una usart por software, por lo general, no se implementan con timers e interrupciones y por ende, puede ocurrir que el PC quiera enviar algo y el PIC esté atendiendo otra cosa en ese momento (el RS485 u otra cosa). 

Se puede implementar la USART por soft sobre RB0 u otra interrupcion para el pin de Rx, y asi quedarian las dos USART (hard y soft) cpn interrupcion de recepcion.

Saludos
El papel lo aguanta todo

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: max485 y max232 en un mismo pic como?
« Respuesta #11 en: 21 de Octubre de 2008, 15:16:51 »
El tema es que una usart por software, por lo general, no se implementan con timers e interrupciones y por ende, puede ocurrir que el PC quiera enviar algo y el PIC esté atendiendo otra cosa en ese momento (el RS485 u otra cosa). 

Se puede implementar la USART por soft sobre RB0 u otra interrupcion para el pin de Rx, y asi quedarian las dos USART (hard y soft) cpn interrupcion de recepcion.

Saludos

No he dicho que no se pueda, por supuesto que hay formas, pero las usart por software implementadas en los compiladores no lo suelen hacerlo así, es más ni un timer siquiera usan.  Incluso una vez recibido ese evento de start, hay que saber qué hacer, y allí de nuevo a usar un timer, apagar la interrupción del pin (para que no se vuelva a activar) y un sinfin de cosas que se simplifican si no se hace uso de eso.

Además, ni bien recibes un byte, debes prestar atención estricta a la comunicación por ende dejar de lado el rs485 ya que el sucesivo envío de bytes te obliga a ello.

Por otra parte, si el pic está procesando información del rs485, que debiera hacer, cortar la comunicación con el rs485 para atender algo más urgente como la comunicación con la pc? y si no es así? deberá la pc esperar y al rato volver a intentar?

El punto es que la complejidad aumenta y el usar una señalización por hardware agiliza la operación, simplifica el software, evita lidiar con la prioridad, etc.

Dado el contexto me pareció mejor proponerle a redep algo así, no digo que sea una regla de oro.
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado redep

  • PIC12
  • **
  • Mensajes: 75
Re: max485 y max232 en un mismo pic como?
« Respuesta #12 en: 24 de Octubre de 2008, 12:53:43 »
Haber maunix, estoy comenzando con esto de las comunicaciones asi que lo que pasa es que en cuanto se complica un poco me pierdo, segun algunos de vosotros monitorizando RTS y CTS o DSR/DTR, que son como flags para detectar si hay una comunicacion en proceso o si se esta listo se podra lograr un trafico ordenado no?.

Perdon por mi ignorancia y gracias a todos de nuevo.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: max485 y max232 en un mismo pic como?
« Respuesta #13 en: 24 de Octubre de 2008, 21:19:21 »
Haber maunix, estoy comenzando con esto de las comunicaciones asi que lo que pasa es que en cuanto se complica un poco me pierdo, segun algunos de vosotros monitorizando RTS y CTS o DSR/DTR, que son como flags para detectar si hay una comunicacion en proceso o si se esta listo se podra lograr un trafico ordenado no?.

Si, sería eso.  Luego tu defines una ventana de tiempo por ejemplo, el pic hace sus cosas por el rs485 o donde sea, y a partir de ahi cuando está libre se queda por ejemplo 100 mseg con el pin de DSR encendido.  Si la pc lo lee (las pc son lentas para leer los puertos, si lo activas/desactivas en 10useg el puerto del pc es casi seguro que no lo leerá).

Entonces, al PC leer esa señal activada, responde con una señal similar (el DTR por ejemplo).  En ese caso el pic lo lee de inmediato y sabe que no debe volver a monitorear todo el resto sino que esperará (un tiempo prudencial) si viene algún nuevo comando de parte de la PC.

Espero se haya entendido.
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado redep

  • PIC12
  • **
  • Mensajes: 75
Re: max485 y max232 en un mismo pic como?
« Respuesta #14 en: 26 de Octubre de 2008, 21:07:27 »
gracias, si ha quedao entendido espero que a la hora de la practica no me atranque.


 

anything