Advertisement
Guest User

Untitled

a guest
Oct 7th, 2017
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.33 KB | None | 0 0
  1. #define ldr A0 // Definicao do port analogico
  2. unsigned int lux; // Variavel obter medida de sol
  3. unsigned int luxs[60]; // historico de medidas de lux
  4. unsigned long tempo; // Variavel para medir intervalos de tempo de sol
  5. unsigned long atual, anterior; // Variavel para salvar tempo de inicio de contagem
  6. unsigned long sol; // Variavel para acumular tempo de sol
  7. //--------------------------
  8. void setup()
  9. {
  10. Serial.begin(9600); // Inicialise serial em 9600 bps
  11. anterior = millis(); // Atualize tempo atual
  12. }
  13. //--------------------------
  14. void loop()
  15. {
  16. int x, y;
  17. for (x=0, y=0; x<60; x++)
  18. {
  19. lux = analogRead(ldr); // le port analogico
  20. atual = millis();
  21. if ( lux < 800) // Se for menor que 800
  22. {
  23. tempo = atual - anterior;
  24. sol = sol + tempo; // Acumule tempo de sol
  25. luxs[y++] = lux;
  26. }
  27. anterior = atual;
  28. delay(1000);
  29. }
  30. Serial.println(sol/3600000); // Imprime acumulado de tempo de sol
  31. for (x=0; x<y; x++)
  32. {
  33. Serial.println(luxs[x]); // Imprime os valores de lux medidos
  34. }
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement