Boa tarde galera, estou tendo dificuldades e um codigo.

quero que o pulso de um botao ligue um led e que este botao nao consiga desliga-lo caso apertado novamente, e sim o pulso de outro botao desligaria o led. segue o codigo:

int led=13; // led no pino 13
int botao=12; // botão no pino 12
int botao2 = 8;
int var=0; // valor instantaneo enviado pelo botão
int var2=0; // valor guardado
int estado=0; // guarda o valor 0 ou 1 (HIGH ou LOW)
int var3=0;
int var4=0;
int estado2=0;

void setup()
{
pinMode(led,OUTPUT);
pinMode(botao,INPUT);
pinMode(botao2, INPUT);
}
void loop(){

var=digitalRead(botao); // ler o valor enviado pelo botão: "HIGH" ou "LOW"
if (var == HIGH) {
estado = 1 ;
delay(250); // de-bouncing
}

if (estado == 1){
digitalWrite(led, HIGH); // liga o led

}

var3=digitalRead(botao2); // ler o valor enviado pelo botão: "HIGH" ou "LOW"
if (var3 == HIGH) {
estado2 = 1 ;
estado = 0 ;
var = 0;
delay(250); // de-bouncing
}
if (estado2 == 1){
digitalWrite(led, LOW); // liga o led

}
}

Exibições: 8325

Responder esta

Respostas a este tópico

acho q seria isso

int botao1 = 12;
int botao2 = 11;
int led = 13;

void setup()
{
  pinMode(botao1,INPUT);
  pinMode(botao2,INPUT);
  pinMode(led,OUTPUT);
 
}
void loop()
{
  if(digitalRead(botao1) == HIGH)
  {
    digitalWrite(led,HIGH);

    delay(100);
  }
  if(digitalRead(botao2) == HIGH)
  {
    digitalWrite(led,LOW);
    delay(100); 

   }
}

opa dae jose, coloquei seu codigo porem o led fica piscando direto e os botoes nao fazem nada

entao revise os resistores de pulldown nos seus botoes

Olá.

Não sei se entendi bem, mas veja o vídeo no meu canal, caso seja isso, o código esta na descrição do vídeo, tem um link para o pastebin.

https://www.youtube.com/watch?v=xxompf5_ouY&feature=youtu.be

Abs,

carlos, coloquei seu codigo, mas o led ja sai ligado e os botoes nao fizeram nada

engraçado, é bem como esta no video que eu preciso... mas o codigo nao deu certo

Matheus,

Você colocou os resistores de 10K nas entradas e no GND como no video? Pode ser por isso.

Tente também mudar o pino de saída 13 para outro que não seja o 13.

Abs.

Veja o PDF com o circuito.

Anexos

pois é, achei que fosse circuito mas conferi pelo video e agora pelo pdf, ta certo...

o codigo é esse mesmo

// Carlos Kwiek - carloskwiek1@hotmail.com

int botao = 9; // define pino 9 como entrada botao liga
int botao1 = 8; // define botao 8 como botao desliga
int saida = 12; // define pino 13 como saida


void setup() {

pinMode (botao, INPUT); // define como entrada
pinMode (botao1, INPUT); // define como entrada
pinMode (saida, OUTPUT); // define como saida
}

void loop() {


int valor = digitalRead (botao);// le o valor de botao
int valor2 = digitalRead (botao1); // le o valor de botao1

if (valor == HIGH && valor2 == LOW) {// Testa o estado dos botoes
digitalWrite (saida, HIGH); // envia saida para nivel alto
delay (1000);
}

if (valor == LOW && valor2 == HIGH) { // Testa saida dos botoes
digitalWrite (saida,LOW); // envia a saida para nivel baixo
delay (1000);


}
}

Oi Matheus,

Sim é esse, veja o video, e colo aqui o code.

https://www.youtube.com/watch?v=7jJKfD6Dx5w&feature=youtu.be

// Carlos Kwiek - carloskwiek1@hotmail.com

int botao    = 9; // define pino 9 como entrada botao liga
int botao1  = 8; //  define botao 8 como botao desliga
int saida = 12; // define pino 12 como saida


void setup() {

  pinMode (botao,  INPUT); // define como entrada
  pinMode (botao1, INPUT); // define como entrada
  pinMode (saida, OUTPUT);     // define como saida
}

void loop() {


  int valor =  digitalRead (botao);//  le o valor de botao
  int valor2 = digitalRead (botao1); // le o valor de botao1

  if (valor == HIGH && valor2 == LOW) {// Testa o estado dos botoes
    digitalWrite (saida, HIGH); //  envia saida para nivel alto
    delay (1000);
  }

  if (valor == LOW && valor2 == HIGH) { // Testa saida dos botoes
    digitalWrite (saida,LOW); // envia a saida para nivel baixo
    delay (1000);
 

  }
}

Segue aqui em TXT porque colado aqui a formatação se perde.

Abs.

Anexos

postei uma ajuda  http://labdegaragem.com/forum/topics/e-vai-eu-denovo-uma-duvida-pro...

carlos esse cadigo seu pode me servir 

como faço para acionar botao uma vez esse led fica ligado por 5 segundo e ao acionar outro botao  ele ligar por 5 segundo

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço