modulo bluetooh

20
 DTE Domótica y Sistemas Embebidos para Comunicaciones  Inalámbricas- Curso 2010-2011 MASTER EN SISTEMAS TELEMÁTICOS E INFORMÁTICOS DOMÓTICA Y SISTEMAS EMBEBIDOS PARA COMUNICACIONES INALÁMBRICAS GUIÓN PRÁCTICA 2: Comunicación PIC y módulo Bluetooth Conexión hardware y configuración a bajo nivel entre un PIC y un módulo  Bluetooth  Profesor: Cristina Rodríguez Sánchez

Upload: juan-olivares

Post on 11-Jul-2015

168 views

Category:

Documents


0 download

TRANSCRIPT

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 1/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

MASTER EN SISTEMAS TELEMÁTICOS E INFORMÁTICOS 

DOMÓTICA Y SISTEMAS EMBEBIDOS PARACOMUNICACIONES INALÁMBRICAS

GUIÓN PRÁCTICA 2:

Comunicación PIC y módulo Bluetooth

Conexión hardware y configuración a bajo nivel entre un PIC y un módulo Bluetooth

 Profesor:

Cristina Rodríguez Sánchez

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 2/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

GUIÓN PRÁCTICA 2:

Comunicación PIC y módulo Bluetooth

Conexión hardware y configuración a bajo nivel entre un PIC yun módulo Bluetooth

ÍNDICE

1 OBJETIVO DE LA PRÁCTICA........................................................................................ 31.1 Objetivo General............................................................................................... 31.2 Objetivos Específicos. ...................................................................................... 3

2 MATERIAL Y MONTAJE.............................................................................................. 32.1 Material............................................................................................................. 32.2 Montaje Hardware ............................................................................................ 5

3 DISEÑO DEL PROGRAMA EN E NSAMBLADOR .............................................................. 64 DISEÑO DE LA APLICACIÓN DE CONTROL PARA EL MÓDULO BLUETOOTH. ............. 10

4.1 Diagrama del Ejemplo “ejepicbt1.asm” ......................................................... 154.2 Diagrama general............................................................................................ 164.3 Diagrama A: Configuración de los registros del PIC16F876......................... 174.4 Diagrama B: Configuración para Bluetooth................................................... 184.5 Diagramas de control comunicación BT. ....................................................... 19

4.5.1 Diagrama conexión con otro módulo Bluetooth..................................... 194.5.2 Diagrama del protocolo de control de encendido de las bombillas........ 20

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 3/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

1  OBJETIVO DE LA PRÁCTICA 

1.1  Objetivo General.

 Al terminar la práctica el alumno deberá ser capaz de:

-  Realizar un programa que desde el microcontrolador permita conexiones inalámbricas  por Bluetooth para controlar el sistema de encendido de los LEDs. Se tendrá querealizar un protocolo que desde el microcontrolador permita recibir peticiones desdedispositivos móviles con Bluetooth.

-  Realizar un diseño físico y lógico para la conexión hardware entre un microcontrolador (PIC 16F876) con un módulo Bluetooth realizando una configuración a bajo nivel.

o  El lenguaje de programación podrá ser C o podrá ser ensamblador.-  Opción opcional y complementaria: realizar la opción utilizando el módulo Arduino

 presentado en la práctica 1.o  El lenguaje de programación será java para Arduino.

1.2  Objetivos Específicos.

 Al terminar la práctica el alumno deberá ser capaz de:

Con respecto al microcontrolador del kit:

-  Interpretar y conocer los comandos AT para la comunicación con el módulo Bluetooth.

-  Conocer las especificaciones del PIC16F876.-  Conexión física entre el PIC16F876 y el módulo USART del módulo Bluetooth.-  Enviar a través del módulo USART del microcontrolador los comandos AT para la

configuración de la comunicación.-  Probar la correcta transmisión y recepción de los datos.-  Realizar un protocolo para recibir tramas de datos que controlen el encendido/apagado

de bombillas, simuladas por unos LEDs.-  Una vez depurado este protocolo, en la siguiente práctica (práctica 3), se realizará un

  programa para un teléfono móvil, que “utilizará” el protocolo implementado paracomunicarse con el kit del microcontrolador, y así, controlar el sistema domótico demanera inalámbrica.

