fork download
  1. #pragma config(Sensor, S1, soundSensor, sensorSoundDB)
  2. #pragma config(Sensor, S2, touchSensor, sensorTouch)
  3. #pragma config(Sensor, S3, sonarSensor, sensorSONAR)
  4. #pragma config(Sensor, S4, lightSensor, sensorLightActive)
  5. //*!!Code automatically generated by 'ROBOTC' configuration wizard !!*//
  6.  
  7. /*--------------------------------------------------------------------------------------------------------*\
  8. |* *|
  9. |* - Clap Off - *|
  10. |* ROBOTC on NXT *|
  11. |* *|
  12. |* This program runs your robot forward until a loud noise is made. *|
  13. |* *|
  14. |* ROBOT CONFIGURATION *|
  15. |* NOTES: *|
  16. |* 1) The 1 second delay is needed to avoid obtaining inaccurate initial readings. *|
  17. |* *|
  18. |* MOTORS & SENSORS: *|
  19. |* [I/O Port] [Name] [Type] [Description] *|
  20. |* Port C motorC NXT Right motor *|
  21. |* Port B motorB NXT Left motor *|
  22. |* Port 1 soundSensor Sound Sensor Sound Db *|
  23. \*---------------------------------------------------------------------------------------------------4246-*/
  24.  
  25. task main()
  26. {
  27.  
  28. while (SensorValue[sonarSensor] < 10)
  29. {
  30.  
  31. PlaySound(soundBlip); // play the sound, 'soundBlip'
  32. wait1Msec(50); // Wait for 1 second to ignore initial readings of the Sound Sensor
  33. time1[T1]=0;
  34.  
  35.  
  36.  
  37.  
  38. while(time1(T1) < 17500)
  39. {
  40. if(SensorValue[lightSensor] < 45) // If the Light Sensor reads a value less than 45:
  41. {
  42. motor[motorB] = 60; // Motor B is run at a 60 power level.
  43. motor[motorC] = 20; // Motor C is run at a 20 power level.
  44. }
  45. else // If the Light Sensor reads a value greater than or equal to 45:
  46. {
  47. motor[motorB] = 20; // Motor B is run at a 20 power level.
  48. motor[motorC] = 60; // Motor C is run at a 60 power level.
  49. }
  50. }
  51.  
  52.  
  53.  
  54.  
  55. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  56. motor[motorB] = 0; /* and motor B stop. */
  57. wait1Msec(1000);
  58.  
  59.  
  60. motor[motorC] = -20;
  61. motor[motorB] = 20;
  62. wait1Msec(1000);
  63.  
  64.  
  65.  
  66. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  67. motor[motorB] = 0; /* and motor B stop. */
  68. wait1Msec(600);
  69.  
  70.  
  71.  
  72. motor[motorA] = 10;
  73. wait1Msec(700);
  74.  
  75.  
  76. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  77. motor[motorB] = 0; /* and motor B stop. */
  78. wait1Msec(1000);
  79.  
  80.  
  81. motor[motorC] = 20;
  82. motor[motorB] = -20;
  83. wait1Msec(1000);
  84.  
  85. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  86. motor[motorB] = 0; /* and motor B stop. */
  87. wait1Msec(1000);
  88.  
  89. time1[T1]=0;
  90.  
  91.  
  92. while(time1(T1) < 21600)
  93. {
  94. if(SensorValue[lightSensor] < 45) // If the Light Sensor reads a value less than 45:
  95. {
  96. motor[motorB] = 60; // Motor B is run at a 60 power level.
  97. motor[motorC] = 20; // Motor C is run at a 20 power level.
  98. }
  99. else // If the Light Sensor reads a value greater than or equal to 45:
  100. {
  101. motor[motorB] = 20; // Motor B is run at a 20 power level.
  102. motor[motorC] = 60; // Motor C is run at a 60 power level.
  103. }
  104.  
  105. }
  106.  
  107.  
  108.  
  109. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  110. motor[motorB] = 0; /* and motor B stop. */
  111. wait1Msec(1000);
  112.  
  113. motor[motorA] = -10;
  114. wait1Msec(800);
  115.  
  116. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  117. motor[motorB] = 0; /* and motor B stop. */
  118. wait1Msec(1000);
  119.  
  120. motor[motorC] = -20;
  121. motor[motorB] = 20;
  122. wait1Msec(800);
  123.  
  124.  
  125. motor[motorC] = 50; /* Otherwise, when loud noises are heard, Motor C */
  126. motor[motorB] = 50; /* and motor B stop. */
  127. wait1Msec(3500);
  128.  
  129.  
  130.  
  131.  
  132. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  133. motor[motorB] = 0; /* and motor B stop. */
  134. wait1Msec(1000);
  135. }
  136.  
  137. while (SensorValue[sonarSensor] < 25)
  138. {
  139. PlaySound(soundBeepBeep); // play the sound, 'soundBeepbeep'
  140. wait1Msec(50); // Wait for 1 second to ignore initial readings of the Sound Sensor
  141. time1[T1]=0;
  142.  
  143.  
  144.  
  145.  
  146. while(time1(T1) < 19500)
  147. {
  148. if(SensorValue[lightSensor] < 45) // If the Light Sensor reads a value less than 45:
  149. {
  150. motor[motorB] = 60; // Motor B is run at a 60 power level.
  151. motor[motorC] = 20; // Motor C is run at a 20 power level.
  152. }
  153. else // If the Light Sensor reads a value greater than or equal to 45:
  154. {
  155. motor[motorB] = 20; // Motor B is run at a 20 power level.
  156. motor[motorC] = 60; // Motor C is run at a 60 power level.
  157. }
  158. }
  159.  
  160.  
  161.  
  162.  
  163. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  164. motor[motorB] = 0; /* and motor B stop. */
  165. wait1Msec(1000);
  166.  
  167.  
  168. motor[motorC] = -20;
  169. motor[motorB] = 20;
  170. wait1Msec(1000);
  171.  
  172.  
  173.  
  174. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  175. motor[motorB] = 0; /* and motor B stop. */
  176. wait1Msec(600);
  177.  
  178.  
  179.  
  180. motor[motorA] = 10;
  181. wait1Msec(700);
  182.  
  183.  
  184. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  185. motor[motorB] = 0; /* and motor B stop. */
  186. wait1Msec(1000);
  187.  
  188.  
  189. motor[motorC] = 20;
  190. motor[motorB] = -20;
  191. wait1Msec(1000);
  192.  
  193. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  194. motor[motorB] = 0; /* and motor B stop. */
  195. wait1Msec(1000);
  196.  
  197. time1[T1]=0;
  198.  
  199.  
  200. while(time1(T1) < 19600)
  201. {
  202. if(SensorValue[lightSensor] < 45) // If the Light Sensor reads a value less than 45:
  203. {
  204. motor[motorB] = 60; // Motor B is run at a 60 power level.
  205. motor[motorC] = 20; // Motor C is run at a 20 power level.
  206. }
  207. else // If the Light Sensor reads a value greater than or equal to 45:
  208. {
  209. motor[motorB] = 20; // Motor B is run at a 20 power level.
  210. motor[motorC] = 60; // Motor C is run at a 60 power level.
  211. }
  212.  
  213. }
  214.  
  215.  
  216.  
  217. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  218. motor[motorB] = 0; /* and motor B stop. */
  219. wait1Msec(1000);
  220.  
  221. motor[motorA] = -10;
  222. wait1Msec(800);
  223.  
  224. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  225. motor[motorB] = 0; /* and motor B stop. */
  226. wait1Msec(1000);
  227.  
  228. motor[motorC] = -20;
  229. motor[motorB] = 20;
  230. wait1Msec(800);
  231.  
  232.  
  233. motor[motorC] = 50; /* Otherwise, when loud noises are heard, Motor C */
  234. motor[motorB] = 50; /* and motor B stop. */
  235. wait1Msec(3500);
  236.  
  237.  
  238.  
  239.  
  240. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  241. motor[motorB] = 0; /* and motor B stop. */
  242. wait1Msec(1000);
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249. }
  250.  
  251. while (SensorValue[sonarSensor] < 45)
  252. {
  253. PlaySound(soundDownwardTones); // play the sound, 'soundDownwardTones'
  254. wait1Msec(50); // Wait for 1 second to ignore initial readings of the Sound Sensor
  255. time1[T1]=0;
  256.  
  257.  
  258.  
  259.  
  260. while(time1(T1) < 21200)
  261. {
  262. if(SensorValue[lightSensor] < 45) // If the Light Sensor reads a value less than 45:
  263. {
  264. motor[motorB] = 60; // Motor B is run at a 60 power level.
  265. motor[motorC] = 20; // Motor C is run at a 20 power level.
  266. }
  267. else // If the Light Sensor reads a value greater than or equal to 45:
  268. {
  269. motor[motorB] = 20; // Motor B is run at a 20 power level.
  270. motor[motorC] = 60; // Motor C is run at a 60 power level.
  271. }
  272. }
  273.  
  274.  
  275.  
  276.  
  277. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  278. motor[motorB] = 0; /* and motor B stop. */
  279. wait1Msec(1000);
  280.  
  281.  
  282. motor[motorC] = -20;
  283. motor[motorB] = 20;
  284. wait1Msec(1000);
  285.  
  286.  
  287.  
  288. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  289. motor[motorB] = 0; /* and motor B stop. */
  290. wait1Msec(600);
  291.  
  292.  
  293.  
  294. motor[motorA] = 10;
  295. wait1Msec(700);
  296.  
  297.  
  298. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  299. motor[motorB] = 0; /* and motor B stop. */
  300. wait1Msec(1000);
  301.  
  302.  
  303. motor[motorC] = 20;
  304. motor[motorB] = -20;
  305. wait1Msec(1000);
  306.  
  307. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  308. motor[motorB] = 0; /* and motor B stop. */
  309. wait1Msec(1000);
  310.  
  311. time1[T1]=0;
  312.  
  313.  
  314. while(time1(T1) < 18000)
  315. {
  316. if(SensorValue[lightSensor] < 45) // If the Light Sensor reads a value less than 45:
  317. {
  318. motor[motorB] = 60; // Motor B is run at a 60 power level.
  319. motor[motorC] = 20; // Motor C is run at a 20 power level.
  320. }
  321. else // If the Light Sensor reads a value greater than or equal to 45:
  322. {
  323. motor[motorB] = 20; // Motor B is run at a 20 power level.
  324. motor[motorC] = 60; // Motor C is run at a 60 power level.
  325. }
  326.  
  327. }
  328.  
  329.  
  330.  
  331. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  332. motor[motorB] = 0; /* and motor B stop. */
  333. wait1Msec(1000);
  334.  
  335. motor[motorA] = -10;
  336. wait1Msec(800);
  337.  
  338. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  339. motor[motorB] = 0; /* and motor B stop. */
  340. wait1Msec(1000);
  341.  
  342. motor[motorC] = -20;
  343. motor[motorB] = 20;
  344. wait1Msec(800);
  345.  
  346.  
  347. motor[motorC] = 50; /* Otherwise, when loud noises are heard, Motor C */
  348. motor[motorB] = 50; /* and motor B stop. */
  349. wait1Msec(3500);
  350.  
  351.  
  352.  
  353.  
  354. motor[motorC] = 0; /* Otherwise, when loud noises are heard, Motor C */
  355. motor[motorB] = 0; /* and motor B stop. */
  356. wait1Msec(1000);
  357.  
  358.  
  359.  
  360.  
  361. }
  362.  
  363.  
  364.  
  365. }
  366.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.c:1:0: warning: ignoring #pragma config  [-Wunknown-pragmas]
 #pragma config(Sensor, S1,     soundSensor,    sensorSoundDB)
 
prog.c:2:0: warning: ignoring #pragma config  [-Wunknown-pragmas]
 #pragma config(Sensor, S2,     touchSensor,    sensorTouch)
 
prog.c:3:0: warning: ignoring #pragma config  [-Wunknown-pragmas]
 #pragma config(Sensor, S3,     sonarSensor,    sensorSONAR)
 
prog.c:4:0: warning: ignoring #pragma config  [-Wunknown-pragmas]
 #pragma config(Sensor, S4,     lightSensor,    sensorLightActive)
 
prog.c:25:1: error: unknown type name ‘task’
 task main()
 ^~~~
prog.c: In function ‘main’:
prog.c:28:12: error: ‘SensorValue’ undeclared (first use in this function)
     while (SensorValue[sonarSensor] < 10)
            ^~~~~~~~~~~
prog.c:28:12: note: each undeclared identifier is reported only once for each function it appears in
prog.c:28:24: error: ‘sonarSensor’ undeclared (first use in this function)
     while (SensorValue[sonarSensor] < 10)
                        ^~~~~~~~~~~
prog.c:31:3: warning: implicit declaration of function ‘PlaySound’ [-Wimplicit-function-declaration]
   PlaySound(soundBlip);  // play the sound, 'soundBlip'
   ^~~~~~~~~
prog.c:31:13: error: ‘soundBlip’ undeclared (first use in this function)
   PlaySound(soundBlip);  // play the sound, 'soundBlip'
             ^~~~~~~~~
prog.c:32:3: warning: implicit declaration of function ‘wait1Msec’ [-Wimplicit-function-declaration]
   wait1Msec(50);                        // Wait for 1 second to ignore initial readings of the Sound Sensor
   ^~~~~~~~~
prog.c:33:2: error: ‘time1’ undeclared (first use in this function)
  time1[T1]=0;
  ^~~~~
prog.c:33:8: error: ‘T1’ undeclared (first use in this function)
  time1[T1]=0;
        ^~
prog.c:38:12: warning: implicit declaration of function ‘time1’ [-Wimplicit-function-declaration]
      while(time1(T1) < 17500)
            ^~~~~
prog.c:40:29: error: ‘lightSensor’ undeclared (first use in this function)
              if(SensorValue[lightSensor] < 45)  // If the Light Sensor reads a value less than 45:
                             ^~~~~~~~~~~
prog.c:42:13: error: ‘motor’ undeclared (first use in this function)
             motor[motorB] = 60;                  // Motor B is run at a 60 power level.
             ^~~~~
prog.c:42:19: error: ‘motorB’ undeclared (first use in this function)
             motor[motorB] = 60;                  // Motor B is run at a 60 power level.
                   ^~~~~~
prog.c:43:13: error: ‘motorC’ undeclared (first use in this function)
       motor[motorC] = 20;                  // Motor C is run at a 20 power level.
             ^~~~~~
prog.c:72:13: error: ‘motorA’ undeclared (first use in this function)
       motor[motorA] = 10;
             ^~~~~~
prog.c:139:14: error: ‘soundBeepBeep’ undeclared (first use in this function)
    PlaySound(soundBeepBeep);  // play the sound, 'soundBeepbeep'
              ^~~~~~~~~~~~~
prog.c:253:12: error: ‘soundDownwardTones’ undeclared (first use in this function)
  PlaySound(soundDownwardTones);  // play the sound, 'soundDownwardTones'
            ^~~~~~~~~~~~~~~~~~
stdout
Standard output is empty