Programmateur horaire, journalier et hebdomadaire à base du MC68705P3
(d'après un article de E.DERET paru dans Hobbytronic N°10, 14 et 17)

 

english version - weekly, daily, hourly scheduler based on the MC68705P3 microcontroller (lcd or led display)

 

descriptif programmateur hebdomadaire , journalier ou horaire à base du microcontrôleur MC68705P3 ( affichage led ou lcd) - version imprimable (PDF-26 pages -478Ko)

 

 

Ce programmateur permet de commander la mise en marche et l'arrêt de 4 appareils branchés sur le secteur. L'affichage des informations peut s'effectuer indifféremment sur des afficheurs 7 segments ou sur un afficheur LCD 4 digit 1/2. La reconnaissance du type d'afficheur est automatique et le programme s'adapte automatiquement pour le pilotage de celui-ci.

La saisie des informations s'effectue à partir d'un clavier de 8 touches.

Cette réalisation se décompose en 3 modules (unité centrale, afficheur et clavier).

La mémoire de l'unité centrale a été partagée pour pouvoir contenir jusqu'à 30 commandes de mise en service et hors service.

Parallèlement à ces fonctions programmées, il y a la possibilité de pouvoir effectuer une mise en marche forcée de chacune des sorties.

 

Le microcontrôleur est cadencé par un quartz de 3.2768 MHz.

L'unité de gestion et de commande gère le balayage du clavier 8 touches; elle se charge également de la mise à jour de la valeur qui doit être éditée sur l'afficheur 4 digits. Ces 4 digits permettent l'affichage en format 24 heures ce qui n'est pas possible avec un afficheur trois digits et demi (format limité à 12 heures). Du fait de la possibilité de pouvoir recevoir 2 types d'afficheurs, une information est retournée de la partie affichage pour permette à l'UGC de connaître lequel est utilisé (LED ou LCD). Pour finir, l'UGC pilote l'interface de commande qui contrôle les sorties.

Du coté alimentation, rien de spécial à signaler si ce n'est la présence d'un étage de sauvegarde qui permet à l'UGC de continuer à fonctionner en cas de coupure secteur. Cette alimentation sauvegardée attaque également les afficheurs 4 digits dans le cas de l'afficheur LCD (très faible consommation). Pour les afficheurs LED, c'est l'alimentation normale qui est utilisée.

La partie interface de commande va piloter simultanément la visualisation de la sortie activée ainsi que l'étage d'isolation galvanique. En fin de chaîne se trouve l'étage de puissance qui alimentera la charge activée.

Analyse du montage:

le montage comporte 4 sous-ensembles qui sont:

- la carte unité centrale qui supporte le microcontrôleur ainsi que toute la partie interface de puissance et l'alimentation.

- la carte clavier : c'est de loin le plus simple. C'est grâce à elle que s'effectuera la saisie des commandes.

- la carte afficheur LED ou la carte afficheur LCD : ces deux dernières assureront la visualisation des informations en cours d'utilisation

La carte clavier:
8 boutons poussoirs matricés en 2 lignes / 4 colonnes. La liaison avec le reste du montage se fait par un connecteur 6 broches.

Deux solutions possibles : soit les lignes PA2 à PA5 sont configurées en sortie et les lignes PA6 et PA7 configurées en entrée, soit l'inverse.

La première solution impose 4 lectures de 2 bits en clair la lecture de BP1 et BP2 puis la lecture de BP3 et BP4 puis la lecture de BP7 et BP8 et enfin la lecture de BP5 et BP6. L'autre solution comporte deux lectures de 4 bits, c'est à dire la lecture de BP2, BP4, BP8, et BP6 puis la lecture de BP1, BP3, BP7 et PB5. Le 68705 n'étant pas parmi les microcontrôleurs les plus rapides c'est bien sûr la seconde solution qui sera utilisée, qui ne fait appel qu'à deux cycles de lecture.
Chacune des lignes PA2 à PA5 sont tirées à la masse par un réseau de résistances. Ce déport de composants permet de conserver à l'ensemble du montage un comportement cohérent même en l'absence de clavier (pas de risque de lecture aléatoire).
La lecture des lignes PA2 à PA5 reçoit un état bas permanent quand aucune touche n'est enfoncée. C'est donc un état haut qui devra être appliqué sur PA7 et PA6 pour effectuer un balayage de lecture.

Les poussoirs miniatures ITT KSA comportent 5 broches. Les quatre extrêmes sont reliés ensemble deux à deux. Cette structure est équivalente à autant de straps. Cela permet de simplifier le circuit imprimé. Une cinquième patte située (dans l'axe du poussoir) permet de blinder le boîtier. Celle-ci n'est pas utilisée sur ce montage. Elle pourra être coupée avant insertion.

L'afficheur LCD

 

4 décodeurs BCD/ 7 segments CMOS 4543 pilotent chacun un digit de l'afficheur.

La valeur à afficher est passée au décodeur sous forme BCD. C'est donc sur les entrées A B C D qu'elle est appliquée. Or en regardant de plus près le schéma, on s'aperçoit que la liaison de ces 4 lignes d'entrées s'effectue dans le désordre le plus complet entre les 4 décodeurs (A relié avec D, de la porte voisine, B relié avec C). Ceci afin d'avoir un circuit imprimé le plus petit possible et l'opportunité de supprimer 8 straps.

Les entrées ABCD sont pilotées par les lignes PB2, PB3, PB4 et PB5 du microcontrôleur. La ligne PB0 sert à sélectionner l'afficheur des dizaines d'heures, la ligne PB1 sélectionne les unités d'heure, PB6 les dizaines de minutes et PB7 les unités de minutes.
Pourquoi les pattes PB1, PB6 et PB7 n'ont pas de résistance au + comme la ligne PB0? Toutes les quatre servent bien à sélectionner un décodeur? Encore une astuce bien pratique qui permet d'économiser des lignes d'entrée / sortie d'un microcontrôleur. En utilisation normale, toutes les lignes du port B doivent être configurées en sortie pour garantir l'affichage. Rien n'empêche de les configurer en entrée dans la phase d'initialisation. Lors de cette étape, il est possible de lire un état de configuration. La résistance R1 sur cette carte est certainement la plus importante. Sur la carte afficheur LED, cette même résistance est reliée à la masse. C'est elle qui permet de savoir quel type d'afficheur est monté sur la réalisation. L'oublier sur l'une ou l'autre des cartes aboutira soit à la destruction de l'afficheur LCD (Absence de signal de BACKPLANE) ou à un affichage incohérent sur la carte LED.

Au moment de l'initialisation, le microcontrôleur voit un état haut sur cette ligne et sait aussitôt qu'il doit gérer un affichage de type LCD.

voici la table de vérité du décodeur BCD/7 segments utilisé:

 

Sur le port A, deux lignes sont utilisées. La ligne PA1 pilote les deux points centraux. Ils serviront d'indicateurs de secondes.

La ligne PA0 génère le signal de BACKPLANE voir ***

Les circuits décodeurs de type CMOS4543 comportent en interne tout le réseau de porte OU exclusif nécessaires pour la commande d'un afficheur LCD. Le signal de BACKPLANE est par conséquent appliqué sur ceux-ci.

Le reste des lignes du port A est utilisé pour le clavier.

La carte afficheur peut être utilisée comme carte support pour la carte clavier (Alignement du clavier par rapport aux afficheurs). Elle doit par conséquent comporter un renvoi de connecteur.

L'alimentation de la carte afficheur LCD est assurée par la ligne sauvegardée de 5Volts. Cela permet d'avoir l'affichage permanent même en cas de coupure de courant.

Liste des composants :

R1 4,7 K 1/4 Watt

IC1 à IC4 CMOS 4543

LCD Afficheur 4 digits 1/2

 

Réalisation

Quelques précautions doivent être prises pour la réalisation de cette carte. Tout d'abord, commencer par le montage des 4 straps.

Le rôle des Straps S3 et S4 est un peu particulier et n'a pas été abordé dans le schéma de détail. Pour cause! Généralement, les afficheurs LCD comportent plus de segments qu'il n'y en a réellement besoin. Or pour empêcher l'allumage intempestif de ceux-ci, il est conseillé de les relier au signal de BACKPLANE. C'est ce que réalisent ces deux straps.

Précaution supplémentaire! Les afficheurs LCD sont des composants qui ne supportent pas la chaleur et plus particulièrement celle d'un fer à souder. Il est donc sage de prévoir leur insertion sur des barrettes support.

 

Brochage du CMOS 4543 et de l'afficheur LCD

 

L'afficheur LED

Le schéma de détail

Le décodeur sept segments utilisé précédemment n'a pas été retenu pour cette carte car il n'est pas capable de fournir un courant suffisant pour allumer les LED. C'est donc vers un CMOS 4513 que le choix s'est porté.

Ce composant a été retenu plus particulièrement pour la fonte qu'il est capable de fournir (présence de la barre supérieure et inférieure sur les 6 et les 9

 

Voici la table de vérité du CMOS4513

 

Ce composant est équipé d'un dispositif d'effacement de l'affichage (Blanking). Il n'a pas été utilisé pour deux raisons : La première est que le 68705P3 ne comporte que 20 lignes d'entrée / sortie et qu'elles sont toutes déjà utilisées. La seconde est que le "blanking" peut également être obtenu en envoyant sur le décodeur une valeur non décimale (fonctionnement identique à celui de l'afficheur LCD). C'est donc ce principe qui est utilisé sur les 2 cartes.)

Coté microcontrôleur, le schéma ne présente guère de différences (Mélange des lignes de données A, B, C et D sur PB2, PB3, PB4 et PB5; sélection des décodeurs sur PB0, PB1, PB6 et PB7). La résistance R1 est cette fois-ci reliée à la masse ce qui confirme l'explication donnée sur la reconnaissance du type de carte. A noter que sur les deux cartes cette résistance est câblée dans le sens où elle influe le moins sur la mémorisation de la donnée (signal de commande de mémorisation inversée sur les deux décodeurs).

Les différences se situent uniquement sur les lignes PA0 et PA1. La ligne PA0 (Signal de backplane sur la carte afficheur LCD) n'est pas utilisée sur celle-ci (ce qui est tout à fait normal). La ligne PA1 commande toujours l'affichage des deux points pour les secondes. La résistance R2 limite le courant de base dans le transistor T1. L'affichage s'effectue sur les LED D1 et D2 dont le courant est limité par la résistance R17.

Coté afficheur 7 segments, il s'agit d'afficheurs du type cathodes communes. Le courant qui les traverse est limité à 5mA pour des raisons de consommation et de dissipation. Cette limitation est produite par les résistances R3 à R16 et R18 à R31.

Cette solution a été jugée plus intéressante que la réalisation d'un multiplexage qui n'apporte pas de différence au niveau luminosité.

Comme toutes les cathodes sont reliées à la masse, l'alimentation s'opère directement sous +5Volts. C'est un 5V non sauvegardé qui est utilisé. Il y a forcément disparition de l'affichage en cas de coupure de courant. Le condensateur C1 est rendu nécessaire pour éviter les problèmes provoqués par les appels importants de courant sur les afficheurs.

 

Liste des composants

Réalisation

Le montage des afficheurs pourra être effectué sur des supports 24 broches dont les 4 pattes centrales auront été retirées.

Les LED qui servent à l'affichage des secondes devront être alignées par rapport aux afficheurs afin d'avoir toutes les sources lumineuses dans le même plan.


Brochage CMOS 4513

 

Brochage TDSR5160

Brochage BC547C

 

L'unité centrale

Le schéma de détail

 

La pièce maîtresse de cette carte est constituée par le microcontrôleur.

Les lignes du Port A et du Port B aboutissent sur le connecteur CN1 qui servira de liaison avec les cartes afficheurs et clavier. Le pont de résistances PR1 permet de définir un état précis quand aucune touche n'est enfoncée.

C4 sert de capacité de Reset (rappelons qu'une résistance de charge est intégrée dans le microcontrôleur). Le condensateur C3 sert au découplage et R1 fixe un état constant sur l'entrée d'interruption.

La partie oscillateur (Q1,C2) reste des plus classiques. Un point particulier cependant est à noter : le quartz est un quartz de 3,2768MHz. Cette valeur qui sort de l'ordinaire n'a pas été choisie au hasard. Il s'agit d'une puissance entière de 2 (32768=2^15). Ce point particulier permet de travailler directement avec le diviseur du timer pour obtenir une base de temps de 1/100ème de seconde. A partir de ce moment là, la précision de l'horloge sera uniquement fonction de la précision du quartz. Cette petite astuce est couramment utilisée dans tous les circuits horloges.

La partie alimentation: le transformateur délivre une tension de 2x6Volts alternatifs. Cette tension subit un redressement double alternance par le pont D3-D6 et est filtrée par le condensateur C5. Le régulateur RG3 permet d'obtenir une tension de 12Volts qui servira à alimenter la partie commande de puissance.

Le régulateur RG2 permet d'abaisser cette tension à 5 Volts pour alimenter la carte afficheur à LED. Il peut donc ne pas être monté quand la carte afficheur est la carte LCD. Le condensateur de filtrage est reporté sur la carte LED.

Les diodes D1 et D2 servent à commuter l'alimentation sur la pile en cas de coupure secteur. Le régulateur RG1 abaisse lui aussi la tension à +5Volts. C'est elle qui va aller alimenter le processeur et la carte afficheur LCD. Elle est par conséquent sauvegardée par la pile. La consommation sur cette ligne est de l'ordre de 80 à 100 mA. Il faut donc veiller à avoir toujours une pile en parfait état. Le condensateur C1 filtre la tension résultante.

La partie puissance: Les lignes utilisées pour aller commander les 4 sorties sont des lignes du port C qui seront toutes configurées en sortie. L'interface de puissance est constituée par l'ULN2003 (IC2)

La partie commande de puissance. Soit par un opto-triac soit par un relais.
Dans le cas du montage à opto-triac, la résistance R3 limite le courant qui traverse la LED du coupleur optique. En série nous trouvons la LED de visualisation d'activation de la sortie (D7 à D10). Côté secteur, nous trouvons le traditionnel montage à triac piloté par R4 et R5 avec le réseau d'antiparasite R6-C7.

Dans le montage à relais, la résistance R2 limite le courant qui traverse la LED de visualisation de mise en service. Coté secteur les commandes peuvent être aussi bien prises sur le contact travail que sur le contact repos). Une petite nouveauté est la possibilité de pouvoir récupérer la sortie en contact sec (R-T-C). Cette solution permet de câbler toute sorte d'appareils sur la sortie.

 

Liste des composants

(*) Relais JW1FSN-DC12V JW relay. Compact PC board power relay. 1 form Matsushita / Panasonic

Réalisation

La réalisation de cette carte nécessite un certain nombre de précautions.

Tout d'abord c'est un montage qui se trouvera relié au secteur. Donc respecter toutes les règles relatives à ce genre de câblage (contrôle de la qualité des soudures, absence de court circuit, etc.).

La grosse difficulté va d'abord reposer sur le choix de la configuration de l'étage de puissance. De ce choix va dépendre la nature des composants à câbler.

Il y a 5 cas différents possibles pour cet assemblage:

Cas 1: C'est le cas où le relais est utilisé en tant que contact sec. Le montage comportera donc hormis le relais la résistance R2 de limitation de courant dans la LED de visualisation.

Cas 2: C'est le cas mixte où simultanément les contacts travail et repos sont utilisés. Les deux réseaux d'antiparasite R6-C7 et R7-C8, en plus de R2, doivent être ajoutés au relais. Dans ce cas le point du contact commun doit être relié à la ligne du secteur par un pont de soudure.

Cas 3: C'est le cas où seul le contact travail est utilisé. Le montage est identique au cas 2 hormis que le réseau R7-C8 n'est pas à monter.

Cas 4: C'est le cas ou le contact repos seul est utilisé. Le montage reste identique au cas 2 hormis que le réseau R6-C7 ne doit pas être monté.

Cas 5: Ce cas est l'utilisation d'un montage d'un opto-triac. Les composants à monter sont les suivants : l'opto-triac IC4, les résistances R3 à R6, le condensateur C7 et le triac TR. Comme pour le cas 2, un pont de soudure doit être réalisé entre la ligne secteur et la piste d'arrivée du triac.

Chacun des cas d'implantation est illustré dans la figure ci-dessous

 

Le circuit imprimé a été étudié pour recevoir les trois types de transformateur.

Pour le modèle 1,8VA, il n'y a pas de piège particulier. Par contre pour les deux autres, une petite précaution doit être prise. Il faut câbler un strap pour permettre la liaison avec le second secondaire. (Pour le modèle 3,5VA) ou la liaison entre les deux secondaires (pour le modèle 5VA). Attention donc pour le positionnement de ce strap, car en cas d'erreur, c'est le transformateur qui fume...

Le pont de résistances comporte 6 pattes. Or 5 seulement sont utilisées. Il faudra prendre soin de rabattre la deuxième (En partant du point) avant de l'insérer.

 

ULN2003***

MOC3041***

7805, 7812, 78L05***

Relais 1RT JW1AFSN-B-DC12V-FT

L'assemblage final

Vous avez maintenant entre les mains 3 modules (Unité centrale, affichage et clavier) qu'il va falloir réunir ensemble.

Là les solutions sont aussi nombreuses que variées

Sur notre prototype, le clavier a été directement monté sur la carte afficheur en utilisant 2 entretoises de 5mm de hauteur et des écrous en nylon. La liaison entre les deux cartes a été réalisée grâce à des queues de composants.

La liaison unité centrale - afficheurs est faite par des connecteurs (Droits large femelle sur l'UC et coudés male sur les afficheurs).

L'utilisation de câble en nappe monobrin rigide au pas de 2,54 est parfaitement envisageable.

Cela offre une plus grande souplesse de mise en boîte.

Attention cependant, la liaison entre les cartes devra être la plus courte possible pour éviter les risques de perturbation des signaux électriques.

Le détail du connecteur est donné sur le schéma de détail.

 

Utilisation

L'ensemble des explications porteront sur son utilisation en mode hebdomadaire. Les modes journalier et horaire ne sont que des cas particuliers. Leur utilisation n'est qu'une adaptation de l'explication générale et sera donnée le moment venu.

La saisie des commandes s'opère grâce à 8 touches du clavier dont le rôle change d'une fonction à l'autre. Pour pouvoir s'y retrouver plus facilement, un petit schéma donnant le rôle de chaque touche accompagnera chacun des modes dans lequel peut se trouver le montage. Si rien n'est précisé pour une touche c'est qu'elle n'est pas utilisée dans ce mode.

Des représentations de cadrans accompagneront chacune des étapes. Les digits auréolés simuleront le clignotement alors que ceux qui sont évidés simuleront les digits qui évoluent rapidement.

A la mise sous tension, le programme initialise tous ses ports, sa mémoire et vient déterminer la nature du système d'affichage. Une fois toutes ces étapes internes effectuées, on aboutit sur la phase de mise à l'heure de l'horloge. L'afficheur clignote et l'heure est initialisée à 00:00.

00:00

Le réglage s'effectue en passant en mode de mise à l'heure. Aucune autre fonction ne peut être appelée tant que cette phase n'a pas été effectuée.

L'horloge

C'est dans ce mode que se trouve la majorité du temps, le montage.

L'écran a l'allure suivante :

Les digits sont fixes et les deux points centraux clignotent au rythme des secondes. les deux digits de gauche visualisent les heures alors que ceux de droite visualisent les minutes.

Dans l'exemple précédent il est 12h34.

Dans cet état le clavier rempli les fonctions suivantes

- Accès sortie x : Ces quatre touches permettent de passer en phase de programmation ou d'activation de la sortie correspondante.

- Secondes : cette touche permet de visualiser la valeur des secondes. Les digits de gauche sont effacés. Ceux de droite évoluent au rythme des secondes. L'écran prend l'allure suivante

 

On peut donc dire qu'il est 12 h 34 minutes et 56 secondes. Au relâchement de la touche, l'affichage reprend celui des heures.

- Jour Cette touche permet de visualiser la valeur du jour courant. Les digits de gauche sont également effacés. L'écran prend l'allure suivante:

 

C'est donc le troisième jour de la semaine. Les jours sont traités en relatif (En effet, l'écran ne permet pas un affichage en clair de la valeur du jour).

- Mise à l'heure : cette touche permet de passer en mode de mise à l'heure. Une fois dans ce mode, les touches du clavier trouvent une autre signification.

 

A l'arrivée dans ce mode l'écran prend l'allure suivante :

Les digits de gauche se mettent à clignoter signalant ainsi que c'est la partie heure qui va être modifiée. L'avance du compteur s'effectue en appuyant sur la touche PLUS. Un appui bref permet d'avancer d'un pas.

Dans ce cas l'affichage des digits de l'heure reste clignotant.

Si au lieu d'un appui bref, c'est un appui permanent qui est appliqué sur la touche PLUS, le clignotement cesse et les digits s'incrémentent automatiquement d'un pas toutes les demi-secondes.

Le relâchement de la touche PLUS rappelle l'affichage clignotant.

Dans certain cas, il peut être plus rapide d'effectuer le réglage en partant d'un compteur à zéro. Ce cas est obtenu en appuyant sur la touche RAZ.

Quand le réglage de la partie heure est effectué, la validation s'effectue en appuyant sur la touche SUITE. Le système passe alors automatiquement en mode de réglage des minutes.


Ce sont les digits des minutes qui maintenant clignotent.

Le principe de réglage des minutes est identique à celui des heures. Les touches PLUS, RAZ et SUITE ont le même rôle mais transposé sur les minutes.


Quand le réglage des minutes est effectué et que la validation a été faite par la touche SUITE, le système passe automatiquement sur le réglage du jour.

 

Les deux digits de gauche sont éteints et les deux de droite clignotent.

Tout comme pour les minutes, les touches PLUS, RAZ et SUITE possèdent les mêmes fonctions.

Comme déjà signalé, la saisie du jour s'effectue en relatif. Sa valeur peut donc varier de 01 à 07. Comme le montage n'a pas la possibilité de connaitre le calendrier, autant assigner la valeur 01 au lundi. Cette petite règle simplifiera la partie programmation des sorties.

C'est lors de cette phase que va se définir le mode de fonctionnement du montage. En effet, la valeur du jour peut varier de 01 à 07. Les habitués du traitement numérique ont déjà vu qu'il reste une valeur disponible qui est 00. Il est possible d'allouer cette valeur au jour. A partir de ce moment, le système fonctionne en mode hebdomadaire.

Toutes les programmations déjà en mémoire seront automatiquement exécutées tous les jours.

Cette parenthèse étant refermée, reprenons le cours de la mise à l'heure. Au moment de l'appui sur la touche SUITE, les secondes sont initialisées à zéro, permettant ainsi un réglage à la seconde près de l'horloge. L'affichage reprend celui donné au début de ce chapitre

 

Tout au long de cette phase de mise à l'heure, on a pu constater que les points qui visualisent les secondes continuaient de clignoter. Ce point de repère est important pour savoir dans quelle phase de réglage se trouve le montage.

La gestion des sorties

Quel que soit la phase dans laquelle se trouve le système, le contrôle et l'activation des sorties est permanent (Sauf dans la phase initiale de la première mise à l'heure où aucun cycle n'est encore programmé).

L'accès aux fonctions relatives à une sortie s'obtient en appuyant sur la touche correspondant à cette sortie (Accès sortie 1 à Accès sortie 4).

A partir de cet instant (relâchement de la touche considérée), le clavier prend la signification suivante


Pour la partie affichage, deux cas sont à considérer : soit que la mémoire est vierge de programmation pour la sortie considérée, soit que la mémoire comporte au moins une programmation pour cette sortie.

La mémoire est vierge; deux nouveaux cas peuvent se présenter:

- Soit qu'il reste de la place en mémoire et l'affichage prend l'aspect suivant :


L'affichage est vierge avec les deux points centraux allumés pour bien spécifier que le montage est sous tension. Cet écran indique qu'il y a moyen de rajouter un cycle de programmation.

- Soit qu'il n'y a plus de place en mémoire et l'écran prend alors l'aspect suivant:


Tous les digits sont allumés pour signaler qu'il n'y a plus de place. L'ajout d'un cycle impose donc d'en supprimer un autre.

Dans le cas où au moins un cycle a été programmé, l'affichage a l'allure suivante:


Il y a alternance entre ces deux valeurs pour indiquer que la sortie considérée est activée le lundi à 3H45. A noter que les deux points centraux sont éteints pour bien indiquer qu'il s'agit d'une heure de mise en marche.

Un appui sur la touche SUITE nous fait passer sur l'heure d'arrêt. L'affichage devient le suivant:


Comme pour l'heure de mise en marche, il y a alternance entre ces deux valeurs pour spécifier l'heure et le jour de la mise hors service. L'exemple précédent indique un arrêt le mardi à 4h29.

Les deux points centraux sont fixes pour indiquer qu'il s'agit de l'heure d'arrêt.

Un appui sur la touche SUITE fait passer sur la visualisation du cycle suivant.

Les deux étapes précédentes sont répétées jusqu'à la fin de tous les cycles pour la sortie considérée. La séquence aboutit au même stade que celle déjà vue pour la mémoire vierge.

Le retour au mode horloge s'obtient en appuyant une nouvelle fois sur la touche SUITE.

Modification d'une heure de mise en service ou d'une heure d'arrêt d'un cycle programmé

La première étape à réaliser est de venir se positionner sur l'heure à modifier.

On y arrive en appuyant sur la touche SUITE.


 

Quand ce point est atteint, appuyer sur la touche MISE A L'HEURE. Le clavier retrouve la même signification que lors de la phase de réglage de l'horloge.


 

L'heure clignote précisant qu'elle peut être modifiée grâce aux touches PLUS et RAZ. Quand la bonne valeur est atteinte, un appui sur la touche SUITE fait passer sur le réglage des minutes.


Ce sont les minutes qui clignotent. Les mêmes opérations de réglage peuvent être faites. Un appui sur la touche SUITE fait passer sur le réglage du jour.


Le réglage est obtenu comme pour les autres fonctions. Un appui sur la touche suite nous ramène en mode consultation.


 

Cette phase nous conduit à donner un certain nombre de commentaires.

Tout d'abord, dans l'exemple précédent, c'est l'heure de mise en service qui a été modifiée. Cette affirmation est facilement vérifiable puisque les deux points centraux sont éteints.

Ensuite le système est en mode hebdomadaire puisqu'il propose de modifier le jour en service. En effet dans le mode journalier, cette étape n'existe plus.

Troisièmement, le jour d'activation est fixé au lundi pour cet exemple (01 dans la position jour). Ce cycle ne se produit donc qu'une fois par semaine. Rien n'empêche qu'il puisse s'exécuter tous les jours. Pour cela il suffit de placer 00 dans la valeur jour de l'heure de mise en marche.

Enfin la modification de l'heure d'arrêt s'effectue de la même manière. Il suffit uniquement de venir se positionner dessus au lieu de l'heure de départ; cela pour signaler que la modification de l'heure de mise en marche n'impose en aucun cas la modification de l'heure d'arrêt.

Le retour au mode horloge impose de venir se positionner en fin de zone programmée. Pour cela deux méthodes existent.
La première demande d'appuyer autant de fois sur la touche SUITE qu'il y a de séquences programmées pour la sortie considérée. Cette méthode est à employer quand il reste des séquences à modifier.
La seconde, plus rapide, demande simplement d'appuyer sur la touche FIN. Cette touche permet de venir se positionner directement sur la première zone de mémoire disponible.
Le retour au mode horloge demande alors uniquement un dernier appui sur la touche SUITE.

 

Programmation d'un cycle supplémentaire de consigne

Pour cette opération, il faut sélectionner la sortie à programmer en appuyant sur la touche Accès sortie x correspondante.

Il faut ensuite aller se positionner sur le premier emplacement mémoire disponible. Pour cela, la touche FIN permet d'y arriver tout de suite.

Si l'affichage est vierge (mémoire non saturée), un appui sur la touche Mise à l'heure permet de passer en phase de programmation d'un nouveau cycle.

En jouant avec les touches RAZ, PLUS, et SUITE, il reste à régler

- l'heure de mise en marche

- la minute de mise en marche

 

 

- le jour de mise en marche


- l'heure d'arrêt

 

- la minute d'arrêt

 

- le jour d'arrêt

 

Cette dernière étape n'existe que si le mode journalier n'a pas été choisi lors de la programmation du jour de mise en marche.

L'étape suivante conduit soit à l'écran vierge, soit à celui de la mémoire saturée.

Un nouveau cycle peut alors être programmé par la touche de mise à l'heure ou le retour au mode horloge par la touche SUITE.

Suppression d'un cycle programmé

Pour cela, il faut, comme dans le cas de la modification d'un cycle, venir se positionner sur la valeur à supprimer. Un appui sur la touche RAZ retire le cycle de la mémoire.

A noter que l'effet est le même en se positionnant indifféremment sur l'heure de départ ou sur l'heure d'arrêt.

L'affichage reprend en visualisant le cycle suivant.

 

Actions de touches combinées

Toutes les étapes qui ont été vues jusqu'à maintenant, n'utilisaient qu'une seule touche. L'effet d'une nouvelle ne pouvait entrer en action que si la précédente avait été relâchée avant.

Il existe cependant deux cas où une action simultanée est nécessaire. Le clavier prend alors comme fonction:


Les touches représentées en noir sont celles qui doivent être maintenues enfoncées pour activer ce type de fonctionnement.

 

Effacement de tous les cycles programmés relatifs à une sortie

L'assignation d'une sortie à une nouvelle fonction est parfaitement envisageable rapidement.

L'effacement de toutes les programmations relatives à une sortie devient vite fastidieux quand il y en a beaucoup.

Une solution plus rapide consiste à toutes les effacer d'un seul coup

Pour y parvenir, il suffit d'appuyer simultanément sur la touche relative à la sortie et sur la touche "RAZ". Quand le traitement est terminé, l'afficheur visualise le numéro de la sortie qui vient d'être traitée. Le retour au mode d'attente s'effectue au moment de la libération du clavier (relâchement des touches RAZ et sortie).
Attention: cette fonction ne peut être accessible qu'en partant du mode d'attente (horloge). Il ne faut donc pas relâcher la touche relative à la sortie avant d'appuyer sur la touche RAZ. Si cette touche était relâchée, le système partirait en phase de visualisation et l'effacement général serait alors impossible sans avoir fait un retour en mode d'attente.

 

Utilisation du mode forcé

Il peut arriver à n'importe quel moment d'avoir à mettre en service un appareil indépendamment des cycles programmés. Cela revient à commander manuellement la mise en service de la sortie considérée.

L'activation forcée s'obtient en appuyant simultanément sur la touche relative à la sortie considérée et sur la touche "SUITE".

L'utilisation de cette fonction ne peut s'opérer qu'en partant du mode d'attente.

Le fonctionnement du mode forcé est prioritaire sur le mode programmé. A partir de ce moment, la sortie est activée et le restera quelque soit l'état de commande imposé par la programmation.

Le principe de travail du mode forcé est équivalent à un fonctionnement en bistable. Pour le supprimer, il suffit d'appuyer à nouveau simultanément sur les deux touches qui ont activé ce mode forcé.

Tout comme pour le mode d'effacement généralisé, le système visualise le numéro de la sortie qui vient d'être traitée. Le retour au mode d'attente est obtenu au moment du relâchement des deux touches.

 

Le mode horaire

Pour le mode horaire, les choses se compliquent un tout petit peu. Le passage du mode hebdomadaire au mode journalier s'effectuait simplement en annulant la valeur du jour dans l'horloge. Sept jours et une valeur pour journalier, cela fait 8. Et sur trois bits, il n'y a plus de place.

Il faut donc se résigner à prendre son fer à souder et opérer une liaison entre la patte 1 (masse ou Vss) et la patte 2 (Int) du 68705.

Cette liaison peut être faite par un simple pont de soudure (si l'utilisation en programmateur horaire est définitive) ou par un cavalier et deux picots qui auront été placés entre le 68705 et l'ULN2003 (Il y a la place et la masse a le bon goût de se trouver là). La liaison entre la patte 2 peut s'effectuer. Cela évite d'avoir à retirer un nouveau circuit imprimé.

Tout ce qui a été expliqué jusqu'ici reste totalement valable sauf pour la partie programmée où il faut remplacer le mot heure par minute et le mot minute par seconde, les fonctions jours ayant tout naturellement disparues.

La notion de jour a cependant été conservée pour la partie horloge à titre indicatif.

Attention les valeurs mémorisées en mode horaire sont totalement incompatibles avec celle du mode hebdomadaire. Le passage de l'un à l'autre impose un effacement général des 4 sorties et une nouvelle programmation.

le fichier binaire à implanter dans le microcontrôleur est disponible ci après uniprog2.bin (2Ko )

typons des circuits imprimés

circuit imprimé carte affichage Led 7 segments uniprog_pcb1 (GIF)

circuit imprimé carte affichage LCD pcb_lcd (GIF)

circuit imprimé carte mère pcb_carte_mere (GIF)

circuit imprimé clavier pcb_keyb (GIF)

circuit imprimé carte affichage Led 7 segments (PDF)

circuit imprimé carte affichage LCD (PDF)

circuit imprimé carte mère (PDF)

circuit imprimé clavier (PDF)

 

back to MC6805 MC68705 projects info page

20 août, 2021