Turn Signal bretels (15 / 15 stap)

Stap 15: Mijn volledige capaciteit Code


/ * ik deed mijn best om te bevestigen de verminking van mijn opmaak dat gebeurde toen ik mijn code in de pagina geplakt. Sommige dingen had zelfs zijn gewist/niet geplakt!

Zou het verstandig om te controleren en ervoor te zorgen dat er iets belangrijks was niet uitgecommentarieerd zodra je het in de Arduino omgeving.

Origineel compileert prima, commentaar als het broken.* /

int sensor1 = A2; genaaide naar mijn... aanwijzer vinger

int sensor2 = A3; //middle int sensor3 = A4; int sensor4 ring = A5; Pinky

#include / / yaaap, wilt worden met inbegrip van deze. Zie hun uberguide voor hoe te installeren in uw bibliotheek van de arduino.

Het is een relatief eenvoudig ~ 3 stapproces, de moeite waard. De bestanden en instructies zijn op de volgende website:

https://Learn.adafruit.com/adafruit-neopixel-uber...

Dan klik op de banner van bestand "Schets" en selecteer bestand toevoegen in het menu om te navigeren naar waar de .h bestand wordt opgeslagen als u wilt een tabblad toevoegen aan dit project

statische int PIN = 10; Als u dit bent vergeten waar het PIN zegt daar beneden gaat de compiler te gek te krijgen.

Het nummer is de naam van de pin op uw lilypad dat de gegevens worden verzonden uit.

het volgende is rechtstreeks uit het voorbeeldbestand voor de "strandtest"

Parameter 1 = aantal pixels in strip

Parameter 2 = pin-nummer (de meeste zijn geldig)

Parameter 3 = pixel type vlaggen, wens samen toevoegen: (links uit de extra info, betekent weinig voor mij) Adafruit_NeoPixel strip = Adafruit_NeoPixel (15, PIN, NEO_GRB + NEO_KHZ800);

Ik heb 15 pixels, dus dat nummer

/******************************************************************** *********************************************************************

* meer instellen *

* *

********************************************************************/

VOID Setup {}

voor verlichting:

strip.begin();

strip.show();

"Initialiseren van alle pixels op 'off'"

Initialiseer seriële communicatie met 9600 bits per seconde:

pinMode (sensor1, INPUT); wordt de aanwijzer brei potentiometer pin ingesteld op INPUT

digitalWrite (sensor1, hoge); //initializes de sensor

pinMode (sensor2, INPUT); sets middelste brei potentiometer van pin aan INPUT

digitalWrite (sensor2, hoge); initialiseert de sensor

pinMode (sensor3, INPUT); sets ring brei potentiometer van folie pin om INPUT

digitalWrite (sensor3, hoge); initialiseert de sensor

pinMode (sensor4, INPUT); pinky brei potentiometer van pin ingesteld op INPUT

digitalWrite (sensor4, hoge); initialiseert de sensor

Serial.begin(9600); }

/******************************************************************** *********************************************************************

* *

* belangrijkste functie *

* *

********************************************************************* ********************************************************************/

void loop {}

int midden = 8; middelste licht

int rechts = 15; rechterkant licht (hoogste LED adres)

int links = 1; linkereinde licht (laagste LED adres)

Lees de input op analoge pin:

3.3 V = 1024

0 V is 0

"SV" kort voor 'sensor waarde'

int SV1 = analogRead(sensor1); 300-400 lo 890-950 hi

int SV2 = analogRead(sensor2); 650-700 lo 900-1015 Hallo

int SV3 = analogRead(sensor3); min max 650-700 avg avg 1000

int SV4 = analogRead(sensor4); min 530 max 1024 - avg Hallo 950 avg lo 650ish

Als overvloeien kleuren waren de wens, kon 0-250 toewijzen aan de 300-950 als de waarde van één RGB per vinger zou cool pinky worden enkele willekeurige weird mengen RGB vergelijkingen met behulp van de toegewezen waarde. eh.

