Advertisement
arfachowdhary

electronic dice(switch program)

Mar 29th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.60 KB | None | 0 0
  1. const int LedBlue = 6;
  2. const int LedWhite = 7;
  3. const int LedYellow = 4;
  4. const int LedRed = 3;
  5. const int LedRed1 = 11;
  6. const int LedYellow1 = 9;
  7. const int LedBlue1 = 8;
  8. const int ButtonPin = 12;
  9. bool ReadValue = 0;
  10. bool LastReadValue = 0;
  11. int randomNum = 0;
  12. bool Flag = 0;
  13.  
  14. void setup()
  15. {
  16. pinMode (LedBlue, OUTPUT) ;
  17. pinMode (LedWhite, OUTPUT) ;
  18. pinMode (LedYellow, OUTPUT) ;
  19. pinMode (LedRed, OUTPUT) ;
  20. pinMode (LedRed1, OUTPUT) ;
  21. pinMode (LedYellow1, OUTPUT) ;
  22. pinMode (LedBlue1, OUTPUT) ;
  23. pinMode (ButtonPin, INPUT) ;
  24. Serial.begin(9600);
  25. randomSeed(analogRead(A0));
  26. digitalWrite (LedBlue, HIGH);
  27. digitalWrite (LedWhite, HIGH);
  28. digitalWrite (LedYellow, HIGH);
  29. digitalWrite (LedRed, HIGH);
  30. digitalWrite (LedRed1, HIGH);
  31. digitalWrite (LedYellow1, HIGH);
  32. digitalWrite (LedBlue1, HIGH);
  33. delay(20);
  34.  
  35. digitalWrite (LedBlue, LOW);
  36. digitalWrite (LedWhite, LOW);
  37. digitalWrite (LedYellow, LOW);
  38. digitalWrite (LedRed, LOW);
  39. digitalWrite (LedRed1, LOW);
  40. digitalWrite (LedYellow1, LOW);
  41. digitalWrite (LedBlue1, LOW);
  42. delay(20);
  43. }
  44. boolean debounce(boolean last)
  45. {
  46. boolean current = digitalRead(ButtonPin);
  47. if (last != current)
  48. {
  49. delay(5);
  50. current = digitalRead(ButtonPin);
  51. }
  52. return current;
  53. }
  54.  
  55. void loop()
  56. {
  57. ReadValue = debounce(LastReadValue) ;
  58. Serial.println(ReadValue);
  59. if (LastReadValue == LOW && ReadValue == HIGH)
  60. {
  61. randomNum = random (1, 7) ;
  62. Serial.println(randomNum);
  63. switch (randomNum)
  64. {
  65. case 1:
  66. digitalWrite (LedBlue, HIGH);
  67. digitalWrite (LedWhite, LOW);
  68. digitalWrite (LedYellow, LOW);
  69. digitalWrite (LedRed, LOW);
  70. digitalWrite (LedRed1, LOW);
  71. digitalWrite (LedYellow1, LOW);
  72. digitalWrite (LedBlue1, LOW);
  73. break;
  74. case 2:
  75. digitalWrite (LedBlue, LOW);
  76. digitalWrite (LedWhite, HIGH);
  77. digitalWrite (LedYellow, LOW);
  78. digitalWrite (LedRed, LOW);
  79. digitalWrite (LedRed1, LOW);
  80. digitalWrite (LedYellow1, LOW);
  81. digitalWrite (LedBlue1, LOW);
  82. break;
  83. case 3:
  84. digitalWrite (LedBlue, LOW);
  85. digitalWrite (LedWhite, LOW);
  86. digitalWrite (LedYellow, HIGH);
  87. digitalWrite (LedRed, LOW);
  88. digitalWrite (LedRed1, LOW);
  89. digitalWrite (LedYellow1, LOW);
  90. digitalWrite (LedBlue1, LOW);
  91. break;
  92. case 4:
  93. digitalWrite (LedBlue, LOW);
  94. digitalWrite (LedWhite, LOW);
  95. digitalWrite (LedYellow, LOW);
  96. digitalWrite (LedRed, HIGH);
  97. digitalWrite (LedRed1, LOW);
  98. digitalWrite (LedYellow1, LOW);
  99. digitalWrite (LedBlue1, LOW);
  100. break;
  101. case 5:
  102. digitalWrite (LedBlue, LOW);
  103. digitalWrite (LedWhite, LOW);
  104. digitalWrite (LedYellow, LOW);
  105. digitalWrite (LedRed, LOW);
  106. digitalWrite (LedRed1, HIGH);
  107. digitalWrite (LedYellow1, LOW);
  108. digitalWrite (LedBlue1, LOW);
  109. break;
  110. case 6:
  111. digitalWrite (LedBlue, LOW);
  112. digitalWrite (LedWhite, LOW);
  113. digitalWrite (LedYellow, LOW);
  114. digitalWrite (LedRed, LOW);
  115. digitalWrite (LedRed1, LOW);
  116. digitalWrite (LedYellow1, HIGH);
  117. digitalWrite (LedBlue1, LOW);
  118. break;
  119. default:
  120. digitalWrite (LedBlue, LOW);
  121. digitalWrite (LedWhite, LOW);
  122. digitalWrite (LedYellow, LOW);
  123. digitalWrite (LedRed, LOW);
  124. digitalWrite (LedRed1, LOW);
  125. digitalWrite (LedYellow1, LOW);
  126. digitalWrite (LedBlue1, LOW);
  127. break;
  128. }
  129. }
  130. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement