Chalieplexing 4 RGB-LEDs met 4 draden op Arduino (5 / 5 stap)

Stap 5: Plug en Play met de software


Nu is alles klaar om het systeem te testen. Neem je geliefde Arduino (of als je scard uw Ruggduino), de code kopiëren en plakken in uw Arduino schets en wijzigt deze zo nodig. Eventuele verbeteringen zijn welkom


/*
CharliePlexing bibliotheek
(c) door Olivier Chatelain 2014

Deze code is CC-door-SA-3.0
*/

#define CHARLIE_PINS 4
#define CHARLIE_FIRST 9

Instellen van het geheugen
#define CHARLIE_COUNT CHARLIE_PINS*(CHARLIE_PINS-1)

Charlie Level (0 = uit, 255 = max)
#define CHARLIE_LOW 0
#define CHARLIE_HIGH 255

#define CHARLIE_OFF 0
#define CHARLIE_MAX 255

Charlie niveaus voor anode/kathode pin-paren
uint8_t charliePins [CHARLIE_PINS] [CHARLIE_PINS];

#define CHARLIE_GREEN 0
#define CHARLIE_BLUE 1
#define CHARLIE_RED 2

int charlieRGB [CHARLIE_PINS] [3] = {{1, 2, 3}, {2, 3, 0}, {3: 0, 1}, {0, 1, 2}};

ongeldig charlieClear() {}
for (int i = 0; ik < CHARLIE_PINS; i ++) {}
for (int j = 0; j < CHARLIE_PINS; j ++) {}
charliePins [i] [j] = CHARLIE_OFF;
}
}
}

ongeldig charlieSetAll() {}
for (int i = 0; ik < CHARLIE_PINS; i ++) {}
for (int j = 0; j < CHARLIE_PINS; j ++) {}
charliePins [i] [j] = CHARLIE_MAX;
}
}
}

VOID charlieSetAllLevel (uint8_t niveau) {}
for (int i = 0; ik < CHARLIE_PINS; i ++) {}
for (int j = 0; j < CHARLIE_PINS; j ++) {}
charliePins [i] [j] = niveau;
}
}
}

VOID charlieWrite (int src, int dst, uint8_t niveau) {}

charliePins [src % CHARLIE_PINS] [dst % CHARLIE_PINS] = niveau;

}

huidige regel weergegeven
int charlie_line = CHARLIE_PINS-1;

VOID charliePlexLine (uint8_t niveau) {}

Uitschakelen van de laatste regel weergegeven
pinMode (CHARLIE_FIRST + charlie_line, INPUT);

Als (++ charlie_line > = CHARLIE_PINS) charlie_line = 0;
int i = charlie_line;
int MasterPin = CHARLIE_FIRST + i;

Gebruik anderen als volgt pinnen (hoog of INPUT)
for (int j = 0; j < CHARLIE_PINS; j ++) {}
int SlavePin = CHARLIE_FIRST + j;

Als (MasterPin! = SlavePin) {}
Als (charliePins [i] [j] > niveau) {}
pinMode (SlavePin, uitvoer);
digitalWrite (SlavePin, laag);
} else {}
pinMode (SlavePin, INPUT);
}
}
}
pinMode (MasterPin, uitvoer);
digitalWrite (MasterPin, hoge);
}

ongeldig charliePlex() {}

Instellen van een leadpin (LOW)
for (int i = 0; ik < CHARLIE_PINS; i ++) {}
for (int j = 0; j < CHARLIE_MAX; j ++) {}
charliePlexLine(j);
delayMicroseconds(10);
}
}
}

de setup-routine wordt uitgevoerd zodra wanneer u drukt op reset:
VOID Setup {}

}

void loop {}

//*
Voorbeeld 1: Eerste LED(0,1) "On"
//
charlieClear();
charlieWrite(0,1,CHARLIE_MAX);
charliePlex();
//*/

/*
Voorbeeld 2: Dimm wit
for (int i = 0; ik < 8; i ++) {}
charlieSetAllLevel (1 << i);
charliePlex();
}
for (int i = 7; ik > -1; ik--) {}
CHARLIE_PINS (1 << i);
charliePlex();
}
//*/

/*
Voorbeeld 3: Afwisselend de kleuren
charlieClear();
for (int i = 0; ik < CHARLIE_PINS; i ++) {}
charlieWrite (i, charlieRGB [i] [CHARLIE_RED], CHARLIE_MAX);
}
charliePlex();

charlieClear();
for (int i = 0; ik < CHARLIE_PINS; i ++) {}
charlieWrite (i, charlieRGB [i] [CHARLIE_GREEN], CHARLIE_MAX);
}
charliePlex();

charlieClear();
for (int i = 0; ik < CHARLIE_PINS; i ++) {}
charlieWrite (i, charlieRGB [i] [CHARLIE_BLUE], CHARLIE_MAX);
}
charliePlex();
//*/

}

Geniet ervan!

Gerelateerde Artikelen

Controle RGB LED met arduino en Processing.

Controle RGB LED met arduino en Processing.

Ik zal vandaag u vertellen hoe u kunt besturen een RGB LED met behulp van de Arduino en Processing language. Dit is mijn eerste instructable dus, laat me weten als ik kon iets verbeteren en als je allerlei vragen hebt laat ze in het commentaarvak, ik
Controle een RGB Led met Arduino en Processing

Controle een RGB Led met Arduino en Processing

dit instructable (mijn eerste niet minder) laat zien hoe om te controleren van een RGB led met behulp van processing en arduino.De spil wordt dat de kleur door te klikken op een afbeelding is geselecteerd, wordt de RGB-waarde van de pixel waarop die
Hoe u kunt besturen een RGB LED met een Arduino

Hoe u kunt besturen een RGB LED met een Arduino

In dit Instructable, zal ik tonen u hoe u kunt besturen een RGB LED met een Arduino.Ter voltooiing van dit project, hebt u het volgende nodig:1 x Arduino (ik ben met behulp van de Arduino Uno R3)1 x RGB LED3 x 150-220 ohm weerstanden4 x Jumper draden
RGB LED met LinkIt ONE

RGB LED met LinkIt ONE

We zullen leren hoe om te controleren de kleuren van een RGB LED met behulp van sommige potentiometers en output van de LinkIt één ontwikkeling boord. Om dit te doen, gebruiken we drie aparte potentiometers voor de uitvoer van elke kleur in de LED, e
RGB LED met Arduino

RGB LED met Arduino

Hallo kerels dit is mijn eerste instructable en ik zal u tonen hoe om te controleren van RGB (rood-groen en blauw) LED's. zijn niet zo moeilijk om te doen maar de materialen die u zult zijn;-Een Arduino Board-RGB LED-jumper draden-breadboard(optional
Controle een RGB LED met uw iDevice!

Controle een RGB LED met uw iDevice!

In deze tutorial leert u hoe u kunt besturen en RGB LED met je iDevice (Ipod, Iphone, Ipad) met behulp van "TouchOSC" en verwerking samen met de oscp5-bibliotheek.U moet:-Een RGB LED, gemeenschappelijke kathode (negatieve)-Een Arduino of Arduino
Android Controlled RGB LED met behulp van Arduino

Android Controlled RGB LED met behulp van Arduino

Hai iedereen in de post-iam gaan laten zien hoe om te controleren de RGB LED met behulp van android met arduino en HC-05 Bluetooth-module.Ik zocht in web is er veel technieken waarmee de RGB LED. Maar dit is de methode die zeer eenvoudig en gemakkeli
Beheersing van een RGB LED met de HC-06 Bluetooth-Module met behulp van Android OS(Arduino)

Beheersing van een RGB LED met de HC-06 Bluetooth-Module met behulp van Android OS(Arduino)

Dit leerprogramma zal verklaren het proces van een Bluetooth-Module van de HC-06 verbinden met een Arduino en beheersen van de kleur van een RGB LED met behulp van de ArduDroid-app op het Android besturingssysteem. Deze instelling zal zeer waarschijn
Scanner Rgb Led Lamp Pwm gecontroleerd door Arduino Nano

Scanner Rgb Led Lamp Pwm gecontroleerd door Arduino Nano

Gerecycled scanner rgb led lamp pwm gecontroleerd door Arduino NanoStap 1: EindresultaatDit is wat je krijgt als je dit volgen instructable.Stap 2: Een printer zoekenZoekt u een gebroken hp all-in-one printer. (Andere merken kunnen ook de onderdelen,
Kleur kalibreren RGB LEDs met een Arduino

Kleur kalibreren RGB LEDs met een Arduino

De meeste mensen denken LEDs en Arduino van betrekkingen eindigen met het knipperen schets. Daarna moet u gaan naar motoren, intelligente huizen en andere 'serieuze' dingen. Nou, misschien ik ben langzaam of misschien is het gewoon dat ik een grafisc
DIY Matrix van 8 x 8 RGB LED met Controller

DIY Matrix van 8 x 8 RGB LED met Controller

Na het maken van de 8 x 8 LED Matrix en de Controller als onderdeel van mijn DIY Arduino Word Clock, had ik een weergave te maken van een RGB-versie van de LED-Matrix.In tegenstelling tot een monochroom LED Matrix, een RGB LED Matrix gebruikt gemeens
Tiny kleurenmixer - een constante-current, 3W RGB LED met lage-batterij-indicator en polymorf diffuser

Tiny kleurenmixer - een constante-current, 3W RGB LED met lage-batterij-indicator en polymorf diffuser

Beheersing van een RGB-LED is een eenvoudige en gemeenschappelijke microcontroller project, vaak de volgende gedaan na knipperen en vervagen van een LED.Zodat deze interessanter, bouwde ik met behulp van een ATtiny13, één van de kleinste en eenvoudig
Ambilight voor niet-adresseerbare RGB leds [met behulp van Arduino]

Ambilight voor niet-adresseerbare RGB leds [met behulp van Arduino]

Allereerst... Als u niet welke Ambilgiht weet is Check Ambilgiht Phillipscheck out mijn andere tutorial als u niet over een arduino TUT beschiktAangezien het de zelfde rgb led en dezelfde 3 transistors die ik eerder gebruikt waarom zetten arduino te
Controle RGB LED met behulp van de Amarino Nano 1.0

Controle RGB LED met behulp van de Amarino Nano 1.0

Wat is de Amarino Nano 1.0Dit is mijn nieuwe DIY kit voor Android-Arduino communicatie via Bluetooth.Amarino Nano gebruikt met name Arduino Nano, dus gebruikte ik de titel als 'Nano'. Het is een zeer eenvoudige kit voor het testen van de meeste van d