HC05 módulo Bluetooth: uso de pines gpio

0

Recientemente he comprado un módulo Bluetooth HC05, del cual esperaba usar los pines de entrada-salida de propósito general. El HC05 tiene muchos de ellos, pero no he encontrado en ninguna parte una sola descripción sobre cómo usarlos, excepto cuando estoy en el modo AT, que, según tengo entendido (puedo estar equivocado) solo se puede usar cuando el dispositivo está no con Bluetooth emparejado (es decir, solo está conectado a la PC).

Entonces, si no se pueden consultar o cambiar de forma remota, ¿para qué sirven? ¿De qué otra manera podría transmitir el valor de un pin a través de bluetooth sin un Arduino completo?

    
pregunta Bzazz

2 respuestas

2

El HC-05 es un módulo mal documentado con un firmware diseñado para ser simplemente una interfaz uart serie de bluetooth a ttl, que se puede introducir sin problemas. Las características adicionales del chip de radio se ignoran con el firmware predeterminado. Puede intentar escribir un firmware desde cero, ya que no he visto el código disponible para el firmware existente.

las otras opciones son usar cualquier número de microcontrolador desnudo como intermediario. Todo un Arduino uno es costoso y un desperdicio, pero puede usar un msp430 o attiny o atmega de 1 dólar, programarlo y usarlo.

De lo contrario, busque un módulo que ofrezca acceso a gpio a través de bluetooth.

    
respondido por el Passerby
3

Recuerde que el módulo BT es esencialmente una radio con protocolo. Necesita estar conectado a algo para que sea de alguna utilidad. Un módulo con alimentación conectada por sí mismo realmente no hará nada.

A la pregunta más grande. Supongamos que está conectado a un Arduino o algún otro MCU. Puede enviarlo comandos AT todo el día siempre que el pin KEY se mantenga alto. En cualquier software que escriba para utilizar el BT como enlace de radio, incluya un comando que, una vez recibido y procesado, enviará a la MCU a una función que alternará un pin de salida conectado a KEY. La única razón por la que necesitaría estar físicamente al lado del módulo y jalar la tecla KEY en el encendido sería ponerlo a una velocidad de transmisión predeterminada de fábrica de 38400. Si permite que su software tenga acceso completo a todos los comandos AT, es posible que pueda cambiar la velocidad en baudios de forma remota para que ya no se comunique con la MPU. En este momento es necesario un reinicio físico. Mejor si programa un analizador para el módulo BT para poder filtrar qué comandos están bien.

Uso un HC05 para mis relés remotos y una aplicación de Terminal Bluetooth simple en mi Samsung para enviar instrucciones de línea de comandos para activar y desactivar los relés o para cambiar los tiempos de alarma. Con el Arduino uso Softwareserial a cualquier tasa de buad que elijo. Estos están codificados en el Arduino y no se pueden cambiar.

Buena suerte. Espero haberte dado algo en que pensar.

    
respondido por el DKWatson

Lea otras preguntas en las etiquetas