Përmbajtje:
- Hapi 1: Ndryshimet e transmetuesit
- Hapi 2: Ndryshimet e Marrësit: Shtimi i LCD -ve PIC16F887 dhe HD44780
- Hapi 3: Disa referenca…
- Hapi 4: Përfundimet dhe Puna në të ardhmen
Video: Komunikimi pa tel duke përdorur module të lira 433MHz RF dhe mikrokontrollues Pic. Pjesa 2: 4 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:24
Në pjesën e parë të këtij udhëzimi, unë demonstrova se si të programoj një PIC12F1822 duke përdorur përpiluesin MPLAB IDE dhe XC8, për të dërguar një varg të thjeshtë pa tel duke përdorur module të lira TX/RX 433MHz.
Moduli i marrësit ishte i lidhur me një përshtatës kabllor USB në UART TTL në një kompjuter, dhe të dhënat e marra u shfaqën në RealTerm. Komunikimi u krye në 1200 baud dhe diapazoni maksimal i arritur ishte rreth 20 metra përmes mureve. Testet e mia treguan se për aplikimet ku nuk ka nevojë për shpejtësi të lartë të të dhënave dhe rreze të gjatë, dhe për transmetim të vazhdueshëm, këto module performuan jashtëzakonisht mirë.
Pjesa e dytë e këtij projekti demonstron se si të shtoni një mikrokontrollues PIC16F887 dhe një modul LCD me karakter 16 × 2 në marrës. Për më tepër, në transmetuesin, ndiqet një protokoll i thjeshtë me shtimin e disa bajtëve para -shembullorë. Këto bajt janë të nevojshme që moduli RX të rregullojë fitimin e tij para marrjes së ngarkesës aktuale. Nga ana e marrësit, PIC është përgjegjës për marrjen dhe vërtetimin e të dhënave të cilat shfaqen në ekranin LCD.
Hapi 1: Ndryshimet e transmetuesit
Në pjesën e parë, transmetuesi po dërgonte një varg të thjeshtë çdo disa ms duke përdorur tetë bit të dhënash, një fillim dhe një bit ndalues në 1200 bit në sekondë. Meqenëse transmetimi ishte pothuajse i vazhdueshëm, marrësi nuk kishte probleme të rregullonte fitimin e tij në të dhënat e marra. Në pjesën e dytë, firmware modifikohet në mënyrë që transmetimi të kryhet çdo 2.3 sekonda. Kjo arrihet duke përdorur ndërprerjen e kohëmatësit të vëzhguesit (e vendosur në 2.3s) për të zgjuar mikrokontrolluesin, i cili vihet në modalitetin e gjumit në mes çdo transmetimi.
Në mënyrë që marrësi të ketë kohë për të rregulluar mirë fitimin e tij, disa bajt preambulë me kohë të shkurtër LO "(0Xf8) (0Xf8) (0Xf8) (0Xf8) (0Xf8) (0Xfa)" dërgohen para të dhënave aktuale. Ngarkesa e ngarkesës tregohet më pas me një bajt fillestar '&' dhe një ndalesë '*'.
Prandaj, protokolli i thjeshtë përshkruhet si më poshtë:
(0Xf8) (0Xf8) (0Xf8) (0Xf8) (0Xf8) (0Xfa) & Përshëndetje InstWorld!*
Për më tepër, një kondensator tantal shkëputës 10uF shtohet midis V+ dhe GND të modulit RF për të hequr qafe valën e shkaktuar nga moduli i rritjes së dc-dc.
Shkalla e Baud mbeti e njëjtë, megjithatë testet e mia treguan se në 2400 baud gjithashtu, transmetimi ishte efikas.
Hapi 2: Ndryshimet e Marrësit: Shtimi i LCD -ve PIC16F887 dhe HD44780
Dizajni i marrësit u bazua në PIC16F887, por ju mund të përdorni një PIC të ndryshme me pak modifikime. Në projektin tim kam përdorur këtë 40 pin μC, pasi do të më duhen kunja shtesë për projektet e ardhshme bazuar në këtë dizajn. Dalja e modulit RF lidhet me pinin UART rx, ndërsa një LCD 16x2 me karakter (HD44780) lidhet përmes kunjave PORTB b2-b7 për të shfaqur të dhënat e marra.
Ashtu si me Pjesën 1, të dhënat e marra shfaqen gjithashtu në RealTerm. Kjo arrihet duke përdorur pinin UART tx i cili lidhet nëpërmjet një përshtatësi kabllo USB në UART TTL në një PC.
Duke parë firmware -in, kur ndodh një ndërprerje UART, programi kontrollon nëse bajti i marrë është një bajt fillestar ('&'). Nëse po, fillon regjistrimin e bajtëve pasues, derisa kapet një bajt ndalues ('*'). Sapo të merret e gjithë fjalia, dhe nëse përputhet me protokollin e thjeshtë të përshkruar më parë, atëherë dërgohet në ekranin LCD, si dhe në portën UART tx.
Përpara marrjes së bajtit fillestar, marrësi tashmë ka rregulluar fitimin e tij duke përdorur bajtët e mëparshëm të parathënies. Këto janë kritike për funksionimin e qetë të marrësit. Kryhet një kontroll i thjeshtë i tejkalimit dhe gabimit të kornizës, megjithatë ky është vetëm një zbatim themelor i trajtimit të gabimeve UART.
Për sa i përket harduerit, disa pjesë janë të nevojshme për marrësin:
1 x PIC16F887
1 x HD44780
1 x modul RF Rx 433Mhz
Kondensator tantali 1 x 10 μF (shkëputje)
Prerës 1 x 10 K (shkëlqimi i shkronjave LCD)
1 x 220 Ω 1/4 W rezistencë (dritë e pasme LCD)
1 x 1 KΩ 1/4 W
1 x Antenë 433Mhz, 3dbi
Në praktikë, pajisjet e marra punuan jashtëzakonisht mirë në distanca deri në 20 metra përmes mureve.
Hapi 3: Disa referenca…
Ka shumë bloge në internet që japin këshilla për programimin dhe zgjidhjen e problemeve PIC përveç faqes zyrtare të Microschip. Më duken shumë të dobishme sa vijon:
www.romanblack.com/
0xee.net/
www.ibrahimlabs.com/
picforum.ric323.com/
Hapi 4: Përfundimet dhe Puna në të ardhmen
Shpresoj se ky udhëzues ju ndihmoi të kuptoni se si të përdorni modulet RF dhe mikrokontrolluesit Pic. Ju mund ta rregulloni firmware -in tuaj sipas nevojave tuaja dhe të përfshini CRC dhe kriptim. Nëse dëshironi ta bëni dizajnin tuaj edhe më të sofistikuar, mund të përdorni teknologjinë Keeloq të Microschip. Në rast se aplikacioni juaj ka nevojë për të dhëna dydrejtimëshe, do t'ju duhet të keni një palë TX/RX në të dy mikrokontrolluesit, ose mund të përdorni transmetues më të sofistikuar modulet. Sidoqoftë, duke përdorur këtë lloj module të lirë 433MHz, vetëm gjysma e komunikimit dupleks mund të arrihet. Për më tepër, për ta bërë komunikimin më të besueshëm, do t'ju duhet të keni një formë shtrëngimi duarsh midis TX dhe RX.
Në udhëzuesin tjetër, unë do t'ju tregoj një aplikim praktik ku në transmetues shtohet një sensor mjedisor me temperaturë, presion barometrik dhe lagështi. Këtu, të dhënat e transmetuara do të përfshijnë crc dhe do të kenë një kriptim bazë.
Sensori do të përdorë portën i2c të PIC12F1822, ndërsa zbatimi i transmetuesit dhe marrësit do të ekspozohet përmes skemave dhe skedarëve pcb. Faleminderit që më lexuat!
Recommended:
Si të bëni një dron duke përdorur Arduino UNO - Bëni një kuadopter duke përdorur mikrokontrollues: 8 hapa (me fotografi)
Si të bëni një dron duke përdorur Arduino UNO | Bëni një Quadcopter Duke përdorur Mikrokontrolluesin: HyrjeVizitoni Kanalin Tim në YoutubeNjë drone është një vegël (produkt) shumë e shtrenjtë për të blerë. Në këtë postim do të diskutoj, si ta bëj me çmim të ulët ?? Dhe si mund ta bëni tuajin si ky me çmim të lirë … Epo në Indi të gjitha materialet (motorët, ESC -të
Kontrolli i radios RF 433MHZ duke përdorur HT12D HT12E - Bërja e një telekomande Rf duke përdorur HT12E & HT12D Me 433mhz: 5 hapa
Kontrolli i radios RF 433MHZ duke përdorur HT12D HT12E | Bërja e një telekomande Rf duke përdorur HT12E & HT12D Me 433mhz: Në këtë udhëzues do t'ju tregoj se si të bëni një telekomandë RADIO duke përdorur modulin e marrësit të transmetuesit 433mhz me kodim HT12E & IC decoder HT12D. Në këtë udhëzues ju mund të dërgoni dhe merrni të dhëna duke përdorur KOMPONENTE shumë të lirë SI: HT
Komunikimi pa tel duke përdorur modulin e transmetuesit NRF24L01 për projektet e bazuara në Arduino: 5 hapa (me fotografi)
Komunikimi pa tel duke përdorur modulin e transmetuesit NRF24L01 për projektet e bazuara në Arduino: Ky është mësimi im i dytë udhëzues për robotët dhe mikrokontrolluesit. Reallyshtë vërtet e mahnitshme të shohësh robotin tënd të gjallë dhe duke punuar siç pritej dhe më beso se do të jetë më argëtuese nëse kontrolloni robotin tuaj ose gjëra të tjera pa tel me shpejtësi dhe
Moduli RF 433MHZ - Bëni marrës dhe transmetues nga moduli 433MHZ RF pa asnjë mikrokontrollues: 5 hapa
Moduli RF 433MHZ | Bëni Marrës dhe Transmetues Nga Moduli RF 433MHZ Pa Asnjë Mikrokontrollues: Dëshironi të dërgoni të dhëna pa tel? lehtë dhe pa mikrokontrollues të nevojshëm? Këtu po shkojmë, në këtë udhëzues do t'ju tregoj transmetuesin dhe marrësin tim bazë të rf gati për t'u përdorur! Në këtë udhëzues ju mund të dërgoni dhe merrni të dhëna duke përdorur shumë ver
Komunikimi serik pa tel duke përdorur Bluefruit: 4 hapa
Komunikimi serik pa tel duke përdorur Bluefruit: Këtu është një udhëzues i thjeshtë hap pas hapi për të zëvendësuar telat tuaj me një lidhje blu me energji të ulët: M’u desh pak kohë për ta kuptuar këtë sepse nuk ka asnjë dokumentacion për ta bërë këtë me teknologjinë moderne bluetooth me energji të ulët të tillë si Bluefrui