//#include <FastLED_NeoPixel.h>
//#define NUM_LEDS 60
//#define DATA_PIN 1
//#define BRIGHTNESS 255
//#define BLINK_TIME 1000
//*************************************//
int count=0;
int but1=2;
int but2=3;
int but3=4;
int but4=5;
int but5=6;
int but6=7;
int but7=8;
int but8=9;
int but9=11;
int butmode=10;
int mode=1;
int dly=30;
int chng=0;
int led=13;
//*******************************************************
//FastLED_NeoPixel<NUM_LEDS, DATA_PIN, NEO_GRB> strip; // <- FastLED NeoPixel version
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
pinMode(but1, INPUT_PULLUP);
pinMode(but2, INPUT_PULLUP);
pinMode(but3, INPUT_PULLUP);
pinMode(but4, INPUT_PULLUP);
pinMode(but5, INPUT_PULLUP);
pinMode(but6, INPUT_PULLUP);
pinMode(but7, INPUT_PULLUP);
pinMode(but8, INPUT_PULLUP);
pinMode(but9, INPUT_PULLUP);
pinMode(butmode, INPUT_PULLUP);
// strip.begin(); // initialize strip (required!)
//strip.setBrightness(BRIGHTNESS);
Serial.begin(115200);
}
// the loop function runs over and over again forever
void loop() {
// strip.setPixelColor(0, strip.Color(0, 255, 255)); // set pixel 0 to blue
//strip.show();
//*********long press delay
butmode= digitalRead(10);
delay(dly);
if(butmode==0){
digitalWrite(led,HIGH);
}
else{
digitalWrite(led,LOW);
}
if(butmode==0){
mode++;
chng==0;
//Serial.println(mode);
}
//******************************************************************
if(mode>3){
mode=1;
}
Serial.println(mode);
//********************************************************************
butmode= digitalRead(11);
delay(dly);
if(butmode==0){
digitalWrite(led,HIGH);
}
else{
digitalWrite(led,LOW);
}
if(butmode==0){
mode--;
chng==0;
//Serial.println(mode);
}
//******************************************************************
if(mode<1){
mode=1;
}
Serial.println(mode);
//------------------------------------------------------------------
// need to do this once per change
//*******************************************************************
//*******************************************************************
// digitale read sections ********************************************
but1= digitalRead(2),but2= digitalRead(3),but3=digitalRead(4);
delay(dly);
but4= digitalRead(5),but5= digitalRead(6),but6=digitalRead(7);
delay(dly);
but7= digitalRead(8),but8= digitalRead(9);
delay(dly);
//---------------------------------------------------------------------
// key 1 states with led flash*********************
if(but1==0 && mode==1){
Serial.println("zoom");
}
if(but1==0 && mode==2){
Serial.println("vol up");
}
if(but1==0 && mode==3){
Serial.println("tab");
}
if(but1==0){
digitalWrite(led,HIGH);
}
else{
digitalWrite(led,LOW);
}
//key 2 states**************************
if(but2==0 && mode==1){
Serial.println("z out");
}
if(but2==0 && mode==2){
Serial.println("vol down");
}
if(but2==0 && mode==3){
Serial.println("enter");
}
if(but2==0){
digitalWrite(led,HIGH);
}
else{
digitalWrite(led,LOW);
}
//key 3 states**************************
if(but3==0 && mode==1){
Serial.println("centre map");
}
if(but3==0 && mode==2){
Serial.println("mute");
}
if(but3==0 && mode==3){
Serial.println("esc");
}
if(but3==0){
digitalWrite(led,HIGH);
}
else{
digitalWrite(led,LOW);
}
//key 4 states**************************
if(but4==0 && mode==1){
Serial.println("rotate map");
}
if(but4==0 && mode==2){
Serial.println("next");
}
if(but4==0 && mode==3){
Serial.println("f1");
}
if(but4==0){
digitalWrite(led,HIGH);
}
else{
digitalWrite(led,LOW);
}
//key 5 states**************************
if(but5==0 && mode==1){
Serial.println("left map");
}
if(but5==0 && mode==2){
Serial.println("prev");
}
if(but5==0 && mode==3){
Serial.println("left arrow");
}
if(but5==0){
digitalWrite(led,HIGH);
}
else{
digitalWrite(led,LOW);
}
//key 6 states**************************
if(but6==0 && mode==1){
Serial.println("up map");
}
if(but6==0 && mode==2){
Serial.println("play");
}
if(but6==0 && mode==3){
Serial.println("up arrow");
}
if(but6==0){
digitalWrite(led,HIGH);
}
else{
digitalWrite(led,LOW);
}
//key 7 states**************************
if(but7==0 && mode==1){
Serial.println("right map");
}
if(but7==0 && mode==2){
Serial.println("next");
}
if(but7==0 && mode==3){
Serial.println("right arrow");
}
if(but7==0){
digitalWrite(led,HIGH);
}
else{
digitalWrite(led,LOW);
}
//key 8 states**************************
if(but8==0 && mode==1){
Serial.println("down map");
}
if(but8==0 && mode==2){
Serial.println("pause");
}
if(but8==0 && mode==3){
Serial.println("down arrow");
}
if(but8==0){
digitalWrite(led,HIGH);
}
else{
digitalWrite(led,LOW);
}
}