add B button

This commit is contained in:
2020-09-13 15:32:59 +09:00
parent 17ec220b1e
commit 79b9e28ae5

View File

@@ -16,8 +16,17 @@ struct arrow {
int state; int state;
}; };
struct button {
int pinNumber;
bool prev;
bool current;
};
struct arrow arrowTable[4]; struct arrow arrowTable[4];
#define ButtonTableLength 1
struct button buttonTable[ButtonTableLength];
void perms() { void perms() {
if(val == 0){ if(val == 0){
if (table[index] == 1){ if (table[index] == 1){
@@ -47,9 +56,17 @@ void setup()
table[0] = 1; table[0] = 1;
table[tableSize/2] = 2; table[tableSize/2] = 2;
SwitchControlLibrary(); SwitchControlLibrary();
MsTimer2::set(1, perms); MsTimer2::set(1, perms);
MsTimer2::start(); MsTimer2::start();
buttonTable[0].pinNumber = 3;
for (int i; i<ButtonTableLength; i++) {
pinMode(buttonTable[i].pinNumber, INPUT_PULLUP);
buttonTable[i].prev = 1;
buttonTable[i].current = 1;
}
pinMode(2, INPUT_PULLUP); pinMode(2, INPUT_PULLUP);
arrowTable[0].pinNumber = 10; arrowTable[0].pinNumber = 10;
@@ -73,11 +90,26 @@ void loop()
SwitchControlLibrary().PressButtonA(); SwitchControlLibrary().PressButtonA();
index = 1; index = 1;
} }
else if(val == 1){ else if(prevVal == 0 && val == 1){
SwitchControlLibrary().ReleaseButtonA(); SwitchControlLibrary().ReleaseButtonA();
} }
prevVal = val; prevVal = val;
for (int i=0; i<ButtonTableLength; i++){
buttonTable[i].current = digitalRead(buttonTable[i].pinNumber);
if(buttonTable[i].prev == 1 && buttonTable[i].current ==0 ){
SwitchControlLibrary().PressButtonB();
}
else if(buttonTable[i].prev == 0 && buttonTable[i].current ==1 ) {
SwitchControlLibrary().ReleaseButtonB();
}
buttonTable[i].prev = buttonTable[i].current;
}
for (int i=0; i<4; i++){ for (int i=0; i<4; i++){
arrowTable[i].state = digitalRead(arrowTable[i].pinNumber); arrowTable[i].state = digitalRead(arrowTable[i].pinNumber);
} }