Olá pessoal, tudo bem?

estou tendo problemas com uma função.

A minha ideia é a seguinte: Se eu apertar o pino A0, liga B1, se Apertar A0 de novo, desliga B1, 

apertando A0 mais uma vez, liga B2, e B1 fica desligado, Aperto A0 de novo, Desliga B2, 

Se apertar mais uma vez volta do inicio ligando B1

A principio, fiz essa escrita, no Proteus funcionou, mais quando passei para a parte física, tive problemas quando fui acender o PIN_B1, pois acendia e apagava mto rápido:

while(true){

While(!input(pin_a0));

output_high(pin_b1);

delay_ms(50);

While(!input(pin_a0));

output_low(pin_b1);

delay_ms(50);

While(!input(pin_a0));

output_high(pin_b2);

delay_ms(50);

While(!input(pin_a0));

output_low(pin_b2);

delay_ms(50);

}

Se alguém tiver outra ideia de escrita, por favor, se puderem passar, ficarei muito grato! 

Abraços! 

Exibições: 438

Responder esta

Respostas a este tópico

desliga muito rápido por causa do tempo de espera.

entao se eu aumentar o tempo, pode resolver meu problema?

Pode fazer o seguinte(estou partindo do princípio que vai usar mesmo chave em ativo Alto=apertada +5V no pin):

após cada aperto da chave executa sua função e depois esperar soltá-la c/ a linha de código

while input(pin_a0);

o código acima "trava" até que se solte a chave, assim fazendo com que o programa não prossiga

Funcionou Marcelo Campos! Obg! : ) 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço