Mundarija:
- 1 -qadam: Nega men sehrli Gerkules moduli ustida ishlayapman?
- 2 -qadam: SPI -ni NZR -ga o'tkazish
- 3 -qadam: Raqamli LED chiziqli sinov qurilmasi sifatida sehrli Hercules moduli
- 4 -qadam: Sehrli Gerkules moduli - Raqamli LEDlar uchun yangi universal echim
- 5 -qadam: Atmega32 va C bilan sehrli Hercules moduli
- 6 -qadam: Arduino va Arduino C ++ bilan sehrli Hercules moduli
- 7 -qadam: PIC va C bilan sehrli Hercules moduli
- 8 -qadam: Raspberry Pi va Python bilan sehrli Hercules moduli
- 9 -qadam: Sehrli Hercules moduli ARM bilan - STM32 Nucleo va C
- 10 -qadam:
Video: Sehrli Gerkules - raqamli LEDlar uchun haydovchi: 10 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:22
Tez ko'rib chiqish:
Magic Hercules moduli NZR protokoliga mashhur va oddiy SPI o'rtasidagi konvertor hisoblanadi. Modul kirishlari +3,3 V ga bardoshli, shuning uchun siz +3,3 V kuchlanishda ishlaydigan har qanday mikrokontrollerni ishonchli ulashingiz mumkin.
Raqamli LEDlarni boshqarish uchun SPI protokolidan foydalanish Arduino uchun tayyor kutubxonalar kabi joriy echimlar orasida innovatsion yondashuvdir. Shu bilan birga, u mikrokontrollerlar oilasidan qat'i nazar (ARM: STM / Cypress PSoC, Raspberry Pi, AVR, PIC, Arduino kabi) va dasturlash tilidan qat'i nazar (masalan, C, Arduino C ++, Python yoki boshqa) har qanday platformaga o'tishga imkon beradi. SPI protokolini qo'llab -quvvatlaydi). Raqamli LEDlarni dasturlashning bunday yondashuvi juda yangi boshlanuvchilar uchun qulay, chunki sizga SPI protokoli haqida ma'lumot kerak.
MH moduli, shuningdek, diodagi rang tartibini (RGB, BGR, RGBW va boshqalar), chiziqlar yoki displeylarni sinab ko'rishni o'z ichiga olgan (1024 LEDgacha) raqamli LED tasmalarini sinab ko'rishning bir necha usullariga imkon beradi.
1 -qadam: Nega men sehrli Gerkules moduli ustida ishlayapman?
Men uzoq vaqtdan beri WS2812, WS2815 yoki SK6812 kabi raqamli LEDlar bilan ishlayman, ularni odatda Magic LED deb atayman.
Men Magic LED (hatto RGBW turida) asosida ko'plab chiziqlar, uzuklar va displeylarni (hatto o'zimnikini) sinab ko'rdim. Men Arduino, Nucleo (STM bilan), Raspberry Pi va AVR mikrokontroldorlari bilan o'z shaxsiy taxtalarimni ishlatardim.
Platformadan qat'i nazar, sehrli LEDlarni boshqarish uchun dastur yozish juda qiyin (NZR protokoli dasturiga bo'lgan ehtiyoj tufayli), agar siz kutubxonalarni ishlatishni osonlashtirmasangiz, lekin kodni ishlatish nuqtai nazaridan to'liq optimal bo'lmasa. javoblar yoki xotiradan foydalanish va faqat ma'lum platformalarda ishlash (masalan, malinadan AVR mikrokontrollerlariga ko'chirish mumkin emas).
Men tez -tez turli platformalardan foydalanganligim sababli, men dastur kodini iloji boricha Arduino, Raspberry Pi, ARM / STM (Nucleo) yoki AVR bilan moslashtirishga muhtoj edim - ayniqsa yorug'lik effektlari haqida.
Men uzoq vaqtdan beri youtube kanalida ishlayapman va AVR mikrokontrollerlari uchun C tilida raqamli diodlarni dasturlash bo'yicha bir nechta qo'llanma tayyorladim (lekin hozircha faqat polyak tilida). Men tez -tez sehrli LEDlarni dasturlash bilan kurashayotgan yangi boshlanuvchilar bilan aloqada bo'laman. Albatta, ba'zilar, platformaga qarab, bir martalik loyihalari uchun tayyor kutubxonalarni tanlaydilar. Biroq, ko'p odamlar boshqa echimlarni qidirishadi yoki dasturlash sirlarini o'rganishga harakat qilishadi va men ham ulardan biriman.
2 -qadam: SPI -ni NZR -ga o'tkazish
Men NZR protokoli yordamida foydalanuvchi uchun iflos ishlarni bajaradigan modul tayyorlashga qaror qildim. NZR -SPI -ga SPI vazifasini bajaradigan modul, xuddi SPI kabi, istalgan platformada osongina ishlatilishi mumkin. Yuqoridagi skrinshotda SPI signallarining Magic Hercules modulidagi NZR protokoliga aylanishi ko'rsatilgan.
3 -qadam: Raqamli LED chiziqli sinov qurilmasi sifatida sehrli Hercules moduli
Raqamli LEDlarni turli tizimlarga ulashda, har xil mikrokontrollerlar uchun mos keladigan kuchlanish tolerantligi haqida eslash kerak. ARM mikrokontrollerlarining kirish -chiqish pimlarining aksariyati +3,3 V standartida ishlaydi, AVR mikrokontrollerlari esa TTL standartida ishlaydi. Shu sababli, Magic Hercules modulining kirish pimlari +3,3 V ga bardoshli, shuning uchun ularni xavfsiz tarzda ulash mumkin, masalan, Raspberry P yoki +3,3 V quvvatga ega ARMga asoslangan har qanday mikrokontroller.
Yuqorida aytib o'tganimdek, men tez -tez har xil turdagi raqamli LEDlar bilan ishlayman. Ishlab chiqaruvchiga qarab, LEDlardagi individual ranglar turli pozitsiyalarda bo'lishi mumkin, masalan. RGB, BGR, GRB, RGBW, GRBW va boshqalar. Ishlab chiqaruvchining hujjatlarida RGB ketma -ketligini eslatib turish odatiy hol emas, lekin aslida u boshqacha ko'rinadi. Men Hercules modulini ranglar ketma -ketligi testi bilan jihozladim, shunda to'g'ri rang tartibi uchun dasturni qanday yozishni hech qanday muammo bo'lmaydi. Tekshirgichning bir nechta qo'shimcha funktsiyalari sizga raqamli LED tasmasi umuman ishlayaptimi, chiziqdagi har bir LEDdagi barcha ranglar (1024 ta LEDgacha) to'g'ri ishlayaptimi (o'lik piksellar yo'q) ni tezda tekshirishga imkon beradi. Va bularning barchasi mikrokontrollerni ulamasdan va biron bir dastur yozmasdan.
4 -qadam: Sehrli Gerkules moduli - Raqamli LEDlar uchun yangi universal echim
Menimcha, raqamli LEDlarni har qanday platformada yoki mikrokontrollerlar oilasida boshqariladigan oddiy va keng tarqalgan SPI protokoli yordamida boshqarish uchun hali bunday narsa yo'q edi.
Albatta, raqamli LEDlarni boshqarishning ko'p usullari bor, ba'zilari maqbulroq, boshqalari esa kamroq. Magic Hercules moduli men uchun yana bir variant va juda amaliy. Menimcha, bu g'ayrioddiy echim kimgadir yoqishi mumkin. Men yaqinda kraudfanding platformasida - kickstarter -da ishga tushdim, u erda bir nechta videolarda Magic Hercules modulining kengroq tavsifini tayyorladim, shu jumladan u bilan Arduino, Nucleo (STM), Raspberry Pi va AVR va PICda ishlash qanchalik oson. mikrokontrollerlar. Agar siz "Sehrli Gerkules" loyihasini qo'llab -quvvatlamoqchi bo'lsangiz, buni ko'rib chiqing:
Mening sehrli Hercules moduli loyihasi kickstarterda
Men C tilida dastur tayyorladim - bu oddiy yulduzli eshik effekti, u stol operatsiyalari va buferni asosiy tsiklda ketma -ket yuborishga asoslangan. Sehrli Gerkules moduli tufayli men manba kodini boshqa tillar va platformalarga osongina o'tkaza oldim - keyingi qadamlarni tekshiring - manba kodlari.
5 -qadam: Atmega32 va C bilan sehrli Hercules moduli
Video soddalashtirilgan diagramma, ATB 1.05a (AVR Atmega32) ga ulanish taqdimoti, manba kodi (Eclipse C/C ++ IDE da) va yulduzli eshik effekti ko'rinishidagi yakuniy effektni o'z ichiga oladi.
YouTubedagi videoga havola
6 -qadam: Arduino va Arduino C ++ bilan sehrli Hercules moduli
Soddalashtirilgan diagramma, Arduino 2560 bortidagi ulanish taqdimoti, Arduino IDE -dagi manba kodi va yulduzli eshik effekti ko'rinishidagi yakuniy effektni o'z ichiga olgan video.
YouTubedagi videoga havola
7 -qadam: PIC va C bilan sehrli Hercules moduli
Video soddalashtirilgan diagramma, PIC qalqoni bilan ATB 1.05a ulanishi taqdimoti (bortda PIC24FJ64GA004), MPLAB -dagi manba kodi va yulduzli eshik effekti ko'rinishidagi yakuniy effekt.
YouTubedagi videoga havola
8 -qadam: Raspberry Pi va Python bilan sehrli Hercules moduli
Video soddalashtirilgan diagramma, Raspberry Pi 4 -da ulanish taqdimoti, Python -dagi manba kodi va yulduzli eshik effekti ko'rinishidagi yakuniy effekt.
YouTubedagi videoga havola
9 -qadam: Sehrli Hercules moduli ARM bilan - STM32 Nucleo va C
Soddalashtirilgan diagramma, STM32 Nucleo platasida ulanish taqdimoti, STM32CubeIDE -dagi manba kodi va yulduzli eshik effekti ko'rinishidagi yakuniy effektni o'z ichiga olgan video.
YouTubedagi videoga havola
10 -qadam:
O'ylaymanki, MH platforma va tilidan qat'i nazar, yangi boshlanuvchilar uchun juda qulay modul bo'lishi mumkin. Ma'lum bo'lgan SPI protokolini bilish kifoya, va raqamli LED tasmasi umuman ishlayaptimi va uning rang ketma-ketligi bor-yo'qligini tekshirishni boshlash mumkin.
Agar siz mening kickstarter loyihamda ishtirok etmoqchi bo'lsangiz - bu havolani tekshiring:
Mening sehrli Hercules moduli loyihasi kickstarterda
Tavsiya:
Miniatyuralar uchun LEDlar: 5 qadam
Miniatyuralar uchun LEDlar: Bu sizning miniatyuralaringizga LEDlarni qo'shish bo'yicha qisqa (va qo'pol yozilgan, uzrli) qo'llanma
Loyihalaringiz uchun kamalakli LEDlar: 4 qadam (rasmlar bilan)
Loyihalaringiz uchun kamalakli LEDlar: Hammaga salom! Men bu LEDlarni ko'plab dekorativ loyihalarda ishlatganman va natijasi har doim ajoyib, shuning uchun men o'z tajribam bilan bo'lishmoqchiman, men ko'p odamlarni RGB LED tasmasini boshqarish moslamalarini sotib olganini va 3 yoki 5 kabi yoqilganini ko'rdim. rangni o'zgartirish rejimi faqat
Ledlar uchun qo'llanma: 10 qadam
Ledlar uchun qo'llanma: Bu ko'rsatmali men sizga LEDlarning har xil turlari va ajoyib loyihalari qanday ishlashini ko'rsataman
Keling, sehrli sehrli billur to'p yasaylik! ~ Arduino ~: 9 qadam
Sehrli afsun bilan sehrli billur to'p yasaylik! ~ Arduino ~: Bunda biz harakat sensori va RFID skaneridan foydalanib, ichidagi LED chiroqlar animatsiyasini boshqaradigan sehrli to'p yasaymiz
Poyga simulyatorlari uchun byudjetli haydovchi g'ildirak stendi: 8 qadam (rasmlar bilan)
Poyga simulyatorlari uchun byudjetli haydash g'ildiragi: Shunday qilib, siz chrismahanukwanzamas uchun yangi Playstation -ga ega bo'ldingiz, endi siz o'zingizning yangi poyga sim o'yinlarini o'ynashni xohlaysizmi? Juda tez emas. Bu eski noutbuk stoli uni bugungi yuqori torkli teskari aloqa g'ildiraklari bilan kesmaydi. Shunday qilib, siz olishni xohlaysiz