Página 1 de 1

Dúvida 16F628A TMR1

MensagemEnviado: 02 Ago 2007 09:56
por Junior_C
Alguem sabe qual a frequencia máxima que consigo ler no contador tmr1, estou utilizando cristal de 4Mhz, até 999Khz funcionou, se passar de 1Mhz ele não le nada, é isso mesmo?

MensagemEnviado: 02 Ago 2007 10:17
por fabim
como assim ler ??
Abraços
Fabim

MensagemEnviado: 02 Ago 2007 10:32
por Junior_C
Montei um frequencímetro com o 16F628A, e estou utilizando o TMR1 como contador para saber a frequencia e o TMR0 para gerar a base de tempo, mas se passar de 999Khz na entrada do TMR1 ele não conta mais nada simplesmente para de contar.

MensagemEnviado: 02 Ago 2007 11:00
por painho
tem que cuidar que o clock da int nao pode ser maior que OSC/4, se for maior o pic se perde, isso pq ele vai ficar maior parte do tempo acenando a int ha se for trabalhar perto deste limite e bom ter os códigos bem otimizado se nao ele acaba se perdendo ate mesmo dentro da int
se realmente tiver necessidade de trabalhar com 1mhz ja bota o cristal de 20mhz

MensagemEnviado: 02 Ago 2007 11:32
por fabim
bom vamos pensar assim..
O timer1 de 16 bits sem prescaller = 65535 valores possiveis.

Configuro o timer 0 para estourar em 100mS.

valor da frequencia capturada pelo timer 1 = valor contido nele X 1/0.1=10

Suponha que em 100mS ele capturou 65500 pulsos.
65500 * 10 = 655000 pulsos = 655khz.

Se voce configurar o timer zero para 1S ... a frequencia máxima sem que haja o estouro vai ser de 65,535KHZ ou seja valor máximo do timer1.

Se for da forma que eu descrevi e voce não esta usando prescaller, não sei como voce esta contando até 999khz a não ser que o timer0 esteja para 1 ou 10mS.

Abraços
Fabim

MensagemEnviado: 02 Ago 2007 14:10
por Junior_C
Esse frequencimetro é o de exemplo no livro PIC Técnicas Avançadas com uma modificação para mostrar em LCD e Cristal oscilador, ele esta funcionando até 1Mhz se passar de 1Mhz ele não mostra mais, no texto marca que funciona até 40Mhz, o Timer 1 inicia em 55536 e estoura a cada 10000 contagens e incrementa uma segunda variavel e assim por diante, no meu se a frequencia da entrada do contador Timer1 for maior que 1Mhz ele não conta nada, permanece o valor que estava, abaixo de 1Mhz funciona normal, a minha dúvida é o Timer1 pode receber um clock de mais de 1Mhz na entrada, se o cristal do pic é de 4Mhz e o clk interno de 1Mhz.

MensagemEnviado: 02 Ago 2007 14:28
por fabim
pode sim sem problemas.
Pois o timer 1 deve estar configurado pra receber incremento externo e não interno..

Mais da forma voce perde muito a resolução, porque a cada estouro voce insere o valor de 55536, o tempo que voce leva pra escrever isso ele ja perdeu pulsos, isto em alta frequencia claro..

Os frequencimetros que eu faço eu uso apenas o TIMER0 pra contar..

Chego a 60mhz tranquilo no 16F628/20.

e comparando com o frequencimetro que eu tenho profissional a margem de erro é muitissimo pequena.

Abraços

Fabim