Salut tout le monde,
J'ai un PIC16F876A et je desire generer un signal pour un servomoteur de periode 1.2 ms. Je me suis renseigné du côté du PWM, j'ai un quartz 20 Mhz et j'ai trouvé sur internet cette formule
Periode = (PR2+1) x 4 x 0,00000005 x (TMR2 prescaler)
J'ai pris PR2=256 et T2CON=0x07 (c'est-à-dire prediviseur à 16)
(j'utilise le compilateur C CC5X)
J'ai donc une période de 0.8 ms.
J'ai pris aussi pour le rapport cyclique CCPR1L=38 (c'est-à-dire rapport de 50%)
Mais quand je le branche sur mon servo il se bloque à un extreme puis en y touchant un peu il se bloque dans une position centrale, puis en y touchant encore il se met à bouger de droite à gauche sur un petit angle....
Je ne comprends pas pourquoi je n'arrive pas à être precis. Quelqu'un à une idée?
0.8ms c'est la periode maximum avec un PWM?
Mon servo marche car je l'ai déjà testé en utilisant le TMR1.
Merci d'avance
-----