Ndryshoni shpejtësinë e zhurmës së modulit hc 06 Çfarë është një modul bluetooth? Skico që Arduino të funksionojë përmes bluetooth

05.01.2024

Bluetooth në Arduino ju lejon të lidhni pajisje të ndryshme me valë. Ju mund të transmetoni mesazhe nga sensorët dhe kontrollorët Arduino në pajisjet Android dhe anasjelltas, të merrni komanda nga telefonat inteligjentë përmes bluetooth. Në këtë artikull do të mësojmë se si të organizojmë funksionimin me valë të projektit tuaj Arduino duke përdorur modulet e njohura dhe jo shumë të lira të Bluetooth HC05 dhe HC06. Nuk do ta besoni, por lidhja dhe programimi i moduleve Bluetooth nuk është aspak një detyrë e vështirë dhe është e arritshme edhe për fillestarët. Le të sigurohemi për këtë.

Shpesh projektet kërkojnë telekomandë ose transferim të të dhënave nga një telefon ose pajisje tjetër. Një nga metodat më të njohura dhe më të përshtatshme është shkëmbimi i të dhënave përmes Bluetooth. Ndërfaqja UART (Seriale) përdoret për të komunikuar ndërmjet tabelës Arduino dhe kompjuterit. Meqenëse çdo bord Arduino ka të paktën 1 port serik UART, nuk kërkohen biblioteka dhe qarqe të specializuara për të lidhur një modul Bluetooth.

Modulet më të njohura janë pajisjet e bazuara në çipin BC417. Kjo seri quhet HC. Modulet HC-03 dhe HC-05 mund të jenë si një server lidhjeje ashtu edhe një klient, ata kanë një gamë të gjerë komandash AT.

Për t'u lidhur me një PC do t'ju duhet një modul Bluetooth, bord Arduino, tela lidhës dhe një kompjuter. Skica për kontrollin e tabelës Arduino përmes një smartphone dhe një kompjuteri do të jetë e njëjtë, pasi në të dyja rastet të dhënat do t'i dërgohen mikrokontrolluesit përmes protokollit UART. Diagrami për lidhjen e modulit Bluetooth me tabelën është paraqitur në figurë. Pini RX në Arduino është i lidhur me TDX, TX me RDX, GND me GND, 5V me VCC.

Kur ngarkoni skicën, duhet të çaktivizoni modulin Bluetooth, përndryshe do të shfaqet një gabim në hyrjen në Arduino. Ju gjithashtu duhet të instaloni një aplikacion në një smartphone ose tablet që mbështet sistemin operativ Android për të dërguar të dhëna në modul. Pas instalimit të aplikacionit, duhet të shkarkoni skicën dhe të lidhni modulin me tabelën Arduino. Shembull i kodit LED flash:

Int val; void setup() ( Serial.begin(9600); pinMode(13, OUTPUT); // Pin 13 është një LED, i deklaruar si dalje ) void loop() ( if (Serial.available()) // duke kontrolluar komandat e paraqitura ( val = Serial.read(); nëse (val == "1") (DixhitalWrite(13, LARTË);) // në 1 LED ndizet nëse (val == "0") (DixhitalWrite(13, LOW );) / / në 0 LED fiket ))

Tani duhet të konfiguroni lidhjen midis telefonit dhe modulit. Për të krijuar një lidhje, duhet të shkoni te cilësimet e telefonit dhe të aktivizoni Bluetooth-in. Pasi të gjendet pajisja, duhet të vendosni një fjalëkalim - zakonisht "1234" ose "0000". Pas kësaj, duhet të shkoni te aplikacioni, të klikoni në butonin "lidhni Bluetooth" dhe të zgjidhni pajisjen e dëshiruar. Nëse çiftimi është i suksesshëm, LED në modul do të fillojë të pulsojë më ngadalë, afërsisht një herë në 2 sekonda.

Në skicë, LED ndizet dhe fiket kur merren numrat "1" dhe "0". Përveç numrave, mund të përdorni edhe shkronja të alfabetit latin, të cilat janë të ndjeshme ndaj shkronjave.

Në të njëjtën mënyrë, ju mund të lidheni me modulin duke përdorur një kompjuter. Për ta bërë këtë, ka programe të ndryshme që do të lidhen me portën COM. Kur programi fillon, ai kërkon numrin e portit, shpejtësinë dhe llojin e lidhjes. Nëse lidhja është e suksesshme, në ekran do të shfaqet një fushë terminale, në të cilën duhet të futni numra/shkronja nga tastiera që ndezin LED.

Përshkrimi i modulit Bluetooth HC 06

Të gjitha llojet ekzistuese të moduleve Bluetooth kanë karakteristikat e tyre, por ato janë të ngjashme në funksion dhe funksionim. Një lloj moduli është Bluetooth HC 06. Nga ana e Arduino, moduli duket si një ndërfaqe serike e rregullt, kështu që mund të krijoni menjëherë ndërveprim me pajisjen në kompjuterin tuaj.

Karakteristikat kryesore të modulit:

  • Furnizimi me energji elektrike 3.3V – 6V;
  • Tensioni maksimal i hyrjes 5 V;
  • Rryma maksimale 45 mA;
  • Shpejtësia e transferimit të të dhënave 1200–1382400 baud;
  • Frekuencat e funksionimit 2,40 GHz – 2,48 GHz;
  • Mbështet versionin 2.1 të specifikimeve Bluetooth;
  • Konsumi i ulët i energjisë;
  • Niveli i lartë i mbrojtjes së të dhënave;
  • Gama e komunikimit 30 m;
  • Për t'u lidhur me një smartphone, përdoren të dhënat e mëposhtme - fjalëkalimi "1234", shpejtësia e transferimit të të dhënave 9600, emri i modulit HC-06.

Moduli ka kontaktet e mëposhtme:

  • VCC, GND – furnizimi me energji elektrike plus dhe minus;
  • RX dhe TX - marrës dhe transmetues;
  • MCU-INT – shfaq statusin;
  • Pastro (Rivendos) - rivendos dhe rindiz modulin. Dy kunjat e fundit zakonisht nuk përdoren në funksionim, kështu që tani prodhohen module pa këto kunja.

Moduli HC-06 përdoret vetëm në modalitetin skllav, domethënë nuk mund të lidhet në mënyrë të pavarur me pajisje të tjera Bluetooth. Të gjitha cilësimet për lidhjen "fjalëkalimi, shpejtësia e transferimit të të dhënave" mund të ndryshohen duke përdorur komandat AT.

Paketa e modulit nuk përfshin tela lidhës.

Krahasimi i moduleve Bluetooth HC 05 dhe HC 06

Modulet HC 05 dhe HC 06 janë më të përdorurat dhe mund të gjenden në shitje më shpesh se të tjerët. Parimi i funksionimit të këtyre moduleve është i ngjashëm, të dy modulet bazohen në të njëjtin çip, por ka edhe dallime të rëndësishme. Para së gjithash, moduli HC 05 mund të funksionojë në dy mënyra funksionimi - si master dhe si skllav.

Të dy modulet janë dy dërrasa të salduara. Njëra prej tyre është e instaluar në fabrikë me një mikroqark, tjetra është e nevojshme për pajisjet e bëra vetë, është e pajisur me kunja GPIO me një hap standard prej 2.54 mm dhe një stabilizues të tensionit.

Moduli HC-05 është pak më i shtrenjtë, por ka funksione funksionimi më të dobishme.

Pika e modulit HC-05:

  • EN – menaxhimi i energjisë;
  • KQV-ja e fuqisë;
  • RX, TX;
  • SHTETI – tregues;
  • KEY – aktivizon modalitetin e kontrollit duke përdorur komandat AT. Kur KEY=0 – transferimi i të dhënave, kur KEY=1 – komandat AT.

Shpejtësia e paracaktuar e transmetimit të komandave AT për HC-05 është 38400, për HC-06 – 9600. Një pikë e rëndësishme është se në fund të komandave AT për HC-05 duhet të ketë karaktere CRLF.

Karakteristikat kryesore të HC-05:

  • Frekuencat e punës 2,4 – 2,48 GHz;
  • Fuqia transmetuese 0,25 – 2,5 mW;
  • Gama 10 m;
  • Kursi maksimal i shkëmbimit të të dhënave 115200 baud;
  • Furnizimi me energji elektrike 3.3V;
  • Rryma 30-40 mA;
  • Temperaturat e punës nga -25C deri në 75C.

Lidhja e të dy moduleve me tabelën Arduino është e njëjtë.

Një opsion për lidhjen e një moduli duke përdorur një ndarës Një opsion është paraqitur për Arduino Nano, por ai do të funksionojë edhe me tabelën Uno.

konkluzioni

Në këtë artikull ne shikuam opsionet për lidhjen dhe punën me disa nga modulet më të zakonshme Arduino Bluetooth HC05, HC06. Nuk duhet të keni ndonjë vështirësi të veçantë me këto module - thjesht lidheni me kunjat me harduer ose softuer UART dhe më pas përdorni bibliotekat tradicionale (Seriali për modulin e lidhur me kunjat 0, 1, SoftwareSerial në rast të lidhjes me të tjerët).

Lidhja e Bluetooth me projektin tuaj Arduino mund të rrisë shumë aftësinë tuaj për të komunikuar me pajisje të tjera. Ju do të jeni në gjendje të monitoroni gjendjet e sensorëve dhe të ndryshoni parametrat e sistemit pa rindezur kontrolluesin. Dhe sigurisht, ju mund të krijoni lehtësisht robotë dhe makina duke përdorur Arduino, të kontrolluara përmes Bluetooth nga një smartphone. Shpresojmë se ju mund të bëni projektin tuaj të parë pasi të keni lexuar këtë artikull.

Moduli Bluetooth HC-05 lidhet nëpërmjet autobusit UART dhe është i aftë të ekzekutojë komandat AT. Komanda AT është një varg që fillon me shkronjat "AT" (nga anglishtja vëmendje - "vëmendje"). Moduli ekzekuton komandën e marrë dhe dërgon një përgjigje (rezultati i komandës), i cili është gjithashtu një varg. Në modulet Bluetooth HC-05, çdo komandë (si dhe përgjigja) duhet të përfundojë me karakteret e linjës së re "\r\n".

Lidhje:

  • Moduli Bluetooth HC-05 mund të kontrollohet ose nga një kompjuter ose përmes një mikrokontrollues, për shembull, Arduino. Pini RX i modulit është i lidhur me pinin TX dhe kunja TX e modulit është e lidhur me pinin RX të pajisjes nga e cila do të kontrollohet.
  • Për të lidhur modulin me një kompjuter(pa mikrokontrollues) do t'ju duhet një përshtatës USB-UART, ose një përshtatës RS232-UART, ose një programues me kunja TX RX, në vend të një përshtatësi USB-UART, mund të përdorni një tabelë Arduino, siç përshkruhet në artikull. Për të dërguar komanda në modul, do t'ju duhet të instaloni programin e terminalit. Një nga këto terminale është programi Termite i shpërndarë lirisht me mbështetje në gjuhën ruse.
  • Për të lidhur modulin me Arduino Mund të përdorni autobusin UART të harduerit ose softuerit. Kur përdorni një autobus harduerësh, moduli lidhet me kunjat TX dhe RX të treguara në tabelë. Kur përdorni një autobus softuerësh, moduli lidhet me kunjat e caktuara TX dhe RX të Arduino.

Cilësimi:

Moduli Bluetooth HC-05 do të jetë në gjendje të marrë komanda vetëm nëse parametrat e mëposhtëm të portës serike janë konfiguruar saktë:

  • Numriport: Mund ta zbuloni në mënyrë eksperimentale, shkëputni përshtatësin ose Arduino, shikoni se cilat porte janë të disponueshme. Lidhni përshtatësin ose Arduino dhe shikoni përsëri se cilat porte janë të disponueshme. Porti që shfaqet është i njëjti.
  • Shkalla e transferimit të të dhënave: Në modalitetin normal, moduli Bluetooth HC-05 ruan shpejtësinë e fundit të caktuar të të dhënave, por si parazgjedhje është 38400 bps (rrallë 9600 bps). Nëse të dyja shpejtësitë nuk janë të përshtatshme, atëherë shihni shënimin në fund të artikullit.
  • Parametrat e transferimit të të dhënave: Moduli ruan parametrat e fundit të transferimit të të dhënave. Vlerat e parazgjedhura të parametrave: numri i biteve në paketë - 8, madhësia e bitit të ndalimit = 1, pa kontroll të barazisë.
  • Teksti i transmetuar: Ju duhet të vendosni artikullin "shtoni karaktere CR & LF(NL)" këto janë karaktere të furnizimit të linjës "\r\n" të cilat nuk mund t'i vendosni vetë në fund të komandave AT.

Për të konfiguruar këto parametra në programin Termite, klikoni në butonin "Cilësimet". Në të njëjtën dritare mund të vendosni gjuhën ruse.

Kur përdorni Arduino, numri i portit tregohet në skedën "Tools". Cilësimet e transferimit të të dhënave përdoren si parazgjedhje. Për të shtuar karaktere NL & CR, përdorni menynë në këndin e poshtëm djathtas të monitorit serial.

Ekzaminimi:

Pas çdo lidhjeje me energji ose rindezje të modulit, përpara se të dërgoni komanda, duhet të shtypni shkurtimisht butonin e modulit. Nëse moduli nuk ka një buton, atëherë aplikoni shkurtimisht një nivel të lartë në pin K. Pas së cilës moduli do të mbetet në modalitetin normal, por do të pranojë komandat AT. Përveç modalitetit normal, moduli mund të funksionojë në modalitetin e komandës AT. Si të futeni në këtë modalitet dhe si ndryshon nga mënyra normale përshkruhet më poshtë në seksionin e shënimeve.

Për të kontrolluar komunikimin me modulin Bluetooth, dërgoni një komandë testimi AT(fut tekstin AT dhe shtypni Enter). Nëse lidhja është vendosur saktë, moduli do të përgjigjet Ne rregull. Pas kësaj, ju mund të dërgoni komanda të tjera AT.

Komandat AT:

Nëse programi i terminalit specifikon shtimin e simboleve CR & LF ose NL & CR, atëherë simbolet "\r\n" nuk kanë nevojë të futen në komanda!
Komandat mund të jenë të rregullta: AT+COMMAND\r\n, pyetjet: AT+COMMAND?\r\n ose cilësimet: AT+COMMAND=PARAMETER(S)\r\n.

Komanda AT: Përgjigje: Qëllimi:
AT AT\r\n OK\r\n Komanda e testimit:
Përdoret për të kontrolluar komunikimin me modulin.
RISET AT + RESET\r\n OK\r\n Komandën e rivendosjes së butë të modulit:
Moduli sillet sikur pas një ndërprerjeje të shkurtër të energjisë.
VERSION AT+VERSION?\r\n + VERSIONI: VERSION\r\n
OK\r\n
Kërkoni versionin e firmuerit të modulit:
Moduli e kthen versionin si një varg deri në 32 bajt.
Shembull i përgjigjes: +VERSION:hc01.comV2.1\r\n OK\r\n
AT+ORGL AT+ORGL\r\n OK\r\n Rivendos cilësimet e përdoruesit:
Moduli rivendos cilësimet e mëposhtme:
KLASA=0, IAC=9e8b33, ROLI=0, CMODE=0, UART=38400,0,0, PSWD=1234, EMRI=hc01.com.
ADDR AT+ADDR?\r\n +ADDR: ADRESË\r\n
OK\r\n
Kërkesa për adresën e modulit:
Moduli kthen tre pjesë të adresës së tij NAP:UAP:LAP të ndara me dy pika.
Çdo pjesë përbëhet nga shifra heksadecimal.
Shembull i përgjigjes: +ADDR:1234:56:789ABC\r\n OK\r\n
EMRI AT+EMRI?\r\n +EMRI: EMRI\r\n
OK\r\n
Emri i modulit të pyetjes/caktimit:
Emri i modulit përfaqësohet si një varg deri në 32 bajt.
Shembull i përgjigjes: +EMRI:iArduino\r\n OK\r\n
Shembull instalimi: AT+NAME=iArduino\r\n
Disa module i përgjigjen komandës AT+NAME?\r\n vetëm kur shtypet butoni i modulit ose kur hyrja K është e lartë.
AT+EMRI= EMRI\r\n OK\r\n
REMRI AT+RNAME? ADRESA\r\n +RNAME: EMRI\r\n
OK\r\n
Kërkoni emrin e pajisjes Bluetooth të gjetur:
Adresa futet pas një hapësire dhe pjesët e adresës (NAP, UAP, LAP) ndahen me presje. Moduli kthen emrin e pajisjes Bluetooth të gjetur brenda zonës së mbulimit, adresa e së cilës ishte në kërkesë.
Shembull i pyetjes: AT+NAME? 1234.56.789ABC\r\n
Shembull i përgjigjes: +RNAME:iArduino\r\n OK\r\n
ROLI AT+ROLE?\r\n +ROLI: ROLI\r\n
OK\r\n
Kërko/cakto rolin e modulit:
Roli i modulit përfaqësohet nga një numër:
0 - skllav, 1 - mjeshtër, 2 - skllav në një cikël*.
Shembull përgjigje: +ROLE:1\r\n
Shembull instalimi: AT+ROLE=0\r\n
AT+ROLI= ROLI\r\n OK\r\n
KLASA NË+KLASË?\r\n + KLASA: LLOJI\r\n
OK\r\n
Pyetje/cakto llojin e pajisjes:
Lloji i pajisjes përfaqësohet nga një numër 32-bit, me të cilin mund të përcaktoni qëllimin e modulit: tastierë Bluetooth, miun Bluetooth, kufje...
Shembull i cilësimit: AT+CLASS=0\r\n
NË+KLASË= LLOJI\r\n OK\r\n
IAC AT+IAC?\r\n +IAC: KODI\r\n OK\r\n Kërko/Cakto kodin e qasjes së përbashkët GIAC:
Kodi përfaqësohet si një numër 32-bit dhe përdoret për të zbuluar pajisjet Bluetooth.
Në rolin e një masteri, duke përdorur këtë kod, moduli do të fitojë akses në pajisjet e tjera Bluetooth për t'i kërkuar (i marrë në pyetje) ato dhe në rolin e një skllav, duke përdorur këtë kod, do të sigurohet qasja për të anketuar modulin nga të tjerët. mjeshtra.
Shembull i përgjigjes: +IAC:9e8b33\r\n OK\r\n
Shembull instalimi: AT+IAC=9e8b33\r\n
AT+IAC= KODI\r\n OK\r\n
ose
DËSHTON\r\n
INQM AT+INQM?\r\n +INQM: MODE,KOL,KOHA\r\n
OK\r\n
Pyetje / Vendos modulin e votimit:
Parametrat e përdorur janë cilësimet për komandën e kërkimit (sondazh) për pajisje të tjera Bluetooth.
- Mënyra e kërkimit përfaqësohet nga një numër:
0-standarde, 1-kërkim sipas intensitetit të sinjalit.
- Sasia përfaqësohet nga një numër që përcakton numrin maksimal të pajisjeve Bluetooth të gjetura, pas së cilës kërkimi duhet të ndërpritet.
- Koha e kërkimit përcakton kohën pas së cilës kërkimi ndalon. Koha aktuale e kërkimit në sekonda është e barabartë me numrin e specifikuar të shumëzuar me 1.28.
Shembull i përgjigjes: +INQM:1,1,48\r\n OK\r\n
Shembull instalimi: AT+INQM:1,1,48\r\n
AT+INQM= MODE, COUNT, KOHA\r\n OK\r\n
ose
DËSHTON\r\n
PSWD AT+PSWD?\r\n +PSWD: KODI\r\n
OK\r\n
Kërkesë/Cakto PIN:
Kodi i hyrjes paraqitet si një varg deri në 16 bajt.
Kodi i modulit në rolin skllav është fjalëkalimi i hyrjes në modulin aktual.
Kodi i modulit si pajisje kryesore është fjalëkalimi i hyrjes në pajisjet e jashtme Bluetooth.
Shembull i përgjigjes: +PSWD:1234\r\n OK\r\n
Shembull instalimi: AT+PSWD=1234arduino\r\n
AT+PSWD= KODI\r\n OK\r\n
UART AT+UART?\r\n + UART: SKOR,STOP,PROV\r\n
OK\r\n
Pyetje/cakto shpejtësinë UART:
Shpejtësia përfaqësohet nga numri i biteve/sek
Biti i ndalimit përfaqësohet nga një numër: 0 - një, 1 - dy
Çeku përfaqësohet nga një numër: 0 - pa kontroll,
1 - kontrolli i barazisë tek, 2 - kontrolli i barazisë çift.
Shembull i përgjigjes: +UART:38400,0,0\r\n OK\r\n
Shembull instalimi: AT+UART=38400,0,0\r\n
AT+UART= SHPEJTËSI, STOP, KONTROLLO\r\n OK\r\n
CMODE AT+CMODE?\r\n +CMOD: MODE\r\n
OK\r\n
Kërko/cakto modalitetin e lidhjes:
Modaliteti përfaqësohet nga një numër:
0 - moduli si master lidhet vetëm me pajisjen Bluetooth, adresa e së cilës specifikohet nga komanda AT+BIND.
1 - moduli si master lidhet me çdo pajisje skllav Bluetooth.
2 - moduli si skllav funksionon në një cikël*
Shembull i përgjigjes: +CMOD:0\r\n OK\r\n
Shembull instalimi: AT+CMOD=1\r\n
AT+CMODE= MODE\r\n OK\r\n
LIND AT+BIND?\r\n + BEND: ADRESË\r\n
OK\r\n
Kërko/cakto një adresë fikse:
Nëse moduli është në rolin e një masteri (ROLE=1) dhe mënyra e lidhjes me një adresë fikse është vendosur (CMODE=0), atëherë ai do të lidhet vetëm me pajisjen Bluetooth, adresa e së cilës përcaktohet nga kjo komandë.
Pjesë të adresës futen: kur vendoset, të ndara me presje dhe kur përgjigjesh, të ndara me dy pika.
Shembull i përgjigjes: +BIND:1234:56:789ABC\r\n OK\r\n
Shembull instalimi: AT+BIND=0,0,0\r\n
AT+BIND= ADRESA\r\n OK\r\n
POLARE AT+POLAR?\r\n + POLAR: REGJISTRI,REGJISTRI\r\n
OK\r\n
Pyetni/caktoni nivelin logjik aktiv për të ndezur LED:
Polariteti përfaqësohet nga numri 0 ose 1 që korrespondon me nivelin logjik aktiv.
Parametri i parë specifikon nivelin logjik për ndezjen e LED-it të lidhur me pinin PIO8 (shfaq mënyrën e funksionimit), dhe i dyti për LED-in e lidhur me pinin PIO9 (shfaq statusin e lidhjes).
Shembull përgjigje: +POLAR:1,1\r\n OK\r\n
Shembull instalimi: AT+POLAR=1,1\r\n
AT+POLAR= LOG,LOG\r\n OK\r\n
PIO AT+PIO= NUMRI, NIVELI\r\n OK\r\n Vendosja e nivelit logjik PIO:
Ju lejon të vendosni nivelin logjik në pinin PIO. Numri i pinit përfaqësohet nga një numër nga 2 në 11, përveç 8 dhe 9. Niveli përfaqësohet nga numri 0 ose 1.
Shembull instalimi: AT+PIO=11.0\r\n
MPIO AT+MPIO?\r\n +MPIO: NUMËR\r\n
OK\r\n
Pyetje/cakto nivele logjike PIO:
Ju lejon të zbuloni ose vendosni nivele logjike në të gjitha kunjat PIO menjëherë.
Nivelet përfaqësohen nga një numër heksadecimal, çdo bit i të cilit korrespondon me një nivel pin PIO.
Shembull i përgjigjes: +MPIO:1F0\r\n OK\r\n
Shembull instalimi: AT+MPIO:CFC\r\n
AT+MPIO= NUMËR\r\n OK\r\n
IPSCAN AT+IPSCAN?\r\n +IPSCAN: A,B,,G\r\n
OK\r\n
Kërko/cakto parametrat e skanimit IP:
A - intervali i skanimit
B - kohëzgjatja e skanimit
B - hapësira e faqeve
G - numri i faqeve
Shembull i përgjigjes: +IPSCAN:1024,512,1024,512\r\n OK\r\n
Shembull instalimi: AT+IPSCAN:1024,512,1024,512\r\n
AT+IPSCAN= A, B, C, D\r\n OK\r\n
GËRTHIM AT+SNIFF?\r\n + NJERËZIM: A,B,,G\r\n
OK\r\n
Kërko/cakto parametrat e modalitetit të kursimit të energjisë:
A - koha maksimale
B - koha minimale
B - periudha e përsëritjes
G - kohëzgjatje
Shembull i përgjigjes: +SNIFF:0,0,0,0\r\n OK\r\n
Shembull instalimi: AT+SNIFF=0,0,0,0\r\n
AT+SNIFF= A, B, C, D\r\n OK\r\n
ENSNIFF AT+ENSNIFF= ADRESA\r\n OK\r\n Kalimi në modalitetin e kursimit të energjisë:

Shembull i komandës: AT+ENSNIFF=1234,56,789ABC\r\n
EXSNIFF AT+EXSNIFF= ADRESA\r\n OK\r\n Dalja nga modaliteti i kursimit të energjisë:
Pjesë të adresës futen të ndara me presje (NAP, UAP, LAP)
Shembull i komandës: AT+EXSNIFF=1234,56,789ABC\r\n
SENM AT+SENM?\r\n +SENM: SEKRET,SHIPËR\r\n
OK\r\n
Pyet/cakto parametrat e sigurisë:
Modaliteti i privatësisë përfaqësohet nga një numër:
0 - me aftësi të kufizuara
1 - lidhje e pasigurt
2 - mbrojtje në nivelin e shërbimit
3 - mbrojtje e nivelit të lidhjes
4 - mënyra e panjohur
Mënyra e kriptimit përfaqësohet nga një numër:
0 - pa kriptim
1 - vetëm trafiku PTP është i koduar
2 - i gjithë trafiku është i koduar
Shembull i përgjigjes: +SENM:0,0\r\n OK\r\n
Shembull instalimi: AT+SENM:0,0\r\n
AT+SENM= SEKRET, SHIPËR\r\n OK\r\n
PMSAD AT+PMSAD= ADRESA\r\n OK\r\n Heqja e një pajisjeje nga lista e çiftimit:
Heqja e një pajisjeje Bluetooth nga lista do të rezultojë në nevojën për ri-çiftim për t'u lidhur me të.
Pjesët e adresës së pajisjes që do të fshihen futen të ndara me presje (NAP, UAP, LAP)
Shembull i komandës: AT+PMSAD=1234,56,789ABC\r\n
RMAAD AT+RMAAD\r\n OK\r\n Heqja e të gjitha pajisjeve nga lista e çifteve:
Pastrimi i kësaj liste do të rezultojë në nevojën për t'u ri-çiftuar me pajisjet Bluetooth për t'u lidhur me to.
FSAD AT+FSAD= ADRESA\r\n OK\r\n
ose
DËSHTON\r\n
Duke kërkuar për një pajisje në listën e çifteve:
Nëse një pajisje Bluetooth me adresën e specifikuar është në listë, moduli do të kthehet në rregull\r\n përndryshe FAIL\r\n .
Pjesë të adresës futen të ndara me presje (NAP, UAP, LAP)
Shembull i kërkesës: AT+FSAD=1234,56,789ABC\r\n
ADCN AT+ADCN?\r\n +ADCN: SASI\r\n
OK\r\n
Kërkimi i numrit të pajisjeve në listën e çifteve:
Kur krijohet një çift master-slave, të dhënat për çiftin përfshihen automatikisht në listën e çifteve dhe për lidhjet e mëvonshme (edhe pas një ndërprerjeje të energjisë) nuk ka nevojë të rivendoset çifti.
Shembull i përgjigjes: +ADCN:10\r\n OK\r\n
MRAD AT+MRAD?\r\n +MRAD: ADRESË\r\n
OK\r\n
Kërkimi i një adrese pajisjeje nga një listë çiftesh:
Moduli do të kthejë adresën e pajisjes Bluetooth nga lista e çifteve me të cilat është bërë lidhja e fundit e suksesshme.
Pjesë të adresës ndahen me dy pika (NAP:UAP:LAP)
Shembull i përgjigjes: +MRAD:1234:56:789ABC\r\n OK\r\n
SHTETI AT+SHTET?\r\n + SHTETI: STATUSI\r\n
OK\r\n
Statusi i modulit të pyetjes:
Moduli do të kthejë gjendjen e tij aktuale si një varg:
INICIALIZUAR - inicializimi
GATI - gati
PAIRABLE - formim çift
CIF - formohet një çift
KËRKESËS - kërkesë
LIDHJE - lidhje
I LIDHUR - i lidhur
I SHKURTUAR - i shkëputur
NUKNOW - gjendje e panjohur
Shembull i përgjigjes: +STATE:LIDHUR\r\n OK\r\n
INIT AT+INIT\r\n OK\r\n
ose
DËSHTON\r\n
Inicializimi i profilit SPP:
Profili SPP imiton një port serik.
INQ AT+INQ\r\n +INQ:ADRESA, LLOJI, SIGNAL\r\n
+INQ:ADRESA, LLOJI, SIGNAL\r\n
...
+INQ:ADRESA, LLOJI, SIGNAL\r\n
Kërko (sondazh) për pajisjet Bluetooth:

Moduli kërkon pajisje Bluetooth brenda rrezes dhe shfaq çdo modul të gjetur në një linjë të re. Mënyra e kërkimit (marrjes në pyetje) vendoset me komandën AT+INQM, kodi i marrjes në pyetje vendoset me komandën AT+IAC, lloji i pajisjeve të kërkuara tregohet me komandën AT+CLASS. Kërkimi përfundon kur arrihet numri maksimal i pajisjeve Bluetooth të gjetura, ose kur arrihet një afat kohor ose me komandën AT+INQC.
Shembull përgjigje: +INQ:1234:56:789ABC,240404,7FFF
INQC AT+INQC\r\n OK\r\n Përfundoni kërkimin (anketën) për pajisjet Bluetooth:
Përfundon kërkimin për pajisje Bluetooth të inicuar nga komanda AT+INQ përpara afatit
Çift AT+PAIR= ADRESA,KOHA KOHA\r\n OK\r\n
ose
DËSHTON\r\n
Çiftoje me një pajisje Bluetooth:
Çiftimi ose çiftimi i pajisjeve Bluetooth inicohet nga pajisja kryesore.
Kohëzgjatja përcaktohet si numër dhjetor në sekonda.
Nëse krijohet një çift, atëherë informacioni për të do të regjistrohet automatikisht në listën e çifteve, moduli do të përgjigjet OK\r\n dhe më pas mund të lidhni pajisjen Bluetooth duke përdorur komandën AT+LINK. Nëse çifti nuk krijohet (për shembull, kodi PIN nuk përputhet ose afati ka skaduar), moduli do të përgjigjet me FAIL\r\n.
Shembull i komandës: AT+PAIR=1234,56,789ABC,10\r\n
LIDHJE AT+LINK= ADRESA\r\n OK\r\n
ose
DËSHTON\r\n
Lidhu me një pajisje Bluetooth:
Pas ekzekutimit të kësaj komande, mund të komunikoni me pajisjen e lidhur Bluetooth.
Komanda është e disponueshme për modulin si drejtues.
Shembull i komandës: AT+LINK=1234,56,789ABC\r\n
DISK AT+DISC\r\n +DISK: REZULTATET\r\n
OK\r\n
Shkëputeni nga një pajisje Bluetooth:
Komanda udhëzon modulin të shkëputet nga pajisja Bluetooth me të cilën është vendosur lidhja. Pas shkëputjes së një pajisjeje Bluetooth, informacioni për të ruhet në listën e çifteve. Nëse duhet të lidheni sërish me këtë pajisje, çiftimi nuk do të jetë i nevojshëm (përveç nëse pajisja Bluetooth hiqet qëllimisht nga lista e çifteve).
Pas ekzekutimit të komandës, moduli do të përgjigjet me rezultatin e ekzekutimit të tij:
SUKSES - sukses
LINK_LOSS - lidhja ka humbur
NO_SLC - nuk ka SLC
TIMEOUT - skaduar koha
ERROR - gabim
Shembull i përgjigjes: +DISC:SUKSES\r\n OK\r\n

* Skllav në një lak- ky është roli skllav i modulit në të cilin ai dërgon gjithçka që merr nga master.
** Moduli u përgjigjet disa komandave vetëm kur shtypet butoni i modulit ose kur ka një nivel të lartë në pinin K.

Përshkrimi i gabimeve të krijuara nga moduli:

Nëse dërgoni një komandë që moduli nuk e njeh, nuk mund ta ekzekutojë, ose komanda ka argumente të pasakta, moduli do të kthejë vargun “GABIM:( NUMËR)", ku me numrin heksadecimal të specifikuar mund të përcaktoni se për çfarë "betohet" moduli.

Gabim nr. Përshkrimi i gabimit
0 Komanda AT e pavlefshme (nuk ka një komandë të tillë)
1 Rezultati i parazgjedhur
2 Gabim gjatë ruajtjes së fjalëkalimit
3 Emri i pajisjes është shumë i gjatë (më shumë se 32 bajt)
4 Emri i pajisjes nuk është specifikuar
5 Një pjesë e adresës NAP është shumë e gjatë (më shumë se 4 shifra heksadecimale)
6 Pjesa e adresës UAP është shumë e gjatë (më shumë se 2 shifra gjashtëkëndore)
7 Pjesa LAP e adresës është shumë e gjatë (më shumë se 6 shifra në heksadecimal)
8 Maska e portit PIO nuk është specifikuar
9 Numri i pinit PIO nuk është specifikuar
A Lloji (klasa) i pajisjes nuk është specifikuar
B Lloji (klasa) i pajisjes është shumë i gjatë
C Kodi i përgjithshëm i hyrjes IAC (Inquire Access Code) nuk është specifikuar
D IAC (Inquire Access Code) është shumë i gjatë
E Kod i pavlefshëm i hyrjes në pyetje
F Asnjë fjalëkalim i specifikuar (ose fjalëkalimi është bosh)
10 Fjalëkalimi është shumë i gjatë (më shumë se 16 bajt)
11 Roli i pavlefshëm i modulit
12 Shpejtësia e zhurmës së pavlefshme
13 Madhësia e bitit të ndalimit është e pavlefshme
14 Cilësim i pavlefshëm i bitit të barazisë
15 Pajisja nuk është në listën e çifteve (lista e pajisjeve Bluetooth të çiftuara)
16 Profili i portës serike (SPP) nuk është inicializuar
17 Rinisja e profilit SPP (SPP, Profili i Portit Serial)
18 Modaliteti i votimit i pavlefshëm i pajisjes Bluetooth
19 Koha e votimit është shumë e gjatë
1A Adresa e pajisjes Bluetooth nuk është specifikuar
1B Modaliteti i pavlefshëm i sigurisë (fshehtësia)
1C Modaliteti i pavlefshëm i enkriptimit

Shënim:

Nëse shtypni butonin ose aplikoni një nivel të lartë në hyrjen K menjëherë në momentin që moduli ndizet (furnizohet energjia), moduli do të kalojë në modalitetin e komandës AT. Në këtë modalitet, moduli nuk do të lidhet me module të tjera, por ky modalitet ka një shpejtësi fikse = 38400 bps. Nëse gjatë konfigurimit, në modalitetin normal të funksionimit të modulit, nuk keni mundur të përcaktoni shpejtësinë e modulit, atëherë mund të futeni në këtë modalitet dhe të vendosni një shpejtësi të re. Shpejtësia e vendosur rishtazi do të hyjë në fuqi vetëm në modalitetin normal për ta bërë këtë, do t'ju duhet të rindizni modulin pa mbajtur butonin dhe pa aplikuar një nivel të lartë në hyrjen K në momentin e ndezjes. Mos harroni se në modalitetin normal, jo më herët se gjysmë sekonde pas aplikimit të energjisë (ose rinisjes), duhet të shtypni shkurtimisht butonin ose të aplikoni një nivel të lartë afatshkurtër në hyrjen K të modulit, përndryshe nuk do të pranojë AT komandat.

Nëse dëshironi të jeni në gjendje të "shtypni" një buton në mënyrë programore, por moduli juaj nuk ka një pin K, përdorni komandën AT+PIO=11,NIVELE\r\n , ku niveli përfaqësohet nga numri 1 ose 0 që i korrespondon nivelit të caktuar logjik. ( AT+PIO=11.0\r\n - butoni i lëshuar , AT+PIO=11.1\r\n - butoni i shtypur).

Disa module kanë një pin En që kontrollon energjinë dhe është i lidhur me Vcc. Nëse aplikohet një nivel i ulët logjik në pinin En, energjia e çipave do të fiket. Ky pin mund të përdoret për të hyrë në mënyrë programore në modalitetin e komandës AT. Nëse menjëherë pas heqjes së nivelit të ulët nga pini En, lëshoni komandën AT+PIO=11,1\r\n kjo do të jetë e barabartë me ndezjen e modulit me butonin e shtypur.

Krijimi i një skllav që pret që master të lidhet:

  • AT+DISC
  • AT+ORGL
  • AT+RMAAD\r\n - Pastro listën e çifteve (pajisjeve të autorizuara) në mënyrë që ai që është shkëputur të mos lidhet me modulin.
  • AT+EMRI= iArduino\r\n - Vendosni emrin e modulit (maksimumi 32 karaktere).
  • AT+PSWD= 1234\r\n - Vendosni një kod PIN për t'u lidhur me modulin (jo më shumë se 16 karaktere).
  • AT+ROLE=0\r\n - Vendoseni modulin në një rol skllav (nëse nuk ishte i instaluar gjatë rivendosjes së cilësimeve të përdoruesit).
  • AT + RESET\r\n - Rifresko modulin.

Jo më herët se gjysmë sekonde pas rindezjes (me komandën AT + RESET\r\n) duhet të shtypni shkurtimisht butonin ose të aplikoni një nivel të lartë afatshkurtër në hyrjen K të modulit, përndryshe ai nuk do të pranojë komanda të reja AT.

Nëse një modul me një rol udhëheqës është i lidhur me modulet skllav nga adresa e tyre, dhe jo përmes emrit të tyre, atëherë adresa e këtij moduli (skllav) mund të gjendet duke ekzekutuar komandën AT+ADDR?\r\n.

Krijimi i një masteri me një lidhje me një skllav:

  • AT+DISC\r\n - Prisni lidhjen (në rast se moduli është i lidhur).
  • AT+ORGL\r\n - Rivendos cilësimet e përdoruesit në vlerat e paracaktuara.
  • AT+RMAAD\r\n - Pastro listën e çifteve (pajisjeve të autorizuara) në mënyrë që moduli të mos përpiqet të lidhet me atë nga i cili është shkëputur.
  • AT+BIND= ADRESA\r\n - Vendosni një adresë fikse për lidhje (specifikoni adresën e pajisjes skllav Bluetooth)
  • AT+CMODE=0\r\n - Ne i themi modulit të lidhet vetëm me një adresë fikse
  • AT+ROLI=1\r\n - Cakto modulin të jetë një pajisje kryesore
  • AT+PSWD= 1234\r\n - Mbani mend kodin PIN të pajisjes skllav Bluetooth
  • AT+PAIR= ADRESA,10\r\n - Çiftohet me një pajisje skllave Bluetooth, duke specifikuar adresën e saj dhe afatin kohor 10 sekonda
  • .

Shumë shpesh në projektet tuaja ka nevojë për telekomandë ose transferim të të dhënave nga pajisjet tuaja telefonike.

Një nga metodat më të njohura dhe më të përhapura të shkëmbimit të të dhënave përmes Bluetooth .

Sot do të shikojmë shembuj të thjeshtë se si të lidhni Bluetooth modul në Arduino dhe konfiguroni telekomandën nga telefoni juaj.

Do të na duhen:

  • Set me tela MALE-MAMA
  • HC-06 Bluetooth

Lidhni Bluetooth Moduli i mikrokontrolluesit Arduino është më i përshtatshëm duke përdorur instalime elektrike MALE-MAMALE.

Arduino Bluetooth
Pin 1 (TX) RXD
Pin 0 (RX) TXD
GND GND
5 V KQV

Kini kujdes, duhet të lidheni TX -> RXD ,RX -> TXD .

Tani duhet të shkruani kodin e testimit të programit:

Kur ngarkoni skicën, është e nevojshme që moduli Bluetooth të shkëputet nga mikrokontrolluesi arduino. Përndryshe, skica nuk do të regjistrohet për shkak të lidhjes me Bluetooth Moduli komunikon nëpërmjet të njëjtave porta RX dhe TX si USB.

Int val; int LED = 13; setup void() ( Serial.begin(9600); pinMode(LED, OUTPUT); DigitalWrite(LED, LARTË); ) void loop() ( if (Serial.available()) ( val = Serial.read(); / / Kur karakteri është "1", ndizni LED nëse (val == "1") ( digitalWrite(LED, HIGH); ) // Kur karakteri është "0", fikni LED nëse (val == "0") (Shkruaj dixhital (LED, LOW); )))

Pasi skica është regjistruar dhe Bluetooth Moduli është i lidhur me Arduino, mund të vazhdoni në hapin tjetër.

Lidhja Bluetooth me telefonin tuaj

Këshillohet që të mos përdorni USB si burim energjie për arduino, por një furnizim të jashtëm me energji 9 V.

  1. Aktivizoni Bluetooth-in në telefonin tuaj dhe kërkoni pajisje të reja
  2. Ne gjejmë në listën e çrregullimeve " HC-06" dhe lidheni me të.
  3. Telefoni do të kërkojë një kod PIN. duhet te futesh " 1234 "ose" 0000 "
  4. Hooray. Pajisja është e lidhur.

Tani duhet të shkarkoni terminalin Bluetooth në telefonin tuaj. Ne do të shikojmë shembullin e platformës Android.



Mund të instaloni terminale të ndryshëm bluetooth, si rregull ato ndryshojnë vetëm në dizajne të ndryshme, funksionaliteti nuk ndryshon. Ju gjithashtu mund të gjeni një terminal për produktet iOS.

Pasi të kemi instaluar terminalin, e nisim atë, zgjedhim modulin tonë bluetooth HC-06 dhe lidhemi me të.

Është koha për të provuar projektin në veprim. Ne shkruajmë numrin "0" në terminal dhe dërgojmë. LED L i cili ndodhet në tabelën arduino pranë pinit 13 duhet të fiket. Tani dërgojmë numrin "1" përmes terminalit dhe LED L duhet të ndizet.

Demonstrimi i punës:


Detyre shtepie:

  • Ndryshoni skicën në mënyrë që LED të ndizet dhe të fiket duke përdorur të njëjtën komandë, për shembull "G".
  • Plotësoni skicën dhe mësoni atë të konvertojë të dhënat e tekstit që vijnë përmes Bluetooth në të dhëna dixhitale dhe të zbatojë një dimer, ndez një LED duke përdorur PWM, me një shkëlqim të caktuar nga 0 në 254 që vjen përmes Bluetooth.

Për të shkëmbyer informacione me valë midis pajisjeve të ndryshme në distanca të shkurtra, mund të përdorni teknologjinë Bluetooth. Për këto qëllime, industria kineze prodhon module të ndryshme Bluetooth, ndër të cilat modelet HC-05 dhe HC-06 janë bërë gjerësisht të njohura. Në një kohë, bleva një HC-06 në Aliexpress, mbi të cilin do të kryej eksperimente të mëtejshme, si dhe do ta lidh atë me analogun tim kinez të Arduino.

Direkt vetë moduli Bluetooth. Në këtë formë, mund të përdoret në pajisje të ndryshme, ku ngjitet direkt në tabelë. Moduli ka 34 kunja, duke përfshirë: kunjat për lidhjen me një kompjuter nëpërmjet UART, transmetimin e audios duke përdorur metodën PCM (modulimi i kodit të pulsit), hyrje dhe dalje analoge, kunja për lidhjen me një lidhës USB, ndërfaqe SPI, si dhe të përgjithshme portet e qëllimit. Në fakt, jo të gjitha këto kunja janë të disponueshme për t'u përdorur në kunjat e transmetimit audio (5-8), hyrjen dhe daljen analoge (9, 10), si dhe në grupin e kontakteve për t'u lidhur me USB (15; 20) është i bllokuar.

HC-06 është ndërtuar mbi një çip BC417 (BlueCore4-Pajisje e jashtme), specifikim Bluetooth V2.0. Në bord ka gjithashtu kuarc 26 MHz dhe memorie flash 8 MB. Energjia furnizohet nga 3.3 V.

Për modelet tuaja, është më e përshtatshme të përdorni një modul me një tabelë buke, në të cilën shfaqen kontaktet e nevojshme për lidhjet, dhe ekziston gjithashtu një stabilizues i tensionit që ju lejon të furnizoheni nga 5 volt.
Kur blini module të tilla, mund të hasni shenja të ndryshme. Në thelb, kjo është e njëjta pajisje, e cila ndryshon në firmware që përcakton mënyrën e modulit (master / skllav).

Dallimi midis HC-05 dhe HC-06 është se HC-05 mund të përdoret si master ose skllav. Këto mënyra vendosen duke përdorur komandat AT. Një buton në tabelën e modulit e kalon atë në modalitetin e hyrjes së komandës AT. Modaliteti master lejon që moduli të zbulojë vetë një pajisje të tillë dhe të organizojë komunikimin me të. Moduli HC-06 mund të funksionojë vetëm në një modalitet fiks skllav.

Ekzistojnë gjithashtu modele HC-03 dhe HC-04, por ato prodhohen për qëllime industriale.

Përcaktimi i kontakteve në tabelën HC-06.

SHTETI- kontrollimi i statusit të modulit. Ky pin kopjon sinjalin që shfaqet nga LED i integruar në tabelë. Nëse pulson shumë shpejt, moduli është në gjendje aktive. Në modalitetin e komunikimit, rryma është 30-40 mA. Kur moduli vendos komunikim me një pajisje tjetër, LED thjesht ndizet. Në modalitetin e transferimit të të dhënave, rryma është 8 mA.
RX- marrjen e të dhënave.
TX- transferimi i të dhënave.
GND- lidhet me tokën.
+5 V- furnizimi me energji elektrike +5 volt
SHQIP- aktivizoni/fikni modulin. Nëse aplikoni logjikë 1 (5 volt) në këtë kontakt, moduli do të fiket nëse aplikoni 0 logjik ose nuk lidheni me këtë kontakt, moduli do të funksionojë.

Si parazgjedhje, HC-06 ka një emër për zbulimin nga pajisjet e tjera " HC-06", me kod PIN" 1234 ».

Për të ndryshuar këto të dhëna, duhet të lidhni modulin me kompjuterin tuaj dhe të futni komandat AT duke përdorur një program terminal. Kjo mund të bëhet duke përdorur një përshtatës USB në COM me nivele TTL. Për këto qëllime është i përshtatshëm një përshtatës për PL2303HX, CH340G ose një tjetër të ngjashëm. Në këtë kohë, drejtuesi për përshtatësin USB duhet të jetë i instaluar tashmë në kompjuter.

Ne i lidhim kontaktet si më poshtë:

HC-06 Përshtatës USB në COM
+5 V +5 V
GND GND
RX TX
TX RX

Kur e lidhni këtë asamble me kompjuterin tuaj, LED-i i kuq në tabelën e modulit Bluetooth do të fillojë të pulsojë shpejt. Për të futur komandat AT, mund të përdorni çdo program terminal që unë përdor Arduino IDE për këtë qëllim.

Në cilësimet, zgjidhni numrin e portës virtuale COM në të cilën është lidhur përshtatësi USB, në rastin tim është COM44. Le të hapim dritaren" Monitor i portës serike».

Shkruani komandën me shkronja të mëdha " AT", nëse pajisja është lidhur me sukses, përgjigja duhet të kthehet " Ne rregull" Kursi i paracaktuar i shkëmbimit të të dhënave është 9600 baud.

Për të kontrolluar versionin e firmuerit, futni komandën " AT+VERSION", në rastin tim përgjigja u kthye" OKlinvorV1.8».

Ekipi " AT+NAMEvvv", Ku Uau- një grup arbitrar karakteresh në latinisht, ne mund të ndryshojmë emrin me të cilin do të gjendet moduli ynë i pajisjes bluetooth (HC-06 si parazgjedhje). Në shembullin tim, unë hyra " AT+NAMEfox“, i kthehet përgjigja OKsetemri.

Ekipi " AT+PINxxxx", Ku xxxx– një grup numrash të rastësishëm, mund të ndryshoni kodin PIN (parazgjedhja 1234). Përgjigja kthehet " OKsetPIN».

Ekipi " AT+BAUDx", Ku x– vlera nga 1 në 9, ju mund të ndryshoni shpejtësinë e zhurmës (e parazgjedhur 9600).

1 - 1200
2 - 2400
3 - 4800
4 - 9600
5 - 19200
6 - 38400
7 - 57600
8 - 115200
9 - 230400

Për shembull, nëse ekzekutojmë komandën " AT+BAUD8", ku 8 është shpejtësia prej 115200 baud, përgjigja do të kthehet" OK115200».

Lidhja e HC-06 me Arduino.

Shembulli 1. Le të ngarkojmë një skicë në Arduino, me të cilën do të ndezim dhe fikim LED, të ngjitur në pinin 13 të Arduino, nëpërmjet modulit Bluetooth.

int të dhëna;
int LED = 13;
konfigurimi i zbrazët ()
{
Seriali.fillim(9600);
pinMode (LED, OUTPUT);
DigitalWrite (LED, LARTË);
}
void loop ()
{
nëse (Serial.disponueshëm())
{
data = Serial.lexo();
nëse (të dhënat == "1")
{
DigitalWrite (LED, LARTË);
}
nëse (të dhënat == "0")
{
DigitalWrite (LED, LOW);
}
}
}

Nëse nuk e keni këtë LED në tabelë, lidhni atë me pinin 13 sipas diagramit, vlerat e rezistencës mund të merren nga 220 Ohm në 1 kOhm.

Çaktivizoni Arduino-n dhe lidhni HC-06. Kontaktoni TX lidhni modulin me kontaktin RX Arduino (pin 0 në tabelën UNO), dhe pin RX, për të kontaktuar TX(pin 1). Kontaktet +5 V Dhe GND, lidheni me kunjat përkatëse Arduino.

Struktura e montuar. Pasi të futet energjia në Arduino, LED në HC-06 duhet të pulsojë shpejt.

Kontrollimi i Arduino përmes HC-06 duke përdorur një kompjuter.

Unë do të tregoj një shembull në Windows XP. Çdo përshtatës USB Bluetooth duhet të lidhet me kompjuterin dhe drejtuesit e instaluar në të.

Në rastin tim, unë përdora këtë përshtatës.

Kur lidhet me një PC, një ikonë përkatëse shfaqet në tabaka (pranë orës).

Klikoni me të djathtën në këtë ikonë dhe zgjidhni " Shto pajisje Bluetooth».

Vendos çelësin " Pajisja është e instaluar dhe gati për t'u zbuluar"dhe klikoni" Me tutje».

Moduli ynë Bluetooth do të shfaqet në listën e pajisjeve të zbuluara, me emrin e ri që kam ndryshuar më parë. Zgjidhni atë dhe klikoni " Me tutje».

Në dritaren tjetër, futni kodin PIN për t'u lidhur me modulin duke zgjedhur " Përdorni çelësin e hyrjes nga dokumentacioni:». Parazgjedhja është "1234" por e ndryshova në "9999". Kliko " Me tutje».

Moduli Bluetooth ka komunikuar me sukses me kompjuterin, i cili mund të shihet në dritaren përkatëse. Ju lutemi vini re se kur krijohet një lidhje midis dy pajisjeve Bluetooth, dy porte të reja virtuale COM do të krijohen në kompjuter (do të shfaqen në menaxherin e pajisjes), njëra për të dhënat dalëse, tjetra për të dhënat hyrëse. Do të na duhet një port për të dhënat dalëse, në rastin tim është COM45.

Le të hapim një program terminal përsëri, unë do të përdor Arduino IDE. Në cilësimet, zgjidhni portin dalës (kam COM45), hapni " Monitori i portës serike", fut komandat" 1 "Dhe" 0 " Kur komanda "1" ndizet LED, kur "0" fiket.

Kontrolloni Arduino përmes HC-06 duke përdorur një smartphone.

Ndoshta të gjithë telefonat inteligjentë modernë tashmë kanë Bluetooth të integruar. Gjithçka që mbetet është të instaloni programin e terminalit. Në rastin tim është përdorur Lumia 640DS, me te instaluar Windows Mobile 10. Unë përdor "" si program terminal. Në telefonat inteligjentë Android gjithçka është e ngjashme që mund të përdorni "; Terminali Bluetooth».

Për pronarët e telefonave inteligjentë të Apple, nuk do të jetë e mundur të punoni me modulet Bluetooth HC-05 dhe HC-06 (Bluetooth V2.0 për ta do të duhet të përdorni përshtatës me teknologjinë BLE (Bluetooth me energji të ulët), specifikim Bluetooth 4.0); . Një përfaqësues i spikatur është moduli HM-10.

Ne e çiftojmë HC-06 me Bluetooth-in e telefonit inteligjent.

1. Në " Parametrat» smartphone zgjidhni artikullin « Pajisjet».
2. Tjetra " Bluetooth dhe pajisje të tjera».
3. Aktivizoni rrëshqitësin Bluetooth të smartfonit dhe klikoni në " plus në katror» për të kërkuar dhe shtuar një pajisje të re Bluetooth, në rastin tonë HC-06.

4. Në seksionin " Shto pajisje"zgjidh "".
5. Telefoni inteligjent do të kërkojë pajisje Bluetooth në zonë dhe do të shfaqë emrat e tyre. Në shembullin tim, u gjet moduli HC-06, të cilin e riemërova në " dhelpra».

6. Futni kodin PIN të pajisjes me të cilën po lidhemi, shtypni butonin " Lidheni».

Instaloni dhe nisni programin e terminalit "". Moduli HC-06 i lidhur me telefonin inteligjent shfaqet në listë, zgjidhni atë.

Do të shfaqet një fushë për futjen e komandave dhe një buton për dërgimin. Fut në mënyrë alternative " 1 "Dhe" 0 "dhe shikoni LED-in në pinin 13, i cili do të ndizet ose fiket.

Shembulli 2. Le të lidhim tre LED me Arduino dhe të përpiqemi t'i kontrollojmë ato nëpërmjet modulit Bluetooth HC-06.

I lidha LED me kunjat 9, 11 dhe 13 nëse përdorni kunja të tjera, ato duhet të tregohen në skicë.

int të dhëna;
int LED1 = 9;
int LED2 = 11;
int LED3 = 13;
konfigurimi i zbrazët ()
{
Seriali.fillim(9600);
pinMode (LED1, OUTPUT);
pinMode (LED2, OUTPUT);
pinMode (LED3, OUTPUT);
DigitalWrite (LED1, LARTË);
DigitalWrite (LED2, LARTË);
DigitalWrite (LED3, LARTË);
}
void loop ()
{
nëse (Serial.disponueshëm())
{
data = Serial.lexo();
nëse (të dhënat == "1")
{
DigitalWrite (LED1, LARTË);
}
nëse (të dhënat == "2")
{
digitalWrite (LED1, LOW);
}
nëse (të dhënat == "3")
{
DigitalWrite (LED2, LARTË);
}
nëse (të dhënat == "4")
{
digitalWrite (LED2, LOW);
}
nëse (të dhënat == "5")
{
DigitalWrite (LED3, LARTË);
}
nëse (të dhënat == "6")
{
digitalWrite (LED3, LOW);
}
}
}

Kur ngarkoni një skicë, moduli HC-06 duhet të shkëputet nga Arduino, sepse si kompjuteri ashtu edhe Bluetooth funksionojnë përmes UART. Arduino nuk mund të funksionojë me disa pajisje në një UART.

Ne hapim programin e terminalit dhe provojmë skicën në veprim. Kuptimi i kontrollit LED është si më poshtë: ka tre LED, secila prej të cilave mund të jetë ose e ndezur ose e fikur. Rezulton 6 ekipe. Ekipet janë numra nga 1 deri në 6 ( 1, 3, 5 - ndizni LED 1, 2 dhe 3. 2, 4, 6 - për të shlyer). Numrat mund të futen një nga një ose në kombinime. Për shembull: 145 - ndizni të parën, fikni të dytën, ndizni të tretën.

Shembulli 3. Le të lidhim modulin e stafetës nga artikulli "" me Arduino dhe të përpiqemi të kontrollojmë një ngarkesë të fuqishme përmes Bluetooth. Në thelb, ne do të kemi një "prizë inteligjente". Mund të lidhni ngarkesa të ndryshme (llamba, pompa, tifozë) me modulet e stafetës dhe t'i kontrolloni ato nga distanca.

Së shpejti do të shfaqet një skicë për këtë shembull.

Arduino ka një numër të madh modulesh të ndryshme që mund të zgjerojnë ndjeshëm funksionalitetin e mikrokontrolluesit. Një klasë e veçantë përfshin çipa për transmetimin e të dhënave, si në distanca të gjata, për shembull, për komunikim nëpërmjet internetit pa tel, ashtu edhe në distanca të shkurtra, siç është një modul Bluetooth. Një pajisje e tillë ka për qëllim vendosjen e komunikimeve radio dydrejtimëshe duke përdorur protokollin me të njëjtin emër.

Arduino bluetooth do të jetë i përshtatshëm për telekomandimin e pajisjes suaj të bazuar në mikrokontrollues, por le të shohim se çfarë është dhe cilat janë karakteristikat e moduleve bluetooth hc 05 dhe hc 06.

Protokolli Bluetooth është i nevojshëm për transferimin e shpejtë të të dhënave në distanca të shkurtra. Por shumë më shpesh përdoret në projekte për të vendosur kontrollin e një mikrokontrollues nga distanca të afërta. Prandaj, do të jetë i përshtatshëm për të ndërtuar të njëjtat shtëpi inteligjente nëse plotësoni komponentin e harduerit me një aplikacion në një smartphone.

Kështu, qëllimi kryesor dhe kryesor i Arduino Bluetooth është të komunikojë me kompjuterin tuaj dhe/ose Android duke përdorur protokollin e duhur. Kjo ju lejon jo vetëm të kontrolloni një sërë sensorësh në mikrokontrollues, por gjithashtu, nëse është e nevojshme, të përditësoni firmware-in.

Nuk do të jetë e mundur të rindizni plotësisht pajisjen duke e përdorur atë. Përveç kësaj, Android Arduino bluetooth mund të sigurojë komunikim midis disa mikrokontrolluesve dhe pajisjeve. Natyrisht, për këtë, një modul i pavarur duhet të instalohet në secilën prej tyre. HC-05 ju lejon të vendosni disa ura duke përdorur llojin USAR-bluetooth-USART. Në këtë rast, vetë pajisja do të perceptohet se i përgjigjet USART. Dhe komunikimi do të organizohet nga hardueri i projektit tuaj.


Moduli bluetooth për Arduino ka disa përparësi ndaj shtesave standarde për mikrokontrolluesit e tjerë:

  1. Një inxhinier nuk ka nevojë të studiojë teknologjinë e protokollit Bluetooth për të shkruar softuer ose për të filluar përdorimin e bibliotekave të gatshme.
  2. Lehtësia e përdorimit në përgjithësi. Ju nuk do të keni nevojë të bashkoni një tabelë të veçantë për shpërndarjen e energjisë, thjesht lidhni pajisjen me një MK të gatshëm përmes kunjave.
  3. Një përzgjedhje e gjerë bibliotekash. Meqenëse Arduino ka një prag të ulët hyrjeje, mund të gjeni një numër të madh bibliotekash për qëllime të ndryshme për të gjitha modulet e tij. Por vlen të theksohet se një pjesë e konsiderueshme e tyre janë të padobishme, sepse nuk punojnë ose punojnë jashtëzakonisht keq. Në fund të fundit, ato janë shkruar nga një komunitet që nuk ka studiuar bazat e algorithmizimit dhe, në pjesën më të madhe, është, në parim, i përgatitur dobët në programim. Për shkak të kësaj, në shumë situata, thjesht modifikimi i softuerit të dikujt tjetër nuk është zgjidhja më e mirë dhe është shumë më e lehtë të shkruani tuajin.

Shtrirja e aplikimit të bluetooth-it të makinës RC Arduino është e madhe dhe e kufizuar vetëm nga imagjinata juaj. Për shembull, mund të blini një kufje të zakonshme kineze, të bashkoni disa module për Arduino me të, pasi ato mund të funksionojnë pa një MK dhe të ngarkoni një nga bibliotekat e gatshme. Pas manipulimeve të tilla, kufjet mund të përdoren me valë dhe problemi me telat e ngatërruar ose të përkulur do të zhduket. Ky është një nga problemet banale të zbatimit të këtij protokolli në një projekt, në fakt janë me mijëra.

Moduli audio bluetooth është i destinuar për përdorim shtëpiak dhe komercial, gjë që lehtësohet nga karakteristikat e tij. Vlen gjithashtu të merret në konsideratë që nëse do të komunikoni në të ardhmen duke përdorur protokollin me të njëjtin emër me një PC, atëherë në shumicën e pajisjeve moderne do t'ju duhet të blini Bluetooth përmes USB. Por ju gjithashtu mund ta bashkoni atë nga një MK, duke krijuar modulin tuaj bluetooth për kompjuterin tuaj. Natyrisht, kjo nuk vlen për laptopët, ku janë instaluar transmetues me të njëjtin emër dhe nuk ka nevojë t'i modifikoni në asnjë mënyrë.

Pinout HC-05 dhe HC-06

Kunjat në dërrasa janë përgjegjëse për:

Karakteristikat

Le të hedhim një vështrim më të afërt se çfarë karakteristikash ka një modul i tillë bluetooth për PC dhe projekte të ndryshme. Vetë zhvilluesit pretendojnë se kanë përmbushur standardin tregtar në hc 05. Prandaj, për të kontrolluar pajisjen, do të mjaftojë një program i veçantë në një smartphone ose kompjuter, i cili do t'ju lejojë të dërgoni dhe merrni të dhëna nga sensori. Megjithatë, ka një kufizim në fushën e aplikimit, sepse një sinjal i qëndrueshëm, pa përdorimin e amplifikatorëve, mund të kapet vetëm 9 metra nga çipi. Mbani në mend se këto janë numra të papërpunuar dhe nuk marrin parasysh pengesat në rrugën e valëve.

Vetë çipat hc janë plotësisht të pajtueshëm me çdo përshtatës që mbështet SPP. Në vetë bordin e pajisjes ka një antenë të vogël, të ngjitur në shtresën e sipërme në formën e një piste të ngjashme me gjarpërin. Karakteristikat e pajisjes shprehen si më poshtë:

  1. Frekuencat aktive të radios janë në intervalin 2.4-2.48 GHz.
  2. Kanali është përshtatur për ndërrim adaptiv.
  3. Gama e komunikimit konvencional është 10 metra, por kjo shifër nuk merr parasysh pengesat dhe ndërhyrjet.
  4. Shpejtësia maksimale për shkëmbimin e informacionit është 115300 baud.
  5. Çipi mund të ruhet në një interval të temperaturës nga -40 në +85 gradë, por i përdorur - nga -20 në +70.
  6. Për të funksionuar, do t'ju duhet një tension prej 3.3 V, të cilin do ta shohim më poshtë.

Lidhje

Pllaka e qarkut të printuar ka disa kontakte lidhëse në skajet e pajisjes. Por nuk duhet t'i lidhni drejtpërdrejt telat me kontaktet e pajisjes, sepse bordi përdor një teknologji të veçantë që ju lejon të shtrydhni dimensionet e pajisjes në sistemin tuaj sa më kompakt të jetë e mundur.

Moduli duhet të instalohet mjaft fort, për të cilin janë të përshtatshme një MK standard ose borde speciale që përdorin lidhës priza. Por mund të blini një tabelë të veçantë për pajisjet e serisë hc, ose t'i bëni ato vetë nëse keni aftësi për të projektuar dhe krijuar pllaka elektronike.

Një pajisje e tillë duhet të ketë një lidhës/vrima të veçanta për instalime elektrike, si dhe LED që do të ndihmojnë në përcaktimin nëse rrjedh rryma dhe nëse pajisja po funksionon. Ndër të tjera, me kërkesën tuaj ju nevojiten stabilizues, një çelës special për rivendosjen e firmuerit dhe konvertuesit e ndërfaqes.

Kur lidheni për herë të parë, është e rëndësishme të kontrolloni funksionalitetin që një smartphone ose PC është i përshtatshëm për këtë. Thjesht aplikoni rrymë në modul dhe skanoni atë me pajisjet e duhura.

Cilësimet

Për të konfiguruar çipin, do t'ju duhet të vendosni çiftimin përmes USART-bluetooth, ku pin 34 do të lidhet me telin e përbashkët. Pas kësaj, ju mund të lëshoni komanda standarde AT ose të rifreskoni mikroçipin, sipas dëshirës tuaj.

Nga kutia, fjalëkalimi për lidhjen e ndërfaqes është 1234, por shpejtësia e shkëmbimit të të dhënave është e kufizuar në 38400 baud. Nuk ka shumë biblioteka të gatshme për HC 05, por drejtimi i aplikimit të tij është mjaft i ngushtë, gjë që ju lejon të përshtatni çdo softuer ekzistues për nevojat tuaja.