«

»

Sep 04

Comunicando con un PIC por Bluetooth (1/2)

En cuanto empezamos a programar un PIC rápidamente nos damos cuenta del enorme potencial que tiene a la hora de hacer pequeños inventos caseros. Es muy sencillo encender un led o detectar un pulsador. El siguiente paso será hacer un reloj que encienda una luz a determinadas horas, o realizar un termostato programable para la calefacción. Cuando llegamos a este punto de pronto nos damos cuenta de un gran “problema”: Para ver y poner en hora el reloj, o cambiar la selección del termostato necesitamos aumentar exponencialmente la complejidad del circuito. Hay que añadir un display y una botonera que ocupan un montón de entradas y salidas y bastante programación, para obtener una “experiencia de usuario” normalmente bastante mala.

Evidentemente hay ocasiones en las que lo mejor es recurrir al display y la botonera, pero en muchos otros casos hay una forma mucho más simple y a la vez elegante de comunicar al usuario con el PIC. El puerto serie.

¡Vale! ¡Cada vez que necesite cambiar la temperatura de la calefacción en mi flamante termostato con PIC me llevo el PC al salón, conecto el cable serie en un puerto que no existe en la mayoría de los PCs modernos y arranco el emulador de terminal!

Bueno, pues yo lo que hacía antes de descubrir el maravilloso mundo del Bluetooth, era llevarme sólo la calculadora:

Hay que Instar un emulador de terminal y utilizar un convertidor de niveles RS-232 a TTL como este obtenido de www.pablin.com:

 

En el PIC y programando en C, es muy sencillo comunicar por el puerto serie utilizando las funciones estándar putc, getc, printf …

Ahora es cuando viene lo bueno. En los últimos tiempos se han extendido muchísimo dos cosas que nos facilitarán la tarea de conectarnos con el PIC:

– Los smartphones, con muy buena conectividad y una pantalla enorme. Me centrare en los teléfonos con Android que es lo que mejor conozco. Para empezar basta instalar un emulador de terminal, como el que veíamos en otras entradas.

– Los módulos de comunicación serie-bluetooth “económicos”. El más barato (5 o 6 €) es el HC-06

En la foto tenemos un HC-06 con un regulador de tensión y con las entradas adaptadas a niveles TTL, para conectar directamente a un PIC alimentado a 5V.
Si miramos por detrás vemos las conexiones, RXD lo conectamos al TX del PIC y TXD al RX del PIC, la alimentación a VCC y GND.

Convertidor seríe -> bluetooth

Aquí tenéis la hoja de características de estos módulos. Lo que más nos interesa es como se llama el módulo por defecto y la velocidad de la transmisión: “linvor”, 9600 bps, 8 bits de datos, sin paridad y un bit de parada. La contraseña para emparejar el módulo al teléfono es “1234”
Al alimentando el módulo, el led empezará a parpadear. Por el momento no tenemos conexión y podemos mandar comandos de configuración al HC-06 por las patas TX y RX (por ejemplo para cambiar la velocidad de transmisión). Ahora emparejamos el dispositivo con el teléfono y conectamos  con el emulador de terminal y el led se tiene que quedar fijo. A partir de este momento se crea un enlace transparente entre el PIC y el teléfono.
En el siguiente capítulo veremos como programar y cablear el PIC con el HC-05 y haremos un pequeño programa de ejemplo.

Deja un comentario

Tu dirección de correo electrónico no será publicada.

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies