Mundarija:

Sehrli Gerkules - raqamli LEDlar uchun haydovchi: 10 qadam
Sehrli Gerkules - raqamli LEDlar uchun haydovchi: 10 qadam

Video: Sehrli Gerkules - raqamli LEDlar uchun haydovchi: 10 qadam

Video: Sehrli Gerkules - raqamli LEDlar uchun haydovchi: 10 qadam
Video: СОЧИ УЗУН актриса Нилуфарни БАССЕЙНДАГИ УЯТСИЗ сахнасию КАЛТА ОЧИҚ КИЙИБ, КЛУБЛАРДА ўйнашигача 2024, Iyul
Anonim
Sehrli Gerkules - raqamli LEDlar uchun haydovchi
Sehrli Gerkules - raqamli LEDlar uchun haydovchi

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?

Nega men sehrli Gerkules moduli ustida ishlayapman?
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

SPI - NZR konvertatsiyasi
SPI - NZR konvertatsiyasi

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 LED chiziqli sinov qurilmasi sifatida sehrli Hercules moduli
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

Sehrli Gerkules moduli - Raqamli LEDlar uchun yangi universal echim
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:

Rasm
Rasm

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: