-
21/03/2009 - 14h12 FoxDeltaSierra
Re : PIC16F84 Gérer le PWM sous Flowcode
Salut Xeros,
Merci beaucoup c'est super sympa. Par contre je ne comprend pas tout... Tous les combien l'interruption va t-elle s'activer ? Comment tu vois que c'est un signal 50 Hz ? A quoi correspond C ?
Merci de ton aide !
-
21/03/2009 - 14h35 FoxDeltaSierra
Re : PIC16F84 Gérer le PWM sous Flowcode
J'ai un petit peu réfléchi et je pense avoir compris ce que tu as fais.
En gros, tu as considéré que j'avais une fréquence de fonctionnement de 2MHz, exact ? La période de chaque signal est donc de 1/2000 = 0,5 ms. Ainsi, je pense que le Timer0 doit avoir un front montant toute les 0,5ms, donc tu lances ta macro PWM toute les 0,5ms, j'y suis toujours ?
Ainsi, tu effectue la macro 40 fois, donc pendant 20ms et là dedans tu gères ton signal avec le système de comptage. Si l'on a dépassé la durée du temps haut voulue (20 x 0,5 = 10ms) dans le cas où ALPHA = 20, alors on passe à l'état bas. C'est bien ca ?
Donc pour moi qui dois faire varier le temps haut de 0,5ms à 2,0 ms, ALPHA doit varier de 1 à 4... mais le problème c'est que je n'aurai pas une grande précision, car mon mouvement ne pourra être divisé que par 4... J'aimerai pouvoir au moins choisir la position à 2° près... Il faut donc que j'augmente la fréquence de fonctionnement ?
Merci !
Dernière modification par FoxDeltaSierra ; 21/03/2009 à 14h39.
-
21/03/2009 - 14h44 FoxDeltaSierra
Re : PIC16F84 Gérer le PWM sous Flowcode
Oups je voulais dire 2Khz et pas 2Mhz.
-
21/03/2009 - 15h51 xeros
Re : PIC16F84 Gérer le PWM sous Flowcode
exactement et tu peut changer le rapport en changeant ALPHA
-
21/03/2009 - 18h13 FoxDeltaSierra
Re : PIC16F84 Gérer le PWM sous Flowcode
Ok. Il faudrait donc que je passe en 1mHz comme ca je pourrai faire 20000 cycles pour réaliser un signal de période 20ms. Ce qui me laisse assez de précision pour l'angle du servo. Je ne me trompe pas ?
Encore Merci tu m'as bien fait avancé !
-
21/03/2009 - 18h28 xeros
Re : PIC16F84 Gérer le PWM sous Flowcode
bah cela dépend surtout de la précision que tu veut car la tu a déjà un signal de 50hz mais la précision est de seulement 0.5 ms si tu prend un microcontrolleur et que tu met un fréquence 20 mHz tu peut avoir un interruption de programme a 10 kHz donc pour avoir un signal de 50 Hz tu le découper en 200 alors que avec 4Mhz ton interruption est a 2 kHz donc pour aavoir un signal de 50 Hz on le découpe en 40.
-
21/03/2009 - 18h35 xeros
Re : PIC16F84 Gérer le PWM sous Flowcode
sinon voila un exemple de pwm paramétrable avec un pic qui coute 1,5 euros http://www.mediafire.com/download.php?yftg55hj3yy
tu devrait comprendre les avantages d'un tel système
-
21/03/2009 - 20h22 FoxDeltaSierra
Re : PIC16F84 Gérer le PWM sous Flowcode
Aïe aïe aïe ca démonte ce truc ! Mais on ne peut pas avoir un signal de 50Hz, si ?
-
21/03/2009 - 22h14 xeros
Re : PIC16F84 Gérer le PWM sous Flowcode
si mais il faut jouer avec la vitesse de l'horloge le prescalaire et sur combien de période tu te met voila un exemple en 50 Hz : http://www.mediafire.com/?1imonztjdnz -
22/03/2009 - 10h59 FoxDeltaSierra
Re : PIC16F84 Gérer le PWM sous Flowcode
Salut Xeros,
Oui c'est pas mal mais ce n'est pas un signal de 50Hz car la période est de 2ms. J'ai essayé de modifier le tout pour avoir du 20ms, mais je ne comprend pas trop comment cela fonctionne... qu'est ce que le prescalaire ? Comment choisis tu ta période ?
Sinon régler le Rapport Cyclique ca serait parfait pour ce que je veux faire.
Encore merci !
-
22/03/2009 - 12h50 xeros
Re : PIC16F84 Gérer le PWM sous Flowcode
oups j ai du me tromper en gros ton préscalaire vas diviser ta fréquence d origine et périodval vas déterminer sur combien de front montant de ta nouvelle fréquence tu vas décomposer ton signal donc la fréquence de ton signal dépend de ces 2 valeurs plus le préscalaire sera grand plus ta fréquence sera petite et plus périodval sera petit plus ta fréquence sera élevé mais la précision de ton alpha diminura
-
22/03/2009 - 14h06 FoxDeltaSierra
Re : PIC16F84 Gérer le PWM sous Flowcode
Je ne parviens pas à trouver une valeur pour le prescalaire et le periodval afin d'obtenir un signal de 50hz... ?
-
22/03/2009 - 15h38 xeros
Re : PIC16F84 Gérer le PWM sous Flowcode
Ouai il y a effectivement un problème car tu pourrais jouer avec le fréquence de l'horloge mais avec un fréquence minimum de 1 MHz (sur flowcode ) tu ne peut pas le faire car tu pourrais seulement décomposer ton signal en 75 sinon revient a mon premier programme mais avec un pic qui tourne a 20mHz au lieu de 4 Mhz tu pourra multiplier par 2.5 la décomposition de 40*5=200 tu te retrouve avec presque des pourcentage et ça devient très facile ou pour avoir des pourcentage tu mes un prescaler de 4 au lieu de 2 dans l'interruption voila les prog. http://www.mediafire.com/?ynnbgdttznc -
11/04/2009 - 14h41 FoxDeltaSierra
Re : PIC16F84 Gérer le PWM sous Flowcode
Bonjour à tous,
Je déterre ce sujet car je suis maintenant au stade du test du programme sur la maquette. Je souhaiterai savoir quelle valeur de résistance et de condensateur il me faut pour réaliser une cellule RC permettant de générer une fréquence de 100 kHz pour l'horloge du PIC. Pouvez-vous m'expliquer comment faire pour trouver ces valeurs ?
Merci.
-
11/04/2009 - 16h49 xeros
Re : PIC16F84 Gérer le PWM sous Flowcode
| | |