Ir para conteúdo
Fórum Script Brasil
  • 0

PIC 16F628A *POR FAVOR ME AJUDEM


ADRIANOLIZ9

Pergunta

Olá amigos, estou trabalhando num projeto com o pic 16f628a, preciso, que ao pressionar um botão, ele dê um pulso de +- 5 seg numa porta, e um pulso direto em outra, e ao pressionar novamente, desligue o pulso direto, e dê outro pulso de +- 5seg naquela porta, desenvolvi esse programa no CCS, mas ele só realiza um ciclo, não volta ao início após terminar as funções, notei no proteus, que as portas, após o pulso positivo(ponto vermelho no proteus) ficam em descanso negativo(ponto azul), acredito que é isso q está impossibilitando o loop da função, será que é alguma configuração dos #fuses? ou um erro no programa?

#include<16f628a.h>
#use delay(clock=4000000)
#fuses INTRC_IO,NOWDT,PUT,BROWNOUT

#define BOTAO PIN_A0


void main(void)



{ while(true){
if(input(BOTAO)){

if (output_low(PIN_A2)){
output_high(PIN_A1);
delay_ms(3000);
output_low(PIN_A1);
output_high(PIN_A2);}

else

{
output_low(PIN_A2);
output_high(PIN_A1);
delay_ms(3000);
output_low(PIN_A1);


}
}


}

}

Editado por ADRIANOLIZ9
Adicionar tag's e modificar título conforme regra 3.6 (Jonathan)
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...