Sadržaj:

OldMan i Bluetooth2: 4 koraka
OldMan i Bluetooth2: 4 koraka

Video: OldMan i Bluetooth2: 4 koraka

Video: OldMan i Bluetooth2: 4 koraka
Video: Профи притворился ДЕДОМ на Баскетболе #2 | Old Man Basketball Prank 2024, Novembar
Anonim
OldMan i Bluetooth2
OldMan i Bluetooth2

Tako je ovaj Lazy Old Geek (L. O. G.) konačno dobio Bluetooth HC05 modul sa AliExpress.com. Naručio sam jedan nakon što sam napisao ovo uputstvo:

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

Pa, proveo sam nekoliko sati pokušavajući da ovo uspije u komandnom modu, ali bez uspjeha. Čak sam i uništio HC05 modul (vjerovatno primjenjujući pogrešne napone) pa sam morao kupiti drugi.

SAVJET: Način naredbe razgovara sa samim modulom HC05 ili HC06. Način komunikacije komunicira s drugim Bluetooth uređajem.

Ono što sam otkrio je mnogo razlika između HC05 i HC06. HC05 može biti master ili slave, HC06 je samo slave. U osnovi, gospodar može razgovarati sa robom, dva roba ne mogu međusobno razgovarati. HC05 i HC06 imaju različite komande. HC05 mora biti hardverski konfiguriran za prelazak u naredbeni način, može imati različite brzine prijenosa za komunikaciju i način upravljanja.

HC06 je uvijek u komunikacijskom i komandnom načinu rada. Postavljanje brzine prijenosa za jedno promijenit će drugo.

SAVJET: Pratite ovo jer nisam i imao sam problema.

SAVJET: Različiti HC05 i HC06 mogu se razlikovati od onih koje sam dobio.

HCO6 će izvoditi naredbe, ali ne prikazuje uvijek promijenjene rezultate, npr. promena imena.

Korak 1: Evaluacija/izmjena

Vrednovanje/modifikacija
Vrednovanje/modifikacija
Vrednovanje/modifikacija
Vrednovanje/modifikacija
Vrednovanje/modifikacija
Vrednovanje/modifikacija

U prilogu je shema HC05 slična mojoj. Dvije razlike koje znam su u tome što postoji 2.2K otpornik između PIO11 (34) i EN pina, a regulator od 3.3v je tropolni paket i nema CE pin. Slika u prilogu je označena shema prema onome što mislim da imam.

Za potrebe programiranja važno je da je pin 34 ključ spojen na EN pin preko 2.2K otpornika. (Također je spojen na tipku, druga strana je spojena na 3,3 V)

Zaliha HC05 zahtijeva napajanje od 5 V iako radi sa signalima od 3,3 V pa sam promijenio svoj HCO5 da umjesto toga koristi 3,3 V. Uklonio sam regulator 3.3V i prešao kratkospojnik s VCC pina direktno na 3.3V. Ovo je prikazano na izmijenjenoj shemi i mojoj izmijenjenoj slici HC05.

Usput, priloženi HC05 naredbeni set.pdf sadrži neke vrijedne informacije o korištenju HC05, nažalost, nije baš prilagođen korisnicima.

Korak 2: Programiranje HC05

Programiranje HC05
Programiranje HC05
Programiranje HC05
Programiranje HC05

Odlučio sam da je HC05 najlakši način da ga povežem s jednim od svojih CP2102 3.3V serijskih adaptera kao što sam to učinio u programu Old Man And Bluetooth Instructable s HC06. Pogledajte sliku i shemu.

VAŽAN SAVJET: Za napajanje HC05 u komandnom načinu rada, pin PIO11 (34) mora biti visok prije nego što se primijeni 3.3V. EN pin na mom HC05 spojen je na PIO11 preko 2.2K otpornika, pa ga samo treba vezati na 3.3V. Shema prikazuje ovo kao pinove programa, ali samo postavite kratkospojnik sa 3.3V na EN pin. Učinite to prije nego što uključite napajanje. Na mom, možete reći jeste li u komandnom načinu rada jer će LED dioda HC05 polako treptati. Ako brzo treperi, tada ste u načinu uparivanja i morate pokušati ponovo.

SAVJET: HC05 u komandnom načinu rada uvijek govori brzinom od 38400 bauda. Sve naredbe su napisane velikim slovima i moraju ih pratiti CR i LF. (Ovo se razlikuje od HC06)

SAVJET: Format naredbe je vrlo strog. Uvijek koristite kape. Svi počinju s "AT" Slijedite ih točno, ne možete dodati razmake gdje nisu prikazani.

Pokrenite Arduino. Idite na “Alati” “Port” i odaberite Com port na koji je CP2102 spojen.

Otvorite serijski monitor. Pri dnu tog prozora odaberite “NL i CR” i “38400 baud”. (NL označava novu liniju koja je ista kao LF koja predstavlja uvlačenje linije).

Pri vrhu se nalazi okvir pored dugmeta Pošalji, kliknite na njega.

Na računaru uključite Caps Lock

Upišite AT

Veliki prozor bi trebao prikazati “OK”.

Komunicirate u komandnom načinu rada

Neke naredbe koje rade na mojima

AT

AT+RESET

NA+VERZIJI?

NA+IME?

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

AT+NAME = BT1 Ovo mijenja ime u BT1

NA+ULOGU? 0 = Slave 1 = Master

Korak 3: Ponovo posjetite HC06

HC06 Revisited
HC06 Revisited

Jedna od glavnih razlika između HC05 i HC06 je u tome što HC05 može biti master ili slave dok je HC06 samo slave. To znači da možete razgovarati između HC05 i HC06. Međutim, postoji mnogo drugih razlika.

Iako sam mogao koristiti Arduino za postavljanje HC06, odlučio sam koristiti 3.3V CP2102. Pogledajte sliku

Connections

CP2102 HC06

Gnd Gnd

Vcc Vcc

TXD RXD

RXD TXD

Ovo je u osnovi isto što i HC05 osim što moj HC06 ima samo četiri pina.

Moj CP2102 je modifikovan za napajanje 3.3V

Moj HC06 je modifikovan tako da prihvata 3.3V

CP2102 USB je povezan sa mojim računarom. Na svom računaru koristim Arduino IDE.

Odaberite ispravan “Port” i otvorite Serial Monitor.

Na mom HC06 crvena LED dioda brzo treperi, što znači da je spremna za uparivanje, ali može primati i naredbe.

Neke od ovih informacija došle su od Martyn Currey:

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

Dakle, svaka vrsta HC06 može biti drugačija, moja vraća VERSION linvorV1.5

Za moj HC06 (i vjerovatno sve njih) ne postoji posebna procedura za prebacivanje u naredbeni način. Očigledno, ako nije uparen, uvijek možete slati naredbe putem serijskog porta.

SAVJET: ne možete slati naredbe bilo kojem Bluetooth modulu (za koji ja znam) putem Bluetootha.

Otvorite serijski monitor

Kliknite na prvi okvir pri dnu serijskog monitora i postavite na "bez završetka linije"

U početku je moja brzina prijenosa bila 9600 bauda

Na računaru uključite Caps Lock

U gornji okvir upišite AT

Upišite Enter ili dodirnite dugme „Pošalji“

Na ekranu bi se trebalo prikazati OK

SAVJET: Ako ne dobijete OK, to može biti zato što je brzina prijenosa promijenjena ili je drugačija. Možete isprobati razne, sve dok, nadamo se, ne pronađete onu pravu.

NAPOMENA: Slanjem više naredbi, podaci o odgovoru ne prelaze u sljedeći red. Pri dnu možete kliknuti na Obriši izlaz.

Komande koje mi odgovaraju:

Odgovor naredbe

U+VERZIJI OKlinvorV1.5

AT+NAMEFred vraća OKsetname

(Ne kaže vam ime, ali ako je povezan Bluetooth -om, pojavit će se.)

NAPOMENA: ako promijenite ime, staro ime će se prikazivati na vašem pametnom telefonu sve dok se ne uparite i ponovo uparite.

AT+PINxxx Nisam probao. Zadana vrijednost je 1234

AT+BAUD8 Mijenja brzinu prijenosa na 115200

Odgovor je brzina prijenosa, npr. 115200

(Nakon promjene brzine prijenosa, morate promijeniti brzinu prijenosa serijskog monitora na 115200 za slanje daljnjih naredbi.

Opcije brzine prijenosa

1 1200

2 2400

3 4800

4 9600 (zadano)

5 19200

6 38400

7 57600

8 115200

9 230400

A 460800

B 921600

C 1382400

NAPOMENA: Nisam pokušao više od 8 115200. Čuo sam za ljude koji pokušavaju veće stope s lošim rezultatima.

Ostale naredbe koje bi trebale raditi, ali nisu testirane:

AT+PN bez provjere pariteta (zadano)

AT+PO provjera neparnog pariteta

AT+PE provjera parnosti

VAŽNO: U ovom trenutku predlažem da se odlučite za jedinstveno ime i unesete ga. Predlažem vam i da se odlučite za brzinu prijenosa na kojoj želite komunicirati, stavite je i označite njome svoj HC06.

Korak 4: Postavljanje HC05 na HC06

Ok, ovaj Instructable mi je bio od najveće pomoći:

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

Moje podešavanje:

SLAVE pronalaženje adrese

HC06 sa CP2102 (automatski u komandnom načinu rada)

Priključite CP2102 USB kabel za napajanje HC06.

LED dioda HC06 bi trebala brzo treptati (način uparivanja).

Na pametnom telefonu otvorite postavke

Idite na Bluetooth

Potražite novi uređaj

Ako vidite nešto poput HC06 ili imena koje ste mu dali, odaberite ovo.

Najvjerojatnije ćete vidjeti niz brojeva poput 00: 12: 09: 27: 19: 13, to je vjerovatno to.

Zapišite ovu adresu. (Broj je njegova jedinstvena adresa)

Odaberite ga

Kada se od vas zatraži PIN, upišite 1234.

Ime bi trebalo biti prikazano.

Ako još uvijek nemate adresu, u odjeljku “Ranije povezani uređaji” odaberite ime.

Kliknite na Info, adresa bi se trebala prikazati. Zapisati.

Ako se ne prikazuje, izađite iz postavljanja i otvorite aplikaciju Bluetooth Terminal HC-05.

Pod Upareni uređaji pronađite naziv, adresa bi trebala biti ispod njega, zapišite ga.

Slave Setup

Ako LED dioda HC06 ne treperi, isključite napajanje da biste je vratili u način uparivanja.

Pokrenite Arduino

Pod „Alati“„Port“Odaberite ispravan Com port

Otvorite serijski monitor

Na dnu ovog prozora

Odaberite "Bez završetka linije" i "9600 bauda"

MAJSTOR

HC05 sa CP2102 postavljenim u komandnom režimu (EN skakano visoko)

Priključite USB kabl iz CP2102 u računar

Otkrio sam da mogu otvoriti dva Arduina

Na drugom Arduinu, odaberite ispravan Com port za HC05

Otvorite serijski monitor

Na dnu prozora

Odaberite "I NL&CR" i "38400 baud"

Slijedi iz gore navedenog Instructable

Glavna konfiguracija

Potrebne AT naredbe za postavljanje konfiguracije:

ZAPOVJEDNI ODGOVOR Šta radi

AT+ROLE = 1 OK Postavite HC05 kao master

AT+CMODE = 1 OK Povežite se na određenu adresu

NAPOMENA: HC06 adresa je vjerojatno oblikovana ovako 00: 12: 09: 27: 19: 13

Naredba BIND očekuje ovo 0012, 09, 27193 (vadite dvotočke, uzimate prva četiri broja, zatim zarez, sljedeća dva broja, zatim zarez, pa posljednjih šest brojeva)

AT+BIND = 0012, 09, 271913 OK Povezuje/povezuje sa HC06

(Usput, AT +BIND? Odgovara sa +BIND: 12: 9: 271913)

(Želite da brzina komunikacije HC05 bude ista kao HC06) na primjer:

AT+UART = 115200, 0, 0 OK Brzina prijenosa 115200 (1stop bit, bez pariteta)

Za testiranje komunikacije:

Uklonite kratkospojnik HC05 EN, ciklus napajanja.

Kada su ova dva spojena, LED HC05 će treptati dva puta svakih nekoliko sekundi, LED LED HC06 će stalno svijetliti.

Postavite oba com porta na istu brzinu prijenosa (što god podesite)

Postavite oboje na "Oba NL&CR"

Upišite nešto na Serial Monitor1, Serial Monitor2 bi to trebao prikazati.

Upišite nešto na Serial Monitor2, Serial Monitor1 bi to trebao prikazati.

Čestitamo, komunicirate putem Bluetootha

Sada gornji Instructable ima neke skice o tome kako koristiti module s Arduinom. Za ovaj Instructable neću ulaziti u ovo.

Preporučuje se: