int i; int j; int k; int ledStatus[10]; const int numCols=3; const int numRows=4; const int debounceDelay=20; const int led[]={10,11,12,13,14,15,16,17,18,19}; const int col[]={6,7,8}; const int row[]={2,3,4,5}; const int keyMap[numRows][numCols]= { {1,2,3}, {4,5,6}, {7,8,9}, {10,0,11}}; void setup() { for(i=0;i=0 &&key<=9) { ledStatus[key]=!ledStatus[key]; digitalWrite(led[key],ledStatus[key]); } } int getKey() { int i; int j; int key=-1; for(i=0;i<numCols;i++) { digitalWrite(col[i],LOW); for(j=0;j<numRows;j++) { if( digitalRead(row[j])==LOW) {delay(debounceDelay); while( digitalRead(row[j])==LOW) ; key=keyMap[j][i]; } } digitalWrite(col[i],HIGH); } return(key); }
int i; int j; int k; int ledStatus[10]; const int numCols=3; const int numRows=4; const int debounceDelay=20; const int led[]={10,11,12,13,14,15,16,17,18,19}; const int col[]={6,7,8}; const int row[]={2,3,4,5}; const int keyMap[numRows][numCols]= { {1,2,3}, {4,5,6}, {7,8,9}, {10,0,11}}; void setup() { for(i=0;i=0 &&key<=9) { ledStatus[key]=!ledStatus[key]; digitalWrite(led[key],ledStatus[key]); } } int getKey() { int i; int j; int key=-1; for(i=0;i<numCols;i++) { digitalWrite(col[i],LOW); for(j=0;j<numRows;j++) { if( digitalRead(row[j])==LOW) {delay(debounceDelay); while( digitalRead(row[j])==LOW) ; key=keyMap[j][i]; } } digitalWrite(col[i],HIGH); } return(key); }
2 個意見:
int i;
int j;
int k;
int ledStatus[10];
const int numCols=3;
const int numRows=4;
const int debounceDelay=20;
const int led[]={10,11,12,13,14,15,16,17,18,19};
const int col[]={6,7,8};
const int row[]={2,3,4,5};
const int keyMap[numRows][numCols]=
{ {1,2,3},
{4,5,6},
{7,8,9},
{10,0,11}};
void setup()
{
for(i=0;i=0 &&key<=9)
{
ledStatus[key]=!ledStatus[key];
digitalWrite(led[key],ledStatus[key]);
}
}
int getKey()
{
int i;
int j;
int key=-1;
for(i=0;i<numCols;i++)
{
digitalWrite(col[i],LOW);
for(j=0;j<numRows;j++)
{
if( digitalRead(row[j])==LOW)
{delay(debounceDelay);
while( digitalRead(row[j])==LOW)
;
key=keyMap[j][i];
}
}
digitalWrite(col[i],HIGH);
}
return(key);
}
int i;
int j;
int k;
int ledStatus[10];
const int numCols=3;
const int numRows=4;
const int debounceDelay=20;
const int led[]={10,11,12,13,14,15,16,17,18,19};
const int col[]={6,7,8};
const int row[]={2,3,4,5};
const int keyMap[numRows][numCols]=
{ {1,2,3},
{4,5,6},
{7,8,9},
{10,0,11}};
void setup()
{
for(i=0;i=0 &&key<=9)
{
ledStatus[key]=!ledStatus[key];
digitalWrite(led[key],ledStatus[key]);
}
}
int getKey()
{
int i;
int j;
int key=-1;
for(i=0;i<numCols;i++)
{
digitalWrite(col[i],LOW);
for(j=0;j<numRows;j++)
{
if( digitalRead(row[j])==LOW)
{delay(debounceDelay);
while( digitalRead(row[j])==LOW)
;
key=keyMap[j][i];
}
}
digitalWrite(col[i],HIGH);
}
return(key);
}
張貼留言
訂閱 張貼留言 [Atom]
<< 首頁