Advertisement
Guest User

Shit

a guest
Nov 20th, 2014
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.80 KB | None | 0 0
  1. const int DELAYTIME = 500;
  2. const int NUMBEROFPINS = 8;
  3. const int NUMBEROFSEQUENCES= 8;
  4. const int NUMBEROFPATTERNS = 7;
  5. const int pinArray[NUMBEROFPINS] = {
  6. 13, 12, 11, 10, 9, 8, 7, 6};
  7.  
  8.  
  9. const char seqs [NUMBEROFPATTERNS][NUMBEROFSEQUENCES] =
  10. {
  11. {128, 64, 32, 16, 8, 4, 2, 1},
  12. {129, 66, 36, 24, 24, 36, 66, 129},
  13. {1, 2, 4, 8, 16, 32, 64, 128},
  14. {126, -67, -37, -25, -25, -37, -67, 126},
  15. {-128, -64, -32, -16, -8, -4, -2, -1},
  16. {1, 3, 7, 15, 31, 63, 127, -1},
  17. {0,0,0,0,0,0,0,0}
  18. };
  19.  
  20.  
  21. int pattern=3;
  22. int nextpattern=3;
  23.  
  24. void setup(){
  25. for (int pin=0;pin<NUMBEROFPINS;pin++) {
  26. pinMode(pinArray[pin], OUTPUT); // we make all the declarations at once
  27. };
  28. Serial.begin(9600);
  29.  
  30. }
  31.  
  32. void loop() {
  33. int incomingByte;
  34.  
  35. for(int s = 0; s < NUMBEROFSEQUENCES; s++){
  36. for(int p = 0; p < NUMBEROFPINS; p++){
  37.  
  38. digitalWrite(pinArray[p], (seqs[pattern][s] << p & 0x80)==128);
  39. }
  40. if(s==NUMBEROFSEQUENCES-1) {
  41. int t = pattern;
  42. if(t==2){
  43. pattern=0;
  44. nextpattern=2;
  45. } else {
  46. pattern=nextpattern;
  47. nextpattern=t;
  48. }
  49. }
  50. delay(DELAYTIME);
  51. if (Serial.available() > 0){
  52. incomingByte = Serial.read();
  53.  
  54. switch(incomingByte){
  55. case 0x48:
  56. pattern = 0; nextpattern=0; break; // H
  57. case 0x53:
  58. pattern = 1; nextpattern=1; break; // S
  59. case 0x68:
  60. pattern = 2; nextpattern=0; break; // h
  61. case 0x73:
  62. pattern = 3; nextpattern=3; break; // s
  63. case 0x52:
  64. pattern = 4; nextpattern=4; break; // L
  65. case 0x4C:
  66. pattern = 5; nextpattern=5; break; // R
  67. case 0x45:
  68. pattern = 6; nextpattern=6; break; // E
  69. }
  70. }
  71. }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement