Kazalo:
- Korak: Kaj boste potrebovali
- 2. korak: Rešitev
- 3. korak: Zakulisje…
- 4. korak: Nadaljnje branje/ možnosti izboljšanja
Video: Obnovite napačno konfiguriran modul Bluetooth HC-06: 4 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:07
Iz čistega maksimalizma sem svoj ukazni modul HC-06 Bluetooth (podrejen) konfiguriral na hitrost prenosa 1, 382, 400 baudov z ukazom AT+BAUDC. Odkar priključeni Arduino ni mogel uporabljati modula s knjižnico SoftwareSerial. Poskušal sem obnoviti hitrost prenosa z Arduinovo strojno serijo (nožici 0 in 1) brez sreče.
Poskusil sem tudi poiskati temo v Googlu, ne da bi našel sprejemljivo rešitev. Morda bi bila uporaba računalniških vgrajenih serijskih vrat rešitev (s preusmeritvijo logične ravni 12V na 3V3), vendar moj računalnik nima teh zastarelih vrat, zato sem moral najti drugo rešitev.
Korak: Kaj boste potrebovali
- Arudino/Genuino plošča s privzetim Atmel ATMEGA328P-PU MCU (@16MHz).
- Modul Bluetooth HC-06 posluša 1, 382, 400 baud
- Osnovni arduino IDE iz
2. korak: Rešitev
Upoštevajte, da sta ta navodila in rešitev narejena za scenarij 1, 382, 400 baud (AT+BAUDC). Rešitev ne bo delovala za nobeno drugo hitrost prenosa. Če želite obravnavati druge primere, glejte korake od 3. koraka.
Rešitev je res preprosta.
- VCC pin HC-06 priključite na 5V pin Arduina.
- Priključite pin GND HC-06 na pin GND Arduino.
- Priključite pin RXD HC-06 na pin 2 Arduina.
- Zatič TXD HC-06 ne povežite (ali ga priključite na pin 8).
- Naložite skico hc06reset.ino.
- Program bo nastavil HC-06 na 115, 200 baud način (AT+BAUD8).
- Uporabite obnovljeni modul HC-06 kot prej.
3. korak: Zakulisje…
Knjižnica SoftwareSerial, ki je priložena Arduino IDE, lahko prenaša največ 115, 200 bitov na sekundo, zato ni dovolj hitra za komunikacijo na želeni hitrosti 1, 382, 400 baud. Glede na to, da privzeta plošča Arduino deluje na 16MHz, je teoretično nestisnjena največja bitna hitrost 16 000 000 bitov/s. Zaenkrat smo dobri!
Na podlagi mojega razumevanja SoftwareSerial.cpp se zaporedna komunikacija izvede z nastavitvijo izhodnega zatiča High (= 1) ali Low (= 0) glede na zakasnitev (ki izhaja iz hitrosti prenosa) med spremembami.
- Izhodni pin je privzeto visok (pomeni, da ni podatkov)
- a se pošlje začetni bit (ki potegne pin nizko)
- 8 bitov podatkov, poslanih iz LSB v MSB, (+5V, če sta bit 1 in 0 drugače)
- posreduje se stop bit (ki potegne pin visoko)
Na ta način se 1 bajt prenese z uporabo 10 bitov.
Sporočilo, ki ga moramo poslati, je AT+BAUD8 (brez / n, / r na koncu). Ta ukaz nastavi HC-06 na 115, 200 baud hitrost, ki jo lahko upravljajo običajne knjižnice.
Za pošiljanje bitov s hitrostjo 1, 382, 400 bitov/s imamo za vsak bit 1/1, 382, 400 sekund časa (to je približno 723,38 ns) za vsak bit. Arduino deluje na 16 000 000 Mhz, zato vsak cikel traja 1/16 000 000 sekund - to je 62,5 ns na cikel.
Z uporabo montažne kode AVR lahko z ukazom OUT nastavimo izhodni pin visoko ali nizko in NOP počaka točno en cikel procesorja. Oba ukaza porabita točno en cikel CPU -ja. Tako je čas bita 723,38 ns mogoče pokriti z 11 do 12 arduino navodili na preneseni bit. Ena stvar, ki jo je treba upoštevati: ukaz OUT nastavi celoten bajt hkrati, zato moramo izbrati PORTx, kjer to ni problem. Uporaba ATMEGA328P-PU na primer PORTD (zatiči arduino 0-7) je kot nalašč za to stanje. Po nastavitvi bita mora preteči le pravi čas, ki ga opravi 10 do 11 NOP -ov in to je to.
Podrobnosti o izračunu najdete v spodnji datoteki Excel. Ta datoteka je ustvarila potrebna sestavna navodila za program. Po lepljenju ustvarjene kode je bilo treba narediti le nekaj zamenjav.
4. korak: Nadaljnje branje/ možnosti izboljšanja
- Morda je mogoče s tehniko, opisano v prejšnjem koraku, narediti hitrejšo knjižnico SoftwareSerial.
- FedericoK2 je naredil odlično orodje, ki ustvarja obnovitveno kodo HC-06 za vsako možno bitno hitrost. Dostopite do spletnega mesta tukaj: https://tools.krum.com.ar/save_your_hc-06/ Hvala FedericoK2
Priporočena:
Obnovite slušalke Bluetooth: 6 korakov
Obnovite slušalke Bluetooth: Verjetno ste zaradi manjših težav opustili Bluetooth in žične slušalke. Te težave lahko med drugim vključujejo zlomljeno ohišje slušalk, notranje prekinitve kablov, poškodovane vtiče. Običajno se te poškodovane naprave kopičijo o
Obnovite Game Boyja ali podobno elektroniko: 7 korakov (s slikami)
Obnovi Game Boy ali podobno elektroniko: Najprej se vam zahvaljujem, da ste preverili mojo vadnico! Super ste. Drugič, veliko časa sem vložil v videoposnetek v YouTubu, zato si ga oglejte tudi, vse to pojasni. Video:
12v/5v UPS z napačno uporabo krmilnika na sončni plošči: 5 korakov
12v/5v UPS z "zlorabo" krmilnika solarne plošče: Ste kdaj želeli UPS za projekt? Pogledal sem nore cene omrežnega UPS in mislil, da želim napajati le nekaj nizke napetosti. No, potem je to navodilo za vas! Pokazal vam bom, da morate krmilnik solarne plošče "zlorabiti", da ustvarite sma
Shranite in obnovite prednastavljene vrednosti z NFC (TfCD): 4 koraki
Shranite in obnovite prednastavljene vrednosti z NFC (TfCD): želimo preizkusiti, kako deluje za prilagajanje določene vrednosti ali nastavitve, in pozneje priklicati to nastavitev. Za ta poskus smo uporabili oznako NFC za branje in nato shranili vrednost vanj. Kasneje lahko oznako znova skenirate in vrednost pošljete nazaj, da obnovite cerk
Obnovite XP CD KLJUČ: 4 koraki
Obnovite XP CD KLJUČ: Ali ne sovražite, ko morate formatirati trdi disk ali ko se zlomi? No, verjetno si mislite, "samo znova bom namestil" in se zavedali!@#$ Izgubil sem nalepko s ključem za CD, ali so jo otroci odtrgali, ali nalepko na vrhu vašega deskta