Innholdsfortegnelse:
- Trinn 1: Evaluering/modifikasjon
- Trinn 2: Programmering av HC05
- Trinn 3: HC06 revidert
- Trinn 4: Konfigurere HC05 til HC06
Video: OldMan og Bluetooth2: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
Så denne Lazy Old Geek (L. O. G.) fikk endelig en Bluetooth HC05 -modul fra AliExpress.com. Jeg bestilte en etter å ha skrevet denne Instructable:
www.instructables.com/id/OldMan-and-Blueto…
Vel, jeg brukte flere timer på å få dette til å fungere i kommandomodus uten å lykkes. Jeg ødela til og med en HC05 -modul (sannsynligvis med feil spenning), så jeg måtte kjøpe en til.
TIPS: Kommandomodus snakker til selve HC05- eller HC06 -modulen. Kommunikasjonsmodus snakker med en annen Bluetooth -enhet.
Det jeg fant er mange forskjeller mellom HC05 og HC06. HC05 kan være en master eller slave, HC06 er bare slave. I utgangspunktet kan en mester snakke med en slave, to slaver kan ikke snakke med hverandre. HC05 og HC06 har forskjellige kommandoer. HC05 må være maskinvarekonfigurert for å gå i kommandomodus, den kan ha forskjellige overføringshastigheter for kommunikasjon og kommandomodus.
HC06 er alltid i kommunikasjons- og kommandomodus. Hvis du angir overføringshastigheten for den ene, endres den andre.
TIPS: Følg med på dette siden jeg ikke gjorde det og hadde noen problemer.
TIPS: Ulike HC05 og HC06 kan være forskjellige fra de jeg fikk.
HCO6 vil utføre kommandoer, men viser ikke alltid endrede resultater, f.eks. Navne bytte.
Trinn 1: Evaluering/modifikasjon
Vedlagt er en HC05 skjematisk lik min. To forskjeller jeg vet, er at det er en 2.2K motstand mellom PIO11 (34) og EN -pinnen, og 3.3v -regulatoren er en 3 -pinners pakke og har ikke en CE -pinne. Det vedlagte bildet er en markert skjematisk oversikt over det jeg tror jeg har.
For programmeringsformål er det viktige at pinne 34 -nøkkelen er koblet til EN -pinnen gjennom en 2,2K motstand. (Den er også koblet til trykknappen, den andre siden er koblet til 3,3V)
Lager HC05 krever 5V strøm, selv om det fungerer med 3.3V signaler, så jeg endret HCO5 for å bruke 3.3V i stedet. Jeg fjernet 3.3V -regulatoren og kjørte en jumper fra VCC -pinnen direkte til 3.3V. Dette er vist på det modifiserte skjematiske bildet og det modifiserte HC05 -bildet mitt.
Forresten, det vedlagte HC05 Command Set.pdf har verdifull informasjon om bruk av HC05, dessverre er det ikke veldig brukervennlig.
Trinn 2: Programmering av HC05
Jeg bestemte meg for at den enkleste måten å bruke HC05 var å koble den til en av mine CP2102 3.3V serielle adaptere som jeg gjorde i Old Man And Bluetooth Instructable med en HC06. Se bilde og skjematisk.
VIKTIG TIPS: For å slå på HC05 i kommandomodus, må PIO11 -pinnen (34) være høy før 3,3V påføres. EN -pinnen på min HC05 er koblet til PIO11 gjennom en 2,2K motstand, så den må bare bindes til 3,3V. Skjematisk viser dette som programpinnene, men bare legg en jumper fra 3.3V til EN -pinne. Sørg for at du gjør dette før du bruker strøm. På min kan du fortelle om du er i kommandomodus fordi HC05 LED vil blinke sakte. Hvis det blinker fort, er du i paringsmodus og må prøve igjen.
TIPS: HC05 i kommandomodus snakker alltid med 38400 baudhastighet. Alle kommandoer er med store bokstaver og må følges av en CR og LF. (Dette er annerledes enn HC06)
TIPS: Kommandoformatet er veldig strengt. Bruk alltid caps. De starter alle med "AT" Følg dem nøyaktig, du kan ikke legge til mellomrom der de ikke vises.
Start Arduino. Gå til "Verktøy" "Port" og velg Com -porten som CP2102 er koblet til.
Åpne Serial Monitor. Velg "Både NL og CR" og "38400 baud" nederst i vinduet. (NL står for New Line som er det samme som LF som er Line Feed).
Mot toppen er det en boks ved siden av Send -knappen, klikk på den.
Slå på Caps Lock på PCen
Skriv AT
Det store vinduet skal vise "OK".
Du kommuniserer i kommandomodus
Noen kommandoer som fungerer på min
PÅ
AT+RESET
I+VERSJON?
AT+NAME?
AT+ADDR? ADDR: 98D3: 31: F5CB41
AT+NAME = BT1 Dette endrer navnet til BT1
AT+ROLLE? 0 = Slave 1 = Master
Trinn 3: HC06 revidert
En av de viktigste forskjellene mellom HC05 og HC06 er at HC05 kan være master eller slave mens HC06 bare er slave. Det betyr at du kan snakke mellom en HC05 og en HC06. Imidlertid er det mange andre forskjeller.
Selv om jeg kunne ha brukt en Arduino til å sette opp HC06, valgte jeg å bruke en 3.3v CP2102. Se Bilde
Tilkoblinger
CP2102 HC06
Gnd Gnd
Vcc Vcc
TXD RXD
RXD TXD
Dette er i utgangspunktet det samme som HC05 bortsett fra at HC06 bare har fire pinner.
Min CP2102 er modifisert for å levere 3.3V
Min HC06 er modifisert for å godta 3.3V
CP2102 USB er koblet til min PC. På min PC bruker jeg Arduino IDE.
Velg riktig "Port" og åpne den serielle skjermen.
På min HC06 blinker den røde lysdioden raskt, noe som indikerer at den er klar til paring, men også kan motta kommandoer.
Noe av denne informasjonen kom fra Martyn Currey:
www.martyncurrey.com/arduino-and-hc-06-zs-0…
Så hver type HC06 kan være forskjellig, min returnerer VERSION linvorV1.5
For min HC06 (og sannsynligvis alle), er det ingen spesiell prosedyre for å få den til kommandomodus. Tilsynelatende, hvis det ikke er paret, kan du alltid sende kommandoer via den serielle porten.
TIPS: Du kan ikke sende kommandoer til noen Bluetooth -modul (som jeg vet om) via Bluetooth.
Åpne Serial Monitor
Klikk på den første boksen nederst på Serial Monitor og sett til "no line ending"
I utgangspunktet var overføringshastigheten min 9600 baud
Sett på Caps Lock på din PC
I toppboksen skriver du AT
Skriv Enter eller trykk på "Send" -knappen
Skjermen skal vise OK
TIPS: Hvis du ikke får en OK, kan det være fordi overføringshastigheten ble endret eller er annerledes. Du kan prøve forskjellige, helt til du forhåpentligvis finner den riktige.
MERK: Når du sender flere kommandoer, flyttes ikke svardataene til neste linje. Mot bunnen kan du klikke på Slett utdata.
Kommandoer som fungerer for meg:
Kommandosvar
AT+VERSJON OKlinvorV1.5
AT+NAMEFred returnererOKsetname
(Det forteller deg ikke navnet, men hvis det er koblet til via Bluetooth, vises det.)
MERK: Hvis du endrer navnet, vises det gamle navnet på smarttelefonen din til du fjerner paringen og parer den på nytt.
AT+PINxxx Har ikke prøvd det. Defaut er 1234
AT+BAUD8 Endrer overføringshastigheten til 115200
Svar er baudrate, f.eks. 115200
(Etter at du har endret overføringshastigheten, må du endre seriell monitor -overføringshastighet til 115200 for å sende flere kommandoer.
Alternativer for overføringshastighet
1 1200
2 2400
3 4800
4 9600 (standard)
5 19200
6 38400
7 57600
8 115200
9 230400
En 460800
B 921600
C 1382400
MERK: Jeg har ikke prøvd høyere enn 8 115200. Jeg har hørt om folk som prøver høyere priser med dårlige resultater.
De andre kommandoene som skal fungere, men ikke er testet:
AT+PN ingen paritetskontroll (standard)
AT+PO odd oddskontroll
AT+PE jevn paritetskontroll
VIKTIG: På dette tidspunktet vil jeg foreslå at du bestemmer deg for et unikt navn og legger det inn. Jeg vil også foreslå at du bestemmer baudhastigheten du vil kommunisere med, setter den inn og merker HC06 med den.
Trinn 4: Konfigurere HC05 til HC06
Ok, denne instruksen var mest nyttig for meg:
www.instructables.com/id/How-to-Configure-…
Mitt oppsett:
SLAVE finner adresse
HC06 med CP2102 (automatisk i kommandomodus)
Koble CP2102 USB -kabelen til strømmen til HC06.
HC06 -LED -lampen skal blinke raskt (sammenkoblingsmodus).
Åpne innstillinger på smarttelefonen
Gå til Bluetooth
Søk etter ny enhet
Hvis du ser noe som HC06 eller navnet du ga det, velger du dette.
Du vil mest sannsynlig se en rekke tall som 00: 12: 09: 27: 19: 13, det er sannsynligvis det.
Skriv ned denne adressen. (Nummeret er dens unike adresse)
Velg det
Når du blir bedt om en PIN -kode, skriver du inn 1234.
Navnet skal vises.
Hvis du fremdeles ikke har adressen, velger du navnet under "Tidligere tilkoblede enheter".
Klikk på Info, adressen skal vises. Skriv det ned.
Hvis det ikke vises, må du gå ut av oppsettet og åpne Bluetooth Terminal HC-05-appen.
Under Paired Devices finner du navnet, adressen skal stå under det, og skriver det ned.
Slaveoppsett
Hvis HC06 -LED -en ikke blinker, må du slå på strømmen for å få den tilbake i sammenkoblingsmodus.
Start Arduino
Under "Verktøy" "Port" Velg riktig Com -port
Åpne seriell skjerm
Nederst i dette vinduet
Velg “No line ending” og “9600 baud”
HERRE
HC05 med CP2102 satt i kommandomodus (EN jumpered high)
Koble USB -kabelen fra CP2102 til PCen
Jeg fant ut at jeg kan åpne to Arduinos
På den andre Arduino, velg riktig Com -port for HC05
Åpne seriell skjerm
Nederst i vinduet
Velg "Både NL&CR" og "38400 baud"
Følgende er fra ovennevnte Instructable
Hovedkonfigurasjon
De nødvendige AT -kommandoene for å angi konfigurasjonen:
KOMMANDO -SVAR Hva den gjør
AT+ROLE = 1 OK Still HC05 som master
AT+CMODE = 1 OK Koble til spesifikk adresse
MERK: HC06 -adressen er sannsynligvis formatert slik 00: 12: 09: 27: 19: 13
Kommandoen BIND forventer dette 0012, 09, 27193 (du tar ut kolonene, tar de fire første tallene, deretter komma, de to neste tallene, deretter komma, deretter de seks siste tallene)
AT+BIND = 0012, 09, 271913 OK Kobler/binder med HC06
(Forresten, AT +BIND? Svarer med +BIND: 12: 9: 271913)
(Du vil at HC05 -kommunikasjonshastigheten skal være den samme som HC06) for eksempel:
AT+UART = 115200, 0, 0 OK Baud rate 115200 (1stop bit, no parity)
Slik tester du kommunikasjon:
Fjern HC05 EN -jumper, strøm syklus.
Når de to er tilkoblet, blinker HC05 -LED -lampen to ganger i løpet av noen få sekunder, og HC06 -LED -lampen lyser kontinuerlig.
Sett begge com -portene til samme overføringshastighet (uansett hva du konfigurerer)
Sett begge til “Både NL&CR”
Skriv inn noe på Serial Monitor1, Serial Monitor2 skal vise det.
Skriv inn noe på Serial Monitor2, Serial Monitor1 skal vise det.
Gratulerer, du kommuniserer via Bluetooth
Nå har Instructable ovenfor noen skisser om hvordan du bruker modulene med Arduino. For denne instruksen vil jeg ikke fordype meg i dette.
Anbefalt:
Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn
Arduino Car Reverse Parking Alert System | Trinn for trinn: I dette prosjektet skal jeg designe en enkel Arduino Car Reverse Parking Sensor Circuit ved hjelp av Arduino UNO og HC-SR04 Ultrasonic Sensor. Dette Arduino -baserte bilreverseringssystemet kan brukes til autonom navigasjon, robotavstand og andre områder
Trinn for trinn PC -bygging: 9 trinn
Steg for trinn PC -bygging: Rekvisita: Maskinvare: HovedkortCPU & CPU -kjøler PSU (strømforsyningsenhet) Lagring (HDD/SSD) RAMGPU (ikke nødvendig) CaseTools: Skrutrekker ESD -armbånd/mathermal pasta m/applikator
Tre høyttalerkretser -- Trinn-for-trinn opplæring: 3 trinn
Tre høyttalerkretser || Trinn-for-trinn opplæring: Høyttalerkretsen styrker lydsignalene som mottas fra miljøet til MIC og sender den til høyttaleren der forsterket lyd produseres. Her vil jeg vise deg tre forskjellige måter å lage denne høyttalerkretsen på:
OldMan og Bluetooth: 5 trinn
OldMan og Bluetooth: Oppdatering fra april 2020, takket være en kommentar fra en leser, Krasla, kan jeg nå komme i kommandomodus med JDY-31s. Skal prøve å delta i Sensor contest. Så denne Lazy Old Geek (LOG) bare fullført et GPS-prosjekt: https: //www.instructables.com/id/Old-Ma
RC -sporet robot ved hjelp av Arduino - Trinn for trinn: 3 trinn
RC -sporet robot ved bruk av Arduino - Steg for trinn: Hei folkens, jeg er tilbake med et annet kult Robot -chassis fra BangGood. Håper du har gått gjennom våre tidligere prosjekter - Spinel Crux V1 - Gesture Controlled Robot, Spinel Crux L2 - Arduino Pick and Place Robot with Robotic Arms og The Badland Braw