Guest User

Untitled

a guest
Apr 28th, 2022
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.63 KB | None | 0 0
  1. #include <Wire.h>
  2. #include "Adafruit_TCS34725.h"
  3.  
  4. /* Initialise with default values (int time = 2.4ms, gain = 1x) */
  5. // Adafruit_TCS34725 tcs = Adafruit_TCS34725();
  6. /* Initialise with specific int time and gain values */
  7. Adafruit_TCS34725 tcs = Adafruit_TCS34725(TCS34725_INTEGRATIONTIME_614MS, TCS34725_GAIN_1X);
  8. int led_far = 13;
  9. #define LEDR 15
  10. #define LEDB 2
  11. #define LEDG 0
  12. #define buton 14
  13. uint16_t r, g, b, c, colorTemp, lux,r_ll, g_ll, b_ll;
  14. uint8_t b_press,b_nr;
  15. uint8_t r_detec, g_detec, b_detec;
  16.  
  17.  
  18. void setup(void) {
  19. Serial.begin(9600);
  20. pinMode(led_far, OUTPUT);
  21. pinMode(LEDG,OUTPUT);
  22. pinMode(LEDB,OUTPUT);
  23. pinMode(LEDR,OUTPUT);
  24. pinMode(buton,INPUT);
  25.  
  26. }
  27.  
  28. void loop(void) {
  29.  
  30. r_ll = r;
  31. g_ll = g;
  32. b_ll = b;
  33. tcs.getRawData(&r, &g, &b, &c);
  34. // colorTemp = tcs.calculateColorTemperature(r, g, b);
  35. colorTemp = tcs.calculateColorTemperature_dn40(r, g, b, c);
  36. lux = tcs.calculateLux(r, g, b);
  37. if((digitalRead(buton) == HIGH) && (b_press == 0))
  38. {
  39. b_nr +=1;
  40. b_press = 1;
  41. }
  42. if((digitalRead(buton) == LOW) )
  43. {
  44. b_press = 0;
  45. }
  46. if(b_nr > 2)
  47. {
  48. b_nr = 0;
  49. }
  50. if(b_nr == 0)
  51. {
  52. analogWrite(LEDR,255);
  53. analogWrite(LEDB,0);
  54. analogWrite(LEDG,0);
  55. }
  56. if(b_nr == 1)
  57. {
  58. analogWrite(LEDR,0);
  59. analogWrite(LEDB,0);
  60. analogWrite(LEDG,255);
  61. }
  62. if(b_nr == 2)
  63. {
  64. analogWrite(LEDR,255);
  65. analogWrite(LEDB,0);
  66. analogWrite(LEDG,255);
  67. }
  68. if (lux < 100)
  69. {
  70. digitalWrite(led_far, HIGH);
  71. }
  72. else
  73. {
  74. digitalWrite(led_far, LOW);
  75. }
  76. if(r > 500)
  77. {
  78. r_detec = 1;
  79. }
  80. else
  81. {
  82. r_detec = 0;
  83. }
  84. if(g > 500)
  85. {
  86. g_detec = 1;
  87. }
  88. else
  89. {
  90. g_detec = 0;
  91. }
  92. if(b > 500)
  93. {
  94. b_detec = 1;
  95. }
  96. else
  97. {
  98. b_detec = 0;
  99. }
  100. if ((r_detec == 1) && (g_detec == 1) && (b_detec == 0))
  101. {
  102. Serial.print("Yellow detected");
  103. Serial.println(" ");
  104. }
  105. if ((r_detec == 1) && (g_detec == 0) && (b_detec == 0))
  106. {
  107. Serial.print("Red detected");
  108. Serial.println(" ");
  109. }
  110. if ((r_detec == 0) && (g_detec == 1) && (b_detec == 0))
  111. {
  112. Serial.print("Green detected");
  113. Serial.println(" ");
  114. }
  115. /* Serial.print("Color Temp: "); Serial.print(colorTemp, DEC); Serial.print(" K - ");
  116. Serial.print("Lux: "); Serial.print(lux, DEC); Serial.print(" - ");
  117. Serial.print("R: "); Serial.print(r, DEC); Serial.print(" ");
  118. Serial.print("G: "); Serial.print(g, DEC); Serial.print(" ");
  119. Serial.print("B: "); Serial.print(b, DEC); Serial.print(" ");
  120. Serial.print("C: "); Serial.print(c, DEC); Serial.print(" ");
  121. Serial.println(" ");*/
  122.  
  123. }
Advertisement
Add Comment
Please, Sign In to add comment