Pendule à PIC


Cet exemple est une variante de l'application AN590 de Microchip; la différence réside dans le type d'afficheurs 7 segments utilisés (anode commune).

J'ai essayé de commenter le programme en français pour en améliorer la compréhension :

PRÉSENTATION DU PROGRAMME

Ce programme réalise une horloge par affichage multiplexé de 4 afficheurs 7 segments; il est prévu pour être exécuté sur un PIC16C84 cadencé à 1,8432 MHz.

Affichage

L'affichage se fait sur 4 afficheurs LED 7 segments sous la forme :

Les mêmes segments des 4 afficheurs sont tous reliés entre eux et sont connectés au port B (a=RB1 ; b=RB2 ; c=RB3 ; d=RB4 ; e=RB5 ; f=RB6 ; g=RB7);

Les ":" sont réalisés par les virgules des 2 afficheurs du milieu (celui de droite est retourné) qui sont connectées au bit 0 du port B.

Les afficheurs sont de type anode commune (HPDSP7511) et leur anode est connectée au port A (digit0=RA3 ; digit1=RA2 ; digit2=RA1 ; digit3=RA0).

INTERRUPTEURS

Les 12 lignes d'entrée/sortie étant utilisées, il faut effectuer un multiplexage pour pouvoir insérer les interrupteurs ; cela est réalisé sur le port B (SW1=RB1 ; SW2 = RB2 ; SW3 =RB3); il faut donc que le programme commute ces lignes en entrée pour pouvoir analyser l'état des interrupteurs.

SW1 : affichage des secondes
SW2 : règlage des minutes
SW2 : règlage des heures

SCHÉMA FONCTIONNEL


L'oscillateur à quartz utilisé génère une fréquence de 1,8432 MHz, cela donne une fréquence interne de 460,8 kHz; la rotation du timer (256 états) prédivisé dans un rapport 8 se fait alors à une fréquence de 225 Hz.


Fichiers associés au projet :

Vous pouvez charger la descrition complète de la maquette et du programme au format PDF : clkapic.pdf