I det här projektet ska vi ansluta 5 RGB-lampor (rödgrönblå) till Arduino Uno. Dessa lysdioder är anslutna parallellt för att minska PIN-användningen av Uno.
En typisk RGB-LED visas i bilden nedan:
RGB-lysdioden har fyra stift som visas i figuren.
PIN1: Färg 1 negativ terminal eller färg 1 positiv terminal
PIN2: Gemensamt positivt för alla tre färgerna eller gemensamt negativt för alla tre färgerna
PIN3: Färg 2 negativ terminal eller färg 2 positiv terminal
PIN4: Färg 3 negativ terminal eller färg 3 positiv terminal
Så det finns två typer av RGB-lysdioder, en är vanlig katodtyp (vanligt negativ) och andra är vanlig anodtyp (gemensam positiv). I CC (Common Cathode eller Common Negative) kommer det att finnas tre positiva terminaler som varje terminal representerar en färg och en negativ terminal som representerar alla tre färgerna. Den interna kretsen på en CC RGB LED kan visas som nedan.
Om vi vill att RÖD ska vara på ovan, måste vi driva den RÖDA LED-stiftet och jorda det gemensamma negativet. Detsamma gäller för alla lysdioder. I CA (Common Anode eller Common Positive) kommer det att finnas tre negativa terminaler som varje terminal representerar en färg och en positiv terminal som representerar alla tre färgerna. Den interna kretsen på en CA RGB-LED kan visas som visas i figuren..
Om vi vill att RÖD ska vara på ovan, måste vi jorda den RÖDA LED-stiftet och driva det gemensamma positiva. Detsamma gäller för alla lysdioder.
I vår krets ska vi använda CA-typ (Common Anode eller Common Positive). För att ansluta 5 RGB-lysdioder till Arduino behöver vi vanligtvis 5x4 = 20 PINS, eftersom vi kommer att minska denna PIN-användning till 8 genom att ansluta RGB-lysdioder parallellt och genom att använda en teknik som kallas multiplexing.
Komponenter
Hårdvara: UNO, strömförsörjning (5v), 1KΩ motstånd (3 stycken), RGB (rödgrön blå) LED (5 stycken)
Programvara: Atmel studio 6.2 eller Aurdino varje natt.
Krets- och arbetsförklaring
Kretsanslutningen för RGB LED Arduino-gränssnitt visas i bilden nedan.
Nu för den knepiga delen, säg att vi vill vrida den RÖDA lysdioden i SET1 och GRÖN LED i SET2. Vi driver PIN8 och PIN9 för UNO och jord PIN7, PIN6.
Med det flödet kommer vi att ha RÖDT i första SET och GRÖNT i andra SET ON, men vi kommer att ha GRÖNT i SET1 och RÖDT i SET2 ON med det. Genom enkel analogi kan vi se alla fyra lysdioderna stänga kretsen med ovanstående konfiguration och så lyser de alla.
Så för att eliminera detta problem kommer vi bara att sätta på en SET åt gången. Säg vid t = 0m SEC, SET1 är inställd PÅ. Vid t = 1m SEC ställs SET1 AV och SET2 slås PÅ. Återigen vid t = 6m SEC stängs SET5 av och SET1 slås PÅ. Detta fortsätter.
Här är tricket att det mänskliga ögat inte kan fånga en frekvens mer än 30 Hz. Det är om en LED tänds och släcks kontinuerligt med en hastighet på 30 Hz eller mer. Ögat ser LED-lampan som kontinuerligt PÅ. Men så är inte fallet. Lysdioden tänds ständigt PÅ och AV. Denna teknik kallas multiplexing.
Enkelt sagt kommer vi att driva varje gemensam katod på 5 SET 1 millisekund, så på 5 millisekunder kommer vi att ha slutfört cykeln, efter att cykeln startar från SET1 igen, detta fortsätter för alltid. Eftersom LED-inställningarna tänds och släcks för snabbt. Människan förutspår att alla INSTÄLLNINGAR är PÅ hela tiden.
Så när vi driver SET1 till t = 0 milli sekund, jordar vi den RÖDA stiftet. Vid t = 1 milli sekund driver vi SET2 och jordar det GRÖNA stiftet (vid denna tidpunkt dras RÖDT och BLÅT upp högt). Slingan går snabbt och ögat ser RÖD glöd i FIRST SET och GRÖN glöd i SECOND SET.
Så här programmerar vi en RGB LED, vi lyser långsamt alla färger i programmet för att se hur multiplexing fungerar.