Con respecto al kit de Arduino:-  Analizar los comandos y librerías-  Configurar el puerto serie para la comunicación con el chip de Bluegiga.- 

2  MATERIAL Y MONTAJE 

2.1  Material

-  Hoja de especificaciones del PIC16F876 (PIC16F87X.pdf).-  Cable conexión Puerto serie RS232.

-  Alimentación para el módulo bluetooth y el pic.-  PC con Sistema Operativo Windows o Linux.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 4/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

-  CD con MPLAB IDE para Windows.-  Programa ejemplo “ejepicbt1.asm” en ensamblador del directorio

“programas_ejemplo_HD\ENSAMB_PIC”.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 5/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

2.2  Montaje Hardware

Figura 1. En la figura aparece un reloj de 4Mhz, puede ser ese mismo o bien uno de 3.6864, revisa tu placa.

En la figura anterior, se presenta el diseño lógico de las conexiones entre elmicrocontrolador y el módulo Bluetooth de Bluegiga del kit de las prácticas.

Como se puede observar, tanto la alimentación como la tierra, deben ser las mismas paraque ambos dispositivos tengan las mismas referencias. La resistencia que se pone en el pin Vppes para evitar que el dispositivo esté haciendo reset continuamente (más información en eldatasheet del PIC16F876).

Es necesario que ambos (módulo BT y pic16f876) tengan el mismo nivel de tensión dealimentación puesto que los pines RX y TX dependen del valor con que se alimente el pin Vdd(datasheet PIC16F876). Estos pines se cruzan en la conexión con el módulo BT debido a quecuando el microcontrolador envía por TX el otro módulo lo debe recibir por RX. Y lo mismocon el pin RX del PIC. El reloj de cristal puede ser de 4Mhz o de 3.6864Mhz, debescomprobar este valor para realizar los cálculos que se van a requerir para esta práctica.En los pines RB6 y RB5 se han puesto led’s junto con resistencias, para que sirva paradepurar lo que sucede en el programa. Es decir, que se enciendan dependiendo delestado del control que hayamos implementado para el microcontrolador. También losutilizaremos para que simulen dos bombillas. 

Una vez realizadas las conexiones de la figura, el siguiente paso es conectar laalimentación al módulo Bluetooth (que suministrará la alimentación para el PIC).

Nota: Se suele conectar para una mejor protección del circuito un condensador de100nF entre Vdd y Vss.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 6/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

3  DISEÑO DEL PROGRAMA EN ENSAMBLADOR  

-  Paso 1: Instalar el MPlab. Programa para compilar código a bajo nivel, comoensamblador.

-  Paso 2: Abrimos el MPLab. Desplegamos el menú Project y elegimos “Create NewProyect”. A continuación, aparece un “Wizard” que nos guiará en la creación del

 proyecto. Pulsamos “Siguiente”. Ver siguiente figura.

Figura 2

-  Paso 3: Elegimos el dispositivo. En este caso seleccionaremos “PIC16F876”. Pulsamos

siguiente.

Figura 3

-  Paso 4: Indicamos el path del compilador, del linkador de librerías como aparece en lasiguiente figura. Pulsamos siguiente.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 7/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

Figura 4

-  Paso 5: Indicamos el nombre del proyecto en la casilla “Proyect Name”, lo

denominaremos “practicaPIC”. En la casilla de “Proyect Directory” indicamos el pathdel proyecto, podemos cambiarlo pulsando la tecla “Browse”. Y finalmente pulsamossiguiente.

Figura 5

-  Paso 6: En la siguiente figura aparece un menú para añadir un fichero a nuestro proyecto, pero puesto que partimos de 0 no lo añadimos. Sino, simplemente apareceríandos ventanas: en la de la izquierda aparecen los archivos de nuestro ordenador,

  buscamos el que queremos añadir y pulsamos la tecla “Añadir”. A la derecha

aparecerán los ficheros que se hayan añadido.

-  Paso 7: Pulsamos “Finalizar” y nuestro proyecto ya está creado. Ver siguiente figura.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 8/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

Figura 6

-  Paso 8: Una vez creado el proyecto nos aparecerá en la parte izquierda de la pantallauna ventana en la que se incluyen los ficheros de nuestro proyecto.

o  Paso 8.1: Si no tenemos el código de ningún fichero que queramos añadir anuestro proyecto pulsamos:

  “File→ New”.  Aparece una ventana en blanco. Escribimos el código del fichero.  Guardamos el fichero con extensión “.asm”.

o  Paso 8.2: Una vez que tenemos el código, en la ventana del proyecto pulsamoscon el botón derecho del ratón sobre “Source Files” y seleccionamos “AddFiles…”. Nos aparece un menú para seleccionar el archivo guardado en nuestroPC con extensión “.asm”.

Figura 7

-  Paso 9: Lo siguiente será configurar los bits del dispositivo. Para ello pulsamos sobre“configure”→ “configure bits”. Los configuramos con los datos que aparecen en lasiguiente figura.

o  Oscillator: XT. Cristal de cuarzo externo.o  Watchdog Timer: Desactivado.o  Power Up Timer: Desactivado.o  Brown Out Detect: Desactivado.o  Low Voltage Program: Activado. Trabaja con tensión baja.o  Flash Program Write: Activado. Permitimos reescribir la flash del pic.o  Data EE Read Protect: Protección de datos del pic16f876 para lectura

desactivado.o  Code Protect: Desactivado. Se puede cambiar el programa del dispositivo.

Reprogramar.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 9/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

Figura 8

-  Paso 10: Finalmente compilamos el programa pulsando el icono “compile” y“build”.

-  Paso 11: Si no ha habido ningún problema al compilar saldrá una ventana indicándolo.Ahora podemos grabar el programa en el pic. Para ello primero tenemos que seleccionar el programador. En nuestro caso, seleccionaremos en el menú “Programmer” → “PICSTART PLUS”.

o  Indicamos el puerto en el que está conectado el programador:“Programmer”→ “Settings”

Figura 9

-  Paso 12: Posteriormente activamos el programador en el mismo menú “Programmer”→ “Enable”.

-  Paso 13: Los iconos del programador se activarán. Existen 4: read, write, verify, clear.Pulsamos el botón “clear”, y posteriormente “write”. Si no ha habido ningún problema

indicará que se ha producido de forma satisfactoria la programación.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 10/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

4  DISEÑO DE LA APLICACIÓN DE CONTROL PARA EL MÓDULO

BLUETOOTH.

-   MODO DE DEPURACIÓN: Para probar el correcto funcionamiento del montaje y del programa en ensamblador se puede utilizar un modo de depuración del montaje HW:

o  Una vez hecho el montaje HW, y programado el pic16f876 con el programa para la comunicación con el módulo BT, se conecta el conector serie USARTdel módulo BT al PC utilizando el cable RS232.

o  Lo siguiente es abrir un hyperterminal, en Windows o Linux. Con las mismascaracterísticas que la práctica 1.

o  Por último, alimentar el montaje HW.o  A continuación, en el hyperterminal podremos ver los comandos AT que se

envían y reciben entre el microcontrolador al módulo BT.

-  Junto al material de la práctica se ha dejado un ejemplo de un programa en ensamblador “ejepicbt1.asm” que realiza la configuración del módulo USART del PIC16f876 para lacomunicación con el módulo USART del módulo bluetooth. El programa tiene unejemplo de cómo configurar un chip Bluetooth a 9600 baudios pero con un reloj de4Mhz. Tienes que modificarlo para que vaya a 9600 baudios pero para un reloj de3.6864Mhz. NOTA: Recuerda que el chip BT, por defecto, está configurado a 115200baudios. Utiliza el comando que realiza esta tarea. Posteriormente, vuelve a modificar la configuración del hiperterminal para que vaya a 9600 baudios). 

-  El programa “ejepicbt1.asm” realiza las labores descritas en el diagrama 4.1. Y una vezrealizada la configuración serie, comienza a enviar al módulo de Bluegiga. Lo que leenvíamos como ejemplo es el comando “AT”. Y recibiremos “AT + fin de línea +

retorno de carro + OK + fin de línea + retorno de carro”.

-  En el diagrama 4.2 se presenta el esquema a seguir para la realización de la prácticaTOTAL de la práctica.

-  Con este ejemplo, el guión de la práctica 1 y los diagramas de inicialización descritos a partir de los diagramas de los apartados 4.3 y 4.4 podremos configurar nuestro módulo bluetooth para que otros dispositivos se conecten a él.

-  Para que te funcione correctamente la recepción tienes dos opciones:

o  Desactivar el eco.o  Modificar la subrutina de Recibir_Serie para que no haya problemas al

transmitir y recibir datos por la USART del pic. Se ha señalado en rojo la parteque cambia con respecto al código origende ejemplo.

Recibir_Serie

BANKSEL RCSTAbcf RCSTA,CRENbsf RCSTA,CREN

Esperar_Dato ; Recibir_Serie ; Esperar_Dato

BANKSEL PIR1

; Las dos lineas siguientes las comentamos para el simulador unicamente

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 11/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

  btfss PIR1,RCIF ; Prueba si el buffer de RX esta llenogoto Esperar_Dato ; Recibir_Serie ; Esperar_Dato ; No hay dato

  bcf PIR1,RCIF ; Hay datoBANKSEL RCREGmovf RCREG,W ; Si el buffer esta lleno lo lee y guarda

RXdato

BANKSEL dato_RECmovwf dato_REC

return

Si no utilizas ninguna de las dos opciones es posible que en la siguiente práctica tengas problemas para que el pic reciba los datos enviados desde el teléfono.

HITOS A SEGUIR:(Recuerda que el informe de esta práctica debes de ir haciéndolo a medida que hagas la práctica, sólo se entregará al profesor el día de la entrega de la memoria final, pero recuerdaestar atento a las pautas de entrega en clase de partes del código o especificaciones. Estetrabajo continuo se valora positivamente en la nota final)Consejo importante: vas a empezar a utilizar un hardware diseñado por el departamento detecnología electrónica, por los propios profesores de la asignatura, que con un coste muy

 pequeño te ofrecen la posibilidad de crear tu desarrollo de un mini-sistema embebido paraencender/apagar leds (bombillas).Además, estas placas las hemos ido evolucionando desde el año 2006, te rogamos que lastratas con el respeto adecuado ya que otros compañeros tuyos tamibén las utilizarán, paraesta asignatura y para otras.

Tienes que ser paciente con el hardware, hace lo que le dices, pero es díficil de depurar. Asíque lee atentemente los hitos e intenta seguir los consejos que te damos.

Hito 1: La configuración Bluetooth que se debe realizar se describe en el diagrama 4.3 y4.4 es:

i)  Configuración del módulo UART del pic16f876 (diagrama 4.3).ii)  Configuración registros del módulo Bluetooth a través de comandos AT (diagrama

4.4).(1)  Nombre del dispositivo: “DOMOLUZ”.(2)  Tipo de dispositivo: “Remote Control”. Ayuda en el documento

“BluetoothBaseBand.pdf”.

(3)  Nombre del servicio “Serial Port”: “ServLight”.(4)  Conectable y descubrible por otros dispositivos.(5)  Si queremos Autentificación el PIN=”1234”. O si no queremos que haya

autentificación no introducimos el PIN.(6)  El rango de cobertura del dispositivo Bluetooth será de 10-20 metros.(7)  Para finalizar, se puede manda un reset para que comience a trabajar el módulo

Bluetooth con los parámetros de configuración dados. Con este comando, sihubiese alguna conexión previa no cerrada, se terminaría. El ejemplo de estecomando no viene en el diagrama, pero se puede incluir así como otros que seconsideren necesarios para mejor la práctica.

Hito 2: El siguiente paso será implementar el protocolo de control de bombillas. Puede seguirse otro de manera opcional, pero se debe seguir el mismo criterio de simplicidad.Protocolo para encender las bombillas. Diagramas del apartado 4.5:

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 12/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

(1)  Una vez establecida la conexión entre el kit (pic+módulo bt) y otro dispositivo bluetooth (pc ó teléfono móvil) se debe realizar lo siguiente:

  Desde el teléfono móvil con bluetooth se envía:•  Paquete para encender bombilla: @i1 + \r

o  Donde “i” es el número de bombilla que se quiereencender.

•  Paquete para apagar bombilla: @i0+ \r o  Donde “i” es el número de bombilla que se quiere

encender.  La respuesta desde la placa de la práctica a estos paquetes si se han

recibido correctamente, es decir, cumplen la sintaxis:•  Respuesta a los paquetes: OK\r

Hito 3: Simular :1)  Utilizando el manual de MPLAB subido en la web de la asignatura se deberán

seguir los pasos para simular el código desde el MPLAB.2)  Debes describir qué bits has testeado para la simulación.

3)  Recuerda que para recibir y enviar por la UART hay ciertos bits en lassubrutinas (putchar y recibir_serie) que no permiten ser cambiados desde elsimulador. Piensa como lo harías.

Hito 4: Bajar a placa y validar desde el hiperterminal:1)  ANTES DE BAJAR A PLACA SE DEBE:

a.  Configurar el chip bluetooth para disminuir la velocidad a 9600  baudios. Recuerda que se ha acordado que el pic va a hablar a 9600 baudios a un reloj de 3.6864 Mhz. Y recuerda también que el bluetoothva por defecto a 115200 baudios.

 b.  También se recomienda quitar el ECO del chip bluetooth para evitar errores en el código. Si no quitas el eco recuerda que todo lo que se

manda por la UART del pic al bluetooth se replica, por lo tanto, tu  programa de leer los paquetes de encendido/apagado puede fallar yaque va a tener que leer demasiados caracteres, y si no se hace un usoeficiente de la UART puede fallarte el código.

c.  Recuerda también echar un vistazo al datasheet del pic para ver qué bitsdebes reiniciar en la UART para evitar problemas para leer del buffer de la UART. Esto no es obligatorio pero conveniente que lo intentesaveriguar.

2)  Compila la versión donde sólo se envían los comandos AT descritos en deldiagrama 4.4.

3)  Tendrás que leerte el manual para bajar el programa utilizando el ic-prog.

Recuerda que el entorno MPLAB tiene su propio simulador y grabador de pics, pero vamos a utilizar uno muy económico y que sólo requiere de un programa:ic-prog.

4)  Para grabar el código con el ic-prog localiza el fichero .hex generado al realizar un “build all” de tu práctica. Copia el .hex y cárgalo a tu pic desde el ic-prog.Recuerda leer el manual.

5)  Enciende la placa y desde tu móvil comprueba que se ha cambiado el nombredel chip bluetooth.

a.  Si tienes problemas para ver el nombre desde tu móvil asegúrate que laantena está bien conectada. Si no toca levemente con el dedo.

 b.  Otra cosa que puedes hacer es encender la placa conectada al

hiperterminal y QUITANDO EL PIC. Es decir, como si estuviésemosen la práctica 1 para hacer lo siguiente:

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 13/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

i.  Teclea el comando SET y mira (con el pic quitado) si losregistros del bluetooth se han actualizado. Por ejemplo, cambieel nombre del dispositivo y no le pongas PIN.

ii.  Comprueba que está a 9600 baudios.iii.  Si no se han alterado los comandos del bluetooth avisa al

  profesor. Comprueba que has compilado el código yconfigurado los bits de reloj y del pic (recuerda en la parte delmanual del MPLAB donde se hablaba del menú en MPLABconfigure-> configure bits, tienes que ponerlo igual que en elmanual).

iv.  Si te sigue sin funcionar comprueba que has configurado el pic,el reloj y los bits de Vcc/MCLR correctamente desde el ic-

 prog.v.  Si te sigue sin funcionar avisa al profesor.

c.  Para probar que te funciona el código, o que al menos has grabado bien,AHORA SÍ QUE TIENES QUE PONER EL PIC EN LA PLACA YCONECTARLA AL HIPERTERMINAL, enciende la placa conectado

al hiperterminal, comprueba que los Leds del inicio se apagan y seencienden (recuerda el código de ejemplo). Por favor, apaga la placa yenciéndele adecuadamente utilizando el conector cada vez que hagascambios en el software del pic. No coloques el pic con la placaencendida porque puedes estropearla.

d.  Es aconsejable ponerse en ciertos puntos encender/apagar un led parasaber por que partes vas del código en tiempo real. Ten en cuenta queentre encender y apagar un led tienes que meter una Pausa para que tede tiempo ver como se encienden y se apagan.

6)  Haz lo mismo (pasos Hito 4 del 1 al 4) con la versión de código que sóloexamina el protocolo de encendido/apagado de bombillas.

a.  Para probar esta parte SÍ TIENES QUE CONECTAR EL PIC A LA

PLACA Y LA PLACA AL HIPERTERMINAL. b.  Recuerda tener bien configurado los bits del menú de mplab (configure

-> configure bits) y en el ic-prog (reloj de cristal, tipo de pic, etc).c.  Ahora tienes al hiperterminal funcionando como sniffer de tu práctica.

Cuando escribas por el teclado es como si le estuvieses enviando al piccomandos como si fueras el chip bluetooth. Es decir, cuando le escribescosas por teclado al pic te llegan como si fueras el móvil que le haenviado por bluetooth un comando de encender/apagar.

d.  Así que prueba a enviar encender la bombilla 1 desde el teclado a ver que pasa.

e.  A veces se recomienda en el código del pic utilizar un led comodepurador, de tal modo que, sabes si está analizando bien la trama. Se

dice como ejemplo un led pero puedes utilizar los que quieras hasta queconsigas entender que te funciona.

f.  Otros compañeros utilizan lo siguiente:i.  Cuando el pic recibe correctamente una secuencia de

encendido/apagado el propio pic envía OK1, OK2, OK3…indicando el 1, 2, 3… el estado del funcionamiento del pic.

ii.  Si te falla quita el chip bluetooth con cuidado pero pidiendo permiso antes a la profesora. NO suele ser el problema pero sitienes algo mal del código te puede dar una excepción que noatiendes porque no se detecta.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 14/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

 NOTA: Si utilizas un adaptador usb-rs232 puedes tener problemas a utilizar el ic-prog. Por eso se recomienda quehagas uso de los ordenadores de prácticas que tienen rs232 aunque sea para grabarte el programa y depurar con el hiperterminal.

 NOTA: En la entrega final de la práctica cada uno de estos hitos debe estar documentado correctamente.

 NOTA PARA LA SIGUIENTE PRÁCTICA: antes de implementar la siguiente práctica tienes que haber testeado si tu

  programa para el PIC funciona para recibir las peticiones de encendido/apagado. Para ello, conecta la placa al hiperterminal y escribe los comandos por el teclado que enviaría el móvil. Si la placa enciende y apaga la bombillasque le indicas por los comandos del hiperterminal (teclado), debería ser automático que te funcionase con el teléfonomóvil. Esto es porque también le llegarán de manera serializada los comandos al microcontrolador del kit, pero envez de utilizar el puerto serie para comunicarse con él, se realizará por Bluetooth mediante el envío de comandosdesde un teléfono móvil o un PC.

 El objetivo es poder enlazar esta práctica con la siguiente, que será sobre el programa en el teléfono móvil que seencargará de controlar el sistema domótico.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 15/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

4.1  Diagrama del Ejemplo “ejepicbt1.asm”

Envío del comando

“AT + fin de línea + retorno decarro”

al módulo BT

Fin

Inicio

Configuración serie del PIC9600 baudios, 8 bits, 1 bit stop, 0 paridad.

Habilitada la transmisión.Reloj 3.6864Mhz

Lectura respuesta“AT + fin de línea + retorno de

carro +OK + fin de línea + retorno de

carro”

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 16/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

4.2  Diagrama general

Configurar comunicaciónBluetooth con comandos AT

enviados al módulo BT

Atender peticiones

Inicio

Configuración serie del PIC57600 baudios, 8 bits, 1 bit stop, 0

paridad.Habilitada la transmisión.

Procesar comunicaciones

¿fin?

Fin

NO

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 17/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

