Ir ao conteúdo
  • Cadastre-se

PIC como chamar uma função de tempo em tempo no PIC linguagem C


Visitante

Posts recomendados

Boa tarde,

 

estou tentando desenvolver um projeto para faculdade no qual tenho que acionar um motor pelo PIC, de tanto em tanto tempo (funciona por 10 segundos e desliga por 1 minuto).

Estou com dúvida em como chamar a função de tanto em tanto tempo, daria para fazer criando uma função void delay?

ex:

void delay(unsigned long int tempo)
{
    unsigned long int x, y;
    for(x=0; x<100; x++)for (y=0; y<tempo; y++);

}

void main(void){

while(1)

{

    motor=1

    delay(10000)

    motor=0

    delay(60000)

}

}

 

Valeu!!

Link para o comentário
Compartilhar em outros sites

  • Moderador

@Vitor Parma Olá,  

Não sou nada conhecedor em C/C++  

Mas acho que existe uma função que faça  isso.. como o setInterval()

 

int main(int argc, const char * argv[]) {
    std::atomic_bool b;
    setInterval(b, 1000, printf, "hi there\n");
    getchar();
}

Fonte: https://stackoverflow.com/questions/33234403/using-setinterval-in-c

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP
Em 02/12/2019 às 17:42, Vitor Parma disse:

daria para fazer criando uma função void delay?

Certinho amigo. Veja outra opção minimalista:

void delay(unsigned long int tempo)
{ 
while(tempo--);
}

Sabendo o tempo de cada iteração, você controla direitinho o tempo de espera.

 

Off-on topic

Como sabemos, delay() é uma literal perda de tempo. Com o tempo você há de perceber que o uso do hw (timer) do mc tende a ser mais indicado além do que torna o sistema mais preciso.

 

E sim, apesar de não ser exatamente aquela, o amigo @DiF tem um certo grau de razão: alguns compiladores têm função delay() prépronta. Consulte o help do seu.

 

edit...

 

Cada um que aparece. E ... desaparece. Sem sequer agradecer. Enfim... fim.

  • Curtir 4
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...