#include <Keypad.h>
#include <Adafruit_NeoPixel.h>
int led=12,buz=11,pin=10;
int lednumber = 40;
Adafruit_NeoPixel ring = Adafruit_NeoPixel(lednumber,pin);
const uint8_t rows=4;
const uint8_t cols=4;
char keys[rows][cols]={
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
uint8_t col[cols]={5,4,3,2};
uint8_t row[rows]={9,8,7,6};
Keypad keypad= Keypad(makeKeymap(keys),row,col,rows,cols);
// put your setup code here, to run once:
void setup() {
Serial.begin(9600);
pinMode(led, OUTPUT);
pinMode(buz, OUTPUT);
ring.begin();
}
void loop() {
// put your main code here, to run repeatedly:
char key=keypad.getKey();
if(key!=NO_KEY){
Serial.println(key);
}
if(key=='1'){
digitalWrite(led, HIGH);
delay(100);
}
else{
digitalWrite(led, LOW);
delay(100);
}
if(key=='2'){
tone(buz, 1000); // Send 1KHz sound signal...
delay(200); // ...for 1 sec
noTone(buz); // Stop sound...
delay(1000);
}
if(key=='3'){
for (int i=0; i < lednumber; i++){
int remainder = i%3;
if (remainder == 1){
ring.setPixelColor(i, ring.Color(116, 183, 237));
ring.show();
delay(100);
}
else if (remainder == 2){
ring.setPixelColor(i, ring.Color(252, 68, 176));
ring.show();
delay(100);
}
else{
ring.setPixelColor(i, ring.Color(189, 116, 237));
ring.show();
delay(100);
}
}
}
}