Nov 04
Ich habe heute mal wieder Zeit gefunden ein wenig mit dem Arduino zu spielen. Das Ergebnis ist ein 7-Segment-Anzeige, welche ziemlich einfach zu bedienen ist. Ohne IC benötig man jedoch 9-Ports von dem Arduino, somit bleibt wenig platz für andere Spielereien (Duemianove) …
Ich habe keine Lib oder sonstiges benutzt, einfach drauf los
Code unkommentiert und einfach (Zähler startet “unten rechts”:
void matrix(char matrix[7]) {
int map[10];
map[0] = 5;
map[1] = 8;
map[2] = 9;
map[3] = 2;
map[4] = 7;
map[5] = 6;
map[6] = 3;
map[7] = 4;
int i=0;
for(i=0;i<=7; i++) {
if(matrix[i] == 0x31) {
Serial.println(map[i]);
digitalWrite(map[i],LOW);
}
else digitalWrite(map[i],HIGH);
}
}
void show(int number) {
switch(number) {
case 1:
matrix("1100000");
break;
case 2:
matrix("01101110");
break;
case 3:
matrix("11100110");
break;
case 4:
matrix("11010010");
break;
case 5:
matrix("10110110");
break;
case 6:
matrix("10111110");
break;
case 7:
matrix("1110000");
break;
case 8:
matrix("11111110");
break;
case 9:
matrix("11110110");
break;
}
}
void setup() {
Serial.begin(9600);
// initialize the digital pin as an output:
pinMode(12, OUTPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
}
void loop()
{
int i=1;
digitalWrite(12, HIGH); // set the LED on
for(i=1; i<=9; i++) {
show(i);
delay(1000);
}
}

4. November 2009 um 11:09 pm
Schaut gut aus! Bilder??