#include <U8g2lib.h>
U8G2_SSD1306_128X64_NONAME_F_HW_I2C disp(U8G2_R0,U8X8_PIN_NONE);
#define bt1 A0
#define bt2 A1
#define bt3 A2
#define led 12
float val;
bool
valA1 = 1,
valA2 = 1,
valA3 = 1,
valB1 = 1,
valB2 = 1,
valB3 = 1;
uint8_t
MenuListval = 1,
text1 = 1,
text2 = 2,
text3 = 3,
text4,
text5;
char* MenuList[] = {" ","BASIC FUNCTIONSo0", "CLAW FUNCTIONS", "ADVANCED FUNCTIONS", "HARDWARE TEST", "ACCOUNT DETAILS", "DISPLAY INTERFACE", "SYSTEM DETAILS", "INSTRUCTION MANUAL", "FACTORY RESET", "MINI GAME", "RETURN", " "};
uint8_t MenuListSize = sizeof(MenuList)/2;
void setup() {
Serial.begin(115200);/*
MenuList[1] = "Menu1";
MenuList[2] = "Test2";
MenuList[3] = "OK3";
MenuList[4] = "ABC";
MenuList[5] = "NO1";
MenuList[6] = "List3";
MenuList[7] = "123";
MenuList[8] = "368";
MenuList[9] = "379";
MenuList[10] = "4-8";
*/
Serial.println(MenuListSize);
if(!disp.begin()){for(;;);}
pinMode(bt1 ,INPUT_PULLUP);
pinMode(bt2 ,INPUT_PULLUP);
pinMode(bt3 ,INPUT_PULLUP);
pinMode(led, OUTPUT);
}
void loop() {
disp.clearBuffer();
disp.setFont(u8g2_font_6x12_mf);
valB1 = digitalRead(bt1);
valB2 = digitalRead(bt2);
valB3 = digitalRead(bt3);
if(valA1 == 1 && valB1 == 0){btup();}
if(valA2 == 1 && valB2 == 0){}
if(valA3 == 1 && valB3 == 0){btdown();}
valA1 = valB1;
valA2 = valB2;
valA3 = valB3;
disp.setCursor(10,20);
if((MenuListval - 1) > MenuListSize){disp.print(MenuList[MenuListval + 3]);}
else{disp.print(MenuList[MenuListval - 1]);}
disp.setCursor(4,40);
disp.print('>');
disp.setCursor(10,40);
disp.print(MenuList[MenuListval]);
disp.setCursor(10,60);
if((MenuListval + 1) > MenuListSize){disp.print(MenuList[MenuListval - 3]);}
else{disp.print(MenuList[MenuListval + 1]);}
//disp.setCursor(10,80);
//disp.print(MenuList[text4]);
//disp.setCursor(10,100);
//disp.print(MenuList[text5]);
disp.sendBuffer();
}
void btup(){
if(MenuListval<MenuListSize - 1){
MenuListval++;
if(MenuListval == MenuListSize - 1){MenuListval = 1;}
Serial.println(MenuListval);
}
}
void btdown(){
if(MenuListval>0){
MenuListval--;
if(MenuListval == 0){MenuListval = MenuListSize - 2;}
Serial.println(MenuListval);
}
}