Stap 10: Programmeren in kras: wat ik wilde doen met de RGB LED
Programmeren in kras is een mooie ervaring. Het heeft een klik en sleep interface en is vrij intuïtief. Hoewel het vooral opgericht is om de kinderen kennismaken met programmeren die eigenlijk vind ik dat het is een vrij nuttig programmeeromgeving zoals ik denk dat is getoond in de code die de LED in mijn project onder controle.
Dus is hier wat ik wilde gebeuren:
De kleurveranderingen zou worden gedaan in drie fasen:
In de eerste fase beginnen we met rood op maximaal en groen en blauw ingesteld op een zeer klein niveau.
Vervolgens zijn we begonnen om de rode helderheid door -1, terwijl het verhogen van Greense helderheid door 1.
We een lus teller gebruikt om te beperken hoe vaak dit gebeurd.
Zodra de lus teller 255 bereikt begonnen we de tweede fase.
In de tweede fase groen zijn maximaal, rood en blauw ingesteld op een laag niveau.
Wij verlagen groene helderheid door -1 terwijl het verhogen van de helderheid van de blues door 1.
Onze lus teller voor de tweede fase werd ingesteld op 509.
Zodra het bereikt 509 zouden we beginnen met fase 3.
In fase drie, blauwe is op maximale helderheid en groen en rood zijn laag.
We beginnen met de onderste blauwe helderheid door -1 terwijl het verhogen van de rode helderheid door 1.
Zodra de lus teller 763 bereikt, zou de cyclus beginnen in fase 1.
We hebben drie variabelen redVal, greenVal en blueVal te houden van de waarden van elke kleur de helderheidsniveau en deze waarden worden dan verzonden naar de juiste GPIO pinnen aan de macht aan de benen van de LED's om de helderheidswaarde van elke kleur, die in bochten geeft ons de kleurmix die wij willen.
En dat is mijn poging om het kleurenspectrum met een RGB LED en kras doorlopen.
Als u een Arduino hebt en u de schets ik gekoppeld dat mij om te schrijven van de kras-versie inspireerde, dat u ziet er is geen kleur helemaal flikkeren. Ik ben niet helemaal zeker waarom de kras versie zo veel flikkert. Ik vermoed dat de Arduino beter is in het omgaan met PWM, maar als er iets in mijn code die moet verbeterd, ik zou echt dankbaar als je nam de tijd om me te vertellen.
Dank u voor het lezen van mijn instructable en ik hoop dat je een geweldige dag!