Electronique > Réalisations > Affichage / Mesure > Horloge 003 (horloge parlante)

Dernière mise à jour : 05/02/2012

Article non terminé, volontairement non référencé dans les sommaires du site


Présentation

Si on y regarde de près, cette horloge semble tout ce qu'il y a de plus hordinaire (contraction de HORrible et orDINAIRE). Pourtant, elle ne fait pas qu'indiquer l'heure, lisez plutôt (de préférence à voix haute) :
Le montage s'articule autour d'un PIC 18F2420 associé à une horloge temps réelle (RTC) et l'affichage de l'heure se fait via quatre digits sept segments utilisés en mode multiplexé.
Dans les années 90, j'ai réalisé une horloge parlante en kit basée sur un circuit spécialisé, pour l'anniversaire d'une amie. Je n'avais pas trop de mérite car il m'avait suffit de souder les composants conformément au plan fourni avec le kit. Mais quel plaisir d'entendre une horloge parlante à la maison. Ce n'était pas très courant, à l'époque ! Si j'ai voulu renouveler l'expérience en cette année 2012, c'est autant pour me faire plaisir que dans un but légèrement pédagogique : pourrait-on apprendre l'heure en l'entendant ? Si oui, cela me serait fort utile car j'ai encore des tas de choses à apprendre.

Avertissement

Ce projet a fait l'objet d'un dépôt de paternité auprès de l'INPI (Institut National de la Propriété Industrielle) sous le numéro xxxxxx.

Schéma

Le schéma qui suit est complet, ne lui manque que l'alimentation.




Horloge temps réel externe
Un circuit spécifique RTC (Real Time Clock) de type PCF8583 est mis en oeuvre pour la fonction "fourniture données horaires". Ce circuit est constitué d'un oscillateur travaillant sur une base de temps 1 Hz à partir d'un quartz 32,768 kHz et d'une circuiterie interne qui s'appuie sur cette base de temps 1 Hz pour incrémenter de façon "intelligente" les information heure et date, lesquelles sont fournies à la demande via une liaison série deux fils I2C. Les deux boutons poussoirs SW1/Set et SW2/Val permettent respectivement de sélectionner le paramètre à ajuster (date ou heure) et d'en modifier la valeur courante. Au premier démarrage du système, la date et l'heure doivent être mises à jour, cette opération n'ayant plus besoin d'être effectuée par la suite puisqu'une pile de sauvegarde assure le maintien des informations horaires en cas de coupure secteur.

Horloge PIC ?
Mais dites-moi mon cher ami, est-il vraiment indispensable d'utiliser un circuit RTC externe ? Ne pourrait-on pas se passer du PCF8583 et ajouter un quartz au PIC qui serait quant à lui basé sur des interruptions pour générer la base de temps 1 Hz ? Mais bien sûr qu'il est possible de procéder ainsi ! D'ailleurs c'est un secret et je vous demande de le divulguer le plus largement possible, je travaille sur le code logiciel qui devrait à terme permettre de choisir entre les deux modes de fonctionnement : horloge interne ou horloge externe. Notez bien que sur le schéma actuel les deux broches du PIC dédiées à l'oscillateur quartz sont encore libres...

Affichage LED
-
Mode multiplexé.

Stockage et lecture des sons
Les sons correspondant aux heures et minutes ainsi que ceux correspondant aux messages de réveil sont stockés sur une carte SD pour vous permettre de les modifier à volonté. Le format de ces sons est impérativement 16 kHz / 8 bits. En attendant de constituer les votres, je met à disposition un ensemble de sons qui vous permet de démarrer et surtout de tester le circuit. Les fichiers doivent porter un nom imposé par le code logiciel, ce qui ne doit poser aucun problème même si vous préférez utiliser les votres. La convention de nomage des fichiers est la suivante :
SI vous constatez qu'un son n'est pas émis alors que les autres le sont, la première chose à vérifier est le bon nom des fichiers stockés sur la carte SD.

Extension NTP ?

Mise à jour automatique de l'heure via protocole horaire internet (Network Time Protocol) ? Pas prévu pour le moment même si beaucoup désormais disposent d'une connexion Internet dans la chambre à coucher. On verra ce point plus tard (c'est à dire quand je serai prêt), si vous voulez bien.

Logiciel du PIC

Le fichier binaire compilé (*.hex) prêt à flasher dans le PIC est disponible dans l'archive suivante.
Horloge 003 - PIC 18F2420 - 15/01/2012
Logiciel non disponible pour l'instant
Si vous souhaitez recevoir par la poste un PIC préprogrammé et prêt à utiliser, merci de consulter la page PIC - Sources.

Circuit imprimé

Non réalisé.

Historique

15/01/2012
- Première mise à disposition