Allopass, The #1 micropayment service in Europe. Now available in the U.S.

domingo, 5 de junio de 2011

ACTIVANDO SALIDA DIGITAL CON UN RING - AT89C52 CON BASCOM 8051

APLICACIÓN USANDO MODEM ENFORA GSM1218 Y EL Uc. AT89C52
ON/OFF salida P3.7 con un numero de RING:  2 ON 4 OFF
NOTA IMPORTANTE: EL CRYSTAL DEBE SER DE 11.0592MHZ. PARA LA  COMUNICACION SERIAL SE UTILIZA EL C.I. MAX232 O EL 74HC14. EL MODEM SE CONFIGURA A LA MISMA VELOCIDAD DEL MICROCONTROLADOR ADEMAS SE DEBE ACTIVAR  LO SIGUIENTE EN EL MODEM: AT+IFC=0,0.



'*******************************************************************************
' PROGRAMA GSM8952RING.BAS.
'PRIMERO CONFIGURAR  EL SOFTWARE DEL COMPILADOR A LA MISMA VELOCIDAD DEL MODEM
' UTILIZAR EL CRISTAL DE 11.0592MHZ
' CUANDO RECIBE LLAMADA O 2 RING ON P3.7  4 RING OFF P3.7
' EL MODEM ENFORA GSM1218 TIENE QUE ESTAR CONFIGURADO:  EL CONTROL DE FLUJO
' CON 0,0 USAR COMANDO AT+IFC=0,0, LA VELOCIDAD DE COMUNICACION A 4800
' USAR COMANDO AT+IPR=4800,EL SMS RECIBIDO EN EL MODEM PASA DEFRENTE
' AL PUERTO SERIAL  PARA LO CUAL SE UTILIZA EL COMANDO AT :' AT+CNMI=1,2,0,0,0
' NO ECO CON COMANDO ATE0 LUEGO GRABAR CON COMANDO AT&W
' USAR EL HYPERTERMINAL  CON VELOCIDAD DE 4800,8 BITS DE DATOS,
' NO PARIDAD,1 BIT DE STOP,
'*******************************************************************************
' CONFIGURANDO LCD
Config Lcdpin = Pin , Db4 = P2.3 , Db5 = P2.2 , Db6 = P2.1 , Db7 = P2.0 , E = P2.4 , Rs = P2.5
Config Lcd = 16 * 2
'*******************************************************************************
'Declaración de variables
Dim Comando As String * 5                             ' VARIABLE PARA RECIBIR RING
Dim S As String * 2                                           ' USADA PARA OBTENER "R"
Dim R As Byte                                                   ' CONTADOR DE RING
'*******************************************************************************
P3.7 = 1
'*******************************************************************************
'Mensaje inicial en el LCD
Cls
Lcd "SISTEMA GSM RING"
Lowerline
Lcd " ** CIDT SCRL **"
Wait 2
'*******************************************************************************
Inicio:
'ESPERA POR LOS RING
   Input Comando Noecho Timeout = 1000                        'LEE PRIMERA LINEA
   Input Comando Noecho Timeout = 1000                        'LEE SEGUNDA LINEA
   Cls
   Lcd Comando
   Wait 1
   S = Mid(comando , 2 , 1)                                                     'Detecta la "R"
   If S = "R" Then Gosub Ring
   Cls
   Goto Inicio
'*******************************************************************************
' CONTAR RING  2 ON Y 4 OFF
Ring:
      R = R + 1
      If R = 2 Then
         P3.7 = 0
      End If

      If R = 4 Then
         P3.7 = 1
         R = 0
      End If
      Return
'*******************************************************************************




No hay comentarios: