Talaan ng mga Nilalaman:
- Hakbang 1: Ano ang Kakailanganin Mo
- Hakbang 2: Ang Solusyon
- Hakbang 3: Sa Likod ng Mga Eksena …
- Hakbang 4: Karagdagang Mga Pagbasa / Pagpapaganda Mga Posibilidad
Video: I-recover ang Maling naka-configure na HC-06 Bluetooth Module: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
Out of pure maximalism, na-configure ko ang aking HC-06 Bluetooth (alipin) module sa isang baud rate na 1, 382, 400 baud gamit ang utos na AT + BAUDC. Mula nang kumonekta ang Arduino dito ay hindi nagawang gamitin ang module sa library ng SoftwareSerial. Sinubukan kong ibalik ang rate ng baud gamit ang serial serial ng hardware ng Arduino (pin 0 & 1) nang walang swerte.
Sinubukan ko rin sa Google ang paksa nang hindi makahanap ng isang nadaanan na solusyon. Marahil ang paggamit ng built ng isang computer sa serial port ay maaaring maging isang solusyon (na may 12V hanggang 3V3 antas ng lohika na nagbabago), ngunit ang aking computer ay walang ganitong lipas na port, kaya't nagkaroon ako ng ibang solusyon.
Hakbang 1: Ano ang Kakailanganin Mo
- Arudino / Genuino board na may default na Atmel ATMEGA328P-PU MCU (@ 16MHz).
- Isang HC-06 Bluetooth module na nakikinig sa 1, 382, 400 baud
- Pangunahing arduino IDE mula sa
Hakbang 2: Ang Solusyon
Mangyaring tandaan na ang Instructable na ito at ang solusyon ay ginawa para sa senaryo ng 1, 382, 400 baud (AT + BAUDC). Hindi gagana ang solusyon para sa anumang iba pang mga rate ng baud. Upang hawakan ang iba pang mga kaso mangyaring sumangguni sa mga hakbang na nagsisimula sa Hakbang 3.
Ang solusyon ay talagang simple.
- Ikonekta ang VCC pin ng HC-06 sa 5V pin ng Arduino.
- Ikonekta ang GND pin ng HC-06 sa GND pin ng Arduino.
- Ikonekta ang RXD pin ng HC-06 upang i-pin ang 2 ng Arduino.
- Iwanan ang HCD 06's TXD pin na hindi konektado (o kumonekta sa pin 8).
- Mag-upload ng hc06reset.ino sketch.
- Itatakda ng programa ang HC-06 sa 115, 200 baud mode (AT + BAUD8).
- Gamitin ang iyong nakuhang muli na module ng HC-06 tulad ng dati.
Hakbang 3: Sa Likod ng Mga Eksena …
Ang library ng SoftwareSerial na kasama ng Arduino IDE ay may kakayahang magpadala ng higit sa 115, 200 bits / segundo, kaya't hindi ito sapat na mabilis upang makipag-usap sa nais na 1, 382, 400 baud rate. Dahil sa isang default na Arduino board ay tumatakbo sa 16MHz, ang teoretikal na hindi na-compress na maximum na bitrate ay 16, 000, 000 bits / sec. Magaling kami sa ngayon!
Batay sa aking pag-unawa sa SoftwareSerial.cpp, ang seial na komunikasyon ay ginagawa sa pamamagitan ng pagtatakda ng isang output pin Mataas (= 1) o Mababa (= 0) na patungkol sa isang pagkaantala (na nagmumula sa baud rate) sa pagitan ng mga pagbabago.
- Ang output pin ay mataas sa pamamagitan ng default (nangangahulugang walang data), pagkatapos
- isang Start bit ay naililipat (na kung saan hinila ang mababang pin), pagkatapos
- 8 piraso ng data na ipinadala mula sa LSB patungong MSB, (+ 5V kapag ang bit 1 at 0 kung hindi man) pagkatapos
- ang isang Stop bit ay naililipat (na kumukuha ng mataas na pin)
Sa ganitong paraan 1 byte ay ipinapadala gamit ang10 bits.
Ang mensahe na kailangan naming ipadala ay AT + BAUD8 (nang walang / n, / r sa dulo). Itinatakda ng utos na ito ang HC-06 pabalik sa 115, 200 baud rate na maaaring hawakan ng mga regular na aklatan.
Upang maipadala ang mga bit na may 1, 382, 400 bits / sec speed, para sa bawat bit mayroon kaming 1/1, 382, 400 segundo na oras (iyon ay halos 723.38 ns) para sa bawat bit. Ang Arduino ay tumatakbo sa 16, 000, 000 Mhz, kaya't ang bawat cycle ay tumatagal ng 1/16, 000, 000 segundo - iyon ay 62.5 ns bawat cycle.
Gamit ang AVR assemble code maaari naming gamitin ang OUT command upang maitakda ang output pin mataas o mababa at NOP upang maghintay nang eksaktong isang siklo ng CPU. Ang parehong mga utos ay kumain ng eksaktong 1 cpu cycle. Sa ganitong paraan ang oras ng 723.38 ns bit ay maaaring saklaw ng 11 hanggang 12 mga tagubilin sa arduino bawat naihatid na kaunti. Isang bagay na dapat isaalang-alang: ang utos ng OUT ay nagtatakda ng isang buong byte nang sabay-sabay, kaya kailangan naming pumili ng isang PORTx kung saan hindi ito isang problema. Ang paggamit ng ATMEGA328P-PU halimbawa PORTD (arduino pin 0-7) ay perpekto para sa kondisyong ito. Matapos itakda ang kaunti, ang tamang oras lamang ang kailangang lumipas na ginagawa ng 10 hanggang 11 na mga NOP at iyon na.
Maaari mong makita ang mga detalye ng pagkalkula sa file ng Excel sa ibaba. Bumuo ang file na ito ng kinakailangang mga tagubilin para sa programa. Ilang mga pamalit lamang ang kailangang gawin pagkatapos na mai-paste ang nabuong code.
Hakbang 4: Karagdagang Mga Pagbasa / Pagpapaganda Mga Posibilidad
- Siguro ang isang mas mabilis na library ng SoftwareSerial ay maaaring magawa sa pamamagitan ng paggamit ng diskarteng inilarawan sa nakaraang Hakbang.
- Ang FedericoK2 ay gumawa ng isang mahusay na tool na bumubuo ng HC-06 recovery code para sa bawat posibleng bitrate. I-access ang site dito: https://tools.krum.com.ar/save_your_hc-06/ Salamat FedericoK2
Inirerekumendang:
Naka-embed ang UCL - B0B ang Linefollower: 9 Mga Hakbang
Naka-embed ang UCL - B0B ang Linefollower: Ito ang B0B. * Ang B0B ay isang pangkaraniwang kotse na Kinokontrol ng Radio, pansamantalang ihinahatid ang batayan ng isang sumusunod na linya ng robot. Tulad ng maraming mga robot na sumusunod sa Linya, gagawin niya ang kanyang makakaya upang manatili sa isang linya na sanhi ng isang paglipat sa pagitan ng sahig at ac
Ang Samsung LCD TV na Naka-off ang Isyu sa DIY ayusin ang Pag-ayos: 5 Hakbang (na may Mga Larawan)
Ang Samsung LCD TV on Off Issue DIY fix Fix: Nagkaroon kami ng Samsung 32 " LCD TV pumunta sa fritz kamakailan. Ang telebisyon ay bubuksan, pagkatapos ay agad na i-off ang sarili, pagkatapos ay i-on muli … sa isang walang katapusang pag-ikot. Matapos ang isang maliit na pagsasaliksik, natuklasan namin na nagkaroon ng pagpapabalik sa
Mga Naka-print na Naka-personalize na Kaso ng USB na 3D - sa Mga Detalye: 4 na Hakbang
Mga Naka-print na Naka-personalize na Kaso ng USB na 3D - sa Mga Detalye: Kumusta, Ang pangalan ko ay Emese. Ginawa ko ang https://customflashdrive.co.uk/3d-print-your-own site. Ito ay isang lugar kung saan maaari mong isapersonal ang isang 3D naka-print na kaso ng USB. Madali ang pagsasapersonal ng isang 3D naka-print na USB case: Nagdagdag ka ng iyong sariling teksto hanggang sa 10 mga character at pinili mo
Hindi gumagana ang NODEMcu Usb Port? I-upload ang Code Gamit ang USB sa TTL (FTDI) Module sa 2 Hakbang lamang: 3 Hakbang
Hindi gumagana ang NODEMcu Usb Port? I-upload ang Code Gamit ang USB sa TTL (FTDI) Module sa Lamang 2 Mga Hakbang: Pagod na sa pagkonekta sa maraming mga wire mula sa USB hanggang TTL module sa NODEMcu, sundin ang itinuturo na ito, upang mai-upload ang code sa 2 hakbang lamang. Kung ang USB port ng Ang NODEMcu ay hindi gumagana, pagkatapos ay huwag panic. Ito lang ang USB driver chip o ang konektor ng USB,
Ang Mga Salamin na Naka-mount na Video Display sa Isang Mata - Lumiko ang Iyong Sarili sa isang Borg: 12 Hakbang
Ang Salamin na Naka-mount na Video Display sa Isang Mata - Lumiko ang Iyong Sarili sa isang Borg: I-UPDATE Marso 15, 2013: Mayroon akong mas bagong mas mahusay na bersyon ng ito ngayon sa isa pang Tagubilin: https: //www.instructables.com/id/DIY-Google-Glasses .. . Maniwala ka o hindi ang totoong layunin ng proyektong ito ay hindi upang maglaro sa pagiging isang Borg. Kailangan kong gumawa ng ilang