I dette prosjektet skal vi grensesnitt 5 RGB (rødgrønne blå) lysdioder til Arduino Uno. Disse lysdiodene kobles parallelt for å redusere PIN-bruken av Uno.
En typisk RGB-LED er vist i figuren nedenfor:
RGB-LED-en vil ha fire pinner som vist på figuren.
PIN1: Farge 1 negativ terminal eller farge 1 positiv terminal
PIN2: Felles positivt for alle tre farger eller felles negativt for alle tre farger
PIN3: Farge 2 negativ terminal eller farge 2 positiv terminal
PIN4: Farge 3 negativ terminal eller farge 3 positiv terminal
Så det er to typer RGB-lysdioder, den ene er vanlig katodetype (vanlig negativ) og den andre er vanlig anodetype (vanlig positiv). I CC (Common Cathode eller Common Negative) vil det være tre positive terminaler hver terminal representerer en farge og en negativ terminal som representerer alle tre farger. Den interne kretsen til en CC RGB LED kan vises som nedenfor.
Hvis vi vil at RØD skal være på over, må vi strømme den RØDE LED-pinnen og jorde det vanlige negativet. Det samme gjelder for alle lysdiodene. I CA (Common Anode eller Common Positive) vil det være tre negative terminaler hver terminal representerer en farge og en positiv terminal som representerer alle tre farger. Den interne kretsen til en CA RGB LED kan vises som vist i figur..
Hvis vi vil at RØD skal være på over, må vi jorde den RØDE LED-pinnen og slå på det positive. Det samme gjelder for alle lysdiodene.
I vår krets skal vi bruke CA-typen (Common Anode eller Common Positive). For å koble 5 RGB-lysdioder til Arduino trenger vi vanligvis 5x4 = 20 PINS, da vi skal redusere denne PIN-bruken til 8 ved å koble RGB-LED-er parallelt og ved å bruke en teknikk som kalles multiplexing.
Komponenter
Maskinvare: UNO, strømforsyning (5v), 1KΩ motstand (3 deler), RGB (rød grønn blå) LED (5 deler)
Programvare: Atmel studio 6.2 eller Aurdino nattlig.
Krets og arbeidsforklaring
Kretsforbindelsen for RGB LED Arduino-grensesnitt er vist i figuren nedenfor.
Nå for den vanskelige delen, si at vi vil slå den RØDE ledningen i SET1 og GRØNN LED i SET2. Vi driver PIN8 og PIN9 til UNO, og bakker PIN7, PIN6.
Med den strømmen vil vi ha RØDT i første SET og GRØNN i andre SET ON, men vi vil ha GRØNN i SET1 og RØD i SET2 ON med den. Ved enkel analogi kan vi se alle fire lysdioder stenge kretsen med konfigurasjonen ovenfor, og så lyser de alle.
Så for å eliminere dette problemet, vil vi bare slå på ett SET om gangen. Si på t = 0m SEC, SET1 er innstilt PÅ. Ved t = 1m SEC stilles SET1 AV og SET2 slås PÅ. Igjen ved t = 6m SEC blir SET5 slått AV og SET1 er slått PÅ. Dette fortsetter.
Her er trikset at menneskets øye ikke kan fange en frekvens på mer enn 30 Hz. Det vil si hvis en LED lyser kontinuerlig PÅ og AV med en hastighet på 30 Hz eller mer. Øyet ser på LED-lampen som kontinuerlig PÅ. Dette er imidlertid ikke tilfelle. LED-lampen vil kontinuerlig slås PÅ og AV. Denne teknikken kalles multiplexing.
Enkelt sagt vil vi drive hver vanlige katode på 5 SETS 1milli sekund, så om 5milli sekund vil vi ha fullført syklusen, etter at syklusen starter fra SET1 igjen, dette fortsetter for alltid. Siden LED-SETTENE slås PÅ og AV for fort. Mennesket forutsier at alle settene er PÅ hele tiden.
Så når vi driver SET1 med t = 0 milli sekund, jorder vi den RØDE pinnen. Ved t = 1 milli sekund driver vi SET2 og jorder den GRØNNE pinnen (på dette tidspunktet trekkes RØDT og BLÅ opp HØYT). Sløyfen går fort og øyet ser RØD glød i FIRST SET og GREEN glød i SECOND SET.
Slik programmerer vi en RGB LED, vi lyser sakte i fargene i programmet for å se hvordan multiplexing fungerer.