Autor Tema: No puedo MANDAR mensajes desde modulo gprs  (Leído 8214 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #45 en: 27 de Mayo de 2016, 19:17:30 »
me podrías decir que cosas tienes conectado a cada pin del micro?

sds.
el micro tiene conectado un pulsador a vss en a5 y de los pines de uart del micro sale al sis 900 rx con tx y viceversa, las masas las uni la vss del micro con gnd de  sis

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #46 en: 27 de Mayo de 2016, 19:19:52 »
El archivo del 16f88.h es el que viene por defecto en el compilador

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #47 en: 27 de Mayo de 2016, 22:02:25 »
Tenés los led conectados en B0 y B1?
Que pin es RX del micro y que pin TX en el micro?
-
Leonardo Garberoglio

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #48 en: 28 de Mayo de 2016, 09:46:16 »
Tengo conectado 2 leds a rb0 y rb1, los pines del micro son rb2 rx y rb5 tx, no hay duda de que esta funcionando la uart porque si le conecto el adaptador al uC este me tira el comando AT que esta programado

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #49 en: 28 de Mayo de 2016, 11:44:20 »
Vamos por parte dijo Jack...

Proba esto:

Código: C
  1. #include <16F88.h>
  2. #FUSES NOWDT                    //No Watch Dog Timer
  3. #FUSES INTRC                    //Internal RC Osc
  4. #FUSES PUT                      //Power Up Timer
  5. #FUSES PROTECT                  //Code protected from reads
  6. #FUSES NOBROWNOUT               //No brownout reset
  7. #FUSES NOMCLR                   //Master Clear pin used for I/O
  8. #FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
  9. #FUSES NOCPD                    //No EE protection
  10. #byte PORTA=0X05
  11.  
  12. #use delay(int=4000000,RESTART_WDT)
  13. #use rs232(uart1, baud=9600)//usart1 -->ajuste de XMIT y RCV para la USART 1
  14.  
  15. int i=0;
  16. char Cadena[60]="";
  17. char ch;
  18.  
  19. #int_rda
  20. void rd_isr(void)//función de interrupción por recepción de datos USART
  21. {
  22.         ch=getc();
  23.         Cadena[i]=ch;
  24.         output_toggle(PIN_B0);
  25.         i++;
  26.         if(i>60)
  27.                 i=0;
  28. }
  29.  
  30. void main()
  31. {
  32.         setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
  33.         setup_timer_1 ( T1_INTERNAL | T1_DIV_BY_4 );
  34.         setup_timer_2(T2_DISABLED,0,1);
  35.         setup_ccp1(CCP_OFF);
  36.         setup_comparator(NC_NC_NC_NC);
  37.         set_tris_b(0b11011100);    //RB0 y 1 como salida para LED. RB5 como salida para Tx
  38.         set_tris_a(0x20);               //porta como Entrada
  39.         enable_interrupts(int_rda);
  40.         enable_interrupts(GLOBAL);   //activadas interrupciones
  41.        
  42.         output_high(PIN_B1);      // Testeo de los LED funcionando
  43.         output_high(PIN_B0);
  44.         delay_ms(1000);
  45.         output_toggle(PIN_B1);    // Testeo de toggle
  46.         output_toggle(PIN_B0);
  47.        
  48.         printf("AT\r\n");
  49.         i=0;
  50.         delay_ms(1000);
  51.         if(Cadena[0] == 'O' && Cadena[1] == 'K')
  52.                 output_high(PIN_B1);
  53.        
  54.         while(1)
  55.         {
  56.         }
  57. }

a 9600 bps tenes que cada bit tarda 104useg, Recibir la letra O lleva 10 bits -> 10mseg. O sea que cuando recivas el OK el led va a encenderse por 10mseg y luego a apagarse otra vez. Presta atension a ver si se enciende...
Si el led no se enciende, entonces no te esta andando la recepcion de caracteres, que es lo que creo que no te funciona. Si no notas que el led se enciende y se apaga enseguida entonces cambia a esto:

Código: C
  1. #include <16F88.h>
  2. #FUSES NOWDT                    //No Watch Dog Timer
  3. #FUSES INTRC                    //Internal RC Osc
  4. #FUSES PUT                      //Power Up Timer
  5. #FUSES PROTECT                  //Code protected from reads
  6. #FUSES NOBROWNOUT               //No brownout reset
  7. #FUSES NOMCLR                   //Master Clear pin used for I/O
  8. #FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
  9. #FUSES NOCPD                    //No EE protection
  10. #byte PORTA=0X05
  11.  
  12. #use delay(int=4000000,RESTART_WDT)
  13. #use rs232(uart1, baud=9600)//usart1 -->ajuste de XMIT y RCV para la USART 1
  14.  
  15. int i=0;
  16. char Cadena[60]="";
  17. char ch;
  18.  
  19. #int_rda
  20. void rd_isr(void)//función de interrupción por recepción de datos USART
  21. {
  22.         ch=getc();
  23.         Cadena[i]=ch;
  24.         output_high(PIN_B0);
  25.         i++;
  26.         if(i>60)
  27.                 i=0;
  28. }
  29.  
  30. void main()
  31. {
  32.         setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
  33.         setup_timer_1 ( T1_INTERNAL | T1_DIV_BY_4 );
  34.         setup_timer_2(T2_DISABLED,0,1);
  35.         setup_ccp1(CCP_OFF);
  36.         setup_comparator(NC_NC_NC_NC);
  37.         set_tris_b(0b11011100);    //RB0 y 1 como salida para LED. RB5 como salida para Tx
  38.         set_tris_a(0x20);               //porta como Entrada
  39.         enable_interrupts(int_rda);
  40.         enable_interrupts(GLOBAL);   //activadas interrupciones
  41.        
  42.         output_high(PIN_B1);      // Testeo de los LED funcionando
  43.         output_high(PIN_B0);
  44.         delay_ms(1000);
  45.         output_toggle(PIN_B1);    // Testeo de toggle
  46.         output_toggle(PIN_B0);
  47.        
  48.         printf("AT\r\n");
  49.         i=0;
  50.         delay_ms(1000);
  51.         if(Cadena[0] == 'O' && Cadena[1] == 'K')
  52.                 output_high(PIN_B1);
  53.        
  54.         while(1)
  55.         {
  56.         }
  57. }

de ese modo cuando recivas un caracter se va a encender el led y quedará encendio.

Arrancá con eso y si el led en el RB0 no hace lo que esperamos vemos como seguir.

sds.
-
Leonardo Garberoglio

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7912
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #50 en: 28 de Mayo de 2016, 11:51:29 »

a 9600 bps tenes que cada bit tarda 104useg, Recibir la letra O lleva 10 bits -> 10mseg. O sea que cuando recivas el OK el led va a encenderse por 10mseg y luego a apagarse otra vez. Presta atension a ver si se enciende...


En realidad va a encender 1 milisegundo (104 useg x 10 = 1040 useg, igual a 1 mseg) solamente, no creo que puedas ver ese destello, es muy poco tiempo, aunque ya lo eran 10 mseg.
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #51 en: 28 de Mayo de 2016, 11:58:12 »

a 9600 bps tenes que cada bit tarda 104useg, Recibir la letra O lleva 10 bits -> 10mseg. O sea que cuando recivas el OK el led va a encenderse por 10mseg y luego a apagarse otra vez. Presta atension a ver si se enciende...


En realidad va a encender 1 milisegundo (104 useg x 10 = 1040 useg, igual a 1 mseg) solamente, no creo que puedas ver ese destello, es muy poco tiempo, aunque ya lo eran 10 mseg.

bien ahi!!! entonces proba directamente el segundo programa, el que al recivir un caracter enciende y deja encendido el LED....

La otra es probar con esto:

Código: C
  1. #include <16F88.h>
  2. #FUSES NOWDT                    //No Watch Dog Timer
  3. #FUSES INTRC                    //Internal RC Osc
  4. #FUSES PUT                      //Power Up Timer
  5. #FUSES PROTECT                  //Code protected from reads
  6. #FUSES NOBROWNOUT               //No brownout reset
  7. #FUSES NOMCLR                   //Master Clear pin used for I/O
  8. #FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
  9. #FUSES NOCPD                    //No EE protection
  10. #byte PORTA=0X05
  11.  
  12. #use delay(int=4000000,RESTART_WDT)
  13. #use rs232(uart1, baud=9600)//usart1 -->ajuste de XMIT y RCV para la USART 1
  14.  
  15. int i=0;
  16. char Cadena[60]="";
  17. char ch;
  18.  
  19. #int_rda
  20. void rd_isr(void)//función de interrupción por recepción de datos USART
  21. {
  22.         ch=getc();
  23.         putc(ch);
  24. }
  25.  
  26. void main()
  27. {
  28.         setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
  29.         setup_timer_1 ( T1_INTERNAL | T1_DIV_BY_4 );
  30.         setup_timer_2(T2_DISABLED,0,1);
  31.         setup_ccp1(CCP_OFF);
  32.         setup_comparator(NC_NC_NC_NC);
  33.         set_tris_b(0b11011100);    //RB0 y 1 como salida para LED. RB5 como salida para Tx
  34.         set_tris_a(0x20);               //porta como Entrada
  35.         enable_interrupts(int_rda);
  36.         enable_interrupts(GLOBAL);   //activadas interrupciones
  37.        
  38.         output_high(PIN_B1);      // Testeo de los LED funcionando
  39.         output_high(PIN_B0);
  40.         delay_ms(1000);
  41.         output_toggle(PIN_B1);    // Testeo de toggle
  42.         output_toggle(PIN_B0);
  43.              
  44.         while(1)
  45.         {
  46.         }
  47. }

con un FTDI... lo que que escrivas en el terminal se te reenviará... de ese modo podes ver que funcionen las dos lineas... pero siempre esta el posible problema que el TX del SIS no llegue al conector donde pones el cable que va al RX del uC...
-
Leonardo Garberoglio

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #52 en: 28 de Mayo de 2016, 16:18:42 »
Probe los dos programas,el primero no me dio resultado, con el segundo de elgarbe el led de b0 queda prendido

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #53 en: 28 de Mayo de 2016, 16:25:49 »
al arrancar los dos led encienden luego se apagan y finalente se enciende solo el B0?

sds
-
Leonardo Garberoglio

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #54 en: 28 de Mayo de 2016, 17:04:15 »
al arrancar los dos led encienden luego se apagan y finalente se enciende solo el B0?

sds
Si pasa eso

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #55 en: 28 de Mayo de 2016, 17:08:26 »
si sacas el sis900 y pones un ftdi al arrancar el prograa en la terminal te aparece el mensaje AT?
si es así si en la terminal una vez recivido AT tu envías OK no se enciende el led B1?
-
Leonardo Garberoglio

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #56 en: 28 de Mayo de 2016, 17:39:53 »
si sacas el sis900 y pones un ftdi al arrancar el prograa en la terminal te aparece el mensaje AT?
si es así si en la terminal una vez recivido AT tu envías OK no se enciende el led B1?
NO enciende el led pero no me deja mandar nada al puerto solo se ve el comando at al principio a lo mejor esta quemado el pic

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #57 en: 28 de Mayo de 2016, 17:56:11 »
Cambie de PIC y tampoco funciona

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #58 en: 28 de Mayo de 2016, 19:25:13 »
NO enciende el led pero no me deja mandar nada al puerto

que significa que n te deja mandar nada al puerto????
que software terminal estas usando?
-
Leonardo Garberoglio

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re:No puedo MANDAR mensajes desde modulo gprs
« Respuesta #59 en: 28 de Mayo de 2016, 19:49:08 »
eS Como que no me deja mandar nada , uso el sscom32