Guest User

Untitled

a guest
May 20th, 2018
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.75 KB | None | 0 0
  1. #include <LiquidCrystal.h>
  2.  
  3. /*
  4. * Some opcode definitions for the iRobot Create.
  5. * Copy and paste into the top of your program file.
  6. */
  7.  
  8. #define IR_START (128)
  9. #define IR_SAFE (131)
  10. #define IR_FULL (132)
  11. #define IR_SPOT (134)
  12. #define IR_COVER (135)
  13. #define IR_DEMO (136)
  14. #define IR_DRIVE (137)
  15. #define IR_DIRECT_DRIVE (145)
  16. #define SET_SONG (140)
  17. #define PLAY_SONG (141)
  18. #define SENSOR (142)
  19.  
  20.  
  21. #define PACKET_WALL (8)
  22.  
  23. #define TURN_LEFT (0x0001)
  24. #define TURN_RIGHT (0xFFFF)
  25. #define DRIVE_STRAIGHT (0x7FFF)
  26. #define MEDIUM_SPEED (200)
  27. #define FAST_SPEED (500)
  28.  
  29. #define quaver (16)
  30.  
  31.  
  32. long lastMillis;
  33.  
  34. // init LCD display
  35. LiquidCrystal lcd(6,7,8,2,3,4,5);
  36.  
  37. void setup() {
  38.  
  39. // Initialise connection to robot
  40. lcd.begin(16,2);
  41. lcd.print("Starting...");
  42. delay(3000);
  43. lcd.clear();
  44. Serial.begin(57600);
  45.  
  46. // set mode, start sets passive mode by default
  47. Serial.write(IR_START);
  48.  
  49. Serial.write(IR_FULL);
  50. delay(100);
  51. Serial.write(SET_SONG);
  52. Serial.write((byte)0); // Song number
  53. Serial.write(3); // Song lenghth (in notes)
  54.  
  55. Serial.write(62);
  56. Serial.write(3*quaver);
  57. Serial.write(69);
  58. Serial.write(3*quaver);
  59. Serial.write(74);
  60. Serial.write(2*quaver);
  61.  
  62. Serial.write(SET_SONG);
  63. Serial.write(1); // Song number
  64. Serial.write(3); // Song lenghth (in notes)
  65.  
  66. Serial.write(69);
  67. Serial.write(3*quaver);
  68. Serial.write(74);
  69. Serial.write(3*quaver);
  70. Serial.write(77);
  71. Serial.write(2*quaver);
  72.  
  73. Serial.write(SET_SONG);
  74. Serial.write(2); // Song number
  75. Serial.write(3); // Song lenghth (in notes)
  76.  
  77. Serial.write(65);
  78. Serial.write(3*quaver);
  79. Serial.write(72);
  80. Serial.write(3*quaver);
  81. Serial.write(76);
  82. Serial.write(2*quaver);
  83.  
  84. Serial.write(SET_SONG);
  85. Serial.write(3); // Song number
  86. Serial.write(3); // Song lenghth (in notes)
  87.  
  88. Serial.write(67);
  89. Serial.write(3*quaver);
  90. Serial.write(72);
  91. Serial.write(3*quaver);
  92. Serial.write(74);
  93. Serial.write(2*quaver);
  94. //( insert your code here )
  95. delay(100);
  96.  
  97. }
  98.  
  99. void loop() {
  100. static int x = 0;
  101. int songPlaying;
  102. Serial.write(PLAY_SONG);
  103. Serial.write(x); // Song number
  104. do
  105. {
  106. delay(50);
  107. Serial.write(SENSOR);
  108. Serial.write(37);
  109. delay(20);
  110. songPlaying = Serial.read();
  111. lcd.clear();
  112. lcd.print(songPlaying);
  113. } while(songPlaying);
  114. x++;
  115. x %= 4;
  116. }
Add Comment
Please, Sign In to add comment