Advertisement
Guest User

Untitled

a guest
May 3rd, 2016
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.60 KB | None | 0 0
  1. int column[16]={13,12,11,10,9,8,7,6,5,4,3,2,1,0,A5,A4}; //Column pins
  2. int layer[4]={A3,A2,A1,A0}; //Layer pins
  3.  
  4. void setup() {
  5. for(int I = 0; I < 16; I++)
  6. {
  7. pinMode(column[I], OUTPUT);
  8. }
  9.  
  10. for(int I = 0; I < 4; I++)
  11. {
  12. pinMode(layer[I], OUTPUT);
  13. }
  14.  
  15. randomSeed(analogRead(10));
  16. }
  17.  
  18. void turnOffEverything() {
  19. for(int I = 0; I < 16; I++) {
  20. digitalWrite(column[I],1);
  21. }
  22. for(int I = 0; I < 4; I++) {
  23. digitalWrite(layer[I], 0);
  24. }
  25. }
  26.  
  27. void turnOnEverything() {
  28. for(int I = 0; I < 16; I++) {
  29. digitalWrite(column[I], 0);
  30. }
  31. for(int I = 0; I < 4; I++) {
  32. digitalWrite(layer[I], 1);
  33. }
  34. }
  35.  
  36. void randomLed() {
  37. turnOffEverything();
  38. int x = 10;
  39. for(int I = 0; I != 750; I+=2) {
  40. int randomLayer = random(0,4);
  41. int randomColumn = random(0,16);
  42.  
  43. digitalWrite(layer[randomLayer], 1);
  44. digitalWrite(column[randomColumn], 0);
  45. delay(x);
  46. digitalWrite(layer[randomLayer], 0);
  47. digitalWrite(column[randomColumn], 1);
  48. delay(x);
  49. }
  50. }
  51.  
  52. void swipeOnOff() {
  53. turnOnEverything();
  54. int x = 50;
  55. for(int I = 0; I < 6; I++) {
  56. for(int I = 0; I < 16; I++) {
  57. digitalWrite(column[I], 1);
  58. delay(x);
  59. }
  60.  
  61. for(int I = 0; I < 16; I++) {
  62. digitalWrite(column[I], 0);
  63. delay(x);
  64. }
  65.  
  66. for(int I = 0; I < 16; I++) {
  67. digitalWrite(column[I], 1);
  68. delay(x);
  69. }
  70.  
  71. for(int I = 0; I < 16; I++) {
  72. digitalWrite(column[I], 0);
  73. delay(x);
  74. }
  75. }
  76. }
  77.  
  78. void stairs() {
  79. turnOffEverything();
  80.  
  81. int x = 100;
  82. int dir = 0;
  83.  
  84. while(x < 105) {
  85. digitalWrite(layer[0], 1);
  86. digitalWrite(column[0], 0);
  87. digitalWrite(column[4], 0);
  88. digitalWrite(column[8], 0);
  89. digitalWrite(column[12], 0);
  90. delay(x);
  91. digitalWrite(layer[1], 1);
  92. digitalWrite(column[1], 0);
  93. digitalWrite(column[5], 0);
  94. digitalWrite(column[9], 0);
  95. digitalWrite(column[13], 0);
  96. delay(x);
  97. digitalWrite(layer[2], 1);
  98. digitalWrite(column[2], 0);
  99. digitalWrite(column[6], 0);
  100. digitalWrite(column[10], 0);
  101. digitalWrite(column[14], 0);
  102. delay(x);
  103. digitalWrite(layer[3], 1);
  104. digitalWrite(column[3], 0);
  105. digitalWrite(column[7], 0);
  106. digitalWrite(column[11], 0);
  107. digitalWrite(column[15], 0);
  108. delay(x);
  109.  
  110. digitalWrite(layer[0], 0);
  111. digitalWrite(column[0], 1);
  112. digitalWrite(column[4], 1);
  113. digitalWrite(column[8], 1);
  114. digitalWrite(column[12], 1);
  115. delay(x);
  116. digitalWrite(layer[1], 0);
  117. digitalWrite(column[1], 1);
  118. digitalWrite(column[5], 1);
  119. digitalWrite(column[9], 1);
  120. digitalWrite(column[13], 1);
  121. delay(x);
  122. digitalWrite(layer[2],0);
  123. digitalWrite(column[2], 1);
  124. digitalWrite(column[6], 1);
  125. digitalWrite(column[10], 1);
  126. digitalWrite(column[14], 1);
  127. delay(x);
  128. digitalWrite(layer[3], 0);
  129. digitalWrite(column[3], 1);
  130. digitalWrite(column[7], 1);
  131. digitalWrite(column[11], 1);
  132. digitalWrite(column[15], 1);
  133. delay(x);
  134.  
  135. digitalWrite(layer[3], 1);
  136. digitalWrite(column[3], 0);
  137. digitalWrite(column[7], 0);
  138. digitalWrite(column[11], 0);
  139. digitalWrite(column[15], 0);
  140. delay(x);
  141. digitalWrite(layer[2], 1);
  142. digitalWrite(column[2], 0);
  143. digitalWrite(column[6], 0);
  144. digitalWrite(column[10], 0);
  145. digitalWrite(column[14], 0);
  146. delay(x);
  147. digitalWrite(layer[1], 1);
  148. digitalWrite(column[1], 0);
  149. digitalWrite(column[5], 0);
  150. digitalWrite(column[9], 0);
  151. digitalWrite(column[13], 0);
  152. delay(x);
  153. digitalWrite(layer[0], 1);
  154. digitalWrite(column[0], 0);
  155. digitalWrite(column[4], 0);
  156. digitalWrite(column[8], 0);
  157. digitalWrite(column[12], 0);
  158. delay(x);
  159.  
  160. digitalWrite(layer[3], 0);
  161. digitalWrite(column[3], 1);
  162. digitalWrite(column[7], 1);
  163. digitalWrite(column[11], 1);
  164. digitalWrite(column[15], 1);
  165. delay(x);
  166. digitalWrite(layer[2],0);
  167. digitalWrite(column[2], 1);
  168. digitalWrite(column[6], 1);
  169. digitalWrite(column[10], 1);
  170. digitalWrite(column[14], 1);
  171. delay(x);
  172. digitalWrite(layer[1],0);
  173. digitalWrite(column[1], 1);
  174. digitalWrite(column[5], 1);
  175. digitalWrite(column[9], 1);
  176. digitalWrite(column[13], 1);
  177. delay(x);
  178. digitalWrite(layer[0], 0);
  179. digitalWrite(column[0], 1);
  180. digitalWrite(column[4], 1);
  181. digitalWrite(column[8], 1);
  182. digitalWrite(column[12], 1);
  183. delay(x);
  184.  
  185. if(x < 5) {
  186. dir = 1;
  187. }
  188. if(dir == 0) {
  189. x-=5;
  190. } else {
  191. x+=5;
  192. }
  193. }
  194. }
  195.  
  196. void loop() {
  197. //randomLed();
  198. //swipeOnOff();
  199. stairs();
  200. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement