[Pic 16F690] Signal pwm
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

[Pic 16F690] Signal pwm



  1. #1
    Tripic

    [Pic 16F690] Signal pwm


    ------

    Bonjour à tous,

    Je voudrai générer un signal pwm à partir d'un PIC16F690 pour le contrôle d'un servomoteur.
    Etant débutant dans la programmation des PIC, j'ai besoin de votre aide pour la configuration du pic et la mise en oeuvre.

    Merci d'avance pour votre aide.

    -----

  2. #2
    Tripic

    Re : [Pic 16F690] Signal pwm

    J'ai oublié de préciser que je programme en pascal (mikroPascal). Mais si vous avez des exemples en C ça ne me dérange pas du moment que c'est bien expliqué.

  3. #3
    maximilien

    Re : [Pic 16F690] Signal pwm

    Bonsoir,
    mon MikroC a une librairie de PWM, il doit en être de même avec MikorPascal, non?

  4. #4
    Tripic

    Re : [Pic 16F690] Signal pwm

    Effectivement il y a une librairie de PWM mais j'aimerai justement des exemples pour l'utiliser.

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

    Re : [Pic 16F690] Signal pwm

    Ben, toujours sous MikroC à la fin des descriptions des fonctions il y a justement un exemple.

  7. #6
    Tripic

    Re : [Pic 16F690] Signal pwm

    Oui, et aucune configuration du pic n'est necessaire ?

  8. #7
    maximilien

    Re : [Pic 16F690] Signal pwm

    Je joints le code en C (donner par MikroC)
    Code:
    // microcontroller : P16F877A
    // PWM module is set on RC2.
    
    unsigned short j, oj;
    
    void InitMain() {
      PORTB = 0;              // Set PORTB to 0
      TRISB = 0;              // PORTB is output
    
      ADCON1 = 6;             // All ADC pins to digital I/O
      PORTA = 255;
      TRISA = 255;            // PORTA is input
    
      PORTC = 0xFF;           // Set PORTC to $FF
      TRISC = 0;              // PORTC is output
      Pwm_Init(5000);         // Initialize PWM module
    }//~
    
    void main() {
      InitMain();
      j   = 80;               // Initial value for j
      oj  = 0;                // oj will keep the 'old j' value
      Pwm_Start();            // Start PWM
    
      while (1) {             // Endless loop
        if (Button(&PORTA, 0,1,1))   // button on RA0 pressed
          j++ ;                      //    increment j
        if (Button(&PORTA, 1,1,1))   // button on RA1 pressed
          j-- ;                      //    decrement j
    
        if (oj != j) {        // If change in duty cycle requested,
          Pwm_Change_Duty(j); //   set new duty ratio,
          oj = j;             //   memorize it,
          PORTB = oj;         //   and display on PORTB
        }
        Delay_ms(200);        // Slow down a bit
      }
    }
    Comme on peut le voir il y a les configurations.
    Il n'y a qu'à programmer le PIC avec le .hex fournit puis de voir le résultat.

  9. #8
    Tripic

    Re : [Pic 16F690] Signal pwm

    Merci, effectivement je viens de trouver la même chose dans les exemples de mikroPascal. Je regarde et te tiens au courant.

  10. #9
    invite13f6ed1b

    Re : [Pic 16F690] Signal pwm

    s'il vous plait donner moi le code d'un servomoteur avec un pic 16F877 en langage micropascal je besoin de ca

Discussions similaires

  1. Generer signal PWM precis avec un PIC
    Par invite5d1bc976 dans le forum Électronique
    Réponses: 9
    Dernier message: 06/04/2012, 19h05
  2. Signal pwm langage C PIC16F876A
    Par Tyller dans le forum Électronique
    Réponses: 51
    Dernier message: 06/04/2010, 17h31
  3. Transformation de signal PWM en sinus
    Par invite79116907 dans le forum Électronique
    Réponses: 2
    Dernier message: 13/02/2008, 15h46
  4. Signal pwm
    Par inviteec009e1f dans le forum Électronique
    Réponses: 5
    Dernier message: 10/08/2007, 08h27
  5. Passer d'un signal analogique à un PWM
    Par ashrak dans le forum Électronique
    Réponses: 5
    Dernier message: 17/04/2006, 10h52
Découvrez nos comparatifs produits sur l'informatique et les technologies.