Electromag1 Circuits électroniques et Picaxes

Petit site pour ceux qui bricolent en électronique en général et sur les PICAXES en particulier.
Les PICAXES sont des microprocesseurs (PIC de Microship) programmables en BASIC. Pleins de qualités, pas chers, ultra faciles à programmer.
Tout (ou presque) est sur le site du distributeur Gotronic (voir les liens).
Les pages  seront ajoutées ou modifiées petit à petit.
Dans le but d'améliorer ce blog, communiquez moi vos remarques et les erreurs que vous pouvez constater.
Pour me contacter: Envoyez un mail à l'adresse : mag1mic@free.fr .  Tout message reçoit une réponse
Pour retourner au menu, Cliquer sur "LISTE DES PAGES", ici ou en haut de la colonne de gauche
Pour laisser un message, allez dans le "LIVRE D'OR"
Bonne visite
 
 

Qlocktwo
Horloge à texte

Présentation:

Cette page fait suite à cette discussion sur Futura Science. thjazi39 souhaitant fabriquer une horloge à texte de ce type . Non, c'est pas donné....
Pour info, thjazi39 a réalisé son projet magistralement à base de leds adressables et d'arduino nano. Voici le lien sur son site. voici une photo
Un des participants à ce forum propose une très belle solution, à base de µC STC32 avec RTC interne, charlieplexing avec une led par lettre, tout sur la même carte... magnifique.
Ily a aussi cette très belle réalisation, toute en cmos, pour les amateurs de logique câblée
Il y a aussi ceux qui n'ont pas les moyens d'utiliser cette bête de course. Je propose donc une alternative à base de picaxe et de modules trouvables sur internet: RTC3231 , expandeurs PCF8574, et des amplis de courant uln2803. Les liens ne sont que des exemples.
Le but de cette page est que chacun puisse se fabriquer une Qlocktwo avec des modules abordables et des circuits en version "veroboard" ou PCB.
Il y aura (bientôt) un lien fournissant le total des infos: circuits, codes,etc
 

Cahier des charges:

Le système affiche l'heure sous forme de textes: "Il est huit heures moins le quart".
La Qlocktwo originale change d'heure à l'heure toutes les cinq minutes et dispose de quatre leds pour suivre la progression des minutes intermédiaires.
Dans cette version, la résolution est de cinq minutes avec une précision de -2mn30 à +2mn30 (le changement n'est pas au passage des cinq minutes réelles pour éviter une erreur allant de 0 à 5 mn).
Ajout 14/04/20: En plus des indication "AM" et "PM" pour matin et soir (soit dit en passant, AM signifie: "Ante Meridiem, et PM: Post Meridiem, c'est donc du latin et pas de l'anglais), il y a maintenant deux signes, - et + en bas à gauche. Les  cinq minutes de résolution sont divisées en trois: entre -2mn30s et -1mn, le signe - est allumé; entre -1mn et +1mn,rien n'est allumé et entre +1 et +2mn30s, le signe + est allumé.
Il y a une sortie alimentation par groupe de lettres. Le choix est d'éclairer chaque lettre par une diode cms en série avec sa résistance de limitation.
L'indication de l'heure se fait de H-25mn à H+30mn (ex: de 8heures-25 à 8h et demie).
Présence d'une procédure de mise à l'heure de la RTC (DS3231) à partir du texte de l'horloge.
Re-synchronisation automatique de l'horloge en cas de perte d'alimentation.
L'éclairage est fonction de la lumière ambiante, autour d'une luminosité choisie
 

Principe de fonctionnement:

Il y a en fait deux horloges dans ce système :
L’horloge RTC DS3231 (ou DS1307), est mise à l’heure sur demande par une procédure spécifique.
Cette RTC est la mémoire du système, protégée par sa batterie. Elle fournit également les pulses 1 Hz de précision horlogère faisant tourner une seconde horloge dite "horloge programme".
Il suffit de compter 300 pulses pour avancer cette seconde horloge de 5 mn. Sauf pour le premier comptage qui est de 150 pulses. Cette "horloge programme" est donc en avance de 2mn30s par rapport à l’heure exacte.
Ah!, et pourquoi ?
Parce que dans la vie courante, quand on regarde une pendule, on ne regarde pas à la minute près, On regarde où se trouve la grande aiguille par rapport au chiffre le plus proche, et on lit " huit heures un quart ","huit heures vingt ", ou "huit heures vingt-cinq", et ça suffit la plupart du temps.
Cette horloge fait donc directement ce que l'on fait régulièrement, et ce qui pouvait paraitre un défaut devient une qualité.
La RTC DS3231 a été utilisée dans cette page. Quant à l'expanseur PCF8574, c'est ici. On est pas en terrain inconnu.
 

Architecture générale:


 

Organisation des textes:

Voici le début de la grille liant les textes à l'heure horloge, en fait, il y a 28 groupes de mots
Il y a deux parties, celle des minutes occupant les octets minutes 1 et 2 se répétant toutes les heures
et celle des octets heures 3 et 4 (avec midi et minuit) , ici les états allant de minuit -moins 25 à minuit et demi
Cette grille est organisée pour optimiser les liaisons entre sorties ampli ULN et groupes de texte.

Mise à l'heure de la RTC:
Il a fallu tenir compte du fait que le cycle des minutes par rapport aux heures n'est pas de 0 à 59, mais de -25 à +30.
La mise à l'heure se fait à partir des textes en tenant compte de cette particularité.
Voir aussi une procédure à partir d'une hologe standard.
Mise à l'heure de l'horloge interne RTC DS323
Le choix de l'heure doit correspondre au prochain multiple de cinq. Ex si l'heure actuelle est 8h32, préparer l'horloge pour 8h35
Elle se fait avec un unique poussoir, en trois étapes. On entre dans le sous-programme en appuyant sur le poussoir pendant la mise sous tension.
On sélectionne par un appui court (<2s) et on enregistre par un appui long (>2s). Les enregistrements sont accompagnés d'un beep.
Réglage "AM"/"PM":
En relâchant le poussoir après la mise sous tension, chaque appui bref (<2 s) sur le poussoir fait basculer entre les phases matin/soir. Les lettres "AM" et "PM" s'allument alternativement, AM  et PM . Lorsque le texte correct est allumé, un appui long (>3 s) enregistre le choix et fait passer à la phase réglage de l'heure.
 Réglage de l'heure:
Chaque appui bref incrémente le cycle de l'affichage de l'heure, de 1 à 11, puis "midi" ou "minuit" en fonction de l'option AM/PM précédente. Lorsque l'affichage est correct, un appui long enregistre le choix et fait passer au réglage des minutes.
Réglage des minutes:
Chaque appui bref incrémente le cycle des minutes, de "cinq" à "moins cinq", un appui long enregistre le choix,
Lorsque l'heure est pré affichée en totalité, le programme  attend un nouvel cycle appui- relâchement pour effectuer la mise à l'heure.
Prendre une heure de référence (un smartphone par ex.), quelques secondes avant l'heure exacte, appuyer sur le poussoir et relâcher au passage à 00. on entend deux beep: L'horloge interne DS3132 est à l'heure.
Mais l'heure ne s'affiche pas immédiatement. La mise à l'heure est immédiatement suivie d'une resynchronisation, comme en cas de perte d'alimentation.
Le programme attend de lire des minutes multiples de 5 sur la RTC suivant la mise à l'heure.
Lorsque c'est le cas, le programme compte 150 secondes, heures et minutes sont chargées dans le programme et affichées...enfin.
On pourra alors vérifier que l'affichage de l'heure en texte est exacte à +/- 2mn 30s avec l'éclairage de "-" ou "+"
La resynchronisation
Une mise à l'heure ou une coupure de courant est immédiatement suivie d'une resynchronisation. Cette procédure attend le passage d'un multiple de 5mm sur l'horloge RTC et initialise le premier comptage de pulse à 150.
La boucle principale
Chaque pulse 1Hz reçu est comptabilisé par un programme d'interruption. Au bout d'un nombre max (300 pour 5 mn), le programme d'interruption incrémente de 5 le compteur des minutes et déclenche la mise à jour de l'horloge programme sur un cycle de 12 heures, avec la spécification "AM" ou "PM".
Après passage dans les tables "select case" jours et minutes, on dispose de quatre octets correspondants aux lignes de la grille Excel, ces octets sont transmis aux expanseurs PCF8574 pour afficher le texte.

Premiers essais...
La diode du "s" de "est" a claqué suite à un C/C de sa 75 ohms (d'où l'utilité d'isoler chaque led).
Impression de la feuille Excel sur papier calque, il n'y a pas encore le + et -

 
SUITE PAGE 2 :  LA REALISATION
 



Créer un site
Créer un site