Mundarija:
- 1 -qadam: MASTER ham, qul ham xuddi shu kodda
- 2 -qadam: BLUETOOTH modullari ketma -ket o'qish va yozish orqali suhbat
- 3 -qadam: Musobaqani boshqarish
- 4 -qadam: Kodning qolgan qismi
- 5 -qadam: Keyin nima bo'ladi?
Video: Arduino Hot Wheels Speed Track #2 -qism - Kod: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Loyihaning birinchi qismida biz 2 ta taxtada prototip uchun uskunalar o'rnatdik.
Va bu qismda biz kodni, uning qanday ishlashini ko'rib chiqamiz va keyin uni sinab ko'ramiz.
Kodni ko'rib chiqish va ish kodini ko'rsatish uchun yuqoridagi videoni tomosha qilganingizga ishonch hosil qiling.
1 -qadam: MASTER ham, qul ham xuddi shu kodda
Kod 2 qismdan iborat, lekin bir xil fayl ichida. Men #define va #ifdef -dan foydalanib, qaysi kod tuzilishini yoki e'tiborga olinmasligini aniqlayman, shuning uchun men MASTER paneli uchun har qanday kodni va faqat SLAVE paneli uchun kodni ajratishim mumkin.
Asosan, agar MASTER ta'rifi topilsa, MASTER kod bloki ichida joylashgan har qanday kod tuziladi va bu blokdan tashqaridagi har qanday kod kompilyatsiya vaqtida o'chiriladi.
#ifdef MASTER
// Maxsus kod bu erda
#boshqa
#QULni aniqlang
// Qullarga xos kod bu erda
#endif
Men ham xuddi shu usuldan MASTER kompilyatsiya qilinganida, "SLAVE" ni aniqlash uchun foydalanmoqdaman, shuning uchun siz faqat MASTERni aniqlash yoki qulni aniqlashni yoqmaslik haqida qayg'urishingiz kerak.
2 -qadam: BLUETOOTH modullari ketma -ket o'qish va yozish orqali suhbat
Bu loyihada MASTER non paneli bilan faqat SLAVE non paneli gaplashadi. MASTER hech qachon javob bermaydi, u faqat eshitadi va keyin keladigan ma'lumotlarni bajaradi.
Modullar Arduino kodlash ekotizimidagi o'rnatilgan Serial sinfidan foydalanib gaplashadi va tinglaydi.
Bluetooth modullari 38400 bodda aloqa o'rnatadi, shuning uchun ikkala kodli yo'l ham ketma -ket aloqani ishga tushiradi:
Serial.begin (38400);
Va SLAVE quyidagilarni qo'llaydi:
Serial.write (ma'lumotlar shu erda);
MASTER bilan gaplashish uchun MASTER quyidagilarni ishlatadi:
ma'lumotlar = Serial.read ();
Seriya oqimini tinglash va uning tarkibini o'qish va uni o'zgaruvchiga saqlash.
3 -qadam: Musobaqani boshqarish
QUL MASTERga, agar u musobaqada ko'proq yoki tayyor rejimda bo'lsa, uning mikro-boshqaruvchisiga ulangan yashil tugma orqali xabar beradi. Tayyor rejimda, IQ sensorlar hech narsa qilmaydi va MASTER displeyda 8 ta chiziqni ko'rsatib, uning tayyor holatda ekanligini ko'rsatadi.
QUL MASTERGA poyga boshlanishini aytganda, qul uning ostidagi mashinalar o'tishi uchun uning yonidagi IR sensorlarini (poyga yo'lining boshlanishi) so'roq qila boshlaydi.
Har bir mashina har bir IQ sensori ostidan o'tayotganda, MASTERga A (mashina 1) yoki B (mashina 2) yuboradi.
MASTER A yoki B ni qabul qilganda, u o'ziga xos mashina taymerini ishga tushiradi, so'ngra marshrutda mashinaning mos keladigan IQ sensori ostidan o'tishini kutadi.
Displey har 50 soniyada yangilanadi va har bir mashina uchun joriy vaqtni 2 sonli kasrli soniyalarda ko'rsatadi.
Ikkala mashina ham marra chizig'iga etib kelganidan so'ng, MASTER qaysi avtomobil eng tez bo'lganini aniqlaydi va shu vaqtda displeyda g'olibni ko'rsatish uchun yonadi.
4 -qadam: Kodning qolgan qismi
Qolgan kod - bu faqat 8 -raqamli displeyda ma'lumotlarni ko'rsatishni boshqaradigan yoki tugmachalarni bosish mantig'ini boshqaradigan yordamchi kod.
Videoning oxirida, ushbu loyihaning kirish qismida, men 2 ta taxtada ishlaydigan kodning misolini ko'rsataman, shuning uchun buni tekshirib ko'ring!
Siz ushbu loyihaning kodini github repo -dan olishingiz mumkin.
5 -qadam: Keyin nima bo'ladi?
Hozircha shunday … 3 -qismda biz tarkibiy qismlarni non panelidan boshqa doimiy narsaga ko'chirishni ko'rib chiqamiz … bizni kuzatib turing!
Umid qilamanki, sizga bu loyiha yoqadi!
Meni kuzatib boring:
www.youtube.com/c/unexpectedmaker
twitter.com/unexpectedmaker
www.facebook.com/unexpectedmaker
www.instagram.com/unexpectedmaker
www.tindie.com/stores/seonr/
Tavsiya:
MVRK Mandalorian Track Fob: 8 qadam (rasmlar bilan)
MVRK Mandalorian Tracking Fob: Bu 4 may, aks holda Yulduzli urushlar kuni deb nomlanadi, bu bayram bizning qalbimizga juda yaqin va aziz. Bu yil biz uni o'tgan yillardagidan farqli ravishda nishonlashga qaror qildik. Tajribali texnologiya va ishlab chiqaruvchi-loyiha yordamida biz murakkab yondashuvni tanladik
GRBL Stepper Motors Arduino Shield bilan Mecanum Omni Wheels Robot: 4 qadam
Mecanum Omni Wheels Robot with GRBL Stepper Motors Arduino Shield: Mecanum Robot - Men loyihani Dejanning gech -mexatronika blogida ko'rganimdan buyon qurmoqchi bo'lgan loyiham: howtomechatronics.com Dejan chindan ham uskuna, 3D bosib chiqarishning barcha jihatlarini qamrab olgan. , elektronika, kod va Android ilovasi (MIT
Xavfsiz elektr hot -dog pishirgichi: 14 qadam (rasmlar bilan)
Xavfsiz elektr hot -dog pishirgichi: Men fizika fakultetida bakalavr bo'lganimda, hot -doglarni to'g'ridan -to'g'ri 120V kuchlanishli rozetkaga ulab pishirardik. Bu nisbatan xavfli operatsiya edi, chunki biz uzaytirgich simining uchlarini ikkita murvatga mahkamladik, ular
O'g'limning 2 -tug'ilgan kuni uchun RC Power Wheels!: 13 qadam (rasmlar bilan)
O'g'limning 2-tug'ilgan kuni uchun RC Power Wheels!: Men 10 yoshimdan beri RC-ify Power Wheelni orzu qilardim. Bir necha oy oldin, do'stim menga eski chayqaladigan, chaynalgan o'yinchoq, zo'rg'a ishlaydigan Power Wheel berdi. Men bolalik orzusini ro'yobga chiqarishga qaror qildim va uni tubdan o'zgartirdim
4G LTE SPEED BOOSTER: 9 qadam
4G LTE SPEED BOOSTER: Hozirgi kunda deyarli har bir kishi Internetdan foydalanadi. Va ularning ko'pchiligi simsiz Internetdan foydalanadi, masalan. WiFi, 3g, 4g, lekin internet tezligi pasayib ketdi. Sabab juda ko'p tiqilib qolishi yoki signalning zaifligi bo'lishi mumkin. Bugun men sizga 3g/ 4g interneni qanday kuchaytirish kerakligini ko'rsataman