servo futaba S3001 et PIC18F452

Bonjour,

Je m'essaie à utiliser un servomoteur futaba S3001 à l'aide du port RA0 d'un pic 18F452, en utilisant l'interruption du Timer1 (16 bits avec prédiviseur à 8), le pic est cadencé à 40mHz, 4 cycles pour la plupart des instructions, soit 100 nanosecondes pour 1 instruction. Voici le bout de code:

#pragma interrupt hprioISR

void hprioISR(void) { if (PIE1bits.TMR1IE && PIR1bits.TMR1IF) { // Si interruption Timer

1 valide et en cours SERVO = 0x01; LED = !LED; WriteTimer1(TimerOffset); PIR1bits.TMR1IF = 0; // Remise à 0 du flag de l'interruption Timer 1. Delay1KTCYx(10); SERVO = 0x00; } }

Quand j'observe les signaux à l'oscillo, cela semble coller, toutes les

20mS, j'ai un front montant de 1mS, (j'ai aussi essayé à 1,5mS).

Dés que je connecte le port RA0 sur le fil blanc du Servo, cela déraille grave, (la LED ne clignote plus, etc...).

2 questions: 1) le servo a 3 fils, 1 rouge, 1 noir, et 1 blanc. J'imagine que le noir est la masse, le rouge +5V et le blanc est la commande, est-ce exact ? (je ne trouve pas sur google le brochage de la bête).

2) Faut il relayer le signal par un transistor afin de ne pas trop pomper de jus ?

Si certains d'entre vous ont expérimenté la chose, cela m'intéresse.

Merci à vous tous et A+

Reply to
Bruno
Loading thread data ...

google en 15 secondes te confirme le brochage.

la led est sur un autre port ?? en supposant que oui, ce n'est pas un problème de sortance du pic, car si la led ne clignote plus, c'est que le soft ne tourne plus. si c'était juste un probleme d'interfacage, le pic tournerait.

pour avoir joué avec des servos, je sais qu'il faut bien l'alimenter, avec une alim faiblarde, les pointes de courant du moteur peuvent faire des variations de tension qui font déconner le servo et tout ce qui est alimenté avec.

JJ

Le 31/03/2012 19:52, jj a écrit :

Reply to
jj

On 31 mar, 19:57, jj :

t

Exact, j'avais suppos=E9 que la LED =E9tait elle aussi sur RA0, mais =E0 regarder son code ce sont deux ports diff=E9rents : les deux variables (ou macros) "SERVO" et "LED".

  1. > >> Delay1KTCYx(10);
Reply to
Jean-Christophe

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.