Šiame projekte mes sujungsime 5 „RGB“ (raudona žalia mėlyna) šviesos diodus prie „Arduino Uno“. Šie šviesos diodai yra prijungti lygiagrečiai, kad būtų sumažintas „Uno“ PIN naudojimas.
Tipinis RGB šviesos diodas parodytas žemiau esančiame paveikslėlyje:
RGB LED turės keturis kaiščius, kaip parodyta paveikslėlyje.
PIN1: 1 spalvos neigiamas arba 1 spalvos teigiamas terminalas
PIN2: dažnas teigiamas visoms trims spalvoms arba bendras neigiamas visoms trims spalvoms
PIN3: 2 spalvos neigiamas terminalas arba 2 spalvos teigiamas terminalas
PIN4: 3 spalvos neigiamas terminalas arba 3 spalvos teigiamas terminalas
Taigi yra dviejų tipų RGB šviesos diodai: vienas yra įprastas katodo tipas (bendras neigiamas), kitas - įprastas anodo tipas (bendras teigiamas). CC (bendrasis katodas arba bendras neigiamas) bus po tris teigiamus terminalus, kurių kiekvienas terminalas žymės spalvą, ir vienas neigiamas terminalas, žymintis visas tris spalvas. CC RGB LED vidinė grandinė gali būti pavaizduota taip, kaip nurodyta toliau.
Jei norime, kad RED būtų įjungtas aukščiau, turime įjungti RED LED kaištį ir įžeminti bendrą neigiamą. Tas pats pasakytina apie visus šviesos diodus. CA (bendras anodas arba bendras teigiamas) bus trys neigiami gnybtai, kurių kiekvienas terminalas žymės spalvą, ir vienas teigiamas gnybtas, žymintis visas tris spalvas. CA RGB LED vidinė grandinė gali būti pavaizduota taip, kaip parodyta paveiksle..
Jei norime, kad RED būtų įjungtas aukščiau, turime įžeminti RED LED kaištį ir įjungti bendrą teigiamą. Tas pats pasakytina apie visus šviesos diodus.
Savo grandinėje mes ketiname naudoti CA (bendras anodas arba bendras teigiamas) tipą. Norėdami prijungti 5 RGB šviesos diodus prie „Arduino“, mums paprastai reikia 5x4 = 20 PINS. Mes sumažinsime šį PIN naudojimą iki 8, lygiagrečiai sujungdami RGB šviesos diodus ir naudodami techniką, vadinamą multipleksavimu.
Komponentai
Aparatūra: UNO, maitinimo šaltinis (5v), 1KΩ rezistorius (3 vnt.), RGB (raudona žalia mėlyna) LED (5 vnt.)
Programinė įranga: „ Atmel studio 6.2“ arba „Aurdino“ kas vakarą.
Grandinės ir darbo paaiškinimas
Grandinės jungtis RGB LED „Arduino“ sąsajai parodyta žemiau esančiame paveiksle.
Dabar kalbėkime apie keblią dalį, tarkime, kad norime pasukti raudoną lemputę SET1 ir ŽALIĄ LED lemputę SET2. Mes maitiname UNO PIN8 ir PIN9, taip pat įžeminame PIN7, PIN6.
Su tuo srautu mes turėsime RAUDONĄ pirmajame SET ir GREEN antrame SET ON, bet mes turėsime GREEN žalą SET1 ir RAUDONĄ SET2 ON. Pagal paprastą analogiją galime pastebėti, kad visi keturi šviesos diodai uždaro grandinę su aukščiau esančia konfigūracija, todėl jie visi šviečia.
Taigi, norėdami pašalinti šią problemą, vienu metu įjungsime tik vieną SET. Pasakykite, kai t = 0m SEC, SET1 nustatomas įjungtas. Kai t = 1m SEC, SET1 yra išjungtas ir SET2 įjungiamas. Vėlgi, kai t = 6m SEC, SET5 išjungiamas ir SET1 įjungiamas. Tai tęsiasi.
Čia apgaulė: žmogaus akis negali užfiksuoti didesnio nei 30 HZ dažnio. Tai yra, jei šviesos diodas nuolat įsijungia ir išsijungia 30 Hz ar didesniu greičiu. Akis mato šviesos diodą nuolat įjungtą. Tačiau taip nėra. Šviesos diodas nuolat įsijungs ir išsijungs. Ši technika vadinama multipleksavimu.
Paprasčiau tariant, mes įjungsime kiekvieną bendrą 5 SET katodą 1milli sekundės, taigi po 5milli sekundės mes užbaigsime ciklą, po to ciklas vėl prasideda nuo SET1, tai tęsiasi amžinai. Kadangi LED SETS įsijungia ir išsijungia per greitai. Žmogus prognozuoja, kad visi SET yra nuolat įjungti.
Taigi, kai maitiname SET1 t = 0 mili sekundžių, mes įžeminame raudoną kaištį. Kai t = 1 mili sekundė, mes įjungiame SET2 ir įžeminame ŽALIĄ kaištį (šiuo metu RAUDONA ir MĖLYNA yra ištempta aukštai). Kilpa eina greitai, o akis mato RAUDONĄ švytėjimą PIRMOJE RINKINYJE ir ŽALIĄ švytėjimą antrame rinkinyje.
Taip programuojame RGB šviesos diodą, lėtai švytime visas spalvas, kad pamatytume, kaip veikia multipleksavimas.