Просмотр исходного кода

Correcting debounce issues.

simple
Jacob Alexander 13 лет назад
Родитель
Сommit
d1f1128f6a
1 измененных файлов: 3 добавлений и 9 удалений
  1. 3
    9
      main.c

+ 3
- 9
main.c Просмотреть файл

@@ -118,10 +118,12 @@


// Drive Macros (Generally don't need to be changed), except for maybe DRIVE_DETECT
// Sleep is for signal debouncing
#define DRIVE_DETECT(reg,pin,group) \
reg &= ~(1 << pin); \
detection(group); \
reg |= (1 << pin);
reg |= (1 << pin); \
_delay_us(1);

#define DD_CASE(number) \
case number:\
@@ -376,14 +378,6 @@ int main( void )
if ( !sendKeypresses )
continue;


// XXX TODO HACK REMOVEME KILL_WITH_FIRE
// Too lazy to find (electrical?) issue, so I'm adding a software fix (case is impossible anyways without moar diodes)
if ( keyDetectArray[20] & (1 << 7) && keyDetectArray[21] & (1 << 7) && keyDetectArray[38] & (1 << 7) ) {
keyDetectArray[20] &= ~(1 << 7);
print("HACK!! - Fixme sometime");
}

// Detect Valid Keypresses - TODO
uint8_t validKeys = 0;