Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Info PWM Duty Cycle PIC



  1. #1
    Lethargy

    Info PWM Duty Cycle PIC

    Je voulais juste savoir en quelle unité était exprimée la formule :

    PWM Duty Cycle = (CCPRXL:CCPXCON<5:4>) •TOSC • (TMR2 Prescale Value)
    C'est un pourcentage?? et le ":" entre les deux registres c'est un divisé??
    Je crois que la partie CCPRXL:CCPXCON<5:4> signifie que l'on doit prendre tout les bits de CCPRXL et les bits 5et4 de CCPXCON, je ne suis pas sur du tout. Je voudrais quelques infos la dessus. merci

    -----


  2. Publicité
  3. #2
    umfred

    Re : Info PWM Duty Cycle PIC

    Les 2 points signifie bien une concaténation des bits (c'est à dire que le registre CCPRxL est le poids fort du mot de 10 bits, et les bits 5 et 4 du CCPxCON représente les bits 1 et 0 du mots de 10 bits.) Bref tu as bien deviné.

    Pour répondre à question sur l'unité du Duty Cycle, je ne pense pas que ce soit en pourcentage: d'après la figure qui est présente à proximité de la formule (fig8-4 dans la doc du PIC 16f876A), il s'agirait plutôt du temps où le signal est à "1". Il faut donc mettre dans les registres CCPRxL et CCPxCON, la valeur correspondant au temps à 1 du signal que tu veux générer. (rien ne t'empeche d'écrire une routine qui convertit un pourcentage en la valeur correspondante )

  4. #3
    Lethargy

    Re : Info PWM Duty Cycle PIC

    Merci pour ces réponses, j'avais fini par deviné en effet en regardant le shema situé juste en dessous de la formule.. lol
    Autre question, je souhaite faire varier le PWM en fonction d'une consigne.ok pour faire varier les bit du reg CCPR1L mais pour changer les deux bits du deuxieme registre sa va être galère.

  5. #4
    umfred

    Re : Info PWM Duty Cycle PIC

    Comme ce sont les bits de poids faibles, regarde si, en les laissant tout le temps identique (à 0 par exemple), tu perds en pécision par rapport à ce que tu veux faire.

    Sinon pour le calcul du rapport cyclique (modification des registres selon la consigne), il devra se faire sur 2 octets (2 x 8 bits, car le rapport cycle se calcule avec 10 bits.
    Attention au dépassement de capacité -> la valeur ne devra pas dépasser 1023.

    Une fois ta valeur calculée, il suffira de faire un décalage vers droite avec retenu de l'octet de poids fort puis de l'octet de poids faible, ensuite de mettre le bit de la retenu (Carry) dans le bit 4 de CCPxCON.
    Recommencer les décalages en mettant à la fin la Carry dans le bit 5 de CCPxCON.
    Enfin mettre l'octet de poids faible obtenu dans le registre CCPxRL.
    C'est assez simple à faire en assembleur (enfin pour moi), mais peut être un peu plus complexe (quoique) en C ou basic (ou autre).

  6. #5
    Lethargy

    Re : Info PWM Duty Cycle PIC

    Ok merci pour l'info, j'ai testé, sa fonctionne correctement
    Affichage température et rapport cyclique sur mon lcd et variation automatique de vitesse du fan par rapport à la température ^^

  7. A voir en vidéo sur Futura
  8. #6
    meriman

    Re : Info PWM Duty Cycle PIC

    bonjour,

    je fais pareil, sauf que je veux changer la durée de clignotement d'une led, mais j'arrive pas à exploité la sortie, car la led est relié à une sortie d'un port.
    je programme en C,

    merci si vous pouvez m'aider.

  9. Publicité
  10. #7
    wiss1990

    Re : Info PWM Duty Cycle PIC

    je peux utiliser le TIMER pour généré un signal pWM?
    car j'ai pas compris les fonctions du CCP (duty)

Sur le même thème :

Discussions similaires

  1. Calcul PWM Period / PWM Duty Cycle
    Par Paintitblack dans le forum Électronique
    Réponses: 14
    Dernier message: 02/12/2010, 20h34
  2. Pwm Pic 18f4550
    Par Lethargy dans le forum Électronique
    Réponses: 3
    Dernier message: 09/03/2009, 13h57
  3. pwm sur pic
    Par alainav1 dans le forum Électronique
    Réponses: 5
    Dernier message: 06/12/2007, 23h31
  4. pwm sur pic
    Par noisyboxes dans le forum Électronique
    Réponses: 3
    Dernier message: 28/04/2007, 19h07
  5. juste une info, pour PWM
    Par michel dhieux dans le forum Électronique
    Réponses: 4
    Dernier message: 22/01/2007, 22h49