Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* http://labdegaragem.com/forum/topics/ajuda-com-contador-e-sensor-pir
- /* // Leitura sensor presença PIR
- byte SensorP = A0; // Pino ligado o led e o sensor PIR
- // SensorP sempre será igual a 14
- int Leitura; // Faz a leitura se algo passo na frente no sensor
- int Contador; // Conta quantas vezes o sensor for obstruido
- void setup()
- {
- Serial.begin (9600);
- pinMode (SensorP, INPUT); // Define o pino do sensor como entrada
- }
- void loop()
- {
- int Valorlido = analogRead (A0);
- // valor lido varia de 0 até 1023
- if (Valorlido > SensorP) // Compara se valorlido é maior que 14
- {
- Contador = Contador + 1; // se for acrescenta 1 mas enquanto o sensor estiver
- // sentindo haverá incremento
- Serial.println (Contador);
- }
- }
- */
- /* Sugestões
- Definir uma variavel com o valor para testat (com o sem a presença)
- testar a condição e ligar um flag informando que já contou
- desligar o flag ao ser liberado o sensor
- */
- #define SensorP A0 // Pino ligado o led e o sensor PIR
- unsigned int limite = 400; // Limite para sensor (Threshold)
- int Leitura; // Faz a leitura se algo passo na frente no sensor
- int Contador; // Conta quantas vezes o sensor for obstruido
- bool Flag = 0; // Flag para contagem feita
- int Valorlido;
- //---------------------------------
- void setup()
- {
- Serial.begin (9600); // Inicialisa serial
- pinMode (SensorP, INPUT); // Define o pino do sensor como entrada
- }
- //---------------------------------
- void loop()
- {
- Valorlido = analogRead (A0); // Le o sensor
- delay(100); // Evitar contagem com spikes
- if (Valorlido >= limite) // Compara se valorlido é maior que o threshold
- {
- if (Flag == 0) // Se ainda nao contou
- {
- Contador = Contador + 1; // Acrescenta 1
- Serial.println (Contador); // Imprime
- Flag = 1; // Informa que contou
- }
- }
- if (Valorlido < limite) // Compara se valorlido é menor que o threshold
- {
- Flag = 0; // Informa que sensoir foi liberado
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement