KBD: Correct key pressed/lifted check

This commit is contained in:
Federico Amedeo Izzo 2020-12-14 16:29:43 +01:00 committed by Federico Amedeo Izzo
parent ee6f87c735
commit 749f5a1444
1 changed files with 2 additions and 2 deletions

View File

@ -149,13 +149,13 @@ static void kbd_task(void *arg)
for(uint8_t k=0; k < kbd_num_keys; k++) for(uint8_t k=0; k < kbd_num_keys; k++)
{ {
// Key has been pressed // Key has been pressed
if(!(prev_keys & k) && (keys & k)) if(!(prev_keys & (1 << k)) && (keys & (1 << k)))
{ {
// Save timestamp // Save timestamp
key_ts[k] = now; key_ts[k] = now;
} }
// Key has been released // Key has been released
else if((prev_keys & k) && !(keys & k)) else if((prev_keys & (1 << k)) && !(keys & (1 << k)))
{ {
send_event = true; send_event = true;
// Check timestamp // Check timestamp