Përmbajtje:
- Hapi 1: Çfarë ju nevojitet
- Hapi 2: Zgjidhja
- Hapi 3: Prapa Skenave…
- Hapi 4: Lexim i mëtejshëm/ Përmirësimi i mundësive
Video: Rikuperoni modulin Bluetooth të konfiguruar gabimisht: 4 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:25
Nga maksimalizmi i pastër, konfigurova modulin tim HC-06 Bluetooth (skllav) në një normë baud prej 1, 382, 400 baud me komandën AT+BAUDC. Që kur Arduino u lidh me të nuk ishte në gjendje të përdorte modulin me bibliotekën SoftwareSerial. Unë u përpoqa të rivendosja normën e baudit me serinë harduerike të Arduino (kunjat 0 & 1) pa fat.
Unë gjithashtu u përpoqa të kërkoj në Google temën pa gjetur një zgjidhje të pranueshme. Ndoshta përdorimi i një porti serik të integruar të një kompjuteri mund të ketë qenë një zgjidhje (me ndryshimin e nivelit logjik 12V në 3V3), por kompjuteri im nuk e ka këtë portë të vjetëruar, kështu që më është dashur të dal me një zgjidhje tjetër.
Hapi 1: Çfarë ju nevojitet
- Bordi Arudino/Genuino me MCU të paracaktuar Atmel ATMEGA328P-PU (@16MHz).
- Një modul Bluetooth HC-06 që dëgjon në 1, 382, 400 baud
- Arduino IDE bazë nga
Hapi 2: Zgjidhja
Ju lutemi vini re se ky udhëzues dhe zgjidhja është bërë për skenarin 1, 382, 400 baud (AT+BAUDC). Zgjidhja nuk do të funksionojë për asnjë tarifë tjetër baud. Për të trajtuar raste të tjera, ju lutemi referojuni hapave duke filluar nga Hapi 3.
Zgjidhja është vërtet e thjeshtë.
- Lidhni kunjin VCC të HC-06 me pinin 5V të Arduino.
- Lidhni kunjin GND të HC-06 me pinin GND të Arduino.
- Lidhni kunjin RXD të HC-06 me kunjin 2 të Arduino.
- Lëreni pinin TXD të HC-06 të palidhur (ose lidheni me kunjin 8).
- Ngarko skicën hc06reset.ino.
- Programi do të vendosë HC-06 në modalitetin 115, 200 baud (AT+BAUD8).
- Përdorni modulin tuaj të rikuperuar HC-06 si më parë.
Hapi 3: Prapa Skenave…
Biblioteka SoftwareSerial që vjen me Arduino IDE është e aftë të transmetojë më së shumti 115, 200 bit/sekondë, kështu që nuk është aq e shpejtë sa të komunikojë me shpejtësinë e dëshiruar 1, 382, 400 baud. Duke pasur parasysh që një tabelë e paracaktuar Arduino funksionon në 16 MHz, bitrati maksimal teorik i pakompresuar është 16, 000, 000 bit/sek. Ne jemi mirë deri tani!
Bazuar në kuptimin tim të SoftwareSerial.cpp, komunikimi seial bëhet duke vendosur një pin dalës High (= 1) ose Low (= 0) në lidhje me një vonesë (që vjen nga norma e baudit) midis ndryshimeve.
- Kodi i daljes është i lartë si parazgjedhje (do të thotë nuk ka të dhëna), atëherë
- një bit Fillimi transmetohet (i cili tërheq pinin poshtë), atëherë
- 8 bit të të dhënave të transmetuara nga LSB në MSB, (+5V kur bit 1 dhe 0 ndryshe) atëherë
- transmetohet një bit Stop (i cili tërheq pinin lart)
Në këtë mënyrë 1 bajt transmetohet duke përdorur 10 bit.
Mesazhi që duhet të dërgojmë është AT+BAUD8 (pa / n, / r në fund). Kjo komandë e kthen HC-06 në normën 115, 200 baud e cila mund të trajtohet nga bibliotekat e rregullta.
Për të dërguar bit me shpejtësi 1, 382, 400 bit/sek, për secilin bit kemi 1/1, 382, 400 sekonda kohë (që është afërsisht 723.38 ns) për secilin bit. Arduino funksionon në 16, 000, 000 Mhz, kështu që çdo cikël zgjat 1/16, 000, 000 sekonda - që është 62.5 ns për cikël.
Duke përdorur kodin e montimit AVR ne mund të përdorim komandën OUT për të vendosur pinin dalës të lartë ose të ulët dhe NOP për të pritur saktësisht një cikël CPU. Të dy komandat hanë saktësisht 1 cikël CPU. Në këtë mënyrë koha e bitit 723.38 ns mund të mbulohet nga 11 deri në 12 udhëzime arduino për bit të transmetuar. Një gjë për t'u marrë parasysh: komanda OUT vendos një bajt të tërë menjëherë, kështu që ne duhet të zgjedhim një PORTx ku ky nuk është problem. Përdorimi i ATMEGA328P-PU për shembull PORTD (kunjat arduino 0-7) është i përsosur për këtë gjendje. Pas vendosjes së bitit, duhet të kalojë vetëm koha e duhur e cila bëhet nga 10 deri në 11 NOP dhe kaq.
Ju mund të gjeni detajet e llogaritjes në skedarin Excel më poshtë. Ky skedar krijoi udhëzimet e nevojshme të grumbulluara për programin. Vetëm disa zëvendësime duhej të bëheshin pas ngjitjes së kodit të gjeneruar.
Hapi 4: Lexim i mëtejshëm/ Përmirësimi i mundësive
- Ndoshta një bibliotekë më e shpejtë SoftwareSerial mund të bëhet duke përdorur teknikën e përshkruar në Hapin e mëparshëm.
- FedericoK2 krijoi një mjet të shkëlqyeshëm që gjeneron kodin e rimëkëmbjes HC-06 për çdo bitrate të mundshme. Hyni në sit këtu: https://tools.krum.com.ar/save_your_hc-06/ Faleminderit FedericoK2
Recommended:
Rikuperoni kufjen tuaj Bluetooth: 6 hapa
Rikuperoni kufjet tuaja Bluetooth: Me siguri keni braktisur kufjet Bluetooth dhe me tela të shtrirë për shkak të disa problemeve të vogla. Këto çështje mund të përfshijnë strehimin e prishur të kufjeve, thyerjet e brendshme në kabllo, prizat e dëmtuara, ndër të tjera. Zakonisht, këto pajisje të dëmtuara grumbullohen
Saldimi i një Pickguard të Kitarës të Konfiguruar SSS: 3 Hapa
Saldimi i një Pickguard të Kitarës të Konfiguruar SSS: Në udhëzuesin, unë do të kaloj nëpër procesin e instalimeve elektrike të gardhit tuaj të kitarës SSS. Së pari nëse jeni duke bërë këtë projekt, duhet të përpiqeni të keni një kuptim të mirë të pjesëve që hyjnë në proces. Formati SSS është në thelb thre
Si të rikuperoni të dhënat tuaja të humbura falas: 4 hapa
Si të rikuperoni të dhënat tuaja të humbura falas: Ne të gjithë e dimë se humbja e të dhënave është një nga gjërat më të këqija në botë dhe pothuajse të gjithë ne e kemi kaluar këtë çështje. Dhe këtu është zgjidhja që prisnit, gjeta këtë softuer që më lejoi të rikuperoja skedarët e mi të humbur shumë lehtë
ESP32 Portali i kapur për të konfiguruar cilësimet IP statike dhe DHCP: 8 hapa
ESP32 Portali i kapur për të konfiguruar cilësimet IP statike dhe DHCP: ESP 32 është një pajisje me WiFi dhe BLE të integruar. Kindshtë një lloj ndihme për projektet IoT. Thjesht jepni konfigurimin tuaj SSID, fjalëkalimin dhe IP dhe integroni gjërat në cloud. Por, menaxhimi i cilësimeve IP dhe kredencialet e përdoruesit mund të jetë një kokë
Udhëzues për modulin E32-433T LoRa - Bordi i shpërthimit DIY për modulin E32: 6 hapa
Udhëzues për modulin E32-433T LoRa | Bordi i shpërthimit DIY për modulin E32: Hej, çfarë ka, djema! Akarsh këtu nga CETech. Ky projekt i imi është më shumë një kurbë mësimi për të kuptuar funksionimin e modulit E32 LoRa nga eByte i cili është një modul transmetues me fuqi të lartë 1 vat. Pasi ta kuptojmë punën, unë kam dizajn