Tässä projektissa aiomme liittää 5 RGB (punainen vihreä sininen) LEDiä Arduino Unoon. Nämä LEDit on kytketty rinnakkain Unon PIN-koodin käytön vähentämiseksi.
Tyypillinen RGB-LED on esitetty alla olevassa kuvassa:
RGB-LEDillä on neljä tapia kuvan osoittamalla tavalla.
PIN1: Väri 1 negatiivinen tai väri 1 positiivinen
PIN2: Yhteinen positiivinen kaikille kolmelle värille tai yleinen negatiivinen kaikille kolmelle värille
PIN3: Väri 2 negatiivinen tai väri 2 positiivinen
PIN4: Väri 3 negatiivinen tai väri 3 positiivinen
Joten on olemassa kahden tyyppisiä RGB-LEDejä, yksi on yhteinen katodityyppi (yhteinen negatiivinen) ja toinen on yhteinen anodityyppi (yhteinen positiivinen). CC: ssä (Common Cathode or Common Negative) on kolme positiivista päätettä, joista kukin terminaali edustaa väriä ja yksi negatiivinen pääte edustaa kaikkia kolmea väriä. CC RGB LED: n sisäinen piiri voidaan esittää alla esitetyllä tavalla.
Jos haluamme PUNAISEN olevan päällä yllä, meidän on kytkettävä virta PUNAINEN LED-tappi ja maadoitettava yhteinen negatiivinen. Sama koskee kaikkia LED-valoja. CA: ssa (yhteinen anodi tai yhteinen positiivinen) on kolme negatiivista terminaalia, joista kukin terminaali edustaa väriä ja yksi positiivinen terminaali edustaa kaikkia kolmea väriä. CA RGB-LEDin sisäinen piiri voidaan esittää kuvan osoittamalla tavalla.
Jos haluamme PUNAISEN olevan päällä, meidän on maadoitettava PUNAINEN LED-tappi ja kytkettävä yhteinen positiivinen. Sama koskee kaikkia LED-valoja.
Piirissämme aiomme käyttää CA-tyyppiä (Common Anode or Common Positive). 5 RGB-LEDin liittämiseksi Arduinoon tarvitsemme yleensä 5x4 = 20 PINS: ää, aiomme vähentää tämän PIN-koodin käytön kahdeksaan yhdistämällä RGB-LEDit rinnakkain ja käyttämällä tekniikkaa, jota kutsutaan multipleksoinniksi.
Komponentit
Laitteisto: UNO, virtalähde (5v), 1KΩ vastus (3 kpl), RGB (punainen vihreä sininen) LED (5 kpl)
Ohjelmisto: Atmel studio 6.2 tai Aurdino iltaisin.
Piiri ja työskentely Selitys
Piiri liitäntä RGB LED Arduino rajapinnat on esitetty alla kuviossa.
Sanotaan nyt hankalasta osasta, että haluamme kääntää PUNAISEN ledin SET1: ssä ja VIHREÄ LEDin SET2: ssa. Voimme käyttää UNO: n PIN8- ja PIN9-koodeja sekä maadoittaa PIN7-koodit, PIN6-koodit.
Tämän virtauksen myötä meillä on PUNAINEN ensimmäisessä SET: ssä ja VIHREÄ toisessa SET ON: ssa, mutta meillä on GREEN asetuksessa SET1 ja PUNAINEN SET2 ON: ssa. Yksinkertaisella analogialla voimme nähdä, että kaikki neljä lediä sulkevat piirin yllä olevalla kokoonpanolla, joten ne kaikki palavat.
Joten tämän ongelman poistamiseksi käynnistämme vain yhden SET-toiminnon kerrallaan. Sano, kun t = 0m SEC, SET1 on viritetty PÄÄLLE. Kun t = 1m SEC, SET1 viritetään pois päältä ja SET2 kytketään päälle. Jälleen ajankohtana t = 6m SEC, SET5 kytketään pois päältä ja SET1 kytketään päälle. Tämä jatkuu.
Tässä temppu on, että ihmissilmä ei voi kaapata yli 30 Hz: n taajuutta. Eli jos LED palaa ja sammuu jatkuvasti nopeudella 30 Hz tai enemmän. Silmä näkee LEDin jatkuvasti päällä. Näin ei kuitenkaan ole. LED palaa jatkuvasti ja sammuu. Tätä tekniikkaa kutsutaan multipleksoinniksi.
Yksinkertaisesti sanottuna, me syötämme jokaisen yhteisen 5 SET: n katodin 1milli sekunnissa, joten 5milli sekunnissa olemme suorittaneet jakson, sen jälkeen sykli alkaa jälleen SET1: stä, tämä jatkuu ikuisesti. Koska LED-valot syttyvät ja sammuvat liian nopeasti. Ihminen ennustaa, että kaikki setit ovat päällä koko ajan.
Joten kun teemme SET1: n t = 0 millisekunnissa, maadoitetaan PUNAINEN tappi. Kun t = 1 milli sekunti, syötämme SET2: n ja maadoitamme VIHREÄ nastan (tällä hetkellä PUNAINEN ja SININEN vedetään KORKEAsti). Silmukka kulkee nopeasti ja silmä näkee PUNAISEN hehkun ensimmäisessä sarjassa ja VIHREÄ hehkun TOISESSA ASETUKSESSA.
Näin ohjelmoimme RGB-LEDin, hehkutamme kaikki värit hitaasti ohjelmassa nähdäksesi, kuinka multipleksointi toimii.