Advertisement
Guest User

Untitled

a guest
Jun 26th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.03 KB | None | 0 0
  1. #include <IRremote.h>
  2.  
  3. int RECV_PIN = 11; //Pin TSOP
  4.  
  5. IRrecv irrecv(RECV_PIN);
  6. decode_results results;
  7. String bindamage;
  8. String binid;
  9. int Tablica[100];
  10. int headwtab = 0;
  11. String raw = "";
  12.  
  13. void setup()
  14. {
  15. Serial.begin(19200);
  16. irrecv.enableIRIn(); // Start the receiver
  17. standby();
  18. }
  19.  
  20. void dumpCode (decode_results *results)
  21. {
  22.  
  23.  
  24. for (int i = 1; i < results->rawlen; i++) {
  25. Tablica[i] = (results->rawbuf[i] * USECPERTICK); //dodaje wartosc do Tablica
  26. }
  27. }
  28.  
  29. void team()
  30. {
  31. String binteam;
  32. binteam = raw;
  33. binteam.remove(0,8);
  34. binteam.remove(2);
  35.  
  36. if(binteam=="00") red();
  37. if(binteam=="01") blue();
  38. if(binteam=="10") yellow();
  39. if(binteam=="11") green();
  40. }
  41.  
  42. void header() //wyszukuje miejsce headera w tablicy
  43. {
  44. for(int i = 1;i<100;i++) // wypisanie tablicy
  45. {
  46. if(Tablica[i]>2000)
  47. headwtab=i;
  48. }
  49. if(headwtab>0) raw.remove(0,headwtab-1);
  50. }
  51.  
  52.  
  53. void tobin() // zmienimy DEC na BIN
  54. {
  55. for(int i = headwtab + 2;i<100;i= i+2) // wypisanie tablicy
  56. {
  57. if(Tablica[i]>750) raw.concat(1);
  58. if(Tablica[i]<750) raw.concat(0);
  59. }
  60. }
  61.  
  62.  
  63. void standby()
  64. {
  65. Serial.println("standby");
  66. Serial.print(" ");
  67. // int timer=10000;
  68. }
  69.  
  70.  
  71. void red()
  72. {
  73. Serial.println("RED");
  74.  
  75. }
  76.  
  77.  
  78. void blue()
  79. {
  80. Serial.println("BLUE");
  81. }
  82.  
  83. void green()
  84. {
  85. Serial.println("GREEN");
  86. }
  87.  
  88. void yellow()
  89. {
  90. Serial.println("YELLOW");
  91. }
  92.  
  93. void isshot()
  94. {
  95. String isshot;
  96. isshot = raw;
  97. isshot.remove(1);
  98. if (isshot=="0") {
  99. Serial.println("STRZAŁ!");
  100. team();
  101. }
  102. }
  103.  
  104.  
  105.  
  106.  
  107. void loop() {
  108.  
  109. if (irrecv.decode(&results)) {
  110. // Serial.println(" ");
  111. // Serial.println("START");
  112. //Serial.println(results.value, BIN);
  113.  
  114. dumpCode(&results); // Output the results as source code
  115. header();
  116. tobin();
  117. isshot();
  118.  
  119.  
  120.  
  121. Serial.println(raw);
  122.  
  123.  
  124. // delete [] Tablica;
  125. raw = "";
  126. headwtab = 0;
  127. // Serial.println("END");
  128. irrecv.resume(); // Receive the next value
  129. }
  130.  
  131. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement