Autor Tema: SIM900 no responde OK !!!!  (Leído 3512 veces)

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

Desconectado Lola3

  • PIC10
  • *
  • Mensajes: 2
SIM900 no responde OK !!!!
« en: 04 de Abril de 2015, 19:14:59 »
Saludos!!
Soy nueva en esto, pero espero encontrar ayuda por acá :D
Estoy realizando un proyecto en el cuál debo enviar información sobre la temperatura de un lugar especifico a un celular. Para esto, utilizo un PIC16F887 y el SIM900. A penas estoy empezando el proyecto y he tenido problemas con el SIM. Luego de hacer la rutina de encenderlo, le envío el comando AT pero este no me responde con el esperado OK. Al leer el buffer, sólo recibo un caracter y ahí se queda. No se si es que no estoy enviando el comando de manera correcta, o no estoy capturando bien la respuesta. Ayuda por favor! Acá les dejo como lo estoy haciendo:

#include "libreria.h"
#include <stdio.h>

void main (void)
{

    unsigned char array[4];
    int i;
    inicializar();
    LCD_init();   //Inicializar LCD
    serial_init();

    do
    {
        PowerOnSim();         //Función para encender SIM
        print_serial ("AT");  //Comando de prueba
        Serial_Putchar ('\n'); //Salto de línea
   
        for (i=0; i<4; i++)
        {
       
            array =  Serial_Getchar ();
            Serial_Putchar(array);
       
        }

   } while (array[3] != 'K');

    while (1);
   
}

Estas son mis funciones:

void serial_init(void)
{
   
    TXSTA=0b10100100;       //Activo la  Transmision Serial
    RCSTA=0b10010000;       //Activo la recepcion serial
    BAUDCTL=0b00001000;     //Asigno BaudRate
    SPBRGH=0;                   //parte alta
    SPBRG =34;                  //parte baja
}

void Serial_Putchar (unsigned char dato)
{
    TXREG = 0;       //limpiar registro de envio
    TXREG = dato;    //enviar caracter
    while (!TXIF);   //esperar que termine de enviar
    TXIF=0;          //limpiar flag
}

unsigned char Serial_Getchar (void)
{
    unsigned char a;
    while (!RCIF);  //Espero que termine de llegar dato
    a = RCREG;     //Guardo dato en a
    RCIF=0;          //Limpio bandera
    return (a);
}


Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5435
    • Electrónica Didacta
Re: SIM900 no responde OK !!!!
« Respuesta #1 en: 04 de Abril de 2015, 20:48:02 »
pueden ser muchas cosas

de entrada se me ocurren 2

- configuración de baudios del micro diferente al del sim900
- por alguna razón (y me ha pasado) el sim900 no responde a la primera, y hay que enviarle el comando at repetidamente.

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado Lola3

  • PIC10
  • *
  • Mensajes: 2
Re: SIM900 no responde OK !!!!
« Respuesta #2 en: 04 de Abril de 2015, 21:03:25 »
Estoy usando un baudrate de 9600..Tenía entendido que el SIM900 lo detecta automáticamente, no? En cuanto a lo del AT, lo estoy enviando repetidas veces.. De hecho, la condición de parada es haber obtenido el caracter 'K' :/

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5435
    • Electrónica Didacta
Re: SIM900 no responde OK !!!!
« Respuesta #3 en: 04 de Abril de 2015, 21:35:41 »
Lola3 prueba ambos dispositivos por separado usando un monitor de puerto serial, a ver como responden

yo uso estos

http://www.easyvitools.com/download/rsterm.zip
https://musicshield.googlecode.com/files/sscom32E.exe


La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1688
Re: SIM900 no responde OK !!!!
« Respuesta #4 en: 07 de Abril de 2015, 14:20:56 »
puedes usar directamente el software de quectel, es un monitor de puerto serie muy muy completo lo puedes encontrar en la pagina oficial
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA

Desconectado omix

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 236
Re: SIM900 no responde OK !!!!
« Respuesta #5 en: 07 de Abril de 2015, 15:37:07 »
Hola,
lo primero que debes hacer, después de encender correctamente el módem, es enviar "AT\r\n" para que el módem detecte el baudrate (lo dice en la especificación del módem).
Por otro lado, cada comando AT debe ir terminado en "\r\n" no solo "\n".

Si el módem está correctamente encendido, debería funcionar haciendo lo que te digo, yo lo tengo hecho así y funciona siempre.

Un saludo.

Desconectado IngRandall

  • PIC18
  • ****
  • Mensajes: 378
Re: SIM900 no responde OK !!!!
« Respuesta #6 en: 24 de Abril de 2015, 11:53:29 »
Hola,
lo primero que debes hacer, después de encender correctamente el módem, es enviar "AT\r\n" para que el módem detecte el baudrate (lo dice en la especificación del módem).
Por otro lado, cada comando AT debe ir terminado en "\r\n" no solo "\n".

Si el módem está correctamente encendido, debería funcionar haciendo lo que te digo, yo lo tengo hecho así y funciona siempre.

Un saludo.

Yo lo hago solo con \r deberia funcionar asi...

Estoy usando un baudrate de 9600..Tenía entendido que el SIM900 lo detecta automáticamente, no? En cuanto a lo del AT, lo estoy enviando repetidas veces.. De hecho, la condición de parada es haber obtenido el caracter 'K' :/

Si no estoy mal para que el modulo pueda detectar el baudrate por si mismo, se debe enviar la letra A repetidamente, ejemplo: "AAAAAT\r".

Desconectado dbagnis

  • PIC10
  • *
  • Mensajes: 10
Re:SIM900 no responde OK !!!!
« Respuesta #7 en: 19 de Febrero de 2016, 10:07:34 »
Hola. Yo empece un tema nuevo por un problema parecido con un modulo que usa el SIM908. Hasta ahora sin resolver el problema. Si alguien tiene alguna información al respecto estaré mas que agradecido.
Desde ya muchas gracias


 

anything