T
tronix
Compagnon
Bonsoir,
c'est un petit jeu avec JCS, à qui je tire mon chapeau pour ses différents posts, y compris pour son post d'initiation à l'Arduino. Le but n'est pas de contrer son post, mais de montrer une approche différente.
Arduino, très bien pour faire pas mal de choses, mais si c'est juste pour générer un signal basse fréquence stable pour piloter une horloge, il y a plus simple.
Je redonne le schéma, il reste à ajouter un bouton pour la mise à l'heure, plus ce qui pourra apparaitre nécessaire.
Comme je connais bien Microchip, même si je n'utilise quasiment que des processeurs 32 bits qui tournent à 80MHZ (en attendant les nouveaux avec encore plus de mémoire et tournant à 200MHz), il m'arrive ponctuellement d'utiliser les PIC12 en boîtier SO8 voire même les PIC10 en minuscule boîtier SOT23, bien adaptés ici.
Il est évident que l'on peut porter le schéma et le code sur d'autres familles telles que l'Arduino, c'est un peu le but de ce post (et pas pousser vers Microchip, je n'ai pas d'intérêt chez eux). Je ne veux pas polluer le post de JCS ni sembler faire une critique, mais la communication entre les 2 reste possible.
Le schéma
Le processeur existe en DIP8, même si la référence est celle d'un SO8. Il y a plein de variantes, peu importe ici, rien de spécifique, c'est juste celle que j'ai dans mes tiroirs
Le programme, en C
Voir la pièce jointe Horloge.c
Les macros et constantes
Le programme principal
La fonction d'interruption, partie utile du programme. Quelques lignes, et encore, on sort des signaux en plus.
L'initialisation du timer
Et c'est tout !
Le plus dur est d'initialiser le timer et le processeur, il faut se plonger dans la doc du processeur utilisé.
Il manque aussi quelques lignes pour gérer un bouton et faire la mise à l'heure. A suivre...
Je ferai aussi la version avec le PIC10, qui sera soudé directement au dos de l'oscillateur, pour obtenir un montage minimaliste et minuscule.
Je vais ajouter plus tard des photos et des relevés à l'analyseur et à l'oscilloscope, ainsi qu'une vérification de la stabilité.
Composants :
http://www.mouser.fr/ProductDetail/Fox/FOX924B-10000/?qs=sGAEpiMZZMt8zWNA7msRCr8qH5p3IKFlxLulqT%2bPqVs=
http://www.mouser.fr/Search/Refine.aspx?Keyword=pic12f1840
http://www.mouser.fr/Semiconductors...trollers/_/N-6hpef?Keyword=pic10lf320&FS=True
Coût pour avoir un signal de référence à la fréquence et forme voulues : environ 4€. Précision et stabilité prévues : 1.5 à 2.5ppm (1 minute / an).
Avec un peu d'habilité, cela peut se câbler sur un petit bout de cuivre pastillé ou même en l'air.
c'est un petit jeu avec JCS, à qui je tire mon chapeau pour ses différents posts, y compris pour son post d'initiation à l'Arduino. Le but n'est pas de contrer son post, mais de montrer une approche différente.
Arduino, très bien pour faire pas mal de choses, mais si c'est juste pour générer un signal basse fréquence stable pour piloter une horloge, il y a plus simple.
Je redonne le schéma, il reste à ajouter un bouton pour la mise à l'heure, plus ce qui pourra apparaitre nécessaire.
Comme je connais bien Microchip, même si je n'utilise quasiment que des processeurs 32 bits qui tournent à 80MHZ (en attendant les nouveaux avec encore plus de mémoire et tournant à 200MHz), il m'arrive ponctuellement d'utiliser les PIC12 en boîtier SO8 voire même les PIC10 en minuscule boîtier SOT23, bien adaptés ici.
Il est évident que l'on peut porter le schéma et le code sur d'autres familles telles que l'Arduino, c'est un peu le but de ce post (et pas pousser vers Microchip, je n'ai pas d'intérêt chez eux). Je ne veux pas polluer le post de JCS ni sembler faire une critique, mais la communication entre les 2 reste possible.
Le schéma
Le processeur existe en DIP8, même si la référence est celle d'un SO8. Il y a plein de variantes, peu importe ici, rien de spécifique, c'est juste celle que j'ai dans mes tiroirs
Le programme, en C
Voir la pièce jointe Horloge.c
Les macros et constantes
Le programme principal
La fonction d'interruption, partie utile du programme. Quelques lignes, et encore, on sort des signaux en plus.
L'initialisation du timer
Et c'est tout !
Le plus dur est d'initialiser le timer et le processeur, il faut se plonger dans la doc du processeur utilisé.
Il manque aussi quelques lignes pour gérer un bouton et faire la mise à l'heure. A suivre...
Je ferai aussi la version avec le PIC10, qui sera soudé directement au dos de l'oscillateur, pour obtenir un montage minimaliste et minuscule.
Je vais ajouter plus tard des photos et des relevés à l'analyseur et à l'oscilloscope, ainsi qu'une vérification de la stabilité.
Composants :
http://www.mouser.fr/ProductDetail/Fox/FOX924B-10000/?qs=sGAEpiMZZMt8zWNA7msRCr8qH5p3IKFlxLulqT%2bPqVs=
http://www.mouser.fr/Search/Refine.aspx?Keyword=pic12f1840
http://www.mouser.fr/Semiconductors...trollers/_/N-6hpef?Keyword=pic10lf320&FS=True
Coût pour avoir un signal de référence à la fréquence et forme voulues : environ 4€. Précision et stabilité prévues : 1.5 à 2.5ppm (1 minute / an).
Avec un peu d'habilité, cela peut se câbler sur un petit bout de cuivre pastillé ou même en l'air.
Dernière édition: