Taula de continguts:

OldMan i Bluetooth2: 4 passos
OldMan i Bluetooth2: 4 passos

Vídeo: OldMan i Bluetooth2: 4 passos

Vídeo: OldMan i Bluetooth2: 4 passos
Vídeo: Honest Review of The All New INKBIRD Bluetooth, 2.4G and 5.0G WIFI Smart BBQ Thermometer! 2024, De novembre
Anonim
OldMan i Bluetooth2
OldMan i Bluetooth2

Per tant, aquest Lazy Old Geek (L. O. G.) va aconseguir finalment un mòdul Bluetooth HC05 d’Aliexpress.com. Vaig demanar-ne un després d'escriure aquest document instructiu:

www.instructables.com/id/OldMan-and-Blueto…

Bé, vaig passar diverses hores intentant que això funcionés en mode de comandament sense èxit. Fins i tot vaig destruir un mòdul HC05 (probablement aplicant tensions incorrectes), així que vaig haver de comprar-ne un altre.

SUGGERIMENT: el mode d’ordres parla amb el propi mòdul HC05 o HC06. El mode de comunicació és parlar amb un altre dispositiu Bluetooth.

El que he trobat és que hi ha moltes diferències entre HC05 i HC06. L'HC05 pot ser mestre o esclau, l'HC06 només és esclau. Bàsicament, un amo pot parlar amb un esclau, dos esclaus no poden parlar entre ells. L'HC05 i l'HC06 tenen ordres diferents. L'HC05 ha d'estar configurat per maquinari per passar al mode d'ordres, pot tenir diferents velocitats de transmissió per a la comunicació i el mode d'ordres.

L'HC06 sempre està en mode de comunicació i ordre. Si definiu la velocitat de transmissió per a un, l’altre canviarà.

SUGGERIMENT: feu un seguiment d'això, ja que no ho he fet i he tingut alguns problemes.

CONSELL: diferents HC05 i HC06 poden ser diferents dels que he obtingut.

L'HCO6 realitzarà ordres, però no sempre mostra els resultats canviats, p. Ex. canvi de nom.

Pas 1: avaluació / modificació

Avaluació / modificació
Avaluació / modificació
Avaluació / modificació
Avaluació / modificació
Avaluació / modificació
Avaluació / modificació

S'adjunta un esquema HC05 similar al meu. Dues diferències que sé, són que hi ha una resistència de 2,2 K entre PIO11 (34) i el pin EN i el regulador de 3,3 v és un paquet de 3 pins i no té un pin CE. La imatge adjunta és un esquema marcat del que crec que tinc.

