Ir ao conteúdo
  • Cadastre-se

Medida de pulso


Ir à solução Resolvido por Bruno Jonko Duarte,

Posts recomendados

Boa tarde a todos.

estou desenvolvendo sistema de controle para meu TCC de eletrônica.

Eu no 3 modulo (sim estou adiantando o trabalho)

 

Eu estou empacado numa duvida, sei como configurar e usar o HC-RS04 mas não consigo pensar num modo de contar o tempo em que o pino de echo desse sensor fica em alta.

 

melhor explicando.

 

o pino começa em nível baixo, e feito a medição e o tempo que o pino ficar em nível alto é proporcional a distancia, mais como medir o tempo que ficou em alto?

 

por favor sem uso de bibliotecas. 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
...como medir o tempo que ficou em alto?

 

por favor sem uso de bibliotecas. 

#define pino RB0unsigned char tempo=0;...while(!pino);while(pino) tempo++; //até 255

Sem interrupts, sem timer , sem frescuras, precisão boa.

 

Se usar um timer meio fresco pode ficar melhor

defina ao seu gosto o valor do clock na entrada do timer TMR0 p.ex. (veja a definição de timer no seu compilador)

unsigned char tempo;//unsigned int distancia;//p.ex....while(!pino); //"começa em nível baixo"TMR0=0;while (pino); //"e feito a medição e o tempo que o pino ficar em nível alto""tempo=TMR0;//"...é proporcional a distancia"//distancia=tempo*constante_qualquer

Outras maneiras com interrupt, outros ajudantes...

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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...