1
0
Fork 0

charlieplexing

This commit is contained in:
Eve Entropia 2010-05-18 23:14:15 +02:00
parent 3c2eba78f0
commit d97a5aa793
4 changed files with 72 additions and 0 deletions

View file

@ -0,0 +1,32 @@
const int pins[] = {2, 3, 4};
void setup() {
for(int p=0; p<=2; p++) {
pinMode(pins[p], INPUT);
}
}
const int charlieplexed[6][3] =
{
{ 1,0,-1},
{ 0,1,-1},
{-1,1, 0},
{-1,0, 1},
{1,-1, 0},
{0,-1, 1},
};
void loop() {
for(int i=0; i<=5; i++) {
// set pin tristate
for(int p=0; p<=2; p++) {
if (charlieplexed[i][p] == -1) {
pinMode(pins[p], INPUT);
} else {
pinMode(pins[p], OUTPUT);
digitalWrite(pins[p], charlieplexed[i][p]);
}
}
delay(200);
}
}