Autor Tema: Duda sobre conexión serial de pic con Receptor GPS!  (Leído 8725 veces)

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

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Duda sobre conexión serial de pic con Receptor GPS!
« en: 08 de Mayo de 2008, 17:26:53 »
Saludos gente todopic!  :-)
Tengo una pequeña duda que espero puedan ayudarme a aclarar...
Estoy trabajando con un módulo Recpetor GPS Earthmate de la marca Delorme, la idea es comunicarlo por el pic via serial.
Lo he probado con la pc y funciona de lo lindo, el modulo envia constantemente los datos usando sentencias NMEA.
No obstante, intenté hacer un programa que recibiera esos datos serialmente (o sea conectando el modulo gps al pic) y no funciona.
Pensé inicialmente que era el programa... pero luego comencé a dudar del circuito, y veo que hay un problema.
Verán, cuando conecto el módulo a la PC, la conexión es a través de los 9 pines que posee el db9 (como ya mencioné, la transmisión es serial).
Ahora bien, entiendo que el pin 5 del db9 es GND, y el 2 es el que transmite la información, y ese es el que tengo conectado al pin Rx del pic... el detalle es que... cuando sólo conecto el GPS por el canal 2 y 5 al PC, no envia nada!  :shock:
Así que supongo que alguno de los otros pines del db9 es necesario para que la transmisión pueda tener lugar... pero, cuál de ellos?  :? Como diría cantinflas... ahí está el detalle!  :D
No conozco muy bien la interfaz serial completa (es decir, para que es cada pin)... yo siempre uso solo el 2 y el 5 cuando envio información a la PC, y el 3 cuando recibo... y sé que funciona así entre pics y pc... pero no sé qué hacer en este caso...
Les adjunto el archivo de lo que tengo ahora...
La figura que verán arriba es la conexión que si funciona (con todos los pines del db9 conectados).
La segunda conexión es la que no funciona ni siquiera entre GPS-PC
Y lo de abajo es el circuito que tengo montado para comunicar el modulo receptor GPS con el pic... que por cierto, no lo he dicho, es el 16F877.
Ok de antemano gracias por la ayuda que puedan darme.
Nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #1 en: 08 de Mayo de 2008, 19:46:38 »
Hola, fijate en el data sheet del GPS, pero a mi entender debes conectar al menos una de las lineas de protocolo que pueden ser DSR o CTS del lado del GPS, en la web hay mucha info de cual pata de un DB9 es cada una. La cosa seria asi, el GPS necesita saber si hay algo conectado del otro lado, o lo haces con alguna salida de las que te quedan vacias del MAX o directamente simulas un NULL-Modem.
Saludos !

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #2 en: 08 de Mayo de 2008, 22:59:20 »
Saludos!
Gracias por tu respuesta amigo Richi, es que resulta no tengo la datasheet  :shock:
Verás, ese modulo gps me lo prestó un amigo mío y no lo he visto más para pedirle la ds...
He buscado en internet pero no he conseguido nada, ni siquiera en la propia página de DeLorme hay información, pues toda la info que hay es sobre modulos más recientes...
Justo ahora estoy tratando de descargar un manual que conseguí en eMule, pero ya tiene un tiempo y sigue en estado de "espera"  :(

Estuve averiguando en internet eso que dices del NULL-Modem, en realidad no sé casi nada de eso porque como te dije no sé mucho de informática salvo lo que como aficionado he aprendido, pero según lo que ví en unas páginas por allí, es esto a lo que te refieres?:



Porque si es eso, ya lo tengo, mi amigo me lo dió y ya traía eso conectado al db9 del modulo gps... no sabía para qué era  :?
Y aun así no funciona...

Ahora bien, en cuanto a esos pines que me mencionas DSR y CTS...
Ví en esa página de wikipedia que DSR es "Data Set Ready"... y CTS "Clear To Send"... será que tengo que conectarlos a +5V? o a GND? Bueno voy a probar a ver... pero antes solo una pregunta más, antes de "probar a ver": no hay riesgo de dañar el modulo ni nada por el estilo si le coloco un nivel incorrecto de tensión (0 o +5voltios)?

Ok de nuevo agradezco de antemano la ayuda...
Bueno, pues como siempre... nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #3 en: 08 de Mayo de 2008, 23:40:06 »
Hola, bueno voy a tratar de ayudarte....El tema es asi, ademas de las 2 lineas de TX y RX, tambien se usan las lineas de protocolo que pueden ser DTR-DSR o RTS-CTS, en el par una es salida y la otra es entrada, la idea de esto es saber desde cada lado si esta en linea o no. Cuando el equipo enciende y esta listo coloca normalmente las lineas RTS o DTR ( salidas ) en estado activo ( 0 logico ) y ademas cuando tiene que transmitir sensa la lineas DSR o CTS, que son entradas, a ver si son activas para transmitir. La idea del NULL-MODEM es cablear la linea DSR-DTR o RTS-CTS entre si, para que el dispositivo RS-232 crea que del otro lado este activo para iniciar la comunicacion.
En tu caso deberias disponer de un port del micro como salida atravez del Max y conectarlo a las linea 7 ( RTS ) o la linea 4 ( DTR ) y colocarla en estado bajo, con eso el GPS deberia empezar a transmitir.
Por otro lado deberias disponer de otro port del micro pero como entrada y atravez del Max, deberias conectarlo a la linea 6 ( DSR ) o a la linea 8 ( CTS ), en este caso antes de transmitor al GPS deberias checkear el estado de ese port, si esta en bajo, significa que el GPS puede recibir datos en caso contrario debes esperar.
Saludos !

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #4 en: 09 de Mayo de 2008, 00:21:45 »
Ey Richi, nuevamente gracias!  :-/
Tus explicaciones me han aclarado bastante mis agujeros negros  :D
Voy a intentar hacer lo que me dices...
Y luego te mencionaré los resultados. De nuevo gracias por tu tiempo.
Recibe un cordial saludo.
Nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #5 en: 12 de Mayo de 2008, 23:41:31 »
Saludos!  :-)

Amigo Richi quería agradecerte toda tu ayuda... gracias a tus explicaciones pude resolver el problema...
En efecto, para el Earthmate Receiver de DeLorme (por si alguien usa este mismo modulo gps y se le presenta un problema parecido), se debe conectar el pin 4 del DB9 a +5 Voltios para que el módulo comience a enviar los datos usando las sentencias NMEA.

Ahora que he resuelto el problema de hardward, viene lo del software.. a programar se ha dicho!
Nuevamente gracias Richi!  :P

Nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #6 en: 13 de Mayo de 2008, 13:40:18 »
Buenisimo !!! me alegra mucho que lo hayas hecho andar, con respecto a ese nivel que colocaste esta bien ya que los drivers RS232 tipo Maxim son inversores. Pero tene en cuenta algo, de la manera que lo conectaste nunca podrias indicarle al GPS que temporariamente no podes recibir datos ya que la linea esta forzada siempre On-Line, si te sobran pins yo le colocaria las lineas correspondientes.
Saludos !

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #7 en: 13 de Mayo de 2008, 13:57:17 »
Tienes razón Richi!  :-/

De hecho cuando dije:
se debe conectar el pin 4 del DB9 a +5 Voltios para que el módulo comience a enviar los datos usando las sentencias NMEA.

Quise decir que ese era el nivel necesario, pero no pienso conectarlo directo a la alimentación, sino como tú dices, a uno de los pines del pic, y que sea el micro que provea los +5V cuando necesite que el gps envíe los datos, de lo contrario colocar un nivel bajo para que el modulo gps no envie nada...
Eso alargaría la vida de las baterías también no?  :P

Nuevamente gracias Richi, nos leemos!
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #8 en: 13 de Mayo de 2008, 14:24:57 »
Hola, con el tema del consumo nose, no soy un experto en la materia, y por lo demas mucha suerte !!!
Saludos !

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #9 en: 15 de Mayo de 2008, 00:00:50 »
Saludos!
Amigo Richi intenté hacer lo que me mencionaste, sobre conectar el DTR a un pin del pic para así tener más control sobre el módulo GPS... en este caso lo estoy conectando a un pin del portc, el RC1 (aunque he probado también en otros pines del portc y es lo mismo  :shock: )...
Fíjate lo que me pasa... cuando hago la instrucción "output_high (pin_c1)"... compila y todo genial... pero luego lo grabo en el pic  y lo demás del programa lo hace bien menos poner en alto ese pin... siempre se mantiene en bajo... por lo tanto, el GPS no envía nada... sólo cuando coloco directamente el DTR a la alimentación comienza el envío y funciona de lo lindo (gracias a tu ayuda Richi  :P )... del GPS al pic, y del pic a la PC (claro no es lo que debe hacer, pero es por ahora para probar  :D )...
Qué podrá estar pasando?  :?
Dejo el código a ver si tú Richi, u otra alma caritativa de este foro que lea esto pueda ayudarme...

Código: C
  1. //////////////////////////////////////
  2. // Recibe del gps y envia al pc //
  3. //////////////////////////////////////
  4.  
  5. #include <16f876A.h>
  6. #fuses HS,NOWDT,NOPROTECT,NOLVP,PUT,NOBROWNOUT
  7. #define led PIN_C5
  8. #define Tx  PIN_C6
  9. #define Rx  PIN_C7
  10. #define Rg  PIN_C0
  11. #define DTR PIN_C1
  12. #use delay (CLOCK=20000000)
  13. #use rs232 (STREAM=GPS,BAUD=4800,RCV=Rg)
  14. #use rs232 (STREAM=PC,BAUD=19200,XMIT=Tx,RCV=Rx)
  15. #use fast_io(A)
  16. #use fast_io(B)
  17. #use fast_io(C)
  18.  
  19. void main(void)
  20. {
  21.    char caracter;
  22.    setup_ccp1(CCP_OFF);
  23.    set_tris_a(0b11111111);
  24.    set_tris_b(0b11111111);
  25.    set_tris_c(0b10000001);
  26.    fputs("=====RECIBIDO DEL GPS=====",PC);
  27.    output_high(DTR);
  28.    while(TRUE)
  29.    {
  30.       caracter=fgetc(GPS);
  31.       fputc(caracter,PC);
  32.    }
  33. }

Ok de antemano muchas gracias por todo!
Nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #10 en: 15 de Mayo de 2008, 14:03:52 »
Hola FirePic lamentablemente con la programacion PIC no te pudeo dar una mano porque no los conozco, pero sobra gente en el foro que si...Con respecto a la conexión de la linea DTR del GPS, la haces directamente o atravez de uno de los drivers del MAX-232 ?
Saludos !

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #11 en: 15 de Mayo de 2008, 16:27:41 »
Saludos, gracias por tu respuesta!
Amigo Richi, no creo que el problema sea el código, lo puse para más detalles... o si alguien quería verlo...
El problema creo estar seguro que es de hard... la DTR del gps la estoy conectando directamente al PIC... lo hice así porque cuando la conecto a la PC y mido el nivel que debe tener para que envíe, mido unos +4 o +4.5 voltios, así que pensé que con el nivel alto del pic debía funcionar perfecto, pero no!  :shock:
Lo más interesante es que cuando coloco directamente a +5V de la alimentación de mi circuito (la misma alimentación del pic) me funciona de lo lindo...
Eso es lo que no entiendo, será que el puerto C del pic tiene alguna configuración especial que no permite usarla directamente con la interfaz serial del modulo GPS?  :?
Bueno si tienes idea me avisas, si no también para abrir un hilo en el subforo de todo en microcontroladores pic, creo que allí estaría mejor el tema...
Ok nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #12 en: 15 de Mayo de 2008, 16:45:43 »
Hola, ahi esta el problema, si al GPS lo conectas directamente a la PC es porque trabaja con niveles RS-232 donde un 0 logico es -15v y un 1 logico es +15V ( con las debidas tolerancias ), entonces para simular el mismo comportamiento con el PIC debes intercalarle un MAX232, que convierte niveles logicos TTL ( 0-5v ) a RS232, si lo haces directamente posiblemente no funcione.
Saludos !

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #13 en: 15 de Mayo de 2008, 17:00:59 »
Pero entonces por qué funciona cuando conecto DTR a los +5V de la alimentación (nivel TTL) ?  :shock:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Duda sobre conexión serial de pic con Receptor GPS!
« Respuesta #14 en: 15 de Mayo de 2008, 18:14:21 »
Pregunta, colocas algun tipo de adaptador entre la PC y el GPS ? o simplemente le sacas el cable de la PC y lo conectas al PIC ? Si te funciona asi puede ser porque justo caes dentro de las tolerancias...
Saludos !