Ola pessoas;
estou com uma pequena dificuldade aqui.
Tentei fazer isso via porta serial sem o arduino com a ajuda de um amigo aqui do Garagem mas não estou conseguindo.
apesar de não saber muita coisa de C++ eu consigo me virar com as instalações elétricas.
Então o caso é esse.
encontrei um Sketch para arduino parecido com o que eu preciso e estou tentando adaptar ele.
char leitura;
#define rele 8
void setup()
{
Serial.begin(9600); //Inicializa comunicação Serial
pinMode(rele, OUTPUT); //Seta o pino indicado por rele como saída
digitalWrite(rele,LOW); //Mantem rele desligado assim que iniciar o programa
}
void loop() {
while (Serial.available() > 0) //Verifica se há conexão com a serial
{
leitura = Serial.read(); //Lê o dado vindo da Serial e armazena na variável leitura
//Se a variável leitura for igual a 'l' ou 'L' ela liga rele
if (leitura == 'l' || leitura =='L'){// As duas || é a operação booleana OU
digitalWrite(rele,HIGH);
}
/* _____________________________________________________________
NESTE PONTO EU PRECISO QUE TENHA UMA PAUSA DE 1 SEGUNDO
DEPOIS DESLIGUE O RELE
--- digitalWrite(rele, LOW)
SEM PRECISAR DE OUTRO COMANDO OU UMA NOVA LEITURA DA SERIAL
E VOLTE PARA O INICIO DO LOOP AGUARDANDO O COMANDO NOVAMENTE.
____________________________________________________________________ */
}
Serial.println(leitura);
}
no final onde eu escrevi com letras maiúsculas é onde eu preciso da ajuda.
eu preciso que o rele forneça um pulso de energia de um segundo e depois fique desligado ate ser chamado novamente.
Agradeço ai pela ajuda.
Tags:
Se entendi é só um delay();
Vide: https://www.arduino.cc/en/Reference/Delay
digitalWrite(rele,HIGH);
delay(1000);
digitalWrite(rele,LOW);
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por