esha492

MINI PROJECT TWO FINAL CODE

Oct 27th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.03 KB | None | 0 0
  1. const int SER1 = 3;
  2. const int LATCH1 = 4;
  3. const int CLK1 = 5;
  4. int seq[14] {1,2,4,8,16,32,64,128,64,32,16,8,4,2};
  5. int seq3[5] {17,59,127,59,17};
  6. const int serial=8; //serial output to shift register
  7. const int latch=9; //shift register latch pin
  8. const int clck=10; //shift register clock pin
  9. int sequence[15 ] = {1, 2, 4, 8, 16, 32, 64, 128, 64, 32, 16, 8, 4, 2, 1};
  10. int sequence2 [15] = {1,3,7,15,31,63,127,255,127,63,31,15,7,3,1};
  11. int sequence3 [7]= {129, 66, 36, 24, 36, 66, 129};
  12. int sequence4 [11 ]={17, 34, 68, 136, 80, 64, 80, 136, 68, 34, 17};
  13. int i;
  14. void setup() {
  15. // put your setup code here, to run once:
  16. pinMode(SER1, OUTPUT);
  17. pinMode(LATCH1, OUTPUT);
  18. pinMode (CLK1, OUTPUT);
  19. digitalWrite(LATCH1, LOW);
  20. shiftOut(SER1,CLK1,MSBFIRST, B00000000);
  21. shiftOut(SER1,CLK1,MSBFIRST, B00000000);
  22. shiftOut(SER1,CLK1,MSBFIRST, B00000000);
  23. digitalWrite(LATCH1, HIGH);
  24. pinMode (serial, OUTPUT);
  25. pinMode (latch, OUTPUT);
  26. pinMode (clck,OUTPUT);
  27.  
  28. digitalWrite (latch, LOW); //latch low
  29. shiftOut (serial, clck, MSBFIRST, B00000000); //shift most significant bit first
  30. digitalWrite (latch, HIGH); //latch high-show pattern
  31. }
  32.  
  33. void loop() {
  34. // put your main code here, to run repeatedly:
  35. for (int i=0; i<14 ; i++)
  36. {
  37. digitalWrite(LATCH1,LOW);
  38. shiftOut(SER1,CLK1, MSBFIRST, seq[i]);
  39. shiftOut(SER1,CLK1,MSBFIRST, seq[i]);
  40. shiftOut(SER1,CLK1,MSBFIRST, seq[i]);
  41. digitalWrite(LATCH1,HIGH);
  42. delay(50);
  43. digitalWrite (latch, LOW); //latch low
  44. shiftOut (serial, clck, MSBFIRST, sequence3[i]); //shift most significant bit first
  45. digitalWrite (latch, HIGH); //latch high-show pattern
  46. }
  47. digitalWrite(LATCH1,LOW);
  48. shiftOut(SER1,CLK1, MSBFIRST, seq[1]);
  49. shiftOut(SER1,CLK1,MSBFIRST, seq[0]);
  50. shiftOut(SER1,CLK1,MSBFIRST, seq[0]);
  51. digitalWrite(LATCH1,HIGH);
  52. delay(50);
  53. digitalWrite(LATCH1,LOW);
  54. shiftOut(SER1,CLK1, MSBFIRST, seq[2]);
  55. shiftOut(SER1,CLK1,MSBFIRST, seq[0]);
  56. shiftOut(SER1,CLK1,MSBFIRST, seq[0]);
  57. digitalWrite(LATCH1,HIGH);
  58. delay(50);
  59. digitalWrite(LATCH1,LOW);
  60. shiftOut(SER1,CLK1, MSBFIRST, seq[3]);
  61. shiftOut(SER1,CLK1,MSBFIRST, seq[1]);
  62. shiftOut(SER1,CLK1,MSBFIRST, seq[0]);
  63. digitalWrite(LATCH1,HIGH);
  64. delay(50);
  65. digitalWrite(LATCH1,LOW);
  66. shiftOut(SER1,CLK1, MSBFIRST, seq[4]);
  67. shiftOut(SER1,CLK1,MSBFIRST, seq[2]);
  68. shiftOut(SER1,CLK1,MSBFIRST, seq[0]);
  69. digitalWrite(LATCH1,HIGH);
  70. delay(50);
  71. for (int i=0; i<18 ; i++)
  72. {
  73. digitalWrite(LATCH1,LOW);
  74. if (i <14)
  75. {
  76. shiftOut(SER1,CLK1, MSBFIRST, seq[i+4]);
  77. shiftOut(SER1,CLK1,MSBFIRST, seq[i+2]);
  78. }
  79. shiftOut(SER1,CLK1,MSBFIRST, seq[i]);
  80. digitalWrite(LATCH1,HIGH);
  81. digitalWrite (latch, LOW); //latch low
  82. shiftOut (serial, clck, MSBFIRST, sequence4[i]); //shift most significant bit first
  83. digitalWrite (latch, HIGH); //latch high-show pattern
  84. delay(50);
  85. }
  86. for (int i=0; i<15; i++)
  87. {
  88. digitalWrite (latch, LOW); //latch low
  89. shiftOut (serial, clck, MSBFIRST, sequence[i]); //shift most significant bit first
  90. digitalWrite (latch, HIGH); //latch high-show pattern
  91. digitalWrite (LATCH1, LOW);
  92. shiftOut (serial,CLK1,MSBFIRST, seq3[i]);
  93. digitalWrite(LATCH1,HIGH);
  94. delay (50);
  95. }
  96. /*for (int i=0; i<15; i++)
  97. {
  98. digitalWrite (latch, LOW); //latch low
  99. shiftOut (serial, clck, MSBFIRST, sequence2[i]); //shift most significant bit first
  100. digitalWrite (latch, HIGH); //latch high-show pattern
  101. delay (50);
  102. }*/
  103. /* for (int i=0; i<15; i++)
  104. {
  105. digitalWrite (latch, LOW); //latch low
  106. shiftOut (serial, clck, MSBFIRST, sequence3[i]); //shift most significant bit first
  107. digitalWrite (latch, HIGH); //latch high-show pattern
  108. delay (50);
  109. } */
  110. /* for (int i=0; i<15; i++)
  111. {
  112. digitalWrite (latch, LOW); //latch low
  113. shiftOut (serial, clck, MSBFIRST, sequence4[i]); //shift most significant bit first
  114. digitalWrite (latch, HIGH); //latch high-show pattern
  115. delay (50);
  116. }*/
  117.  
  118. }
Advertisement
Add Comment
Please, Sign In to add comment