Fading RGB toetsenbord licht (7 / 8 stap)

Stap 7: codering!


Codering is een van de leukste onderdelen van dit hele project. Zoals eerder vermeld, werd de Arduino IDE gebruikt voor het coderen, die sterk vereenvoudigd het proces. Als u eenmaal een programmeur instellen en uw software klaar om te gaan hebben, bent u klaar om het te krijgen typen! Of kopiëren en plakken, zoals het geval kan zijn. :)

Dit is lang, maar ik hoop dat het zal ook helpen, en als er niets anders, vonk een interesse in het coderen. Ik aangesloten de Arduino Ino bestand, alsook de PastBin link met regelnummers. Ik zal ook doorlopen over het algemeen wat elke bit van de code doet.

http://pastebin.com/j7zYH6g9

Deze code wordt ervan uitgegaan dat u het schema aangelegd in stap 3.

Eerst lijnen af, 1-11 aantal variabelen die worden gebruikt in het programma instellen. Het is meestal algemene spullen zoals die in-/ uitgangen komen met welke nummers overeen, het tarief waartegen de regenboog moet verdwijnen en de drempel die de licht-sensing moet reageren op. Ik krijg te lijnen 8-11 in een moment.

Lijnen 13-18 gewoon instellen alle de pinnen als uitgang (de lichtsensor pin is standaard input). Regel 17 wijzigt de kleur om volledig af, met behulp van de functie beschreven in de volgende paragraaf.

Regels 49-53, de changeColor() functie, vormen de basis voor dit programma. Kortom, de functie neemt een waarde 0 tot en met 255 voor de individuele lichtwaarde voor elke kleur en schrijft het vervolgens naar de juiste pin, met behulp van het PWM-signaal eerder besproken. Aangezien mijn LED is common-anode (gemeenschappelijk positief), dus een waarde van 0 (uit/grond) betekent echter dat de kleur op volle sterkte zal zijn. Dus, als u wilt maken de gewenste effect waar 255 geeft aan volledige helderheid, de kleuren afgetrokken zijn van 255 omkeren van hen.

Het programma terug te gaan, begint de loop-functie bij lijn 20. Daarna, regel 21-27 controleren om te zien of het donker met behulp van de drempelwaarde is ingesteld in de sectie variabelen. De if/else statement heeft de toegevoegde functionaliteit om te controleren of de donkere variabele al is ingesteld - als het al donker is, dan het programma niet te donker worden opnieuw ingesteld.

Regel 26 behoort tot de meest ingewikkelde en ontzagwekkend deel van dit programma. Ik wilde niet mijn toetsenbord licht om te verblijven op de hele nacht (want ik zelden omhoog om 3 uur op de computer ben), dus heb ik besloten om toe te voegen sommige pizazz met een automatische uitschakelvoorziening. Mij had voor uitproberen van verschillende hoeken benaderen het probleem vooraleer mij men stichten welk gehanteerd. De functies van de verstreken tijd leek niet om het werk te doen, en als de ATTiny niet een real-time klok hoeft, ik kon niet lees net de tijd. Dit systeem werkt door het berekenen van de tijd die nodig is om te doen een regenboog in lijn 8. Gebaseerd op het aantal uren die ik invoer als de tijd die het licht moet blijven, het berekent hoeveel regenbogen na het donker moeten worden voltooid. De als verklaring voordat het belangrijkste ranbow programma (regel 28) controleert of het is donker en ook controleert of het programma is nog steeds meer regenbogen uit te voeren. Lijn 41 verhoogt de teller van elke regenboog. En tot slot in lijn 26 de regenboog cyclus teller worden ingesteld wanneer het licht wordt.

Hieruit blijkt dat de ongelooflijke kracht van code. Door simpelweg het toevoegen van een paar lijnen van tekst naar een ander programma, kunt u geweldige functionaliteit dat zou onmogelijk te maken met hardware toevoegen. Dit is een van de redenen waarom dat ik hou zo veel programmeren. Het maakt me om mijn ideeën in actie in een wereld waar de enige echte ding beperken mij mijn verbeelding.

Om omhoog te verpakken deze lenghty uitleg, lijnen 29-40 doorlopen van alle kleuren van de regenboog. Kortom, de regenboog code werkt door te starten met één kleur (bijvoorbeeld rood) bij volledige helderheid. Dan, de voor lus geleidelijk de rode waarde omlaag en omhoog de groenwaarde, tot groen is bij volledige helderheid. Het proces wordt herhaald totdat blauw verdwijnt en rood eens te meer de overheersende kleur is. Het laatste deel van het programma is de instructie else in lijnen 43-46, die het licht uitgeschakeld als het niet donker of als het is al op meer dan 8 uur (de timeout_hours variabele).

Gerelateerde Artikelen

Fading RGB LED (Arduino)

Fading RGB LED (Arduino)

In dit Instructable I 'm gonna tonen u hoe u een eenvoudige fading RGB Led.Het kan worden gebruikt als een mooie nacht lamp of als sfeerverlichting.Stap 1: onderdelenOm het te maken u hebt nodig:-een Arduino (ik ben met behulp van een Arduino UNO R3,
USB LED toetsenbord licht

USB LED toetsenbord licht

dit is een eenvoudige en handige draagbare gadget kan worden gebruikt als een toetsenbord licht 's nachts voor laptops en kan worden gebruikt als een USB-powered tafelblad lampStap 1: onderdelen 1 LED wit (groter hoe beter)2 USB-apparaat (dode kaartl
USB-toetsenbord licht

USB-toetsenbord licht

ik draaide mijn oude Mighty Bright boek licht in een USB-powered toetsenbord licht!! Het werkt verbazingwekkend voor wanneer u aan het typen bent in het donker. Ik kan zelfs het aan en uit zetten.
Wasknijper batterij aangedreven toetsenbord licht

Wasknijper batterij aangedreven toetsenbord licht

hier is hoe te maken van een eenvoudig toetsenbord-licht dat u kunt illustraties op elke laptop! Geniet van, een gelieve stemming voor mij!Stap 1: De onderdelen Zal u het volgende nodig. 1 x 9v batterij 1 x grote wired LED 1 x 9v batterijpack 1 x was
RGB LED licht Fader

RGB LED licht Fader

ik wilde iets echt cool om te zetten op mijn bureau op het werk.  Ik heb verschillende LED projecten uit op het web, maar ik wilde iets klein en compact dat ik met de USB-poort op mijn computer macht kon.Ik wilde ook niet gewoon een kale LED lamp pro
RGB-lepel licht

RGB-lepel licht

wat is een lepel lamp? Dit is een lepel lamp. Alleen omdat ik niet wat anders weet te noemen.  Het is gemaakt van de resten van de onthoofde lepels en een plastic fles voor water met een licht binnen. Echt eenvoudig om te maken, te zoeken, echt leuk
RGB-plank licht met LinkIt ONE

RGB-plank licht met LinkIt ONE

Indirecte verlichting kan echt toe te voegen aan de sfeer van een kamer. Helaas, soms kan het belachelijk duur gewoon om een monsterhoeveelheid van iets geïnstalleerd voordat je het weet als het zelfs goed zou kijken. Vandaag gaan we door middel van
Sugru LED toetsenbord licht

Sugru LED toetsenbord licht

voor degenen onder u die geen fancy laptops met verlichte toetsenborden hier is een eenvoudige truc, waardoor uw toetsenbord zal oplichten. Op sommige oude laptops die er vroeger ledje een klein dat was er voor de verlichting van het toetsenbord. Wij
RGB-LED licht sabel

RGB-LED licht sabel

Tijdens de recente levendige muziek en licht festival in Sydney waren er kraampjes waar licht sabels van speelgoed en andere accessoires met kleurrijke lichten. Uiteraard is deze speelgoed trok veel kinderen (en volwassenen) te kopen en te spelen met
9V leidde toetsenbord licht

9V leidde toetsenbord licht

Dit is een licht van de led toetsenbord werkt op een 9v batterijStap 1: Instrumenten en materialenDingen die je zal nodig zijn: Led kit voor rc voertuigenOude webcamducttapelaptop/computer te monteren op9V batterij powerledsStap 2: Atttach frontale l
RGB LED licht Pen

RGB LED licht Pen

heb je waarschijnlijk gezien de talrijke Instructables op hoe maak je een lichte Pen, die wordt gebruikt om lichte tekeningen te maken.De techinque van Licht tekening is een camera op een statief te plaatsen, de flitser uitschakelen en de belichtings
RGB LED licht Pole

RGB LED licht Pole

{"context":{"location":{},"login-upgrade-img":{},"footer-robot":{},"spinner":{"jQuery110208563661151638446":925},"jQuery110208563661151638446":1},"selector":"#editor-Obje
Laptop toetsenbord licht

Laptop toetsenbord licht

hulpvaardig laptop licht voor het toetsenbordMaterialen:oude cassettelijmpistoolzagGumLED lantaarnUSB-kabeltapeontspringen aan een penweerstand van 220 ohmStap 1: Krijgen van een oude cassette en demonteren. We moeten slechts een deel.Stap 2: Knip ie
LED toetsenbord licht

LED toetsenbord licht

Dilemma: Ik ben niet een klassiek geschoolde toetsenist, ik ben meer van een jacht-n-peck-typer. Ik heb een van deze onder-de-desktop toetsenbord laden plaatst, maar ik kan niet lezen de letters op het toetsenbord, tenzij ik op elk licht in de kamer