Obsah:

OldMan a Bluetooth 2: 4 kroky
OldMan a Bluetooth 2: 4 kroky

Video: OldMan a Bluetooth 2: 4 kroky

Video: OldMan a Bluetooth 2: 4 kroky
Video: Grumpy Old Men (2/4) Movie CLIP - Remote Control (1993) HD 2024, Červenec
Anonim
OldMan a Bluetooth 2
OldMan a Bluetooth 2

Tento Lazy Old Geek (L. O. G.) konečně dostal modul Bluetooth HC05 od AliExpress.com. Objednal jsem si jeden po napsání tohoto Instructable:

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

Strávil jsem několik hodin pokusem, aby to fungovalo v příkazovém režimu bez úspěchu. Dokonce jsem zničil modul HC05 (pravděpodobně použití špatného napětí), takže jsem musel koupit další.

TIP: Příkazový režim hovoří se samotným modulem HC05 nebo HC06. Režim komunikace hovoří s jiným zařízením Bluetooth.

Zjistil jsem, že je mnoho rozdílů mezi HC05 a HC06. HC05 může být master nebo slave, HC06 je pouze slave. V zásadě může pán mluvit s otrokem, dva otroci spolu nemohou mluvit. HC05 a HC06 mají různé příkazy. HC05 musí být hardwarově konfigurován, aby přešel do příkazového režimu, může mít různé přenosové rychlosti pro komunikační a příkazový režim.

HC06 je vždy v komunikačním a příkazovém režimu. Nastavení přenosové rychlosti pro jednu změní druhou.

TIP: Sledujte to, jak jsem to nedělal, a mám nějaké problémy.

TIP: Různé HC05 a HC06 se mohou lišit od těch, které jsem dostal.

HCO6 bude provádět příkazy, ale ne vždy zobrazí změněné výsledky, např. změna jména.

Krok 1: Vyhodnocení/úprava

Vyhodnocení/úprava
Vyhodnocení/úprava
Vyhodnocení/úprava
Vyhodnocení/úprava
Vyhodnocení/úprava
Vyhodnocení/úprava

Připojeno je schéma HC05 podobné mému. Dva rozdíly, které vím, jsou, že mezi PIO11 (34) a pinem EN je odpor 2,2 K a regulátor 3,3 V je 3pinový balíček a nemá pin CE. Přiložený obrázek je schematickým schématem toho, co si myslím, že mám.

Pro účely programování je důležité, aby pin 34 Key byl připojen ke kolíku EN přes odpor 2,2 K. (Je také připojen k tlačítku, druhá strana je připojena k 3,3 V)

Akciový HC05 vyžaduje 5V napájení, přestože pracuje se signály 3,3 V, takže jsem svůj HCO5 upravil tak, aby místo něj používal 3,3 V. Odstranil jsem regulátor 3,3 V a spustil propojku z kolíku VCC přímo na 3,3 V. To je znázorněno na upraveném schématu a mém upraveném obrázku HC05.

Mimochodem, přiložený soubor příkazů HC05.pdf obsahuje cenné informace o používání modulu HC05, bohužel není příliš uživatelsky přívětivý.

Krok 2: Programování HC05

Programování HC05
Programování HC05
Programování HC05
Programování HC05

Rozhodl jsem se, že nejjednodušší způsob použití HC05 je připojit jej k jednomu z mých sériových adaptérů CP2102 3.3V, jako jsem to udělal v aplikaci Old Man And Bluetooth Instructable s HC06. Viz obrázek a schéma.

DŮLEŽITÉ TIP: K zapnutí HC05 v příkazovém režimu musí být pin PIO11 (34) vysoko, než se použije 3,3 V. EN pin na mém HC05 je připojen k PIO11 přes 2,2K odpor, takže ho stačí připojit na 3,3V. Schéma to ukazuje jako programové piny, ale stačí umístit propojku z 3,3 V na EN pin. Před zapojením napájení to udělejte. Na mém můžete zjistit, zda jste v příkazovém režimu, protože LED dioda HC05 bude pomalu blikat. Pokud rychle bliká, jste v režimu párování a musíte to zkusit znovu.

TIP: HC05 v příkazovém režimu vždy mluví rychlostí 38400 baudů. Všechny příkazy jsou velké a musí za nimi být CR a LF. (To se liší od HC06)

TIP: Formát příkazu je velmi přísný. Vždy používejte čepice. Všechny začínají na „AT“Sledujte je přesně, nemůžete přidávat mezery tam, kde nejsou zobrazeny.

Spusťte Arduino. Přejděte na „Nástroje“„Port“a vyberte port Com, ke kterému se CP2102 připojuje.

Otevřete Sériový monitor. Ve spodní části okna vyberte „NL i CR“a „38400 baud“. (NL znamená New Line, což je stejné jako LF, což je Line Feed).

Směrem nahoru je u tlačítka Odeslat políčko, klikněte do něj.

Na počítači zapněte Caps Lock

Zadejte AT

Velké okno by mělo zobrazovat „OK“.

Komunikujete v příkazovém režimu

Některé příkazy, které na mě fungují

NA

AT+RESET

AT+VERZE?

AT+JMÉNO?

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

AT+NAME = BT1 Změní název na BT1

AT+ROLE? 0 = Slave 1 = Master

Krok 3: HC06 Revisited

HC06 Revisited
HC06 Revisited

Jedním z hlavních rozdílů mezi HC05 a HC06 je, že HC05 může být master nebo slave, zatímco HC06 je pouze slave. To znamená, že můžete mluvit mezi HC05 a HC06. Existuje však mnoho dalších rozdílů.

I když jsem mohl použít Arduino k nastavení HC06, rozhodl jsem se použít 3.3v CP2102. Viz obrázek

Připojení

CP2102 HC06

Gnd Gnd

Vcc Vcc

TXD RXD

RXD TXD

To je v podstatě stejné jako HC05, kromě toho, že můj HC06 má pouze čtyři piny.

Můj CP2102 je upraven tak, aby dodával 3,3 V.

Můj HC06 je upraven tak, aby přijímal 3,3V

CP2102 USB je připojen k mému počítači. Na svém počítači používám Arduino IDE.

Vyberte správný „Port“a otevřete Sériový monitor.

Na mém HC06 červená LED rychle bliká, což znamená, že je připraven ke spárování, ale může také přijímat příkazy.

Některé z těchto informací pocházely od Martyna Curreyho:

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

Takže každý typ HC06 může být jiný, můj vrací VERSION linvorV1.5

Pro můj HC06 (a pravděpodobně pro všechny) neexistuje žádný speciální postup, jak jej dostat do příkazového režimu. Pokud není spárováno, můžete vždy odesílat příkazy přes sériový port.

TIP: přes Bluetooth nemůžete odesílat příkazy žádnému modulu Bluetooth (o kterém vím).

Otevřete Sériový monitor

Klikněte na první pole v dolní části Serial Monitor a nastavte na „žádný konec řádku“

Zpočátku byla moje přenosová rychlost 9600 baudů

Na počítači zapněte Caps Lock

Do horního pole zadejte AT

Zadejte Enter nebo klepněte na tlačítko „Odeslat“

Na obrazovce by se mělo zobrazit OK

TIP: Pokud neobdržíte OK, může to být proto, že přenosová rychlost byla změněna nebo je odlišná. Můžete vyzkoušet různé, dokud, doufejme, nenajdete tu správnou.

POZNÁMKA: Odesláním více příkazů se data odpovědí neposunou na další řádek. Směrem dolů můžete kliknout na Vymazat výstup.

Příkazy, které pro mě fungují:

Příkazová odpověď

AT+VERZE OKlinvorV1.5

AT+NAMEFred vracíOKsetname

(Neřekne vám jméno, ale pokud je připojen přes Bluetooth, zobrazí se.)

POZNÁMKA: Pokud změníte jméno, bude se na vašem smartphonu zobrazovat starý název, dokud zrušíte spárování a opětovné spárování.

AT+PINxxx Nezkoušel. Výchozí hodnota je 1234

AT+BAUD8 Změní přenosovou rychlost na 115200

Odpovědí je přenosová rychlost, např. 115200

(Po změně přenosové rychlosti musíte změnit přenosovou rychlost sériového monitoru na 115200, aby bylo možné odesílat další příkazy.

Možnosti přenosové rychlosti

1 1200

2 2400

3 4800

4 9600 (výchozí)

5 19200

6 38400

7 57600

8 115200

9 230400

460 800

B 921600

C 1382400

POZNÁMKA: Nezkoušel jsem vyšší než 8 115200. Slyšel jsem o lidech, kteří zkoušeli vyšší sazby se špatnými výsledky.

Ostatní příkazy, které mají fungovat, ale nejsou testovány:

AT+PN bez kontroly parity (výchozí)

AT+PO kontrola liché parity

AT+PE dokonce kontrola parity

DŮLEŽITÉ: V tomto okamžiku bych navrhl, abyste se rozhodli pro jedinečný název a vložili jej. Také bych navrhl, abyste se rozhodli pro přenosovou rychlost, při které chcete komunikovat, vložte ji a označte tím svůj HC06.

Krok 4: Nastavení HC05 na HC06

Dobře, tento Instructable mi nejvíce pomohl:

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

Moje nastavení:

SLAVE najít adresu

HC06 s CP2102 (automaticky v příkazovém režimu)

Připojte kabel USB CP2102 k napájení HC06.

LED dioda HC06 by měla rychle blikat (režim párování).

Na smartphonu otevřete nastavení

Přejděte na Bluetooth

Vyhledejte nové zařízení

Pokud vidíte něco jako HC06 nebo název, který jste mu dali, vyberte toto.

S největší pravděpodobností uvidíte řetězec čísel jako 00: 12: 09: 27: 19: 13, to je pravděpodobně ono.

Zapište si tuto adresu. (Číslo je jeho jedinečná adresa)

Vyberte to

Až budete požádáni o PIN, zadejte 1234.

Měl by se zobrazit název.

Pokud adresu stále nemáte, v části „Dříve připojená zařízení“vyberte název.

Klikněte na Informace, měla by se zobrazit adresa. Zapište si to.

Pokud se nezobrazí, ukončete nastavení a otevřete aplikaci Bluetooth Terminal HC-05.

V části Spárovaná zařízení najděte název, adresa by měla být pod ním, napište ho.

Nastavení slave

Pokud LED dioda HC06 nebliká, vypněte a zapněte napájení, aby se vrátila do režimu párování.

Spusťte Arduino

V části „Nástroje“„Port“vyberte správný port Com

Otevřete Serial Monitor

Ve spodní části tohoto okna

Vyberte „Žádné ukončení řádku“a „9600 baudů“

MISTR

HC05 s CP2102 nastaveno v příkazovém režimu (EN propojeno vysoko)

Zapojte USB kabel z CP2102 do PC

Zjistil jsem, že mohu otevřít dva Arduino

Na druhém Arduinu vyberte správný port Com pro HC05

Otevřete Serial Monitor

Ve spodní části okna

Vyberte „Oba NL&CR“a „38400 baudů“

Následující text je z výše uvedeného Instructable

Hlavní konfigurace

Požadované AT příkazy pro nastavení konfigurace:

PŘIKAZUJTE ODPOVĚĎ Co to dělá

AT+ROLE = 1 OK Nastavit HC05 jako hlavní

AT+CMODE = 1 OK Připojte se ke konkrétní adrese

POZNÁMKA: Adresa HC06 má pravděpodobně následující formát 00: 12: 09: 27: 19: 13

Příkaz BIND očekává toto 0012, 09, 27193 (vyjmete dvojtečky, vezmete první čtyři čísla, pak čárku, další dvě čísla, pak čárku, pak posledních šest čísel)

AT+BIND = 0012, 09, 271913 OK Připojuje/váže s HC06

(Mimochodem AT +BIND? Odpovídá +BIND: 12: 9: 271913)

(Chcete, aby rychlost komunikace HC05 byla stejná jako HC06) například:

AT+UART = 115200, 0, 0 OK Přenosová rychlost 115200 (1.op bit, bez parity)

Testování komunikace:

Demontujte propojku HC05 EN, cyklus napájení.

Když jsou tyto dva spojeny, kontrolka HC05 dvakrát za několik sekund dvakrát zabliká a kontrolka HC06 zůstane nepřetržitě svítit.

Nastavte oba komunikační porty na stejnou přenosovou rychlost (cokoli nastavíte)

Nastavte oba na „Oba NL&CR“

Napište něco na Serial Monitor1, Serial Monitor2 by to měl zobrazit.

Napište něco na Serial Monitor2, Serial Monitor1 by to měl zobrazit.

Gratulujeme, komunikujete přes Bluetooth

Výše uvedený Instructable má nyní několik náčrtů, jak používat moduly s Arduino. U tohoto Instructable se do toho nebudu ponořit.

Doporučuje: