Conexión de un teléfono celular a un micro

No todos los móviles disponen de modem incorporado. Pero los que lo tienen ( yo tengo un siemens antiguo- AX72) se puede controlar con comandos AT empleando un cable adecuado para el puerto serie y un programa como el hiperterminal.

Otra forma es emplear un MODEM GSM el cual podemos conectar al microcontrolador por medio de un puerto RS232. Estos modems se usan para control industrial, cuestan entre 90 y 120euros y se controlan con comandos AT, esta solucion me parece la mejor ya que los modems que incorporan los móviles sólo tienen implementados unos pocos comandos AT.
 
Necesito ayuda.. Intento leer un mensaje mediante comandos at de un celular t290a sony ericsson con un atmega 16.... Y no sale, el asunto es que en hiperterminal funciona de maravilla,,, incluso ya cambie los niveles de voltaje... Es mas hago llamada y funciona.. Pero no puedo leer mensaje.. Alguna sugerencia. Que se yo sera de aumentar tiempo en la enviada de comandos at..... Help me please..
 
Hola muchachos. Buen dia.
Estoy implementando un proyecto, a fin a los que estan implementando ustedes y necesito su opinion y de su ayuda. Es muy interesante el utilizar pic para manipular un celular por medio de la pc. Pero no estoy muy empapado en el tema, quiero implementar un circuito interruptor que mediante una señal de activacion active un un switch o relay para activar la tecla de hacer la ultima llamada grabada en la memoria del celular. Esta seria activda por un pulso de una llamada entrante de un telefono local, que activaria el circuito y se haria la llamada automaticamente en el celular. Se ocupa que el relay o switch ponga en corto dos veces la funcion de la tecla de SEND del celular para que ocurriera la llamada automatica. Bueno esa es mi idea principal, pero acepto sus opiniones para saber si de otra manera puedo implementar ese circuito, o alguna otra manera pudiera implementarlo.

Saludos.
 
hola rayparker, por supuesto como piensas hacer esa activacion es bien factible yo lo hice en mi proyecto de grado de ingeniero con celulares nokia 1100 mediante reles conectados al teclado del celular y con un pic hacia llamadas y todo lo que puedas imaginar compañero, yo ya supere esa etapa que era un poco burda, y ahora es mucho mas factible mediante comandos AT debes usar un celular que los soporte por ejemplo los sony ericsson j300 y k300 que tienen ericport compras un cable para ese tipo de puerto los pines 4 5 y 8 seran rx , tx , gnd respectivamente conectas los rx y tx al pic por ejemplo un 16f873A y solo transmites las tramas desde el pic y listo por ejemplo si vas a llamar AL TELEFONO 3156130020 UN NUMERO CELULAR AQUI EN MI PAIS el programa del pic debe hacer esto:
enviar la trama ATD3156130020;

movlw "A"
call envia_dato
movlw "T"
call envia_dato
movlw "D"
call envia_dato
movlw "3"
call envia_dato
movlw "1"
call envia_dato
movlw "5"
call envia_dato
movlw "6"
call envia_dato
movlw "2"
call envia_dato
movlw "0"
call envia_dato
movlw "0"
call envia_dato
movlw "0"
call envia_dato
movlw "2"
call envia_dato
movlw "0"
call envia_dato
movlw ";"
call envia_dato

SI NECESITAS ALGUN PROGRAMA EJEMPLO DE COMUNICACION CON PIC YA SEA CON MANEJO DE RELES COMO LO PIENSAS O CON COMANDOS AT TE LO PUEDO ENVIAR Y DESDE ALLI PARTES ESPERO HALLA SIDO ESTO DE AYUDA COMPAÑERO
SALUDOS DEL MOSTRO DE LOS PICS
 
Gracias amigo, creeme que me va a ser de mucha utilidad, soy nuevo en eso de los PIC´S. Lo voy a llevar a cabo, ya si tengo alguna duda, te lo hago saber.

Gracias.



Saludos.
 
hola rayparker, por supuesto como piensas hacer esa activacion es bien factible yo lo hice en mi proyecto de grado de ingeniero con celulares nokia 1100 mediante reles conectados al teclado del celular y con un pic hacia llamadas y todo lo que puedas imaginar compañero, yo ya supere esa etapa que era un poco burda, y ahora es mucho mas factible mediante comandos AT debes usar un celular que los soporte por ejemplo los sony ericsson j300 y k300 que tienen ericport compras un cable para ese tipo de puerto los pines 4 5 y 8 seran rx , tx , gnd respectivamente conectas los rx y tx al pic por ejemplo un 16f873A y solo transmites las tramas desde el pic y listo por ejemplo si vas a llamar AL TELEFONO 3156130020 UN NUMERO CELULAR AQUI EN MI PAIS el programa del pic debe hacer esto:
enviar la trama ATD3156130020;

movlw "A"
call envia_dato
movlw "T"
call envia_dato
movlw "D"
call envia_dato
movlw "3"
call envia_dato
movlw "1"
call envia_dato
movlw "5"
call envia_dato
movlw "6"
call envia_dato
movlw "2"
call envia_dato
movlw "0"
call envia_dato
movlw "0"
call envia_dato
movlw "0"
call envia_dato
movlw "2"
call envia_dato
movlw "0"
call envia_dato
movlw ";"
call envia_dato

SI NECESITAS ALGUN PROGRAMA EJEMPLO DE COMUNICACION CON PIC YA SEA CON MANEJO DE RELES COMO LO PIENSAS O CON COMANDOS AT TE LO PUEDO ENVIAR Y DESDE ALLI PARTES ESPERO HALLA SIDO ESTO DE AYUDA COMPAÑERO
SALUDOS DEL MOSTRO DE LOS PICS



Que tal mostro.

Buen dia.

Ya consegui el PIC y un programador. el cable que me comentaste para hacer la conexion de Tx y Rx puede ser el cable USB que venden para bajar los datos del celular, o se necesita un cable especial? El software para programarlo no lo tengo, haber si pudieras ayudarme en donde encontrarlo.

Saludos
 
hola que tal estuve biendo el foro y viendo que ya tienes experiencia, te pediria que me ayudaras quiero hacer un projecto algo parecido a lo que hiciste creo, si, no es que es lo mismo. quiero poderle mandar entradas a un pic, que ese pic le manda la comunicacion al cel y que el cel mande un mensaje a otro cel, y tmb de un cel mandarle un mensaje al cel del pic para mande una salida.
yo tmb desee trabajar con 1100
si tienes algun projecto como este. te agradeceria que me lo pasaras. y que me ayudes a introducirme en este mundo


Bueno, espero que muchos de los que se conectan a este foro puedan tambien ayudarte , pero espero me corrigan en lo que te pueda ayudar, si me equivoco en mi forma de explicar..

Primero , debes saber con que celular vas ha trabajar , y deacuerdo a ello fabricar el cable , aunque todos los data cables en su mayoria usan el max232, y el zener con las resistencias para acondicionar el voltage para el celular com has podido ya leer en este foro y esto es parte del protocolo FBUS, que es el protocolo de comunicacion de los celulares..
Entonces, una vez tenido el celular por ejemplo el nokia 1100 que es con el que estoy trabajando, diseñas el cable y primero lo conectas al computador , logicamente el diseño que se presenta en este foro esta hecho para la comunicacion con la computadora , luego lo pruebas con algun software que te permita mandar sms , marcar un numero, etc como por ejemplo el logomanager, el mobius , pero uno de los mejores bueno hasta donde he podido encontrar es el oxygen , estos software te los descargas e la red facilmente...

Segundo, una vez que pruebes tu cable y compruebes que funciona , entonces dependiendo del celular, es que debes tener conocimiento de si tu celular soporta comandos AT o tramas de datos, mi nokia 1100 soporta tramas mas no comandos AT , me dicen que trabajar con comandos AT es mas sencillo, pero esto depende del celular como te digo, por lo general los celulares que usan el cable dku5 soportan comandos AT , yo trabaje con el nokia 1100 debido ha que este es mas economico en mi pais , ...te recomendaria a trabajar con los comandos AT ya que la mayoria de personas que estaban haciendo estos proyectos me lo recomendaron ...pero bueno, si te animas con lo de las tramas ahi te ayudo, aunque mi fidelidad a las tramas se esta perdiendo y AHORA PIENSO METERME EN EL MUNDO DE LOS COMANDOS AT....bueno si quieres documentacion sobre el protocolo de las tramas FBUS , aqui te mando una direccion para comenzar, aunque derrepente has encontrado otras direcciones mejores que esta en la red , que explican sobre sto..

www.codeproject.com/smartclient/MobPhoneFileTransfer.asp

luego la mayoria de direcciones y sitios web que te hablan sobre proyectos usando tramas te hacer referencia a los documentos de gnokki, que si bien es cierto son muy buenos , tienen fallas y les falta algo de información, pero eso si, son los mejores que encuentras al hablarte del diseño de tramas , aqui te lo adjunto paque los veas ..a ver que te parecen , pero no te hagas problemas primero lee información hacerca de las tramas, trata de entender bien el protocolo, y luego te aventuras bien a diseñar tramas pa tu celu, si es que lo vas a usar tramas....., luego tratas de probar tus tramas o tus comandos AT , en algun software que te permita enviar estas tramas desde tu PC a tu celular, yo trate de encontrar algunos por ahi, como por ejemplo el que me paso el del puerto pero no funciono bien , pues parce que no era pa mi celular , si puedes encontrar alguno por ahi me pasas la voz , pues yo de tanto buscar no encontre, elabore un software en visual basic para enviar enviar estas tramas pero no pasa nada , la verdad es que no soy bueno programando es estos lenguajes, por ahi me comentaron que mejor desarrolle un programa en delphi, en C que manejan mejor los puertos de la PC , pero bueno, por el tiempo no li hice y me mande defrente a mandarle las tramas por el pic, pero trata de no obviar ese paso ya que te permitira probar tus tramas o comandos AT y ver si el celular responde, pues si no sale con la PC con el pic te sera mas complicado...
Una vez , que pruebes tus tramas con tu conexion PC y Celular, te mandas hacer el programita del PIC que sera mas sencillo si ya tienes las tramas, este programa tiene que hacerte el envio de la sincronizacion y la trama ya sea de marcado de un numero , obtensión del IMEI , etc , pero tienes que ver bien como envias la trma , lo que yo hago es enviar por ejemplo primero la sincronizacion que es de enviar 200 veces la U en hexadecimal, luego el C1 , y posterior a eso mi trama de marcado, el celular tiene que reponderte con una trama de reconocimiento y luego unos 500ms aproximadamente no me acuerdo muy bien , tu tienes que responderle al celular que has recibido su trama de reconocimiento, bueno todo esto lo entenderas mejor cuando leas la información sobre el protocolo, y lo que hay en la red..
por si acaso esto de las 200 veces y lo de la C1, etc es solo pa el celular nokia 1100 y los parecidos, en cuanto a comandos AT es mas facil y te podras dar cuenta, pues solo envias los comandos AT en hexadecimal....

Luego, para lo del pic tendras que relizar el programa que como ya te dije tiene que enviar la sicronizacion y todo ello, la velocidad a la que el pic mandara los datos sera a 115200bps, que para los pic de microchip com el 16f877 trabajan con un cristal de 11Mhz, bueno es 11,0529 no me acuerdo muy bien , pero el datasheets del pic te dice como calcular este cristal para esa velocidad para el uso de la propiedad USART de estos pic , cuando programes tu pic este programa lo puedes probar conectando tu pic o tu tarjeta entrenadora de pic si la usas a la PC y puedes testear lo que bota con el hyperterminal , aunque el hyperterminal no te muestra hexadecimales pero, puedes bajarte este testeador del puerto serial llamado free serial port monitor , que te mostrara facilmente lo que envias...
Bueno, despues de probar que tu trama funciona de tu PC al celular y la misma trama la programas en tu pic , es hora de conectar tu celular al pic , esto con el mismo max 232, mas bien para la respuesta del celular , tendras que usar un tri-state para elevar el voltaje de 2.8 aprox a 5v usado por el pic,.....
Bueno, espero haberte ayudado en algo, es posible que no entiendas mucho de lo que de alguna manera e querido explicar, pero puedes preguntarme si hay algo que no queda bien entendido......HAy muchos en este foro que pueden ayudarme asi como lo hicieron conmigo, seria cuestion de que te contactes con ellos, aunque muchos de ellos parecen estar muy ocupados, aparte muchos de ellos son mucho mas experimentados..jeje
Creo que escribi ya mucho, pero lo hago porque quiero brindar la misma ayuda que muchos otras personas de este y otros foros me la brindaron ...............:)

Espero que tengas exitos en tu proyecto,y porfavor mantenme actualizado de tus avances quizas hay algunos problemas que tuviste que yo no tuve pero que juntos derrepnte podamos solucionar...bye
 
Hola amigos, estoy realizando un proyecto con comunicacion celular y estoy utilizando el nokia 1100, tengo un problema y es que cuando trato de enviar al celular el comando AT no me responde. En un principio pense que habia hecho el circuito mal y estaba todo correcto... en fin descarte todos los posibles errores que pense que tenia, estube investigando y vi que debo de tener el puerto de datos del celular habilitado para poder comunicarme con el. Alguien de ustedes sabe cual es el codigo para activar este puerto de comunicacion ??? Su ayuda me seria importante. Gracias.

Probe con el nokia 1112 pero tampoco me puedo comunicar con el, al parecer tambien tiene el mismo puerto bloqueado.
 
Última edición:
Hola como están gente apasionada a la electrónica, he estado siguiendo todos sus comentarios y me han sido de mucha ayuda a lo largo de estas 2 semanas que he estudiado sobre la interfaz a un celular... También me gustaría interconectar mi celular a un PIC, en este caso tengo a la mano el PIC16F877, pero primero haré unas pruebas con Hyperterminal.

Gracias por sus comentarios me han ayudado mucho. =D :aplauso:
 
Hola, soy nuevo en este foro. Intento conectar un nokia 1200b a un micro. Ya logre la conexion con el PC, pero no he podido marcar un numero, si alguien me puede ayudar?. Yo hice una aplicacion en VB6 que calcula los codigo check y la envia al Telefono. La cual adjunto. Ya la he probado con un nokia 3120, pero con el 1200b nada. Ojala alguien me pueda ayudar.

Saludos.
 

Adjuntos

  • chksum gen.rar
    9.7 KB · Visitas: 271
Hola chicos, estoy trabajando en un proyecto, se trata de una alarma con un PIC 16F877A y quiero enviar un SMS o hacer una llamada cuando se produzca una alarma.
Intento enviar con el PC comandos AT básicos pero no consigo comunicarme con el.
Al encender y apagar el telefono, un Nokia 3510 ó un 6230, solo recibo esta cadena.

U U . ÿ . . . . . 5 . À . . . Â . Ñ .

El puerto lo tengo configurado a 115.200 y tengo montado un conversor con un MAX232.
Envio con el PC el comando AT para que me conteste OK, y no me funciona.
Podeis ayudarme un poco? Gracias
 
Hola chicos, estoy trabajando en un proyecto, se trata de una alarma con un PIC 16F877A y quiero enviar un SMS o hacer una llamada cuando se produzca una alarma.
Intento enviar con el PC comandos AT básicos pero no consigo comunicarme con el.
Al encender y apagar el telefono, un Nokia 3510 ó un 6230, solo recibo esta cadena.

U U . ÿ . . . . . 5 . À . . . Â . Ñ .

El puerto lo tengo configurado a 115.200 y tengo montado un conversor con un MAX232.
Envio con el PC el comando AT para que me conteste OK, y no me funciona.
Podeis ayudarme un poco? Gracias
Tengo nuevos datos sobre el tema.
Si me conecto via Bluetooth el telefono responde perfectamente a los comandos.
Es necesario abrir el puerto serie del telefono con algun comando?
Saludos
 
hola!!!paso mucho tiempo desde lo que escribiste!!!pero estoy interesado en el tema,necesito hacer que el cel mande mensajes,para evitar de comprar un modem GPRS,en realidad unos cuantos...si es posible me encantaria saber acerca como lo hiciste,estoy presentando mi proyecto final y es la etapa de envios de datos...espero puedas ayudarme...muchas gracias!!!
 
hola buenas e descargado un proyecto de envió de sms por pic con el celular motorola c261 el problema que al compilar en el mplab me sale una serie de errores en especial en las funciones goto de ese adjunto el código para ver si me pueden echar una mano
Código:
__CONFIG _CP_OFF& _WDT_ON& _PWRTE_OFF& _XT_OSC
LIST  	   P=16F84A
INCLUDE    P16F84A.INC
status equ 03h
optionr equ 81h
trisa  equ 85h
porta  equ 05h
trisb  equ 86h
portb  equ 06h
PDel0  equ 20h
PDel0b equ 21h
PDel1b equ 22h
Inicio:
bsf status,5 ;		se pasa al banco 1 de RAM
movlw 1eh;
movwf trisa ;		se programa el puerto A como 11110
movlw 0fh;		carga el registro de trabajo w con 0f
movwf trisb ;		se programa los 4 primeros bit del puerto B como entrada
bcf optionr,7 ;		se habilitan resistencias de Pull Up
bcf status,5 ;		se pasa al banco 0 de RAM
call delay
call delay
call delay
call delay
Loop:
call delay
btfsc portb,0; si es 0 salta / testea si el pulsador para llamar está precionado
goto loop
call delay
call delay
call delay
;ATC+CMGF=1(enter)
call trama_41; A
call trama_54; T
call trama_2B; +
call trama_43; C
call trama_4D; M
call trama_47; G
call trama_46; F
call trama_3D; =
call trama_31; 1
call trama_0D; (ENTER)
call delay
call delay
call delay
;AT+CMGS="516567532"(enter)
call trama_41; A
call trama_54; T
call trama_2B; +
call trama_43; C
call trama_4D; M
call trama_47; G
call trama_53; S
call trama_3D; =
call trama_22; "
call trama_35; 5
call trama_31; 1
call trama_36; 6
call trama_35; 5
call trama_36; 6
call trama_37; 7
call trama_35; 5
call trama_33; 3
call trama_32; 2
call trama_22; "
call trama_0D; (ENTER)
call delay
call delay
call delay
call trama_43; C
call trama_43; C
call trama_43; C
call delay
call delay
call delay
call trama_1A; control+z
call loop
;----------genera la trama 41--------
trama_41:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 54--------
trama_54:
bcf porta,0;////0 bit de Start
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 43--------
trama_43:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 2B--------
trama_2B:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 4D--------
trama_4D:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 47--------
trama_47:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 46--------
trama_46:
bcf porta,0;////0 bit de Start
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 3D--------
trama_3D:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 31--------
trama_31:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 0D--------
trama_0D:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 53--------
trama_53:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 22--------
trama_22:
bcf porta,0;////0 bit de Start
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 35--------
trama_35:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 36--------
trama_36:
bcf porta,0;////0 bit de Start
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 37--------
trama_37:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 32--------
trama_32:
bcf porta,0;////0 bit de Start
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 33--------
trama_33:
bcf porta,0;////0 bit de Start
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bsf porta,0;////valor del bit 1
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bcf porta,0;////valor del bit 0
call Demora;
bsf porta,0;////bit de Stop
call Demora;
return
;----------genera la trama 1A--------
trama_1A:
bcf porta,0;////0 bit de Start
call Demora
bcf porta,0;////valor del bit 0
call Demora
bsf porta,0;////valor del bit 1
call Demora
bcf porta,0;////valor del bit 0
call Demora
bsf porta,0;////valor del bit 1
call Demora
bsf porta,0;////valor del bit 1
call Demora
bcf porta,0;////valor del bit 0
call Demora
bcf porta,0;////valor del bit 0
call Demora
bcf porta,0;////valor del bit 0
call Demora
bsf porta,0;////bit de Stop
call Demora
return
;--------------------Demora de 100 milisegundos----------------
delay    movlw     .110      ; 1 set numero de repeticion  (B)
         movwf     PDel0b     ; 1 |
PLoop1b  movlw     .181      ; 1 set numero de repeticion  (A)
         movwf     PDel1b     ; 1 |
PLoop2b  clrwdt              ; 1 clear watchdog
         clrwdt              ; 1 ciclo delay
         decfsz    PDel1b, 1  ; 1 + (1) es el tiempo 0  ? (A)
         goto      PLoop2b    ; 2 no, loop
         decfsz    PDel0b,  1 ; 1 + (1) es el tiempo 0  ? (B)
         goto      PLoop1b    ; 2 no, loop
PDelL1b  goto PDelL2b         ; 2 ciclos delay
PDelL2b  goto PDelL3b         ; 2 ciclos delay
PDelL3b  clrwdt              ; 1 ciclo delay
         return              ; 2+2 Fin.
;-------------------Demora de 1/115200--------------------------
;----------Demora de 1/9600 segundos--------------------------
DEMORA  movlw     .24       ; 1 set numero de repeticion 
        movwf     PDel0     ; 1 |
PLoop0  clrwdt              ; 1 clear watchdog
        decfsz    PDel0, 1  ; 1 + (1) es el tiempo 0  ?
        goto      PLoop0    ; 2 no, loop
PDelL1  goto PDelL2         ; 2 ciclos delay
PDelL2  clrwdt              ; 1 ciclo delay
        return              ; 2+2 Fin.
;-------------------------------------------------------------
end

me auto contesto había ciertos errores de orden y no sabia que distinguía entre mayúsculas y minúsculas :p
 
Última edición:
lo unico que puedes hacer es ponerle un diodo zenner de 2.7v pero ten cuidado al comprar el zener por que es muy dificil conseguirlo por lo regular te dan el de 3.3 v y eso generara que se active cuando queira el y no cuando se lo indiques este es uno NTE5063A 1w
 
mira lo del goto a mi tambien me salia y es por que no tienes las librerias lo que mas te aconsejo es que escribas el codigo tu yo asi lo hice y pon todas las librerias que uses en una misma carpeta el error sale por que no encuentra la direccion yo tambien tuve problemas pero al final lo hice funcionar solo que use el nokia y no el motorola. espero que asi puedas correr tu codigo y todo esto gracias a nuetro compañero carlos volt que es el autor del codigo yo me comunique con el y me dijo mas o menos como hacerlo y quedo listo honor a quien honor merence.

atte omar mecalco
Tecnologico de estudios superiores de ixtapaluca
 
hola aqui tienes el diagrama para la conexion pic, cel.

Recuerda el cel trabaja con una logica de 3.3 volts, ten muy en cuenta esto, la doble negacion en la salida tx del cel al pic, se utiliza para que el pic pueda reconecer la logica del cel, puedes utilizar un buffer o la doble negación.

Suerte.


Pd. Espero que el autor del diagrama no se enoje.

alguien me puede explicar el funcionamiento de este diagrama?

hola rayparker, por supuesto como piensas hacer esa activacion es bien factible yo lo hice en mi proyecto de grado de ingeniero con celulares nokia 1100 mediante reles conectados al teclado del celular y con un pic hacia llamadas y todo lo que puedas imaginar compañero, yo ya supere esa etapa que era un poco burda, y ahora es mucho mas factible mediante comandos AT debes usar un celular que los soporte por ejemplo los sony ericsson j300 y k300 que tienen ericport compras un cable para ese tipo de puerto los pines 4 5 y 8 seran rx , tx , gnd respectivamente conectas los rx y tx al pic por ejemplo un 16f873A y solo transmites las tramas desde el pic y listo por ejemplo si vas a llamar AL TELEFONO 3156130020 UN NUMERO CELULAR AQUI EN MI PAIS el programa del pic debe hacer esto:
enviar la trama ATD3156130020;

movlw "A"
call envia_dato
movlw "T"
call envia_dato
movlw "D"
call envia_dato
movlw "3"
call envia_dato
movlw "1"
call envia_dato
movlw "5"
call envia_dato
movlw "6"
call envia_dato
movlw "2"
call envia_dato
movlw "0"
call envia_dato
movlw "0"
call envia_dato
movlw "0"
call envia_dato
movlw "2"
call envia_dato
movlw "0"
call envia_dato
movlw ";"
call envia_dato

SI NECESITAS ALGUN PROGRAMA EJEMPLO DE COMUNICACION CON PIC YA SEA CON MANEJO DE RELES COMO LO PIENSAS O CON COMANDOS AT TE LO PUEDO ENVIAR Y DESDE ALLI PARTES ESPERO HALLA SIDO ESTO DE AYUDA COMPAÑERO
SALUDOS DEL MOSTRO DE LOS PICS



////////////////////////////////////////////////////////////////////////////////////////////////////////


es muy interesante este comentario! quisiera saber si me puedes ayudar con algo..
TENGO UN SENSOR DE PRESION EL CUAL ME VA A ENVIAR UNA SEÑAL DEPENDIENDO DEL DICHA PRESION.. QUIERO HACER UN PROGRAMA USANDO UN PIC Q ME ENVIE UN SMS CUANDO
LA PRESION PASE CIERTO NIVEL.. OJO NECESITO Q LA COMUNICACION CON EL CELULAR SEA INALAMBRICA USANDO LA RED GSM
 
Última edición:
Atrás
Arriba