/ * //uncomment deze sectie om gebruik van de seriële afdrukfunctie en krijg je eigen vinger pads bereiken.

de waarde die u leest uitprinten:

Serial.Print ("waarde 1 =");

Serial.Print(sensorValue1);

Serial.Print ("waarde 2 =");

Serial.Print(sensorValue2);

Serial.Print ("waarde 3 =");

Serial.Print(sensorValue3);

Serial.Print ("waarde 4 =");

Serial.println(sensorValue4);

*/

/********************************************************************

* Als/dan reactie *

********************************************************************/

max antwoord reeks op 950, ik denk dat dit moet houden ze van alle reagerende TRUE.

voor nu, zal ik moeten hoog/laag bepalen... schieten, aantal herhalingen geluiden goed. Kleur ook?

uint16_t herhaalt = 2; geïnitialiseerd op twee >> gooi nummer in functieaanroep!

AANWIJZER vinger---> rechts afslaan

300-400 lo 890-950 hi

Als ((SV1 < = 950) & & (SV1 > = 650))

koos van 650 sinds haar over het midden van mijn "lage high end" en hogere "laag" lezingen.

{

Right_then (strip. Color(250,140,0),4,Middle,right); kunt wijzigen kleur hier RGB

}

Als ((SV1 < = 649) & & (SV1 > = 0))

{Right_then (strip. Color(250,0,0),8,Middle,right); }

MIDDELVINGER---> links

650-700 lo 900-1015 Hallo

Als ((SV2 < = 950) & & (SV2 > = 775))

{Left_I_go (strip. Color(250,140,0), 4, midden, links); }

Als ((SV2 < = 774) & & (SV2 > = 0))

{Left_I_go (strip. Color(250,0,0), 8, midden, links); }

RINGVINGER---> schattig knipperen

min max 650-700 avg avg 1000

Als ((SV3 < = 950) & & (SV3 > = 840))

{Notice_me_Cute (strip. Color(0,0,150), 3, links, midden, rechts); blauw}

Als ((SV3 < = 839) & & (SV3 > = 0)) //not een groot verschil lager nauwkeurigheid == == ik ben het bijhouden van de herhalingen korte om beurten kunnen worden gesignaleerd.

{Notice_me_Cute (strip. Color(127,255,0), 5, links, midden, rechts); Lime groen}

PINKY---> meh

min 530 max 1024 - avg Hallo 950 avg lo 650ish 650 + (950-650) / 2 = middelste waarde ik kiezen

Als ((SV4 < = 960) & & (SV4 > = 800))

{dualFade (links, rechts);}

Als ((SV4 < = 799) & & (SV4 > = 0))

{dualFade2 (links, rechts);}

/********************************************************************

* knipperen van de standaard *

********************************************************************

/ kan later, proberen om er "schattig" degene door het hebben van een generieke tegen, zeggend teller ++; elke lus,

en met behulp van een % 8 te lastig over het maken van een andere variabele verandering tussen 1-7

.. .en wisselen tussen + en -? wellicht een derde variabele bestaande de "als %8 == 0" om te gaan met %2 en hebben een geneste als verklaring over +/-

'merken mij'

for (int i = left; ik > = rechts; i ++)

{//strip.setPixelColor(pixel#,(R,G,B) gedefinieerd in functie feed)

strip.setPixelColor(i,255,215,0); "goud" kleur

strip.show();

}

delay(300);

zetten buiten haakjes om te proberen en de lichten schakelen op "all at once" dan verblijf voor een beetje

nu het uitschakelen

for (int i = rechts; ik > = links; ik--)

{/ / strip.setPixelColor(pixel#,R,G,B);

strip.setPixelColor(i,0,0,0);

strip.show();

}

delay(300);

vertraging tussen leest/knippert voor stabiliteit (was 75 voor de seriële afdrukken.)

> <> <> <> <> <

}

/********************************************************************

* EINDE van belangrijkste functie *

********************************************************************

********************************************************************

* *

* DE SENSOR WERKT!!! *

* *

* Ik hou van aanroepen van functies, zijn dus... SCHOON!!! *

* *

* Nodig: blink verliet de helft (1-8 pixels... of is dat 0-7?) *

* knipperen rechterhelft (pixels 8-15... of 7-14)? *

* "Let me" knipperen (rainbow, zeker) *

* voor de lol: regenboog wipe *

*********************************************************************

* zijn mijn leds aangepakt

[1] [2 [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]

of [0] [1] [2 [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]?

Verandert mijn interne for() iteraties *

********************************************************************

* knipperen links *

********************************************************************/

VOID Left_I_go (uint32_t kleur uint16_t herhaalt, int midden, int links)

op basis van colorWipe in strandtest. Hier is hoe de "uint32_t c" heette in 'main()' 50 werd het "wachten"!

/ * colorWipe (strip. Color(255, 0, 0), 50); Rood

colorWipe (strip. Color(0, 255, 0), 50); / / groen

colorWipe (strip. Color(0, 0, 255), 50); / / blauwe * /

strip. Color(_,_,_),repeats,Middle,left)

{//variables

uint8_t wachten = 20;

uint16_t i;

uint16_t z; 'z' ziet er anders uit dan 'ik'

wil het knipperen van een paar keer, dus maken een geneste for-lus

voor (z = 0; z < = herhaalt; z ++)

{voor (ik = midden; ik > = links; ik--)

{

strip.setPixelColor(i,color);

strip.show();

delay(wait); }

een ander vertraging hen om op te houden voor een beetje

delay(100);

nu het uitschakelen

> <> <

voor (ik = midden; ik > = links; ik--)

{/ / strip.setPixelColor(pixel#,R,G,B);

strip.setPixelColor(i,0,0,0);

strip.show();

}

delay(100);

> <> <

}

}

/********************************************************************

* knipperen rechts *

********************************************************************/

VOID Right_then (uint32_t kleur uint16_t herhaalt, int midden, int recht

) {/ / / strip. Color(_,_,_),repeats,Middle,right)

variabelen

uint8_t wachten = 20; Maak korte

uint16_t i;

uint16_t z;

wil het knipperen van een paar keer, dus maken een geneste for-lus

voor (z = 0; z < = herhaalt; z ++)

{voor (ik = midden; ik < = rechts; i ++)

{

strip.setPixelColor(i,color);

strip.show();

delay(wait);

}

een ander vertraging hen om op te houden voor een beetje

delay(100);

nu het uitschakelen

> <> <

voor (ik = midden; ik < = rechts; i ++) //note hoe ik bladerde > op < en--++

{

strip.setPixelColor(i,0,0,0);

strip.show();

}

delay(100); }

}

/********************************************************************

* leuke stoten knipperen *

********************************************************************/

HM. er een manier om, Umm is... misschien word. instellen als de standaardbrowser knipperen deel van de void loop, zoals zet voordat elke sensor controleert, moet het snel genoeg, recht? een vertraging kan toevoegen. Ja! Ik zal gewoon maken dit een leuke decoratieve versie, bounching van de twee lichten off van elkaar in het midden en uit de uiteinden...

VOID Notice_me_Cute (uint32_t kleur uint16_t herhaalt, int verliet, int midden, int recht)

{/ / strip. Color(_,_,_),repeats,left,Middle,right)

