Página 1 de 1
frequencimetro watimetro.

Enviado:
16 Nov 2006 10:00
por fabim
meus caros.
Estou brincando com pic12f629 para fazer um frequencimetro e watimetro rf.
watimetro sem problemas ja esta funcionando.
O circuito é alimentado pela propria serial e consumo médio de 18mA.
no caso do frequencimetro estou usando um prescaler MC12080, divisão por 10,20,40,80. Peguei vários AN´s porêm não estou entendendo a lógica.
Será que alguem ja montou um frequencimetro de .... 50mhz e poderia me dar uma força ?
Fabim.

Enviado:
16 Nov 2006 10:48
por eletroinf
O frequencímetro conta o número de ciclos do sinal que se está medindo em um tempo conhecido, que se for 1 segundo dá a frequência diretamente. Sobre esses prescaler, veja bem no datasheet que esses (infelizes) têm frequência mínima de trabalho, algo em torno de 100 MHz pra esse aí que tu tá usando e ainda a sensibilidade diminui quando a frequência diminui.

Enviado:
16 Nov 2006 15:20
por fabim
por exemplo em 100 mS tive 10 estouros no tmier0 em prescaler de 1/64.
facil.. 256*64*10*10 = 1638400 pulsos .. 1.638.400MHZ..
Até aí blz.
mais por exemplo em 40mhz... o estouro do Timer0 em 1/64... que gera a interrupção para eu incrementar a variavel de numeros de estouros acontece a cada. 0,0004096 S.
Aí vem minha dúvida.
Como eu vou tratar a interrupção sem que eu interfira no delay de 100mS...
Obrigado pela resposta.
fabim

Enviado:
17 Nov 2006 19:17
por msamsoniuk
voce poderia usar um ou dois 74F93 (ou um componente capaz de suportar frequencias maiores de entrada) cascateados, para fazer prescalers de 2 a 256, jogando o resultado, entao, em um timer do microcontrolador, jah com uma frequencia bem mais baixa.

Enviado:
18 Nov 2006 17:04
por eletroinf
Será que não é melhor usar o Timer 1 pra contar os pulsos ? Este é de 16 bit e ainda possui prescaler, creio que se não for o bastante pra eliminar seu problema pelo menos vai reduzí-lo a um índice aceitável.

Enviado:
18 Nov 2006 18:44
por msamsoniuk
utilizando um contador maior e prescalers maiores voce ainda vai precisar de um prescaler externo. um divisor como o 74LS93 poderia receber clocks de ateh 40MHz e dividir por 16x, enquanto que um 74F93 poderia chegar aos 120MHz e dividir 16x, de modo que o clock de entrada no PIC seria reduzido a algo em torno de 7MHz.

Enviado:
20 Nov 2006 08:39
por fabim
nessa questão em si do prescaler eu ja tenho solução.
Minha maior dúvida é na logica de contagem.
Em X mili segundos "exatos" eu conto o numero de estouros...
porem cada vez que eu configo o estouro do timer 0 ou 1 eu influencio no tempo de contagem.. isso que esta sendo feroz de eu entender.
Abraços.
Fabim.

Enviado:
20 Nov 2006 08:57
por eletroinf
Bueno, faz a base de tempo com interrupção.
Se fizer a base de tempo sem interrupção, faça a leitura de estouros do timer que conta os pulsos externos sem interrupção também, no meio da rotina de base de tempo. É meio enjoado, mas vá simulando no Mplab até achar os tempos....