Olá pessoal! Sou novo aqui no L.G. e também da ramo de programação(eletrônica), estou ajudando um colega à montar um pequeno projeto de um indicador de nível de água de um aquário, sendo 3 níveis, mínimo, médio e máximo. fiz um boia com um ima que passa por um cano de pvc onde estão os sensores. Quero simplesmente que, quando ativar um dos sensores mostre a palavra no display lcd keypad shield conforme a programação. Porém não esta dando certo. Se alguém puder ajudar, agradeço! Essa é a programação;
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
int Reed1 = 0;
int Reed2 = 1;
int Reed3 = 2;
void setup()
{
lcd.begin(16, 2);
lcd.setCursor( 4, 0);
lcd.print("NIVEL");
lcd.setCursor( 4, 1);
lcd.print("AQUARIO");
pinMode(Reed1,INPUT);
pinMode(Reed2,INPUT);
pinMode(Reed3,INPUT);
}
void loop()
{
if (digitalRead(Reed1) == 1)
{
lcd.setCursor( 0, 0);
lcd.print("nivel do aquario");
lcd.setCursor(4,1);
lcd.print("MINIMO");
}
if (digitalRead(Reed2) == 1)
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Nivel do Aquario");
lcd.setCursor( 4, 1);
lcd.print("MEDIO");
}
if (digitalRead(Reed3) == 1)
{
lcd.clear();
lcd.setCursor( 0, 0);
lcd.print("nivel do aquario");
lcd.setCursor( 4, 1);
lcd.print("MAXIMO");
delay(1000);
}
}
Tags:
Oi JP, boa noite.
Testei o seu code,e o que ocorre é que as duas linhas
que colocou pra limpar o LCD, estão provocando este "embaralhamento" que você refere.
outra coisa, deve evitar usar os pinos 0 e 1 para switchs, pois eles são os pinos que o arduino
usa para se comunicar com a USB.
Para testes eu mudei os reeds para os pinos 10 11 e 12.
Retirei tb as linhas redundantes de "nível do aquário"
Liguei também os resistores de PULLUP, o que torna desnecessários resistores externos.
Testa aí o code
Tem o Proteus,
mas eu não tenho ele não
Rui
Bom dia Rui. testei seu código, mas infelizmente não esta dando certo. Quando o ima fecha contato do switch, é como se desse curto e o display apaga e volta novamente, se eu manter o ima proximo, o display fica apagado.
JP, bom dia,
para que eu possa identificar seu problema, post um desenho do seu circuito e
como ligou os reeds.
Eu liguei os reeds, com uma ponta no pino e a outra em Gnd, e mais nada nos pinos de
entrada do arduino.
Veja também que eu troquei os pinos para não usar os 0 e 1.
Rui
Como dito pelo Colega Rui, o Proteus é uma das melhores opçoes.
Veja este vídeo no meu canal: https://www.youtube.com/watch?v=5zE-3Ttx1wc
Abs.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por