4.3  Diagrama A: Configuración de los registros del PIC16F876

Atributos de la comunicación serie:9200 baudios, (3.6864Mhz)

8 bits,1 bit stop,0 paridad

Configurar el registro TXSTA y RXSTAUSART:

 Activar el bit TXEN (permitir transmisión) Activar el bit RXEN (permitir recepción)

 Activar el bit BRGH (alta velocidad).Configuración asíncrona.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 18/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

4.4  Diagrama B: Configuración para Bluetooth

sddd

Configurar comunicación

Bluetooth con comandosAT

Enviar al módulo BT:SET BT NAME DOMOLUZ 

Recibir del módulo BT:SET BT NAME DOMOLUZ 

Enviar al módulo BT:SET BT CLASS xxxxxx 

Recibir del módulo BT:SET BT CLASS xxxxxx 

Enviar al módulo BT:SET BT PAGEMODE x 2000 1 

Recibir del módulo BT:SET BT PAGEMODE 3 2000 1 

Enviar al módulo BT:SET PROFILE SPP ServLight

Recibir del módulo BT:SET PROFILE SPP ServLight

Configuración Bluetoothrealizada con éxito.

Enviar al módulo BT:SET BT AUTH * 1234

Recibir del módulo BT:SET BT AUTH * 1234

Enviar al módulo BT:SET BT POWER X X

Recibir del módulo BT:SET BT POWER X X 

Nota: Se deben rellenar loscampos donde está la Xs por losbytes requeridos par ala

 funcionalidad que se pide.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 19/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

4.5  Diagramas de control comunicación BT.

4.5.1  Diagrama conexión con otro módulo Bluetooth

- En el siguiente diagrama se muestra el proceso en el cual un teléfono móvil u otro

dispositivo bluetooth solicita la conexión con el servicio 1101 (UUID_SERVICIO)del módulo Bluetooth.

- El proceso es gestión de aceptar la comunicación se realiza por el propio móduloBluetooth, sólo es necesario leer por el puerto serie continuamente. Por ello, esimportante configurar de modo correcto todos los registros del módulo para que el

 proceso sea automatizado.- Por tanto, el siguiente paso es quedarse escuchando en el puerto serie abierto con el

módulo Bluetooth y una vez que un dispositivo se conecte al módulo, el propio chipBT, internamente responderá con la cadena

“RING [link id] 00:07:80:00:00:00 [channel] RFCOMM”Link_id: Será el identificador del enlace para la conexión.Channel: será el canal abierto para la conexión RFCOMM. 

- Cuando dos dispositivos se desconectan el mensaje dado por el chip BT es“NO CARRIER ”.

Procesar comunicaciones.

RING 0 MAC_TELEFONO 1 RFCOMM

(llamada de conexión entrante)

Enviar al teléfono: CONNECT 0 MAC_TELEFONO 1 RFCOMM

Conexión establecida con el teléfonoy el módulo Bluetooth.

Recepción datos para el controlde bombillas. Diagrama 4.5.2 

*externo: Teléfono móvil u otro dispositivo Bluetooth que se haya conectado a nuestra placade la práctica.

5/11/2018 modulo bluetooh - slidepdf.com

http://slidepdf.com/reader/full/modulo-bluetooh 20/20

DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2010-2011

4.5.2  Diagrama del protocolo de control de encendido de las bombillas.

 NOTA: LOS COMANDOS DESCRITOS EN ESTE DIAGRAMA PARA ENCENDER OAPAGAR BOMBILLAS SON UN EJEMPLO. SI QUIERES PUEDES CAMBIAR ELFORMATO. PERO RECUERDA: DEBEN EMPEZAR POR @.

Recepción datos para

el control de bombillas. 

@11 + “\cr”

¿Recibido OK1ON?Visualizar respuestarecibida.

@10 + “\r”

¿Recibido OK1OFF?Visualizar respuestarecibida.

Desconectar la conexiónBT.

Fin

Lectura del paquete.Encendida Bombilla 1.

Enviar al teléfono:OK1ON 

Lectura del paquete.Apagar Bombilla 1.

Enviar al teléfono:OK1OFF 

Espera nuevasconexiones.

ó