//ライブラリをインクルード
#include <Adafruit_NeoPixel.h>
#ifdef __AVR__
#include <avr/power.h>
#endif
#define PIN 6 //Arduinoで使うピン
#define NUMPIXELS 1 //LEDの数。
int cnt = 0;
uint8_t LedNum1_Inc = 0;
uint8_t ChangeType = 0;
uint32_t ChangeTime;
//ライブラリのセットアップ
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
void setup() {
pixels.begin(); // ライブラリ使用開始
pixels.setBrightness(255);
ChangeTime = millis();
}
//ただ白っぽく光らせるだけ
void loop() {
int val=0;
if(millis() - ChangeTime > 10){ //15 second Type Change
cnt++;
if(cnt == 255 * 6)cnt = 0;
ChangeType = (int)(cnt / 255);
val = cnt % 255;
ChangeTime = millis();
switch(ChangeType){
case 0:
pixels.setPixelColor(LedNum1_Inc, pixels.Color(255, val, 0));
pixels.show(); // This sends the updated pixel color to the hardware.
break;
case 1:
pixels.setPixelColor(LedNum1_Inc, pixels.Color(255-val, 255, 0));
pixels.show();
break;
case 2:
pixels.setPixelColor(LedNum1_Inc, pixels.Color(0, 255, val));
pixels.show();
break;
case 3:
pixels.setPixelColor(LedNum1_Inc, pixels.Color(0, 255-val, 255));
pixels.show();
break;
case 4:
pixels.setPixelColor(LedNum1_Inc, pixels.Color(val, 0, 255));
pixels.show();
break;
case 5:
pixels.setPixelColor(LedNum1_Inc, pixels.Color(255, 0, 255-val));
pixels.show();
break;
}
}
}
0 件のコメント:
コメントを投稿