Beruflich Dokumente
Kultur Dokumente
Freddy León
Escuela de Ingeniería Electrónica
UNIVERSIDAD PEDAGOGICA Y TECNOLOGICA DE COLOMBIA
Sogamoso – Boyaca – Colombia
INTRODUCCION
Actualmente los nuevos teléfonos vienen dispuestos para conexión por puerto
USB debido a que en este se maneja una mayor velocidad en la transferencia de
datos comparado con los de puerto serial ,ya es común encontrar cables de
conexión de datos por USB para aquellos que venían para conexión serial. Luego
hay que estar preparados para estos nuevos cambios; además ;son muchas las
cosas que podemos hacer con nuestros celulares ,además de llamar ,recibir
llamadas ,enviar mensajes,etc,si lo conocemos un poco mas y lo manejamos
desde un computador.
Para este caso utilice la plataforma Windows Vista edición Home Premium,por una
razón :Tuve que Comprar un portátil hace poco(para mi proyecto de grado) y venia
con Vista instalado asi que hay que trabajar con lo que hay…ah.. y con lo actual .
Era mi primer contacto con Vista y como todo lo nuevo ,empeze a revisar
especialmente lo que necesitaba para mi proyecto (que aun estoy desarrollando
).Me di cuenta que no tenia el popular Hiperterminal usado para las conexiones y
pruebas por puerto serial por eso surgió la necesidad de desarrollar un pequeño
software (aunque lo necesitaba de todas maneras) que permitiera comunicarme
con el Sony Ericsson K310 (Que es el que estoy utlizando)
Asumo que no sabes nada o muy poco de lo que se trata todo esto, asi que todo
esta dispuesto para que empieces desde cero.
1
Bueno ,pero empecemos, menos Bla Bla Bla y mas trabajo porque lo que
necesitamos es aprender.
Lo que necesitamos es :
Una vez se da clic en la opción resaltada aparece la siguiente ventana,la cual nos
brinda dos opciones
La primera es dar click en Next para que Windows busque el driver en el CD,la
segunda es si el driver ya se ha copiado y guardado en alguna parte del disco
duro ,para lo cual debemos seleccionar la ruta donde se encuentra el driver.
Para nuestro caso continuamos con la primera opción ,entonces daremos clic en
Next
3
Windows buscara el driver…..
4
Aquí se empieza a evidenciar el principal problema de Windows Vista :LA
INCOMPATIBILIDAD,Ya que la mayoría de driver están para Windows XP y
versiones anteriores(En este caso no tenia el driver para Vista). Entonces cada
vez que se quiera a instalar un dispositivo es necesario asegurarse que este tenga
los drivers compatibles para Vista de lo contario no se podrá instalar o si se
instala, el dispositivo no funcionara correctamente.
5
Al lograrlo se mostrara el puerto en el cual quedo instalado el cable USB del Movil
(DCU-11)
7
7
6
Y en la barra de inicio aparecerá un mensaje como el siguiente:
Ahora aparece una opción que permite darle un nombre al teléfono ,por defecto
aparece Mi K310,Despues de ubicar un nombre finalizaremos este proceso
7
Para verificar lo que acabamos de hacer damos doble clic en el icono Monitor de
teléfonos ubicado en la barra de Inicio de Vista(Si no se encuentra podemos ir a
panel de Control y doble clic en el icono respectivo)
8
Una vez seleccionamos se visualiza en la pantalla del teléfono el siguiente
mensaje:
Para verificar esto podemos dar doble clic en el icono de Sony Ericsson PC Suite
,ubicado en la barra de inicio
9
Damos clic en Inicio y aparecerá la siguiente ventana de la cual seleccionamos
Control Panel.
Una vez estemos en la ventana del Panel de Control se nos presentan diferentes
iconos de los cuales daremos doble clic en: Device Manager (Administrador de
dispositivos)
10
Una vez realizada la operación ,se abrirá una ventana mostrando el hardware
instalado en nuestro computador.
11
Como lo que necesitamos es probar el modem que debió haberse instalado con
el Sony Ericsson K310 , Elegimos la opción Modems
Damos clic derecho en la opción Sony Ericsson Device 125 WMC Data Modem
y nos muestra la ventana de propiedades del modem de datos del Sony Ericsson
k310 que nos dice que :
12
Mientas se realiza la prueba nos presenta……..
13
Si queremos ver los Comandos AT de prueba que se enviaron al K310 ,damos
click en View Log y se mostraran en el bloc de notas .
14
Aquí vemos que están conectados a los puertos COM7 Y COM 6 (Estos son
puertos seriales virtuales que se generan automáticamente y que simulan el
puerto USB al cual se conecto el Teléfono Celular USB)
Damos click derecho en la opción resaltada en azul Sony Ericsson Device 125
USB WMC Device Management,que es la que nos interesa(Las otras opciones
generan algún error cuando se prueban desde el software, además cuando finalizo
el proceso de instalación,el DCU -11 quedo en el COM 7 )
15
Ya sabemos que debemos conectarnos por el COM 7 !
Damos clik en la pestaña Port Setting, Y nos muestra los ajustes del puerto USB
(Puerto Serial Virtual) con las que se debe conectar el Modem del K310,si las
queremos cambiar basta con ir a Advanced (Avanzadas)
16
De aquí extractamos las propiedades de conexión del Modem del k310:
Bits Por Segundo=115200
Bits de datos=8
Paridad=Ninguna
Bits de Parada=1
Control de Flujo =Ninguno
Con estos datos ahora si nos disponemos a realizar la interfaz grafica en Visual
Basic 6.0 que permita comunicarnos con el teléfono y centraremos ahora nuestra
atención en el desarrollo del software en Visual Basic
1. Clic en inicio
2. Clic todos los programas
3. Clic en el icono Microsoft Visual Basic
4. Clic en EXE estándar
5. Clic en Abrir
TextBox
Label
CommandButton
17
Ahora tienes que dar click en cada uno de los controles ( CommandButton, Label y
Textbox) , ubícate sobre el formulario( el Mouse adoptara forma de cruz) mantén
oprimido el botón izquierdo y arrastra hasta dar forma al botón en el formulario,
Después de esto libera el botón izquierdo.
El paso siguiente es colocar las propiedades de cada control, para esto da click en
cada botón, vas a la ventana de propiedades(si no esta visualizada pulsa f4),y
busca las propiedades que aparecen abajo y coloca el valor respectivo para cada
uno.
Text Vacio
Text1
Nombre txtTextoenviar
Nombre txtTexto
Multiline True
Text2
ScrollBars 3-Both
Text Vacio
Nombre cmdConectar
CommandButton1
Caption CONECTAR
Nombre cmdLimpiar
CommandButton2
Caption LIMPIAR PANTALLA
Nombre cmdEnviar
CommandButton3
Caption ENVIAR
Nombre cmdDesconectar
CommandButton4
Caption DESCONECTAR
Nombre cmdSalir
CommandButton5
Caption Salir
18
Para Colocar en el proyecto el componente Mscomm que es el que permite la
comunicación por el puerto serial sigue los siguientes pasos:
19
Al dar clic en OK, se mostrara en el cuadro de herramientas un icono en forma de
teléfono, el cual seleccionaremos y arrastraremos hasta nuestro proyecto.
20
Ahora que tenemos los controles(Botones) ya listos, damos doble clic en cada uno
de ellos y escribimos el código como sigue :
21
Listo, hasta aquí ya tenemos la mayoría del programa desarrollado, lo que falta es
como recibir la respuesta del celular .
Para recibir la respuesta del teléfono, vamos a utilizar el evento On Comm que
se genera siempre que cambia el valor de la propiedad CommEvent e indica que
se ha producido un evento o un error en la comunicación.
Dim valor as string 'Definimos una variable para recibir los datos
'pregunta si se ejecuto el evento de recibir igual o mas de 2 caracteres
If MSComm1.CommEvent = comEvReceive Then
valor = valor & MSComm1.Input 'recoge el valor de entrada
texto.Text = texto.Text & vbCrLf & valor 'pase el valor recibido a la pantalla
Else
texto.Text = "NO HAY RESPUESTA DEL MODEM "
End If
Si no hubo errores ,el software esta listo para usarlo ,si no revisa cuidadosamente
el código.
Ahora ya podemos empezar a probar el teléfono…………. ,
22
PARTE3. PROBANDO CONEXIÓN CON EL K310
Damos click en el botón CONECTAR,si todo esta bien debe aparecer en la parte
superior izquierda :Conectado por el puerto 7 ,
Ingresamos el comando AT y damos click en ENVIAR,se debe recibir AT OK
23
PARTE 4.USANDO COMANDOS AT PARA COMUNICARNOS CON EL K310
1.COMANDOS AT DE LLAMADA
AT (Atention Command)
• Descripcion: Verifica si existe algún modem conectado
• Sintaxis:AT
• Ejemplo:
D Dial Command
24
• Ejemplo:
H Hook control
A Answer
• Descripcion: Comando para contestar una llamada su respuesta es OK si
existe una llamada entrante de lo contario su respuesta será NO CARRIER
• Sintaxis:ATA
• Ejemplo:
25
2.COMANDOS AT PARA GESTIÓN DE SMS
almacenamiento de sms
• Sintaxis: +CPMS=<mem1>,[<mem2>],[<mem3>]
• Opciones: <mem1> Memoria desde donde los mensajes son leidos y
borrados
“ME” ME o memoria del telefono.
Respuesta: +CPMS:<usada1>,<total1>,<usada2>,<total2><usada3>,<total3>
• Ejemplo :
26
+CMGF: [Message Format]
1) AT+CMGF=?
2) AT+CMGF?
3) AT+CMGF=<modo>
27
+CMGL: [List Messages]
• Retorna la lista de mensajes segun el parametro <estado>
• +CMGL: <index>,<stat>,[<alpha>],<length>,<pdu><CR><LF>
1) AT+CMGL=?
2) AT+CMGL=<estado>
28
Para Teléfonos Móviles, SMS usa el codificado PDU en el cual el mensaje es
Ejemplo:
29
PARTE 5.COMPRENDIENDO UN MENSAJE EN PDU
079175130600013404039128F70100700132122465004C45366816B3D172351C4E1
60385D9A078BD0C62B3C3EDF09C5E06E5C3A0791954768FEB65375D1E0691D3
73F8DB9D16B3CB2E50714E2F83DA7335A83C079DE5617A7A0E
1 91 Numero internacional
8 04 Entregado
13 01 Protocolo Identificador
00-Codificacion en 7 Bit
01-Hexadecimal
30
A continuación encontraras el proceso de decodificación del mensaje codificado
en 7 bits (Esta paso a paso y bien explicado…. como alguna vez quize
encontrarlo!).
45366816B3D172351C4E160385D9A078BD0C62B3C3EDF09C5E06E5C3A0791954768FEB6
5375D1E0691D373F8DB9D16B3CB2E50714E2F83DA7335A83C079DE5617A7A0E
Paso3.Tomar los 7 ultimos bits del primer byte y ese es el primer carácter en 7
Bits
Paso4.Tomar los 6 últimos bits del segundo byte y unirlo con el primer bit del
primer byte para formar el segundo carácter.
Paso 5.Tomar los 5 últimos bits del tercer byte y unirlo con los 2 primeros bits del
segundo byte para formar el tercer carácter.
Paso 6.Tomar los 4 ultimos bits del cuarto byte y unirlo con los 3 primero bits del
tercer byte para formar el cuarto carácter.
Paso7.Tomar los 3 ultimos bits del quinto byte y unirlo con los 4 primeros bits del
cuarto byte para formar el quinto carácter.
Paso8.Tomar los 2 ultimos bits del sexto byte y unirlo con los 5 primeros bits del
quinto byte para formar el sexto carácter.
Paso9.Tomar el ultimo bit del séptimo byte y unirlo con los 6 primeros bits del
sexto byte. para formar el septimo carácter.
Paso 10.Tomar los 7 primeros bits del séptimo byte para formar el octavo carácter
31
A continuación se presenta en forma practica la decodificación del mensaje leído
de la posición 2 de la memoria del móvil celular k310 (No el ejemplo que siempre
sacan por ahí de “Hello Hello” o “Hello World” u” Hola Mundo”..! uno de verdad!)
1 2 3 4 5 6 7
1.En HEX 45 36 68 16 B3 D1 72
2.En BIN 01000101 00110110 01101000 00010110 10110011 11010001 01110010
3.En 7 Bit 1000101 1101100 0100000 0110011 0110001 0110110 0110100
0x45 0x6C
CARACTER E l SP 3 1 6 4
El código de 7 BITS que queda es 0111001 que es el carácter “9”,y empezamos nuevamente el proceso….
8 9 10 11 12 13 14
En HEX 35 1C 4E 16 03 85 D9
En BIN 00110101 00011100 01001110 00010110 00000011 10000101 11011001
En 7 Bit 0110101 0111000 0111000 0110010 0110001 0100000 1100001
CARACTER 5 8 8 2 1 SP a
15 16 17 18 19 20 21
En HEX A0 78 BD 0C 62 B3 C3
En BIN 10100000 01111000 10111101 00001100 01100010 10110011 11000011
En 7 Bit 0100000 1110001 1110101 1100101 0100000 1101100 1101100
CARACTER SP q u e SP l l
22 23 24 25 26 27 28
En HEX ED F0 9C 5E 06 E5 C3
En BIN 11101101 11110000 10011100 01011110 00000110 11100101 11000011
En 7 Bit 1101101 1100001 1110011 1110100 1100101 0100000 1111001
CARACTER m a s t e SP y
32
29 30 31 32 33 34 35
En HEX A0 79 19 54 76 8F EB
En BIN 10100000 01111001 00011001 01010100 01110110 10001111 11101011
En 7 Bit 0100000 1110011 1100101 0100000 1100101 1101110 1100011
CARACTER SP s e SP e n c
36 37 38 39 40 41 42
En HEX 65 37 5D 1E 06 91 D3
En BIN 01100101 00110111 01011101 00011110 00000110 10010001 11010011
En 7 Bit 1100101 1101110 1110100 1110010 1100001 0100000 1100100
CARACTER e n t r a SP d
43 44 45 46 47 48 49
En HEX 73 F8 DB 9D 16 B3 CB
En BIN 01110011 11111000 11011011 10011101 00010110 10110011 11001011
En 7 Bit 1110011 1110000 1101111 1101110 1101001 1100010 1101100
CARACTER s p o n i b l
50 51 52 53 54 55 56
En HEX 2E 50 71 4E 2F 83 DA
En BIN 00101110 01010000 01110001 01001110 00101111 10000011 11011010
En 7 Bit 0101110 0100000 1000101 1110011 1110100 1100101 010000
CARACTER . SP E s t e SP
33
57 58 59 60 61 62 63
En HEX 73 35 A8 3C 07 9D E5
En BIN 01110011 00110101 10101000 00111100 00000111 10011101 11100101
En 7 Bit 1110011 1101010 0100000 1100101 1110011 0100000 1100111
CARACTER s j SP e s SP g
64 65 66 67
En HEX 61 7A 7A 0E
En BIN 01100001 01111010 01111010 00001110
En 7 Bit 1100001 1110100 1101001 1110011
CARACTER a t i s
34
AT+CMGD: [Delete Message]
1) AT+CMGD=?
2) AT+CMGD=<índice>
35
PARTE 6.ENVIANDO UN MENSAJE EN MODO PDU
Para probar los siguientes comandos usados para escritura en memoria y enviar
un SMS ,suma al proyecto un Textbox , un Commandbutton (CTRL-Z) y Un label
(Cuerpo del mensaje)
En el código del commandbutton es el siguiente:
+CMGW :24
36
AT+CMGS: [Send Message]
>0791751306000112B1380A81137789545300008F11CDB27B1E569741E
432082EAF97C561.( Ctrl- Z)
NOTA: Enter se representa con el caracter 13 o sea Chr(13) o VbCr para VB, Ctrl-Z se
representa con el carácter 26 es decir Chr(26) y ESC con el Chr(27) usado para cancelar
un envio o una acción.
Entonces para enviar un SMS desde el software con un teléfono que esta en
modo PDU seria algo asi:
Paso seguido copiar la trama PDU en Cuerpo del mensaje y dar clic en el Botón
CTRL-Z
37
Mi trama PDU quedo algo mal por lo que me devolvió un error (No todo puede ser
perfecto en la vida).. es +CMS ERROR: 304 Invalid PDU mode parameter
(parámetro invalido en la PDU)
Estos son los comandos para envío y escritura Para teléfonos que aceptan modo
TEXTO.
Respuesta :+CMGS : 13
38
Para los demás ejemplos se siguen los mismos pasos solo hay que leer
detenidamente.
39
que vayas a ingresar el comando ….Veras que se siente ver como da fruto nuestro
trabajo!
Hemos terminado ,por ahora, se que vendrán mas cosas y muy seguramente
estarás agradecido por la información ,te va ser de mucha utilidad y la vas a
guardar como un tesoro porque aqui has encontrado condensadas muchas cosas
que están por aquí ,por allí…..
Quería compartir mi avances pues se que muchos están como yo hace tiempo
,han sido muchas noches y días enteros de trabajo y paciencia porque a veces las
cosas no salen fácilmente empezando por la tan anhelada respuesta OK que me
costo tanto entender, lo de las tramas tramas PDU ,los comandos AT,la
programación en VB, lo de ….bueno muchas cosas!.(Despues que uno las hace
le parecen fáciles pero antes…..)
Te invito a que no solo utilices la red para conseguir tus fines y obtener
información que otros te brindan, desarrollar algo y cerrar la opción de
compartirlo, no digo que compartas todo claro, pero con algo que podamos ayudar
,es suficiente.
40
Por ultimo, si desarrollas alguna aplicación ;en la cual hayas usado todo esto que
aprendiste, no dudes en comentarme!, para saber que mi esfuerzo y mi trabajo
valieron la pena .Espero que utilices esta información adecuadamente y si vas a
compartirla … POR FAVOR:
41