Encontrei uma pedra no meio do caminho, quero criar uma função onde dentro do código abaixo, a função:

if (LDR > 5 ){

digitalWrite (faça tal coisa)

Porem não funciona de jeito nenhum...

ele ira ser ativo por comando via serial, ethernet e serial Bluetooth, tudo funciona certo, menos quando coloco essa função citada a cima...

deste modo funciona, porem ele não repete a leitura do LDR, e só funciona uma vz

Exibições: 601

Responder esta

Respostas a este tópico

Chega a passar pelo condição e entrar no bloco?

sim, porem ele não repete a leitura, no caso, se vc setar o valor minimo pra que a função ative, ex: 5, apenas se o valor for = ou < que o relay funciona

Amigo, tem muito pouco informação para eu poder te ajudar. Eu teria que saber se o que é testado na condicional é uma variável ou constante e se for setado nelas e quando foi setado.

Abraço

Amigo faça uma coisa por vez,

1 dica, não use delay como você esta usando, use timer pois o delay para o seu programa,

2 dica,  voce esta chamando a funcao quando controlbutton2 == 0 e logo de cara voce muda ele para 2, é logico que so vai executar uma unica vez mesmo

3 dica, creio que voce seja iniciante para estar se perdendo em programação simples desse jeito, entao aprenda a fazer por partes (estagios)

Não tive tempo para analisar teu codigo a fundo pois estou trabalhado, mas a primeira vista vi isso de errado, da uma revisada do zero que tu encontra facinho.

Experimenta colocar variáveis declaradas como global (logo abaixo dos #includes e defines) as flags por vezes são reiniciadas e voltam ao valor inicial.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço