Bonjour à tous,
Je souhaite mesurer la fréquence d'un signal carré d'une plage comprise entre 30 et 70Hz. Pour cela j'utilise un pic 18F4520 et un afficheur lcd.
Pour calculer la durée jutilise TIMER0.
Mon quartz est de 20Mhz. Tout d'abord je configure mon osc interne à 8Mhz.
Donc Fosc/4= 2Mhz
Donc 2000000 cycles/s
1/2000000= 0.5us-> un cycle
donc le timer0 peut compter jusqu'à 256*0.5us= 128us
jutilise un prédiviseur(128)-> 128*128us= 16,38 ms.
Dans mon programme, je mesure la durée de T/2 entre front montant et front descendant. Je peut donc mesurer un fréquence de 30hz mini!
Programme en pièce jointe
Mais voila quand je programme mon pic il s'affiche sur mon ecran lcd des valeur très variables qui ne correspondent pas avec la réalité.
Si quelqu'un voit ce qui peut générer des erreurs merci de me répondre.
-----