Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Bonjour a tous
Je suis nouveau ici et je recherche des renseignements sur la programmation d'un pic 16F84 pour mesurer une fréquence comprise 0,5Hz et 50 Hz et des largeurs d'impulsion comprise entre 100ms à 4 secondes
Quelqu'un aurait t'il une idée pour effetcuer ses opérations
Je suis débutant en programmation de pic et je recherche tout un ensemble de renseignements
Je suis actuellement le cours de Bigonoff qui est trop exellent
Merci par avance aux personnes qui pourront m'aider
en Gaule, entre le ras des pâquerettes et le plafond du jour
Messages
2 807
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Bonjour.
Si j'ai bonne mémoire, Bigonoff te donne la solution: dans un temps donné tu comptes le nombre d' impulsions que tu reçois sur une broche (éventuellement après mise en forme por éliminer de fausses impulsions).
Ou inversement tu mesures le temps entre deux (ou plus, pour augmenter la précision) impulsions consécutives.
Tu n'as plus qu'a faire un petit calcul pour afficher (ou utiliser) avec les unités voulues.
Petite remarque: évite de poster 3 fois le même sujet, ça fait désordre!
Il n'y a que dans le dictionnaire où 'réussite' vient avant 'travail'.
21/02/2006 - 10h37
CBR27
Date d'inscription
février 2006
Âge
43
Messages
9
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Désolé pour la répétition des messages (erreur de manip)
Aurais tu des exemples(hard et soft), car je debute vraiment en programmation.
Merci par avance
21/02/2006 - 16h32
abracadabra75
Date d'inscription
septembre 2005
Localisation
en Gaule, entre le ras des pâquerettes et le plafond du jour
Messages
2 807
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Envoyé par CBR27
Désolé pour la répétition des messages (erreur de manip)
Aurais tu des exemples(hard et soft), car je debute vraiment en programmation.
Merci par avance
Si tu comprends ce que dit Bigonoff dans son cours (remarquable), tu dois être capable:
1) de compter
2) de mesurer un temps
3) de faire ensuite un petit calcul.
Ecris tes étapes pas à pas et controle avec la simulation de MPLAB.
On dirait que, comme beaucoup, tu ne vois pas que la simplicité de mise en oeuvre des µprocesseurs, PIC ou autres, a pour corollaire d'avoir écrire un programme qui répond à ce que tu veux lui faire faire, et qu'un programme qui est bon pour l' un ne l'est pas pour l'autre...
On ne peut pas tout faire faire par les autres!
Il n'y a que dans le dictionnaire où 'réussite' vient avant 'travail'.
22/02/2006 - 06h35
CBR27
Date d'inscription
février 2006
Âge
43
Messages
9
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Bien sure je suis d'accord avec toi et je suis actuellement a la page 57 du cours de Bigonoff mais j'ai peur d'être pris de cours.
La solution et la version proto doit être prête pour mi Mars
N'ayant jamais utilisé de pic je m'inquiette simplement
Je cherche des personnes qui peuvent m'aider réellement.
Par exemple, le signal d'entré du pic doit être remis en forme mais faut t'il avoir un rapport cyclique particulier
Faut t'il qu'il soit égale à 1?
Merci par avance pour des réponses constructives et qui me ferons reelement avancer.
en Gaule, entre le ras des pâquerettes et le plafond du jour
Messages
2 807
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Suivrais-tu les cours du CNAM?
Il n'y a que dans le dictionnaire où 'réussite' vient avant 'travail'.
23/02/2006 - 06h31
CBR27
Date d'inscription
février 2006
Âge
43
Messages
9
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Non, je prépare une application industrielle
A+
23/02/2006 - 12h00
CBR27
Date d'inscription
février 2006
Âge
43
Messages
9
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Quelle pic pourriez vous me conseiller sachant que je doit repuérer mes mesures de fréquence ou de largeur d'impulsion sur un port RS232 d'un pc
Merci par avance
23/02/2006 - 12h49
abracadabra75
Date d'inscription
septembre 2005
Localisation
en Gaule, entre le ras des pâquerettes et le plafond du jour
Messages
2 807
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
A vue de nez, un simple 16F84-04 à 4 MHHz fait l' affaire.
Sûrement un 16F84-20 à 20Mhz, mais un peu plus cher.
Mais le choix doit se faire en fontion de tes besoins: S'il te faut de nombreuses sorties, si tu veux de l'I²C, de l'USB, etc...
Il faut alors: 1) définir tes besoins, donc avoir clarifié ton projet:
2) consulter la liste des puces correspondant à ton besoin
3) voir s'il est disponible, et où
Pour des tests, le 16f84-04 est parfait. Quand tu attaqueras le cours Bigonoff sur le 877, il te sera toujours temps d'investir dans une 2ème puce...
N'achète pas à priori, rien ne dit que tu auras le temps de faire le 2ème cours!
Il n'y a que dans le dictionnaire où 'réussite' vient avant 'travail'.
15/03/2006 - 10h30
mp3490
Date d'inscription
mars 2006
Âge
29
Messages
19
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Bonjour,
Est ce que vous pourriez me donner le lien de Bigonoff concernant ses cours permettant de calculer le temps.
Merci d'avance
15/03/2006 - 11h11
abracadabra75
Date d'inscription
septembre 2005
Localisation
en Gaule, entre le ras des pâquerettes et le plafond du jour
Messages
2 807
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Il n'y a que dans le dictionnaire où 'réussite' vient avant 'travail'.
15/03/2006 - 15h17
joop@gp
Date d'inscription
septembre 2005
Localisation
Belgium
Messages
60
Re : Mesure d'une fréquence ou d'une largeur d'impulsion a l'aide d'un PIC 16F84
Bonjour,
Principe de mesure d'une largeur d'impulsion:
Moi je metterais le signal a mesurer (la largeur) sur la pin INT0 (RB0).
Cette pin permet de générer une interruption lorsque son état passe de 0 à 1 ou (inversément suivant la configuration du bit INTEDG du regsitre INTCON).
Une fois l'interruption INT0 générée, il faut lancer le timer0. Ensuite, il faut changer le bit INTEDG du regsitre INTCON. (De cette facon il y aura une autre interruption lors changement d'état de la pin INT0 1=>0.)
Le timer devra etre configurer de facon a ce qu'il génère une interruption, lors de sont débordement afin de comptabiliser ses débordements.
Une fois que la pin INT repasse à O, il faut arreter le timer0 et regarder combien il y a eu de débordement et à combien il est au moment de son arret. Apres, il suffit de convertir ces valeurs en temps...
(Nombre de débordement * 255 * prescaler) * 4 * Foscillateur => donnera le temps...
Apres, il faut envoyer la valeur sur le un port RS232.
Remarque que le 16F84 ne possède pas de port UART (port série). Il te faudra le simuler...
Voila, il me semble que le tour de la question est faite...