problème servo controler par un pic
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

problème servo controler par un pic



  1. #1
    invite7cf2d5d8

    problème servo controler par un pic


    ------

    salut a tous !
    alors voila je n'arive pas a controler mon servo voici le code:

    Code:
    #include <16f876A.h>
    #use delay(clock=20000000)
    #fuses HS, NOWDT, NOPUT, NOPROTECT, NOBROWNOUT, NOLVP, NOCPD 
    #define servo pin_b0
    int a;
    int i;
    
    void position90 (){
    While(i!=0){
    Output_bit(servo,1);
    Delay_us(1500);
    Output_bit(servo,0);
    Delay_ms(18);
    
    }
    }
    void position0 (){
    While(a!=0){
    Output_bit(servo,1);
    Delay_us(800);
    Output_bit(servo,0);
    Delay_ms(18);
    
    }
    }
    void position180 (){
    While(1){
    Output_bit(servo,1);
    Delay_us(2000);
    Output_bit(servo,0);
    Delay_ms(18);
    
    }
    }
    
    Void main (){
     position90();
     delay_ms(3000);
     i=0;
     position0();
     delay_ms(3000);
     a=0;
     position180();
     
     
     }
    je m'explique je voudrais que le servo se positione au mileu pui aprés 3s a -180degré puis 3s apré 180degré.
    Bien sur les valeur en degré sont beaucoup arondi
    bon je compile, je transfère sur le pic ,je teste ,rien pendant 6s pui le servo se positione a 180degré
    est ce que le code est correct ?
    merci pour votre aide

    -----

  2. #2
    Qristoff
    Animateur Électronique

    Re : problème servo controler par un pic

    Bonsoir,
    un servo "normal" ne permet pas sans modification d'atteindre -180° et +180°.
    Pour le C, désolé je ne peux pas beaucoup t'aider...
    Tu utilises la sortie PWM du pic ?
    Tout existe, il suffit de le trouver...!

  3. #3
    invite7cf2d5d8

    Re : problème servo controler par un pic

    bonsoir et merci pour ta reponse rapide!!
    non je n'utilise pas la sortie pwm du pic. je fait les impulsion grace au timer et la "boucle" while et sa marche ! mais je n'arrive pas a changé de direction toute les 3s.

  4. #4
    invitef86a6203

    Re : problème servo controler par un pic

    une boucle fait 20 ms
    donc 1 sec= 1 / 0.20 = 50
    3 secondes = 150

    Code:
    Void main (){
    a= 150
     position90();
     i=150;
     position0();
     position180();
       }

  5. A voir en vidéo sur Futura
  6. #5
    invite7cf2d5d8

    Re : problème servo controler par un pic

    SA MARCHE !!!
    merci !!

Discussions similaires

  1. servo et pic 16f877
    Par invitecb40bc0e dans le forum Électronique
    Réponses: 7
    Dernier message: 11/10/2009, 09h42
  2. Commande simple d'un servo avec un pic
    Par invite18fbccbd dans le forum Électronique
    Réponses: 2
    Dernier message: 18/03/2008, 18h58
  3. Fonctionnement d'un PIC avec plusieurs servo
    Par invite5d1bc976 dans le forum Électronique
    Réponses: 4
    Dernier message: 09/12/2007, 15h37
  4. PIC 16F877 pour contrôler 2 appareils
    Par invite09c7c83b dans le forum Électronique
    Réponses: 5
    Dernier message: 11/07/2007, 17h40
  5. Contrôler 12 servo depuis un microprocesseur PIC
    Par invite6afd98bf dans le forum Électronique
    Réponses: 6
    Dernier message: 16/05/2006, 18h53
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...