A efectes de programació, l’important és que el pin 34 Key estigui connectat al pin EN mitjançant una resistència de 2,2K. (També està connectat al polsador, l'altre costat està connectat a 3,3V)

El material HC05 requereix 5V d’alimentació, tot i que funciona amb senyals de 3.3V, de manera que he modificat el meu HCO5 per utilitzar-lo en lloc de 3.3V. He tret el regulador de 3,3 V i he passat un pont des del pin VCC directament a 3,3 V. Això es mostra a l'esquema modificat i a la meva imatge HC05 modificada.

Per cert, l’HC05 Command Set.pdf adjunt té una informació valuosa sobre l’ús de l’HC05. Malauradament, no és molt fàcil d’utilitzar.

Pas 2: Programació de l'HC05

Programació de l'HC05
Programació de l'HC05
Programació de l'HC05
Programació de l'HC05

Vaig decidir que la manera més senzilla d’utilitzar l’HC05 era connectar-lo a un dels meus adaptadors de sèrie CP2102 de 3,3 V, com ho vaig fer a Old Man I Bluetooth instructable amb un HC06. Veure imatge i esquema.

SUGGERIMENT IMPORTANT: per engegar l'HC05 en mode d'ordres, el pin PIO11 (34) ha de ser alt abans d'aplicar 3,3V. El pin EN del meu HC05 està connectat a PIO11 mitjançant una resistència de 2,2K, de manera que només cal que estigui lligat a 3,3V. L'esquema ho mostra com els pins del programa, però simplement col·loqueu un pont de 3,3 V al pin EN. Assegureu-vos de fer-ho abans d'aplicar energia. Al meu, podeu saber si esteu en mode d’ordres perquè el LED HC05 parpellejarà lentament. Si parpelleja ràpidament, esteu en mode de sincronització i heu de tornar-ho a provar.

SUGGERIMENT: L'HC05 en mode d'ordres sempre parla a una velocitat de 38400 baudios. Totes les ordres s’escriuen amb majúscula i han d’anar seguides d’un CR i un LF. (Això és diferent del HC06)

SUGGERIMENT: El format de l'ordre és molt estricte. Utilitzeu sempre taps. Tots comencen per "AT" Segueix-los exactament, no pots afegir espais on no es mostrin.

Inicieu Arduino. Aneu a "Eines" "Port" i seleccioneu el port Com al qual es connecta el CP2102.

Obriu el monitor de sèrie. Cap a la part inferior d'aquesta finestra, seleccioneu "Tant NL com CR" i "38400 baud". (NL significa New Line, que és el mateix que LF, que és Line Feed).

Cap a la part superior, hi ha un quadre al costat del botó Enviar, feu-hi clic.

Activa el bloqueig de majúscules al teu PC

Escriviu AT

La finestra gran hauria de mostrar "D'acord".

Us esteu comunicant en mode d’ordres

Algunes ordres que funcionen a la meva

AT

AT + RESET

A + VERSIÓ?

A + NOM?

AT + ADDR? ADDR: 98D3: 31: F5CB41

AT + NAME = BT1 Això canvia el nom a BT1

A + ROL? 0 = Esclau 1 = Mestre

Pas 3: revisió de HC06

HC06 Revisitat
HC06 Revisitat

Una de les principals diferències entre l'HC05 i l'HC06 és que l'HC05 pot ser mestre o esclau mentre que l'HC06 només és esclau. Això vol dir que podeu parlar entre un HC05 i un HC06. No obstant això, hi ha moltes altres diferències.

Tot i que podria haver utilitzat un Arduino per configurar el meu HC06, vaig optar per utilitzar un CP2102 de 3,3 v. Veure imatge

Connexions

CP2102 HC06

Gnd Gnd

Vcc Vcc

TXD RXD

RXD TXD

Això és bàsicament el mateix que el HC05, tret que el meu HC06 només té quatre pins.

El meu CP2102 s'ha modificat per proporcionar 3.3V

El meu HC06 es modifica per acceptar 3.3V

El CP2102 USB està connectat al meu PC. Al meu PC estic fent servir l’Arduino IDE.

Seleccioneu el "Port" correcte i obriu el monitor de sèrie.

Al meu HC06, el LED vermell parpelleja ràpidament, cosa que indica que està preparat per aparellar-se, però també pot rebre ordres.

Part d’aquesta informació prové de Martyn Currey:

www.martyncurrey.com/arduino-and-hc-06-zs-0…

Per tant, cada tipus d’HC06 pot ser diferent, el meu retorna la VERSIÓ linvorV1.5

Per al meu HC06 (i probablement tots), no hi ha cap procediment especial per posar-lo al mode d'ordres. Aparentment, si no està emparellat, sempre podeu enviar ordres a través del port sèrie.

SUGGERIMENT: no podeu enviar ordres a cap mòdul Bluetooth (que conec) mitjançant Bluetooth.

Obriu el monitor de sèrie

Feu clic a la primera casella que hi ha a la part inferior del monitor sèrie i configureu el valor "sense final de línia".

Inicialment, la meva velocitat en bauds era de 9600 bauds

Al vostre PC, activeu Caps Lock

A la caixa superior, escriviu AT

Escriviu Retorn o toqueu el botó "Envia"

La pantalla hauria de mostrar-se OK

SUGGERIMENT: si no obteniu un OK, pot ser perquè la velocitat en bauds s'hagi canviat o sigui diferent. Podeu provar-ne diverses fins que, amb sort, trobeu la correcta.

NOTA: En enviar diverses ordres, les dades de resposta no canvien a la línia següent. Cap a la part inferior, podeu fer clic a Esborra sortida.

Ordres que funcionen per a mi:

Resposta de l'ordre

AT + VERSIÓ OKlinvorV1.5

AT + NAME: Fred torna OKsetname

(No us indica el nom, però si està connectat per Bluetooth, apareixerà.)

NOTA: si canvieu el nom, el nom antic es mostrarà al telèfon intel·ligent fins que desactiveu i torneu a aparellar.

AT + PINxxx No ho he provat. La defaut és 1234

AT + BAUD8 Canvia la taxa de transmissions a 115200

La resposta és la velocitat en bauds, per exemple 115200

(Després de canviar la velocitat de transmissió, heu de canviar la velocitat de transmissió del monitor sèrie a 115200 per enviar més ordres.

Opcions de velocitat en bauds

1 1200

2 2400

3 4800

4 9600 (per defecte)

5 19200

6 38400

7 57600

8 115200

9 230400

Un 460800

B 921600

C 1382400

NOTA: No he provat més de 8 115200. He sentit a parlar de gent que provava taxes més altes amb mals resultats.

La resta d’ordres que se suposa que funcionen però que no s’han provat:

AT + PN sense comprovació de paritat (predeterminat)

AT + PO senar paritat

AT + PE fins i tot comprovació de paritat

IMPORTANT: Arribat a aquest punt, us suggeriria que decidiu un nom únic i el poseu. També us suggeriria que decidiu la velocitat de transmissió en què voleu comunicar-la, que la poseu i que marqueu el vostre HC06 amb ella.

Pas 4: Configuració de HC05 a HC06

D’acord, aquest instructiu m’ha estat molt útil:

www.instructables.com/id/How-to-Configure-…

La meva configuració:

Direcció de cerca de SLAVE

HC06 amb CP2102 (automàticament en mode d'ordres)

Connecteu el cable USB CP2102 per alimentar l’HC06.

El LED HC06 hauria de parpellejar ràpidament (mode de sincronització).

Al telèfon intel·ligent, obriu la configuració

Aneu a Bluetooth

Cerqueu un dispositiu nou

Si veieu alguna cosa com HC06 o el nom que li heu donat, seleccioneu-lo.

El més probable és que vegeu una sèrie de números com 00: 12: 09: 27: 19: 13, probablement això.

Anoteu aquesta adreça. (El número és la seva adreça única)

Seleccioneu-lo

Quan se us demani un PIN, escriviu 1234.

S'ha de mostrar el nom.

Si encara no teniu l'adreça, a "Dispositius connectats anteriorment", seleccioneu el nom.

Feu clic a Informació, s'hauria de mostrar l'adreça. Anoti-ho.

Si no es mostra, sortiu de la configuració i obriu l’aplicació Bluetooth Terminal HC-05.

A Dispositius emparellats, cerqueu el nom, l’adreça hauria d’estar a sota i escriviu-la.

Configuració de l'esclau

Si el LED HC06 no parpelleja, cicleu l’alimentació per tornar-lo al mode d’aparellament.

Inicieu Arduino

A "Eines" "Port", seleccioneu el port Com correcte

Obriu el monitor sèrie

A la part inferior d'aquesta finestra

Seleccioneu "Sense final de línia" i "9600 baud"

MESTRE

HC05 amb CP2102 configurat en mode d'ordres (salt elevat EN)

Connecteu el cable USB del CP2102 al PC

Vaig descobrir que podia obrir dos Arduinos

Al segon Arduino, seleccioneu el port Com correcte per a HC05

Obriu el monitor sèrie

A la part inferior de la finestra

Seleccioneu "Tant NL&CR" com "38400 baud"

El següent és de l’anterior instructable

Configuració mestra

Les ordres AT necessàries per configurar la configuració:

RESPOSTA DE L'ORDRE Què fa?

AT + ROLE = 1 OK Estableix HC05 com a mestre

AT + CMODE = 1 OK Connectar-se a una adreça específica

NOTA: L'adreça HC06 probablement tingui el format següent: 00: 12: 09: 27: 19: 13

L'ordre BIND espera aquest 0012, 09, 27193 (traieu els dos punts, agafeu els primers quatre números, després la coma, els dos números següents, després la coma i, a continuació, els darrers sis números)

AT + BIND = 0012, 09, 271913 OK Connecta / lliga amb HC06

(Per cert, AT + BIND? Respon amb + BIND: 12: 9: 271913)

(Voleu que la velocitat de comunicacions HC05 sigui la mateixa que HC06) per exemple:

AT + UART = 115200, 0, 0 OK Baud rate 115200 (1stop bit, no parity)

Per provar les comunicacions:

Traieu el pont HC05 EN, cicle de potència.

Quan els dos estiguin connectats, el LED HC05 parpellejarà dues vegades cada pocs segons i el LED HC06 romandrà encès contínuament.

Establiu els dos ports de com a la mateixa velocitat de transmissió (sigui el que configureu)

Estableix tots dos a "Tots dos NL&CR"

Escriviu alguna cosa a Serial Monitor1, Serial Monitor2 hauria de mostrar-lo.

Escriviu alguna cosa a Serial Monitor2, Serial Monitor1 hauria de mostrar-la.

Enhorabona, us esteu comunicant per Bluetooth

Ara, l’instructible anterior conté alguns esbossos sobre com utilitzar els mòduls amb Arduino. Per a aquesta instrucció, no aprofundiré en això.

Recomanat: