Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Atiriya Iyer
- * Shift Register
- */
- const int SER= 8; //sends data
- const int LATCH=9; //activates register
- int CLK= 10; //clock
- unsigned int lights [8]= {1,2,4,8,16,32,64,128};
- int delaytime= 500;
- //, 64, 32,16,8,4,2};
- //,256,512, 1024, 2048, 4096,8192,16384, 32768, 16384,8192, 4096,2048, 1024, 512, 256, 128,
- int bar[15] = {0,1,3,7,15,31,63,127,255};
- void setup()
- {
- // put your setup code here, to run once:
- pinMode (SER, OUTPUT);
- pinMode (LATCH, OUTPUT);
- pinMode (CLK, OUTPUT);
- digitalWrite (LATCH, LOW);
- shiftOut (SER, CLK, MSBFIRST, 0);
- digitalWrite (LATCH, HIGH);
- }
- void loop()
- {
- for (int i=0; i< 8; i++)
- {
- digitalWrite (LATCH, LOW);
- shiftOut (SER, CLK, MSBFIRST, 0);
- shiftOut (SER, CLK, MSBFIRST, lights[i]);
- digitalWrite (LATCH, HIGH);
- delay(delaytime);
- }
- for (int i=0; i< 8; i++)
- {
- digitalWrite (LATCH, LOW);
- shiftOut (SER, CLK, MSBFIRST, lights[i]);
- shiftOut (SER, CLK, MSBFIRST, 0);
- digitalWrite (LATCH, HIGH);
- delay(delaytime);
- }
- for (int i=6; i>=0; i--)
- {
- digitalWrite (LATCH, LOW);
- shiftOut (SER, CLK, MSBFIRST, lights[i]);
- shiftOut (SER, CLK, MSBFIRST, 0);
- digitalWrite (LATCH, HIGH);
- delay(delaytime);
- }
- for (int i=7; i>0; i--)
- {
- digitalWrite (LATCH, LOW);
- shiftOut (SER, CLK, MSBFIRST, 0);
- shiftOut (SER, CLK, MSBFIRST, lights[i]);
- digitalWrite (LATCH, HIGH);
- delay(delaytime);
- }
- for (int j=0; j< 9; j++)
- {
- digitalWrite (LATCH, LOW);
- shiftOut (SER, CLK, MSBFIRST, 0);
- shiftOut (SER, CLK, MSBFIRST, bar[j]);
- digitalWrite (LATCH, HIGH);
- delay(delaytime);
- }
- for (int j=0; j< 9; j++)
- {
- digitalWrite (LATCH, LOW);
- shiftOut (SER, CLK, MSBFIRST, bar[j]);
- shiftOut (SER, CLK, MSBFIRST, 255);
- digitalWrite (LATCH, HIGH);
- delay(delaytime);
- }
- for (int j=7; j>=0; j--)
- {
- digitalWrite (LATCH, LOW);
- shiftOut (SER, CLK, MSBFIRST, bar[j]);
- shiftOut (SER, CLK, MSBFIRST, 255);
- digitalWrite (LATCH, HIGH);
- delay(delaytime);
- }
- for (int j=8; j>=0; j--)
- {
- digitalWrite (LATCH, LOW);
- shiftOut (SER, CLK, MSBFIRST, 0);
- shiftOut (SER, CLK, MSBFIRST, bar[j]);
- digitalWrite (LATCH, HIGH);
- delay(delaytime);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement