Advertisement
Guest User

Untitled

a guest
Jan 18th, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.60 KB | None | 0 0
  1. #include <ISALedControl.h>
  2. #include <ISADefinitions.h>
  3. #include <ISA7SegmentDisplay.h>
  4. #include <ISALiquidCrystal.h>
  5. #include <ISADefinitions.h>
  6. #include <ISAButtons.h>
  7.  
  8. ISALiquidCrystal lcd;
  9. ISA7SegmentDisplay sseg;
  10. ISALedControl lc;
  11. ISAButtons button;
  12.  
  13.  
  14. int x = 4, y = 4;
  15. int ex = 6, ey =6;
  16. int points = 0;
  17.  
  18. int getRandomNumber(){
  19. return random(0,7);
  20. }
  21.  
  22. void setup()
  23. {
  24. lcd.begin();
  25. lcd.clear();
  26. lc.init();
  27. sseg.init();
  28.  
  29. lc.setLed(x, y, true);
  30.  
  31. pinMode(KEY_LEFT, INPUT);
  32. pinMode(KEY_RIGHT, INPUT);
  33.  
  34. pinMode(KEY_UP, INPUT);
  35. pinMode(KEY_DOWN, INPUT);
  36.  
  37. for(int i=0; i<8; i++){
  38. pinMode(LEDS[i], OUTPUT);
  39. }
  40.  
  41. }
  42. void loop() {
  43.  
  44. bool right = !digitalRead(KEY_RIGHT);
  45. bool left = !digitalRead(KEY_LEFT);
  46.  
  47. bool up = !digitalRead(KEY_UP);
  48. bool down = !digitalRead(KEY_DOWN);
  49.  
  50. lc.setLed(ex, ey, true);
  51.  
  52. sseg.displayDigit(x+1, 3);
  53. sseg.displayDigit(y+1, 2);
  54. sseg.displayDigit(ex+1, 1);
  55. sseg.displayDigit(ey+1, 0);
  56. if(up){
  57. lc.setLed(x, y, false);
  58. x = x - 1;
  59. lc.setLed(x, y, true);
  60. }else if(down){
  61. lc.setLed(x, y, false);
  62. x = x + 1;
  63. lc.setLed(x, y, true);
  64. }else if(left){
  65. lc.setLed(x, y, false);
  66. y = y - 1;
  67. lc.setLed(x, y, true);
  68. }else if(right){
  69. lc.setLed(x, y, false);
  70. y = y + 1;
  71. lc.setLed(x, y, true);
  72. }else if(x == ex && y == ey){
  73. points++;
  74. for(int i=0; i < points; i++){
  75. digitalWrite(LEDS[i], HIGH);
  76. }
  77.  
  78. ex = getRandomNumber();
  79. ey = getRandomNumber();
  80. }else if(points >7){
  81. lcd.print(" ! You win !");
  82. delay(1000);
  83. lcd.clear();
  84. }
  85.  
  86. delay(100);
  87. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement