LilyPad handled Band POV (7 / 8 steg)
Steg 7: Källa koden del 2
Hela koden
#define NUM_ELEM(x) (sizeof (x) / sizeof (*(x)))
int lilypad [] = {
1,1,1,1,1,1,1,1, //L
1,0,0,0,0,0,0,0,
1,0,0,0,0,0,0,0,
1,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
1,1,1,1,0,1,0,0, //i
0,0,0,0,0,0,0,0,
1,1,1,1,1,1,1,1, //l
0,0,0,0,0,0,0,0,
1,0,0,0,0,1,1,0, //y
0,1,0,0,1,0,0,0,
0,0,1,1,0,0,0,0,
0,0,0,1,1,1,1,0,
0,0,0,0,0,0,0,0,
1,1,1,1,1,1,1,1, //p
0,0,0,0,1,0,0,1,
0,0,0,0,1,0,0,1,
0,0,0,0,0,1,1,1,
0,0,0,0,0,0,0,0,
1,1,1,1,0,0,0,0, //a
1,0,0,1,0,0,0,0,
1,0,0,1,1,0,0,0,
1,1,1,1,1,0,0,0,
0,0,0,0,0,0,0,0,
1,1,1,1,0,0,0,0, //d
1,0,0,1,0,0,0,0,
0,0,0,1,0,0,0,0,
1,1,1,1,1,1,1,1,
0,0,0,0,0,0,0,0}.
int ledPin13 = 13. LED är ansluten till digital stift 13
int ledPin12 = 12; LED är ansluten till digital stift 13
int ledPin11 = 11; LED är ansluten till digital stift 13
int ledPin10 = 10; LED är ansluten till digital stift 13
int ledPin9 = 9; LED är ansluten till digital stift 13
int ledPin8 = 8; LED är ansluten till digital stift 13
int ledPin7 = 7. LED är ansluten till digital stift 13
int ledPin6 = 6; LED är ansluten till digital stift 13
int marken = 5; LED är ansluten till digital 5 "marken"
int ledPinArray [8] = {6,7,8,9,10,11,12,13}.
Metoden setup() körs en gång, när skissen startar
int columnDelay;
int sizeWord = 0;
void setup() {
initiera digital PIN-koden som en utgång:
för (int jag = 0; jag < 8; i ++) {
pinMode(ledPinArray[i],OUTPUT);
}
pinMode (marken, OUTPUT);
digitalWrite (marken, låg);
columnDelay = 2.5. vänta 2.5ms mellan varje kolumn blixt
Serial.BEGIN(9600);
Serial.Print ("antal lilypad:");
Serial.println(NUM_ELEM(Lilypad));
Delay(2000);
sizeWord = NUM_ELEM(lilypad);
}
metoden loop() körs om och om igen,
så länge Arduino har makt
/ * void loop()
{
för (int jag = 0; jag < 8; i ++) {
digitalWrite(ledPinArray[i],HIGH);
}
Delay(1000); vänta en sekund
för (int jag = 0; jag < 8; i ++) {
digitalWrite(ledPinArray[i],LOW);
}
Delay(1000); vänta en sekund
}*/
void loop()
{
Serial.Print ("antal lilypad:");
Serial.println(NUM_ELEM(Lilypad));
Delay(1000);
printWord(lilypad);
Delay(8); vänta lite mellan varje visning av ordet LilyPad
}
void printWord (int wordVar[]) {
int numRows = sizeWord/8.
för (int j = 0; j < numRows; j ++) {
för (int jag = 0; jag < 8; i ++) {
digitalWrite (i + 6, wordVar[i+j*8]);
}
Delay(columnDelay);
}
}