Download - Practica Pic Bluetooth

Transcript
  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    1

    MASTER EN SISTEMAS TELEMTICOS E INFORMTICOS DOMTICA Y SISTEMAS EMBEBIDOS PARA COMUNICACIONES INALMBRICAS GUIN PRCTICA 2: Comunicacin PIC y mdulo Bluetooth Conexin hardware y configuracin a bajo nivel entre un PIC y un mdulo Bluetooth

    Profesor: Cristina Rodrguez Snchez

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    2

    GUIN PRCTICA 2:

    Comunicacin PIC y mdulo Bluetooth

    Conexin hardware y configuracin a bajo nivel entre un PIC y un mdulo Bluetooth

    NDICE 1 OBJETIVO DE LA PRCTICA........................................................................................ 3

    1.1 Objetivo General............................................................................................... 3 1.2 Objetivos Especficos. ...................................................................................... 3

    2 MATERIAL Y MONTAJE.............................................................................................. 3 2.1 Material............................................................................................................. 3 2.2 Montaje Hardware ............................................................................................ 5

    3 DISEO DEL PROGRAMA EN ENSAMBLADOR.............................................................. 6 4 DISEO DE LA APLICACIN DE CONTROL PARA EL MDULO BLUETOOTH. ............. 10

    4.1 Diagrama del Ejemplo ejepicbt1.asm ......................................................... 15 4.2 Diagrama general............................................................................................ 16 4.3 Diagrama A: Configuracin de los registros del PIC16F876......................... 17 4.4 Diagrama B: Configuracin para Bluetooth................................................... 18 4.5 Diagramas de control comunicacin BT. ....................................................... 19

    4.5.1 Diagrama conexin con otro mdulo Bluetooth..................................... 19 4.5.2 Diagrama del protocolo de control de encendido de las bombillas. ....... 20

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    3

    1 OBJETIVO DE LA PRCTICA

    1.1 Objetivo General. Al terminar la prctica el alumno deber ser capaz de: - Realizar un programa que desde el microcontrolador permita conexiones inalmbricas

    por Bluetooth para controlar el sistema de encendido de los LEDs. Se tendr que realizar un protocolo que desde el microcontrolador permita recibir peticiones desde dispositivos mviles con Bluetooth.

    - Realizar un diseo fsico y lgico para la conexin hardware entre un microcontrolador (PIC 16F876) con un mdulo Bluetooth realizando una configuracin a bajo nivel.

    o El lenguaje de programacin podr ser C o podr ser ensamblador. - Opcin opcional y complementaria: realizar la opcin utilizando el mdulo Arduino

    presentado en la prctica 1. o El lenguaje de programacin ser java para Arduino.

    1.2 Objetivos Especficos. Al terminar la prctica el alumno deber ser capaz de:

    Con respecto al microcontrolador del kit:

    - Interpretar y conocer los comandos AT para la comunicacin con el mdulo Bluetooth. - Conocer las especificaciones del PIC16F876. - Conexin fsica entre el PIC16F876 y el mdulo USART del mdulo Bluetooth. - Enviar a travs del mdulo USART del microcontrolador los comandos AT para la

    configuracin de la comunicacin. - Probar la correcta transmisin y recepcin 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 prctica (prctica 3), se realizar un

    programa para un telfono mvil, que utilizar el protocolo implementado para comunicarse con el kit del microcontrolador, y as, controlar el sistema domtico de manera inalmbrica.

    Con respecto al kit de Arduino:

    - Analizar los comandos y libreras - Configurar el puerto serie para la comunicacin con el chip de Bluegiga. -

    2 MATERIAL Y MONTAJE

    2.1 Material - Hoja de especificaciones del PIC16F876 (PIC16F87X.pdf). - Cable conexin Puerto serie RS232. - Alimentacin para el mdulo bluetooth y el pic. - PC con Sistema Operativo Windows o Linux.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    4

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

    programas_ejemplo_HD\ENSAMB_PIC.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    5

    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 diseo lgico de las conexiones entre el

    microcontrolador y el mdulo Bluetooth de Bluegiga del kit de las prcticas. Como se puede observar, tanto la alimentacin como la tierra, deben ser las mismas para

    que ambos dispositivos tengan las mismas referencias. La resistencia que se pone en el pin Vpp es para evitar que el dispositivo est haciendo reset continuamente (ms informacin en el datasheet del PIC16F876).

    Es necesario que ambos (mdulo BT y pic16f876) tengan el mismo nivel de tensin de

    alimentacin 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 conexin con el mdulo BT debido a que cuando el microcontrolador enva por TX el otro mdulo lo debe recibir por RX. Y lo mismo con el pin RX del PIC. El reloj de cristal puede ser de 4Mhz o de 3.6864Mhz, debes comprobar este valor para realizar los clculos que se van a requerir para esta prctica. En los pines RB6 y RB5 se han puesto leds junto con resistencias, para que sirva para depurar lo que sucede en el programa. Es decir, que se enciendan dependiendo del estado del control que hayamos implementado para el microcontrolador. Tambin los utilizaremos para que simulen dos bombillas.

    Una vez realizadas las conexiones de la figura, el siguiente paso es conectar la

    alimentacin al mdulo Bluetooth (que suministrar la alimentacin para el PIC). Nota: Se suele conectar para una mejor proteccin del circuito un condensador de

    100nF entre Vdd y Vss.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    6

    3 DISEO DEL PROGRAMA EN ENSAMBLADOR

    - Paso 1: Instalar el MPlab. Programa para compilar cdigo a bajo nivel, como ensamblador.

    - Paso 2: Abrimos el MPLab. Desplegamos el men Project y elegimos Create New

    Proyect. A continuacin, aparece un Wizard que nos guiar en la creacin 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 libreras como aparece en la

    siguiente figura. Pulsamos siguiente.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    7

    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 path del proyecto, podemos cambiarlo pulsando la tecla Browse. Y finalmente pulsamos siguiente.

    Figura 5

    - Paso 6: En la siguiente figura aparece un men para aadir un fichero a nuestro

    proyecto, pero puesto que partimos de 0 no lo aadimos. Sino, simplemente apareceran dos ventanas: en la de la izquierda aparecen los archivos de nuestro ordenador, buscamos el que queremos aadir y pulsamos la tecla Aadir. A la derecha aparecern los ficheros que se hayan aadido.

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

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    8

    Figura 6

    - Paso 8: Una vez creado el proyecto nos aparecer en la parte izquierda de la pantalla

    una ventana en la que se incluyen los ficheros de nuestro proyecto. o Paso 8.1: Si no tenemos el cdigo de ningn fichero que queramos aadir a

    nuestro proyecto pulsamos: File New. Aparece una ventana en blanco. Escribimos el cdigo del fichero. Guardamos el fichero con extensin .asm.

    o Paso 8.2: Una vez que tenemos el cdigo, en la ventana del proyecto pulsamos con el botn derecho del ratn sobre Source Files y seleccionamos Add Files. Nos aparece un men para seleccionar el archivo guardado en nuestro PC con extensin .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 la siguiente 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 tensin baja. o Flash Program Write: Activado. Permitimos reescribir la flash del pic. o Data EE Read Protect: Proteccin de datos del pic16f876 para lectura

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

    Reprogramar.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    9

    Figura 8

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

    - Paso 11: Si no ha habido ningn problema al compilar saldr una ventana indicndolo.

    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 activarn. Existen 4: read, write, verify, clear.

    Pulsamos el botn clear, y posteriormente write. Si no ha habido ningn problema indicar que se ha producido de forma satisfactoria la programacin.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    10

    4 DISEO DE LA APLICACIN DE CONTROL PARA EL MDULO BLUETOOTH.

    - MODO DE DEPURACIN: Para probar el correcto funcionamiento del montaje y del

    programa en ensamblador se puede utilizar un modo de depuracin del montaje HW: o Una vez hecho el montaje HW, y programado el pic16f876 con el programa

    para la comunicacin con el mdulo BT, se conecta el conector serie USART del mdulo BT al PC utilizando el cable RS232.

    o Lo siguiente es abrir un hyperterminal, en Windows o Linux. Con las mismas caractersticas que la prctica 1.

    o Por ltimo, alimentar el montaje HW. o A continuacin, en el hyperterminal podremos ver los comandos AT que se

    envan y reciben entre el microcontrolador al mdulo BT.

    - Junto al material de la prctica se ha dejado un ejemplo de un programa en ensamblador ejepicbt1.asm que realiza la configuracin del mdulo USART del PIC16f876 para la comunicacin con el mdulo USART del mdulo bluetooth. El programa tiene un ejemplo de cmo configurar un chip Bluetooth a 9600 baudios pero con un reloj de 4Mhz. Tienes que modificarlo para que vaya a 9600 baudios pero para un reloj de 3.6864Mhz. NOTA: Recuerda que el chip BT, por defecto, est configurado a 115200 baudios. Utiliza el comando que realiza esta tarea. Posteriormente, vuelve a modificar la configuracin del hiperterminal para que vaya a 9600 baudios).

    - El programa ejepicbt1.asm realiza las labores descritas en el diagrama 4.1. Y una vez

    realizada la configuracin serie, comienza a enviar al mdulo de Bluegiga. Lo que le envamos como ejemplo es el comando AT. Y recibiremos AT + fin de lnea + retorno de carro + OK + fin de lnea + retorno de carro.

    - En el diagrama 4.2 se presenta el esquema a seguir para la realizacin de la prctica

    TOTAL de la prctica.

    - Con este ejemplo, el guin de la prctica 1 y los diagramas de inicializacin descritos a partir de los diagramas de los apartados 4.3 y 4.4 podremos configurar nuestro mdulo bluetooth para que otros dispositivos se conecten a l.

    - Para que te funcione correctamente la recepcin 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 sealado en rojo la parte que cambia con respecto al cdigo origende ejemplo. Recibir_Serie BANKSEL RCSTA bcf RCSTA,CREN bsf RCSTA,CREN Esperar_Dato ; Recibir_Serie ; Esperar_Dato BANKSEL PIR1 ; Las dos lineas siguientes las comentamos para el simulador unicamente

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    11

    btfss PIR1,RCIF ; Prueba si el buffer de RX esta lleno goto Esperar_Dato ; Recibir_Serie ; Esperar_Dato ; No hay dato bcf PIR1,RCIF ; Hay dato BANKSEL RCREG movf RCREG,W ; Si el buffer esta lleno lo lee y guarda RXdato BANKSEL dato_REC movwf dato_REC return

    Si no utilizas ninguna de las dos opciones es posible que en la siguiente prctica tengas problemas para que el pic reciba los datos enviados desde el telfono.

    HITOS A SEGUIR: (Recuerda que el informe de esta prctica debes de ir hacindolo a medida que hagas la prctica, slo se entregar al profesor el da de la entrega de la memoria final, pero recuerda estar atento a las pautas de entrega en clase de partes del cdigo o especificaciones. Este trabajo continuo se valora positivamente en la nota final) Consejo importante: vas a empezar a utilizar un hardware diseado por el departamento de tecnologa electrnica, por los propios profesores de la asignatura, que con un coste muy pequeo te ofrecen la posibilidad de crear tu desarrollo de un mini-sistema embebido para encender/apagar leds (bombillas). Adems, estas placas las hemos ido evolucionando desde el ao 2006, te rogamos que las tratas con el respeto adecuado ya que otros compaeros tuyos tamibn las utilizarn, para esta asignatura y para otras. Tienes que ser paciente con el hardware, hace lo que le dices, pero es dficil de depurar. As que lee atentemente los hitos e intenta seguir los consejos que te damos.

    Hito 1: La configuracin Bluetooth que se debe realizar se describe en el diagrama 4.3 y 4.4 es:

    i) Configuracin del mdulo UART del pic16f876 (diagrama 4.3). ii) Configuracin registros del mdulo Bluetooth a travs 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 Autentificacin el PIN=1234. O si no queremos que haya

    autentificacin 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 mdulo

    Bluetooth con los parmetros de configuracin dados. Con este comando, si hubiese alguna conexin previa no cerrada, se terminara. El ejemplo de este comando no viene en el diagrama, pero se puede incluir as como otros que se consideren necesarios para mejor la prctica.

    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:

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    12

    (1) Una vez establecida la conexin entre el kit (pic+mdulo bt) y otro dispositivo bluetooth (pc telfono mvil) se debe realizar lo siguiente:

    Desde el telfono mvil con bluetooth se enva: Paquete para encender bombilla: @i1 + \r

    o Donde i es el nmero de bombilla que se quiere encender.

    Paquete para apagar bombilla: @i0+ \r o Donde i es el nmero de bombilla que se quiere

    encender. La respuesta desde la placa de la prctica 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 debern seguir los pasos para simular el cdigo desde el MPLAB.

    2) Debes describir qu bits has testeado para la simulacin. 3) Recuerda que para recibir y enviar por la UART hay ciertos bits en las

    subrutinas (putchar y recibir_serie) que no permiten ser cambiados desde el simulador. Piensa como lo haras.

    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 tambin que el bluetooth va por defecto a 115200 baudios.

    b. Tambin se recomienda quitar el ECO del chip bluetooth para evitar errores en el cdigo. 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 ya que va a tener que leer demasiados caracteres, y si no se hace un uso eficiente de la UART puede fallarte el cdigo.

    c. Recuerda tambin echar un vistazo al datasheet del pic para ver qu bits debes reiniciar en la UART para evitar problemas para leer del buffer de la UART. Esto no es obligatorio pero conveniente que lo intentes averiguar.

    2) Compila la versin donde slo se envan los comandos AT descritos en del

    diagrama 4.4. 3) Tendrs 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 econmico y que slo requiere de un programa: ic-prog.

    4) Para grabar el cdigo con el ic-prog localiza el fichero .hex generado al realizar un build all de tu prctica. Copia el .hex y crgalo a tu pic desde el ic-prog. Recuerda leer el manual.

    5) Enciende la placa y desde tu mvil comprueba que se ha cambiado el nombre del chip bluetooth.

    a. Si tienes problemas para ver el nombre desde tu mvil asegrate que la antena 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 estuvisemos en la prctica 1 para hacer lo siguiente:

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    13

    i. Teclea el comando SET y mira (con el pic quitado) si los registros del bluetooth se han actualizado. Por ejemplo, cambie el 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 cdigo y configurado los bits de reloj y del pic (recuerda en la parte del manual del MPLAB donde se hablaba del men en MPLAB configure-> configure bits, tienes que ponerlo igual que en el manual).

    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 cdigo, o que al menos has grabado bien,

    AHORA S QUE TIENES QUE PONER EL PIC EN LA PLACA Y CONECTARLA AL HIPERTERMINAL, enciende la placa conectado al hiperterminal, comprueba que los Leds del inicio se apagan y se encienden (recuerda el cdigo de ejemplo). Por favor, apaga la placa y encindele adecuadamente utilizando el conector cada vez que hagas cambios en el software del pic. No coloques el pic con la placa encendida porque puedes estropearla.

    d. Es aconsejable ponerse en ciertos puntos encender/apagar un led para saber por que partes vas del cdigo en tiempo real. Ten en cuenta que entre encender y apagar un led tienes que meter una Pausa para que te de tiempo ver como se encienden y se apagan.

    6) Haz lo mismo (pasos Hito 4 del 1 al 4) con la versin de cdigo que slo examina 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 prctica. Cuando escribas por el teclado es como si le estuvieses enviando al pic comandos como si fueras el chip bluetooth. Es decir, cuando le escribes cosas por teclado al pic te llegan como si fueras el mvil que le ha enviado 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 cdigo del pic utilizar un led como depurador, de tal modo que, sabes si est analizando bien la trama. Se dice como ejemplo un led pero puedes utilizar los que quieras hasta que consigas entender que te funciona.

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

    encendido/apagado el propio pic enva 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 si tienes algo mal del cdigo te puede dar una excepcin que no atiendes porque no se detecta.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    14

    NOTA: Si utilizas un adaptador usb-rs232 puedes tener problemas a utilizar el ic-prog. Por eso se recomienda que hagas uso de los ordenadores de prcticas que tienen rs232 aunque sea para grabarte el programa y depurar con el hiperterminal. NOTA: En la entrega final de la prctica cada uno de estos hitos debe estar documentado correctamente. NOTA PARA LA SIGUIENTE PRCTICA: antes de implementar la siguiente prctica 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 enviara el mvil. Si la placa enciende y apaga la bombillas que le indicas por los comandos del hiperterminal (teclado), debera ser automtico que te funcionase con el telfono mvil. Esto es porque tambin le llegarn de manera serializada los comandos al microcontrolador del kit, pero en vez de utilizar el puerto serie para comunicarse con l, se realizar por Bluetooth mediante el envo de comandos desde un telfono mvil o un PC. El objetivo es poder enlazar esta prctica con la siguiente, que ser sobre el programa en el telfono mvil que se encargar de controlar el sistema domtico.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    15

    4.1 Diagrama del Ejemplo ejepicbt1.asm

    Envo del comando AT + fin de lnea + retorno de

    carro al mdulo BT

    Fin

    Inicio

    Configuracin serie del PIC 9600 baudios, 8 bits, 1 bit stop, 0 paridad.

    Habilitada la transmisin. Reloj 3.6864Mhz

    Lectura respuesta AT + fin de lnea + retorno de

    carro + OK + fin de lnea + retorno de

    carro

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    16

    4.2 Diagrama general

    Configurar comunicacin Bluetooth con comandos AT

    enviados al mdulo BT

    Atender peticiones

    Inicio

    Configuracin serie del PIC 57600 baudios, 8 bits, 1 bit stop, 0

    paridad. Habilitada la transmisin.

    Procesar comunicaciones

    fin?

    Fin

    NO

    S

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    17

    4.3 Diagrama A: Configuracin de los registros del PIC16F876

    Atributos de la comunicacin serie: 9200 baudios, (3.6864Mhz)

    8 bits, 1 bit stop, 0 paridad

    Configurar el registro TXSTA y RXSTA USART:

    Activar el bit TXEN (permitir transmisin) Activar el bit RXEN (permitir recepcin)

    Activar el bit BRGH (alta velocidad). Configuracin asncrona.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    18

    4.4 Diagrama B: Configuracin para Bluetooth sddd

    Configurar comunicacin Bluetooth con comandos

    AT

    Enviar al mdulo BT: SET BT NAME DOMOLUZ

    Recibir del mdulo BT: SET BT NAME DOMOLUZ

    Enviar al mdulo BT: SET BT CLASS xxxxxx

    Recibir del mdulo BT: SET BT CLASS xxxxxx

    Enviar al mdulo BT: SET BT PAGEMODE x 2000 1

    Recibir del mdulo BT: SET BT PAGEMODE 3 2000 1

    Enviar al mdulo BT: SET PROFILE SPP ServLight

    Recibir del mdulo BT: SET PROFILE SPP ServLight

    Configuracin Bluetooth realizada con xito.

    Enviar al mdulo BT: SET BT AUTH * 1234

    Recibir del mdulo BT: SET BT AUTH * 1234

    Enviar al mdulo BT: SET BT POWER X X

    Recibir del mdulo BT: SET BT POWER X X

    Nota: Se deben rellenar los campos donde est la Xs por los bytes requeridos par ala funcionalidad que se pide.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    19

    4.5 Diagramas de control comunicacin BT.

    4.5.1 Diagrama conexin con otro mdulo Bluetooth

    - En el siguiente diagrama se muestra el proceso en el cual un telfono mvil u otro dispositivo bluetooth solicita la conexin con el servicio 1101 (UUID_SERVICIO) del mdulo Bluetooth.

    - El proceso es gestin de aceptar la comunicacin se realiza por el propio mdulo Bluetooth, slo es necesario leer por el puerto serie continuamente. Por ello, es importante configurar de modo correcto todos los registros del mdulo para que el proceso sea automatizado.

    - Por tanto, el siguiente paso es quedarse escuchando en el puerto serie abierto con el mdulo Bluetooth y una vez que un dispositivo se conecte al mdulo, el propio chip BT, 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 conexin. Channel: ser el canal abierto para la conexin 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 conexin entrante)

    Enviar al telfono: CONNECT 0 MAC_TELEFONO 1 RFCOMM

    Conexin establecida con el telfono y el mdulo Bluetooth.

    Recepcin datos para el control de bombillas. Diagrama 4.5.2

    *externo: Telfono mvil u otro dispositivo Bluetooth que se haya conectado a nuestra placa de la prctica.

  • DTE Domtica y Sistemas Embebidos para Comunicaciones Inalmbricas- Curso 2010-2011

    20

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

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

    Recepcin datos para el control de bombillas.

    @11 + \cr

    Recibido OK1ON? Visualizar respuesta recibida.

    @10 + \r

    Recibido OK1OFF? Visualizar respuesta recibida.

    Desconectar la conexin BT.

    Fin

    Lectura del paquete. Encendida Bombilla 1.

    Enviar al telfono: OK1ON

    Lectura del paquete. Apagar Bombilla 1.

    Enviar al telfono: OK1OFF

    Espera nuevas conexiones.