strip.setPixelColor(pixel#,R,G,B);

variabelen

uint8_t wachten = 50; een beetje trager dan 20 voor het draaien

uint16_t i;

uint16_t z;

voor (z = 0; z < = herhaalt; z ++)

{

in- en uitschakelen midden licht instellen

strip.setPixelColor(middle,color);

strip.show();

delay(wait);

strip.setPixelColor(middle,0,0,0);

strip.show();

nu voor de splitsing

voor (ik = 1; ik

{

strip.setPixelColor(middle-i,color); gaat links van centrum

strip.setPixelColor(middle+i,color); gaat vanaf centrum

strip.show(); aangetoond dat samen?

delay(wait);

Sinds 'one at a time' nodig uit te schakelen verlichting binnen for-lus

strip.setPixelColor(middle-i,0,0,0);

strip.setPixelColor(middle+i,0,0,0);

strip.show();

}

nu om terug te gaan omhoog naar het midden

controle voor een paar sensor input hier verstandig zou zijn als ik wil het herhalende veel... maar ik dunno als thats mogelijk/hoe te

voor (ik = 1; ik; ik--) //did (midden-1) omdat ik niet wil de randen knippert twee keer, ze zijn hit zodra wanneer al de rest zijn gegaan tweemaal in een cyclus.

{

strip.setPixelColor(middle-i,color); Dit moet recht gaan van links

strip.setPixelColor(middle+i,color); en deze links van rechts

strip.show();

delay(wait);

strip.setPixelColor(middle-i,0,0,0);

strip.setPixelColor(middle+i,0,0,0);

strip.show(); }

}

}

/********************************************************************

* dualFade (meh!) *

4e optie zou cool om te koppelen aan geluid of iets anders in plaats daarvan.

********************************************************************

/ iets te werpen op de pinky, aangezien ik niet de regenboog krijgen werkt in de strandtest te werken.

VOID dualFade (int verliet, int recht)

{

voor (int i = 0; ik < 255; i = i + 1)

{

voor (int k = left; k < = rechts; k ++)

{

int kloof = k 2 %;

Als (verdelen == 0)

strip.setPixelColor (k, ik, 0, 255-i);

anders

strip.setPixelColor (k, 0, i, 255-i);

delay(10);

strip.show(); }

}

}

/********************************************************************

* meh 2 *

********************************************************************

/ void dualFade2 (int-links, int)

{voor (int i = 0; ik < 255; i = i + 1) {}

voor (int k = left; k < = rechts; k ++)

{int kloof = k 2 %;

Als (verdelen == 0)

strip.setPixelColor (k, i, 255-i, 0);

anders

strip.setPixelColor (k, 0, 255-i, i);

delay(10);

strip.show();

}

}

}

Gerelateerde Artikelen

Adrian monnik Disneytopian knipperen Hand der gerechtigheid (Turn Signal handschoen)

Adrian monnik Disneytopian knipperen Hand der gerechtigheid (Turn Signal handschoen)

echt een linkshandige handschoen maar iets weergeven van richting of geven dat backhand nodig voor degenen die uit de lijn komen. Dit is echt een verlichte LED-handschoen wil zichtbaarheid van uw hand als je goede hand beurt signalen geven tijdens he
Verwisselbare Turn Signal licht

Verwisselbare Turn Signal licht

mijn doel was om sommige type van blinker stijl, turn signal lights toevoegen aan mijn fiets. De lichten moesten verwisselbare en samengesteld uit bits & stukken van reserveonderdelen tot rond het huis. Ik hoop dat dit meer als inspiratie dan een sta
Bicycle Safety Lighting and Turn Signals From (Mostly) Recycled Parts

Bicycle Safety Lighting and Turn Signals From (Mostly) Recycled Parts

ReThink, RePurpose, ReUse."Gewoon een waarschuwing voor de gehandicapte geduld: ik uitleggen mijn redenering alot, zodat u kunt uw eigen keuzes maken over dingen makkelijker, die aanzienlijk verlengt dit instructable. Als je niet van lange gedetaille
Turn signal biking jacket

Turn signal biking jacket

deze tutorial zal u tonen hoe te bouwen van een vest met beurt signalen die mensen weten waar u bent geleid laat wanneer u op uw fiets. We gebruiken geleidende draad en sewable elektronica zodat je jas zullen, zachte en wearable en wasbaar, wanneer u
How to Install belastingweerstanden voor LED Turn Signal Lights

How to Install belastingweerstanden voor LED Turn Signal Lights

Waarom zijn installeren belastingweerstanden nodig voor LED Zet signaal lichten? Als u niet met LED richtingaanwijzer bollen belastingweerstanden (ook bekend als equalizers) installeert, zult u de beruchte hyper flash probleem ervaren. Hyper flitser
How To Convert Toyota Camry Turn Signal Lights naar LED DRL

How To Convert Toyota Camry Turn Signal Lights naar LED DRL

Heb je altijd al wilde die heldere LED-dagrijlichten op uw Toyota Camry maar wil niet te kopen van het dure XLE model om die? Welnu, met onze Toyota Camry Switchback LED DRL conversiekit, u kan hebben enkel dat op ieder model van de Toyota Camry. Met
Nette Turn Signal effecten Circuit

Nette Turn Signal effecten Circuit

ooit wilde de effecten van sommige koele turn-signaal, maar dacht dat ze waren alleen voor Caddies en Beemers?ZOEK NIET VERDER!Voor ongeveer $25, kan dit weekend-project veranderen uw marker verlichting in een zoete set van draai-marker-combo lichten
Mazda 3 LED Turn Signal Lights installeren

Mazda 3 LED Turn Signal Lights installeren

Heb een Mazda 3? Omwisselen van de oude lichten van het turn-signaal en vervang ze met een gloednieuw paar van Mazda 3 ledverlichting turn-signaal. Deze set van LED-lampen voor turn-signaal is foutloos en vereist geen eventuele weerstanden. Ze zijn s
Fiets Turn Signal & remlicht Stuur

Fiets Turn Signal & remlicht Stuur

dit project werd geïnspireerd door een zeer koele kickstarter genaamd Helios Bars. In wezen wat dit project doet, komt een arduino, LED's en knoppen in het stuur van uw fiets. De LED's kunnen worden gebruikt als de richtingaanwijzers, remlichten, of
Pontiac Turn Signal Diagnose

Pontiac Turn Signal Diagnose

de linker richtingaanwijzer in mijn 2000 Pontiac was omhoog te handelen.  De monteur vertelde me het was een gemeenschappelijke mislukking en zou kost ongeveer $200 te vervangen.  Zelfs de elektronische flasher zou $40-50 te vervangen.  Dus, ik kon n
Installeer Lexus IS LED Rear Bumper Reflector

Installeer Lexus IS LED Rear Bumper Reflector

Met de nieuwe Lexus IS herontwerp zijn er enkele knappe add-ons die u kunt installeren op uw 2014-up IS dat de auto zeker zou bevorderen. Natuurlijk, deze beroemde Japanse auto is al luxe genoeg, maar sommige nieuwe Lexus IS LED bumper achterretroref
Fiets LED richtingaanwijzers

Fiets LED richtingaanwijzers

ik was opnieuw gepubliceerd op TreeHugger!!! http://www.treehugger.com/slideshows/gadgets/How-Make-LED-turn-signals-your-Bike/Blijkt dat de jongens op CleanTechnica en WonderHowTo geblogd over dit zonder te vertellen me eerst. Niet zeker als ik moet
Keith-Ki-Domo-kun, Instructables' Keith-Kid Domo-kun

Keith-Ki-Domo-kun, Instructables' Keith-Kid Domo-kun

kreeg een beetje monster dat niet zal met zeuren stoppen? Ze maken een pluche Keith-Ki-Domo-kun met knipperende LED ogen en grote mond. Gebaseerd op de Instructables' avatar van Keith-Kid, is deze Domo ook begonnen om de wereld daar te ontdekken. Het
Mazda3 Switchback LED Daytime Running lampen installatie

Mazda3 Switchback LED Daytime Running lampen installatie

Hier hebben we het super betrouwbare Mazda 3 met een aantal gloednieuwe OEM passen Switchback LED Daytime Running Lights Turn Signal Lights te animeren de graaft! Die zou hebben geraden dat installatie is eigenlijk een fluitje van een cent als het ga