CLK.TXT File (c) Hewlett-Packard Company, 1990. GENERALITES ----------- L'application CLK maintient une pr‚cision optimale de l'horloge du systŠme en proc‚dant … une synchronisation de l'horloge avec un standard de temps et en utilisant la somme des diff‚rents ajustements effectu‚s sur le temps ‚coul‚ pour calculer les corrections … apporter et leur fr‚quence. Cette fonction est particuliŠrement utile dans certaines applications, notamment en navigation, lorsque la pr‚cision de l'heure est d'une importance capitale. Les ajustements sont effectu‚s par rapport au nombre le plus proche d'une variation de tranche de temps d'une demi-heure. Toutes les variations qui sont des multiples de demi-heures sont consid‚r‚es comme des changements de tranche horaire (et sont ignor‚es pour le calcul de correction d'erreur) ; les autres variations donnent lieu … des corrections d'erreur. Par exemple, une variation de +1 heure 35 est consid‚r‚e comme un changement de tranche horaire de +1 heure 30 (ignor‚) et la correction d'erreur est de +05 minutes (l'horloge retarde de 5 minutes). De mˆme, une variation de +1 heure 25 est consid‚r‚e comme un changement de tranche horaire de +1 heure 30 avec une erreur de -05 minutes (l'horloge avance de 5 minutes). On peut prendre aussi comme exemple - 1:35 (tranche horaire de -1:30 avec erreur de -:05) ou -1:25 (tranche horaire de -1:30 avec erreur de +:05). PROCEDURE --------- 1. A l'aide de Kermit, chargez CLK dans le r‚pertoire HOME du HP 48. N'utilisez pas les fonctions int‚gr‚es TIME SET/ADJST lorsque vous ex‚cutez cette application). 2. Appuyez sur [VAR]{CLK} pour acc‚der … l'application. 3. Entrez une liste contenant la fr‚quence minimale d'interruption et l'‚cart maximal par rapport … l'horloge, appuyez sur {C.RST} (pour initialiser l'application). 4. Si n‚cessaire, entrez une liste contenant l'heure et la date en vigueur, appuyez sur {C.SET}. 5. Entrez l'ajustement d‚sir‚, appuyez sur {C.ADJ}. 6. R‚p‚tez les ‚tape 4 et 5 autant de fois que n‚cessaire. 7. Appuyez sur {C.XCT} lorsque l'horloge est synchronis‚e. 8. Attendez quelques semaines et r‚p‚tez les ‚tapes 4, 5, 6 et 7. 9. Appuyez sur {C.STS} pour consulter l'information d'‚tat. 10. Appuyez sur {C.SSP} pour suspendre provisoirement le cycle de l'alarme de correction ; appuyez sur {C.CNT} pour reprendre la correction interrompue. 11. R‚p‚tez l'‚tape 3 pour annuler l'alarme de correction et r‚nitialiser toutes les variables CLK. ------------------------------------------------------------------------------ NOTE : Si vous mettez fin au programme, les indicateurs binaires qui ont ‚t‚ modifi‚s conservent leur ‚tat modifi‚. ------------------------------------------------------------------------------ TOUCHES DES MENUS DE L'UTILISATEUR ---------------------------------- Les cinq programmes suivants constituent l'interface-utilisateur de cette application. Chacun d'eux g‚nŠre un message d'erreur s'il ne trouve pas l'entr‚e attendue. Le message d'erreur donne, dans la mesure du possible, le format de l'entr‚e attendue. La saisie de l'heure doit ˆtre au format HH.MMSS et celle de la date au format MM.DDYYYY. {C.SET} - Prend dans le niveau 1 la liste contenant l'heure et la date en cours. L'horloge est valid‚e … cette heure et … cette date. {C.ADJ} - Prend dans le niveau 1 la valeur de l'ajustement … effectuer sur l'heure en cours. Une valeur positive augmente l'heure, une valeur n‚gative la diminue. {C.XCT} - Ne prend rien dans la pile ; signale au programme de correction que l'horloge est actuellement parfaitement synchronis‚e avec l'heure standard adopt‚e. Lorsque cette fonction est appel‚e pour la premiŠre fois, une base de temps est activ‚e et toutes les corrections effectu‚es … partir de ce moment seront prises en compte pour le cumul. Lorsque cette fonction est appel‚e par la suite, la base de temps est ‚largie … ce niveau et les calculs sont effectu‚s pour l'ex‚cution du programme de correction. Une alarme est planifi‚e et le programme de correction effectuera … partir de ce moment toutes les corrections d'horloge appropri‚es. Toute utilisation post‚rieure de cette fonction augmentera la pr‚cision des corrections apport‚es. {C.RST} - Prend dans le niveau 1 la liste contenant la fr‚quence minimale d'interruption et l'‚cart maximal autoris‚ (tous deux en format "heure"). Le programme de correction est r‚initialis‚ … un ‚tat neutre--la base de temps est d‚sactiv‚e, l'alarme est supprim‚e et aucune correction ne sera plus prise en compte (les registres de cumul sont effac‚s). Toutes les variables sont r‚initialis‚es et le r‚pertoire est r‚ordonn‚. L'‚cart maximal par rapport … l'horloge sp‚cifie l'erreur maximale admissible pour l'horloge. Si la valeur absolue de cet ‚cart est inf‚rieure … 0,01 seconde, celui-ci sera fix‚ … 1 seconde. La fr‚quence minimale d'interruption sp‚cifie la dur‚e minimale s‚parant les ajustements de l'horloge. Si la valeur absolue de la fr‚quence sp‚cifi‚e est inf‚rieure … 1 seconde, elle sera fix‚e … 1 minute. Si l'heure de l'horloge n'est pas pr‚cise pour l'‚cart maximal sp‚cifi‚ sans utiliser d'alarmes ayant une fr‚quence d'interruption sup‚rieure … celle qui a ‚t‚ sp‚cifi‚e comme minimale, la correction sera augment‚e de fa‡on appropri‚e pour que les alarmes ne se d‚clenchent pas plus souvent. Par cons‚quent, l'horloge peut trŠs bien ne pas ˆtre aussi pr‚cise que le sp‚cifie l'‚cart maximal autoris‚. Ceci permet de ne pas avoir d'alarmes dont la fr‚quence empˆcherait le HP 48 de faire quoi que soit d'autre (lire la "Note" … la fin de ces explications). {C.STS} - Ne prend aucune entr‚e dans le niveau 1 ; fournit 3 pages d'information d'‚tat sur le programme de correction. Toutes ces pages ont l'en-tˆte suivant : Correction status -N- (N = 1, 2, or 3) Toutes ces pages se terminent de la fa‡on suivante : prev:< exit:V next:> (Utilisez les touches curseur du HP 48). Exemple d'affichage d'‚tat, page 1 : Exact initiated(*): 9.1455 10.301989 Deviation: 0.000025 Min rate: 1.0000 Les deux premiŠre lignes indiquent l'heure et la date de la premiŠre synchronization exacte. Si la valeur "none" est affich‚e, cela signifie qu'il n'y a jamais eu d'exactitude. Si un (*) est affich‚, la synchronisation a ‚t‚ exacte au moins deux fois et l'application est totalement activ‚e. S'il n'y a pas de (*), il n'y a eu qu'une seule exactitude (les erreurs sont cumul‚es mais aucune correction n'a encore ‚t‚ effectu‚e). La troisiŠme ligne indique l'‚cart maximum sp‚cifi‚ par l'utilisateur (1/4 seconde ici). La quatriŠme ligne indique la fr‚quence minimale d'interruption (1 heure ici). Exemple d'affichage (donn‚es d'ajustement), page 2 : Timezones: 0.0000 Errors: 0.001890 Timebase: 1718.3909 La premiŠre ligne indique le total des variations cumul‚es de tranches horaires. La deuxiŠme ligne indique le total des corrections d'erreur cumul‚es (18,9 secondes dans cet exemple). La troisiŠme ligne indique la dur‚e totale prise en compte dans la base de temps (1718 heures, 39 minutes et 9 secondes dans l'exemple). Exemple d'affichage (donn‚es de correction), page 3 : Next correction: 11.1644 1.101990 Repeat: 22.4520 Adjust: 0.000025 La premiŠre ligne peut ˆtre soit "Next correction:" (avec affichage de l'heure de la prochaine correction) soit "Adjust suspended:" (avec affichage de l'heure … laquelle les corrections ont ‚t‚ suspendues). La troisiŠme ligne indique l'intervalle de l'alarme (22 heures, 45 minutes et 20 secondes dans notre exemple). La quatriŠme ligne indique la valeur de l'ajustement effectu‚ (+ 1/4 seconde dans l'exemple). Si un ‚tat est affich‚ pendant 1 minute sans pression sur une touche, son affichage s'efface automatiquement. {C.SSP} - Suspend l'alarme de correction (si des corrections sont actives). Le rapport d'‚tat affich‚ indiquera l'heure de la suspension. Si les touches {C.SET}, {C.ADJ} ou {C.XCT} sont utilis‚es alors que l'alarme de correction est suspendue, les r‚sultats risquent d'ˆtre inexacts. ({C.SSP} se trouve sur la page 2 du menu). {C.CNT} - Reprend (continue) le cycle d'alarme de correction si des corrections sont actives. Toute correction oubli‚e est effectu‚e et l'alarme de correction suivante est arm‚e. ({C.CNT} se trouve … la page 2 du menu). TOUCHES DES MENUS DE L'APPLICATION ---------------------------------- La touche de menu {C.TLS} contient des sous-programmes et des variables utilis‚s de fa‡on interne par l'application. Vous n'en avez pas besoin pour ex‚cuter l'application. ------------------------------------------------------------------------------ NOTE : L'alarme doit fonctionner quel que soit le chemin de r‚pertoire utilis‚ lorsqu'elle se produit. Cette alarme doit laisser tous les paramŠtres en l'‚tat o— ils se trouvaient lorsqu'elle s'est produite. Par contre, si le HP 48 est hors tension lorsque l'alarme se produit, il se met sous tension et l'alarme retentit jusqu'… la mise hors tension automatique du HP 48. Si des alarmes se produisent … une fr‚quence inf‚rieure au d‚lai de mise hors tension du HP 48, celui-ci restera sous tension. Si une op‚ration est effectu‚e lorsque l'alarme arrive … ‚ch‚ance, ou bien celle-ci n'est pas trait‚e imm‚diatement (attendant, par exemple, la fin de l'ex‚cution d'un programme, ou bien elle annule l'op‚ration en cours (les modifications sont annul‚es si vous aviez appuy‚ sur la touche [ATTN]). ------------------------------------------------------------------------------