#include<Adafruit_NeoPixel.h>#ifdef__AVR__#include<avr/power.h>// Required for 16 MHz Adafruit Trinket#endif// Which pin on the Arduino is connected to the NeoPixels?#definePIN3 // On Trinket or Gemma, suggest changing this to 1// How many NeoPixels are attached to the Arduino?#defineNUMPIXELS12 // Popular NeoPixel ring size// When setting up the NeoPixel library, we tell it how many pixels,// and which pin to use to send signals. Note that for older NeoPixel// strips you might need to change the third parameter -- see the// strandtest example for more information on possible values.Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);#defineDELAYVAL500 // Time (in milliseconds) to pause between pixelsvoidsetup() {// These lines are specifically to support the Adafruit Trinket 5V 16 MHz.// Any other board, you can remove this part (but no harm leaving it):#ifdefined(__AVR_ATtiny85__) && (F_CPU==16000000)clock_prescale_set(clock_div_1);#endif// END of Trinket-specific code. pixels.begin(); // INITIALIZE NeoPixel strip object (REQUIRED)}voidloop() {pixels.clear(); // Set all pixel colors to 'off'// The first NeoPixel in a strand is #0, second is 1, all the way up// to the count of pixels minus one.for(int i=0; i<NUMPIXELS; i++) { // For each pixel...// pixels.Color() takes RGB values, from 0,0,0 up to 255,255,255// Here we're using a moderately bright green color:pixels.setPixelColor(i,pixels.Color(0,150,0));pixels.show(); // Send the updated pixel colors to the hardware.delay(DELAYVAL); // Pause before next pass through loop }}