Stap 7: LED Touch tabel
Definitieve Code:
#include < CapacitiveSensor.h >
#include < Adafruit_Neopixel.h >
#define PIXEL_PIN 6 / / digitale IO-pin verbonden met de NeoPixels.
#define PIXEL_COUNT 28 int showType; Adafruit_NeoPixel strip = Adafruit_NeoPixel (PIXEL_COUNT, PIXEL_PIN, NEO_GRB + NEO_KHZ800); CapacitiveSensor tapper = CapacitiveSensor (2, 4);
void setup {tapper.set_CS_AutocaL_Millis(0xFFFFFFFF); / / uitzetten op autocalibrate op kanaal 1 - net als een voorbeeld Serial.begin(9600); strip.begin(); strip.show(); / / alle pixels te initialiseren ' uitschakelen
}
void loop {lange total1 = tapper.capacitiveSensor(30);
Als (total1 > = 2000) {als (showType > 9) {showType = 0; startShow(showType);} else {startShow(showType); showType ++;}}
Serial.Print("\t"); tabteken foutopsporingsvenster afstand van Serial.print("\t"); Serial.Print(total1); Print sensor output 1 Serial.print("\n");
}
VOID startShow(int i) {}
schakelaar (i) {geval 0: colorWipe (strip. Color(0, 0, 0), 50); Zwart/uit onderbreking;
geval 1: colorWipe (strip. Color(255, 0, 0), 50); Rode breuk;
geval 2: colorWipe (strip. Color(255, 96, 0), 50); Oranje onderbreking;
Case 3: colorWipe (strip. Color(255, 255, 0), 50); geel moet helpen onderbreking;
geval 4: colorWipe (strip. Color(0, 255, 0), 50); groene pauze;
geval 5: colorWipe (strip. Color(0, 0, 255), 50); blauwe onderbreking;
kast 6: colorWipe (strip. Color(38, 222, 220), 50); Teal onderbreking;
geval 7: colorWipe (strip. Color(75, 0, 13), 50); Paarse onderbreking;
geval 8: colorWipe (strip. Color(255, 0, 255), 50); Roze onderbreking;
zaak 9: colorWipe (strip. Color(252, 253, 253), 50); wit
} }
int lichtfiets = 0;
De puntjes een na de andere te vullen met een kleur void colorWipe (uint32_t c, uint8_t wachten) {voor (uint16_t i = 0; ik < strip.numPixels(); i ++) {strip.setPixelColor (i, c); strip.show(); delay(wait);}}
Invoergegevens naar een waarde van 0 tot 255 om een kleurwaarde. De kleuren zijn een overgang r - g - b - terug naar r. uint32_t wiel (byte WheelPos) {WheelPos = 255 - WheelPos; if (WheelPos < 85) {terugkeer strip. Kleur (255 - WheelPos * 3, 0, WheelPos * 3); } else if (WheelPos < 170) {WheelPos-= 85; terugkeer strip. Kleur (0, WheelPos * 3, 255 - WheelPos * 3); } else {WheelPos-= 170; terugkeer strip. Kleur (WheelPos * 3, 255 - WheelPos * 3, 0); } }