Përmbajtje:
- Hapi 1: Si MASTER ashtu edhe SLAVE në të njëjtin kod
- Hapi 2: Modulet BLUETOOTH Flisni Përmes Leximit dhe Shkrimit Serial
- Hapi 3: Kontrolli i garës
- Hapi 4: Pjesa tjetër e Kodit
- Hapi 5: Çfarë vjen më pas?
Video: Pjesë #2 e Arduino Hot Wheels Speed Track Pjesa 2 - Kodi: 5 Hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:24
Në pjesën e parë të këtij projekti ne ndërtuam pajisjen për prototipin në 2 dërrasa buke.
Dhe në këtë pjesë do të kalojmë mbi kodin, si funksionon dhe më pas do ta testojmë.
Sigurohuni që të shikoni videon e mësipërme për të gjithë rishikimin e kodit dhe shfaqjen e kodit të punës.
Hapi 1: Si MASTER ashtu edhe SLAVE në të njëjtin kod
Kodi është në 2 pjesë, por brenda të njëjtit skedar. Unë përdor #define dhe #ifdef për të përcaktuar se cili kod do të përpilohet ose injorohet, kështu që mund të veçoj çdo kod që është vetëm për breadboard MASTER dhe kodin që është vetëm për breadboard SLAVE.
Në thelb, nëse gjendet MASTER i përcaktuar, atëherë çdo kod që gjendet brenda bllokut të kodit MASTER do të përpilohet dhe çdo kod jashtë atij blloku do të hiqet në kohën e përpilimit.
#ifdef MASTER
// Kodi specifik për Masterin është këtu
#te tjera
#përcakto SKLLAVIN
// Kodi specifik i skllevërve është këtu
#endif
Unë jam duke përdorur të njëjtën teknikë për të #përcaktuar SLAVE kur MASTER është përpiluar, kështu që ju vetëm duhet të shqetësoheni për përcaktimin e MASTER ose për të mos mundësuar që SLAVE të përcaktohet.
Hapi 2: Modulet BLUETOOTH Flisni Përmes Leximit dhe Shkrimit Serial
Në këtë projekt vetëm fletëpalosja SLAVE flet me pjatën MASTER. MASTER nuk flet kurrë, ai vetëm dëgjon dhe pastaj vepron në të dhënat që vijnë.
Modulet flasin dhe dëgjojnë duke përdorur klasën Seriale të ndërtuar në ekosistemin e kodimit Arduino.
Modulet Bluetooth komunikojnë në 38400 baud, kështu që të dyja rrugët e kodit inicializojnë komunikimet e tyre Seriale duke përdorur:
Serial.filloj (38400);
Dhe SLAVE përdor:
Serial.write (të dhënat këtu);
Për të folur me MASTER, dhe MASTER përdor:
të dhëna = Serial.read ();
Për të dëgjuar transmetimin serik dhe për të lexuar përmbajtjen e tij dhe për ta ruajtur atë brenda një ndryshoreje.
Hapi 3: Kontrolli i garës
SLAVE i thotë MASTER nëse është në garë më shumë ose në gjendje të gatshme përmes butonit të gjelbër të lidhur me mikrokontrolluesin e tij. Në modalitetin e gatshëm, sensorët IR nuk bëjnë asgjë dhe MASTER do të shfaqë 8 pika në ekran për të treguar se është në modalitetin e gatshëm.
Kur SLLAVE i thotë Mjeshtrit se një garë do të fillojë, SLAVE fillon të anketojë sensorët IR në anën e saj (Fillimi i pistës së garës) që makinat të kalojnë nën të.
Ndërsa çdo makinë kalon nën çdo sensor IR, ai dërgon një A (makinë 1) ose B (makinë 2) në MASTER.
Kur MASTER merr një A ose B, ai mundëson kohëmatësin për atë makinë specifike dhe pastaj pret që makina të kalojë nën sensorin IR përkatës në vijën e finishit.
Ekrani azhurnohet çdo 50ms për të shfaqur kohën aktuale për secilën makinë në sekonda me 2 shifra dhjetore.
Pasi të dy makinat të kenë arritur në vijën e finishit, MASTER vendos se cila makinë ishte më e shpejta dhe pulson atë kohë në ekran për të treguar fituesin.
Hapi 4: Pjesa tjetër e Kodit
Pjesa tjetër e kodit është vetëm kodi i shërbimeve që ose kontrollon shfaqjen e të dhënave në ekranin 8 shifror, ose trajton logjikën e shtypjes së butonit, etj.
Në fund të videos në pjesën hyrëse të këtij projekti, unë tregoj një shembull të kodit që funksionon në 2 tabelat e bukës, prandaj sigurohuni që ta kontrolloni!
Ju mund të merrni kodin për këtë projekt nga repoja ime e github.
Hapi 5: Çfarë vjen më pas?
Kjo është ajo tani për tani … në pjesën 3 ne do të shikojmë lëvizjen e përbërësve nga pjata e bukës dhe në diçka më të përhershme … qëndroni të sintonizuar!
Shpresoj se ju ka pëlqyer ky projekt!
Më ndiqni në:
www.youtube.com/c/unexpectedmaker
twitter.com/unexpectedmaker
www.facebook.com/unexpectedmaker
www.instagram.com/unexpectedmaker
www.tindie.com/stores/seonr/
Recommended:
Përmirësoni një dritë prapa të njehsorit VU në blu të udhëhequr duke përdorur pjesë të vjetra të llambës CFL .: 3 hapa
Përmirësoni një dritë prapa të njehsorit VU në blu të udhëhequr duke përdorur pjesë të vjetra të llambës CFL .: Gjatë riparimit të një magnetofoni të vjetër Sony TC630 të mbështjellë-mbështjell, vura re që njëra prej llambave të xhamit për dritën e pasme të njehsorit VU ishte thyer. Asnjë sasi bojë përçuese punoi pasi plumbi ishte këputur nën sipërfaqen e xhamit. Zëvendësuesi i vetëm që mund të
Puna kundër Geiger W/ Pjesë minimale: 4 hapa (me fotografi)
Duke punuar Counter Geiger W/ Pjesë Minimale: Këtu është, për dijeninë time, sporteli më i thjeshtë Geiger që mund të ndërtoni. Ky përdor një tub SMB-20 Geiger të prodhuar nga Rusia, i drejtuar nga një qark ngritës i tensionit të lartë i grabitur nga një grumbull elektronik i mizave. Ai zbulon grimcat beta dhe gamën
Dhoma fotografike e dasmës Arduino - Pjesë të printuara 3D, të automatizuara dhe me buxhet të ulët: 22 hapa (me fotografi)
Dhoma fotografike e dasmës Arduino - Pjesë të printuara në 3D, të automatizuara dhe me buxhet të ulët: Kohët e fundit isha i ftuar në dasmën e vëllait të partnerit tim dhe ata më pyetën më parë nëse mund t'u ndërtojmë atyre një stendë fotografish pasi kushtojnë shumë për t'u punësuar. Kjo është ajo që ne dolëm dhe pas disa komplimenteve, vendosa ta kthej atë në një udhëzues
Pista e Shpejtësisë së Arduino Hot Wheels - Pjesa 1 - Prototip: 4 Hapa
Pista e Shpejtësisë së Arduino Hot Wheels - Pjesa 1 - Prototip: Nuk duhet të jetë çudi që djali im i do rrotat e nxehta dhe i bën garat me makinat e tij në të gjithë shtëpinë! Një nga gjërat e tij të preferuara për të bërë është të garojë me të gjitha makinat e tij (mbi 100 tani) për të përcaktuar se cila është makina më e shpejtë. Tani për tani ai i bën të gjitha me sy, dhe
Robot që hedhin karamele me Arduino, pjesë të ricikluara dhe Dlib .: 6 hapa
Robot që hedhin karamele me Arduino, pjesë të ricikluara dhe Dlib .: Me disa pjesë të ricikluara, një mburojë motorike Arduino +, dhe softuer kompjuterik Dlib, ju mund të bëni një hedhës karamele që zbulon fytyrën. Materialet: Kornizë druri Laptop/kompjuter ( mundësisht një më i fuqishëm se një Raspberry Pi!). Arduino (Preferoni