help interpretation programme en "C"

Règles du forum
Cette section est dédié a vos projets, descriptions et demandes d'aide.
Merci de limiter le nombre de sujet par projets.
Lorsqu'un sujet deviens long vous pouvez éditer le premier message pour maintenir à jour le descriptif et garder en lisibilité
Avatar de l’utilisateur
F1CHF
Electrolab::Membre
Messages : 349
Enregistré le : 02 mars 2017, 22:57
Localisation : Franconville
Contact :

Re: help interpretation programme en "C"

Messagepar F1CHF » 29 janv. 2021, 10:42

Merci Mr Rude pour ton message en effet le PIC12F1571 semble sympathique
dans mon cas c'est pas juste une génération d'un signal de 10 khz
le principe est de comparer et d'asservir un oscillateur (OCXO ou TCXO) de 10 Mhz
avec un signal de 10 khz en provenance d'un recepteur GPS ( donc de haute précision)
et pour éviter une tripotée de diviseurs (style 74xx390) donc juste un petit pion qui divise pas 1000
on va y arriver !
papy F1CHF
Avatar de l’utilisateur
rude_ulm
Electrolab::Membre
Messages : 293
Enregistré le : 03 mars 2017, 10:52
Localisation : Houilles

Re: help interpretation programme en "C"

Messagepar rude_ulm » 29 janv. 2021, 11:07

dans le PIC12f1571 il y a un comparateur que tu peux utiliser pour faire une boucle de phase analogique, ou tu peux faire une boucle numérique.
Après faut voir le jitter que tu auras.
Tu peux utiliser l'un des PWM 16 bits pour sortir un signal analogique plus fin que celui du CNA interne
Je pense que le PIC12F1571/72 avec très peu de composants externes peut faire cet asservissement

Dom
Avatar de l’utilisateur
rude_ulm
Electrolab::Membre
Messages : 293
Enregistré le : 03 mars 2017, 10:52
Localisation : Houilles

Re: help interpretation programme en "C"

Messagepar rude_ulm » 31 janv. 2021, 10:19

Voici en 5mn ce que ça pourrait donner
Il est prudent de vérifier le tout, j'ai juste fait une simulation

MPLABX + MCC + XC8

Le tout pas du tout optimisé, mais fait avec MCC leur "code generator"

Dom
Fichiers joints
DIVISE1000.zip
(276.01 Kio) Téléchargé 146 fois
Avatar de l’utilisateur
F1CHF
Electrolab::Membre
Messages : 349
Enregistré le : 02 mars 2017, 22:57
Localisation : Franconville
Contact :

Re: help interpretation programme en "C"

Messagepar F1CHF » 01 févr. 2021, 10:04

Aie Mr Rude le vieux papy F1CHF est completement largué avec cette ecriture !
j'ai bien cherché dans le zip .. le programme source c'est Main.c ? ecrit pour un 12F1271 ?
je suis largué avec tout ces repertoires ...je retrouve même pas ton fichier de base ! le source
merci d'avance
Avatar de l’utilisateur
rude_ulm
Electrolab::Membre
Messages : 293
Enregistré le : 03 mars 2017, 10:52
Localisation : Houilles

Re: help interpretation programme en "C"

Messagepar rude_ulm » 01 févr. 2021, 14:45

Hello
Je suis un peu en surcharge cette semaine, tu aurais dû suivre mon introduction au PIC que j'avais faite au LAB il y a quelques mois :hehe:
D'ici là tu peux installer :
MPLAB X (l'IDE)
XC8 (le compilateur en version gratuite)
MCC (le générateur de code)

MCC permet de configurer tous les périphériques du µP et notamment PWM1 "facilement" même si le code n'est pas trop optimisé et génère des fichiers de config en .C et .H dans le dossier mcc_generated_files, c'est là que la config du PWM se trouve

Regarde les tutos sur MPLAB X, ouvre le projet DIVISE1000.X, et je reviens dans une semaine

Dom
Avatar de l’utilisateur
F1CHF
Electrolab::Membre
Messages : 349
Enregistré le : 02 mars 2017, 22:57
Localisation : Franconville
Contact :

Re: help interpretation programme en "C"

Messagepar F1CHF » 06 févr. 2021, 10:41

on m'a donné un lien qui je pense va me donner la solution
si je n'y arrive pas , va falloir que je change de hobby et retourner a ma collection de timbres (non je blague)
ici ....http://www.leapsecond.com/pic/picdiv.htm
papy F1CHF
Avatar de l’utilisateur
rude_ulm
Electrolab::Membre
Messages : 293
Enregistré le : 03 mars 2017, 10:52
Localisation : Houilles

Re: help interpretation programme en "C"

Messagepar rude_ulm » 06 févr. 2021, 15:13

Oui c'est une solution qui doit fonctionner
Elle utilise complètement le PIC qui ne sert qu'à ça
Celle que j'ai proposée permet d'utiliser le PIC pour faire autre chose en plus, par exemple de faire la boucle d'asservissement
La semaine prochaine, si tu veux, j'aurai un peu de temps pour te montrer en visioconf comment j'ai configuré ma solution

Dom
Avatar de l’utilisateur
F1CHF
Electrolab::Membre
Messages : 349
Enregistré le : 02 mars 2017, 22:57
Localisation : Franconville
Contact :

Re: help interpretation programme en "C"

Messagepar F1CHF » 06 févr. 2021, 19:05

Mr Rude
encore merci pour ton aide
on va essayer de trouver une créneau, je pense que le pic doit être deja bien occupé avec une clock de 10 mz
et la comparaison de fréquence semble assez simple avec un 74HC86 ou equivalent
a suivre
Avatar de l’utilisateur
rude_ulm
Electrolab::Membre
Messages : 293
Enregistré le : 03 mars 2017, 10:52
Localisation : Houilles

Re: help interpretation programme en "C"

Messagepar rude_ulm » 06 févr. 2021, 19:52

Justement non, dans le PIC12F1571/72 le PWM vit sa vie tout seul, et le PIC reste totalement dispo, ou presque car une IO est consommée par la sortie 10kHz. Il reste donc toute sa puissance pour faire une boucle de phase numérique, ou analogique avec le comparateur intégré

Donc un seul petit composant à 8 pattes pour faire tout plein de choses

Dom
Avatar de l’utilisateur
rude_ulm
Electrolab::Membre
Messages : 293
Enregistré le : 03 mars 2017, 10:52
Localisation : Houilles

Re: help interpretation programme en "C"

Messagepar rude_ulm » 08 févr. 2021, 14:11

C'est bon je suis revenu. Je pourrai faire une nouvelle introduction au PIC et à MPLAB en visio avec au hasard comme sujet un diviseur par 1000 pour celles ou ceux que ça intéresse

Dom

Retourner vers « Les Projets »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité