Boa tarde pessoal!!!
Problema muito fácil de ser resolvido pelos feras daqui....(menos pra mim...que estou a mais de duas horas tentando)
Seguinte pessoal,estou tentando fazer um alarme de bateria fraca...por exemplo:
Tensão de 5 Volts entra numa porta analógica...quando cai pra 4 Volts aciona uma saída digital pra alarme.
Parece fácil de resolver..mas não estou conseguindo...
Alguém pode me ajudar?
Segue o código e o esquema de simulação no Proteus..que não apresenta erro de sintaxe...compila certinho...mas na simulação não dá certo...
int bateria = A0;
int ledPin = 4;
void setup()
{
pinMode(ledPin, OUTPUT);
pinMode(bateria,INPUT);
}
void loop()
{
int bateria = analogRead(A0);
if (bateria<1000)
{
digitalWrite(ledPin,HIGH);
}
}
Tags:
faça dessa forma q vai funcionar
no seu caso nao funcionou pq vc nao fez um map dos valores pra q o controlador tenha uma referencia
int valor = 0;
float voltagem = 0;
int alarme = 4;
void setup()
{
pinMode(alarme,OUTPUT);
}
void loop()
{
valor = analogRead(A0);
voltagem = map(valor,0,1023,0,5);
if (voltagem < 4.0)
{
digitalWrite(alarme,HIGH);
}
if (voltagem > 4.9)
{
digitalWrite(alarme,LOW);
}
}
seu codigo ta quase certo, vc errou apenas no IF , onde vc colocou apenas uma codição ( if (bateria<1000) ) assim o ledin liga , mas quando a tensão normalizar (if (bateria>=1000) ) o led continua ligado.
a solução seria colocar dois IF's , ou colocar um ELSE complementando o IF que já tá o seu codigo.
Valeu!!!
O código do amigo José Miguel resolveu o problema.
Fisicamente funciona...agora estou tentando ligar isso no Proteus..o Led fica acesso direto..não apaga com a bateria em 5V.
Vc já fez alguma simulação de entradas analógicas no Proteus?
Valeu!!!
O código do amigo José Miguel resolveu o problema.
RESOLVIDO PESSOAL!!!
Simulação perfeita no Simulino também.
Muitíssimo obrigado pela ajuda de todos!!!
Isso aqui parece uma selva...só tem fera!!!!
Rsrsrrsrsr
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por