Brevet FR2750520A1 — publié le 19980102

DOMAINE DE L'INVENTION La présente invention concerne, en général, les ordinateurs cyclo et plus particulièrement les ordinateurs cyclo disposant de fonctions programmables ainsi que les affichages s'y rapportant. HISTORIQUE DE L'INVENTION De nombreux cyclistes, au même titre que les sportifs d'autres disciplines sportives, aiment mesurer et conserver des statistiques concernant leurs performances, notamment la vitesse, le temps écoulé, la distance parcourue et autres données. On connaît, dans ce domaine, divers dispositifs qui permettent de gérer certaines de ces données, et certains de ces dispositifs sont capables de suivre plusieurs types de ces données. En outre, certains dispositifs offrent une programmabilité qui permet d'exclure certains fonctions par des boutons de commande. Malheureusement - et cela est typique de la plupart des ordinateurs cyclo existants, pour ne pas dire de tous - ces dispositifs ne peuvent être programmés de façon simple, ce qui interdit pratiquement au cycliste de programmer ce type d'ordinateur cyclo. Dans la plupart de ces dispositifs de la technique antérieure, l'écran est divisé en fonctions primaires et secondaires. Les fonctions secondaires sont typiquement affichées dans la partie inférieure de l'écran. L'utilisateur a la possibilité de faire défiler en séquence les fonctions existantes au moyen d'un bouton ou d'un commutateur, voire de plusieurs. Cependant, dans chacun de ces cas, le degré de personnalisation par l'utilisateur se limite typiquement à l'exclusion d'une ou de plusieurs fonctions parmi les possibilités du dispositif. En outre, les affichages types de ces dispositifs sont limités à des affichages multisegments. Dans de nombreux cas, les écrans sont alphanumériques, mais n'affichent les données que dans des positions fixes. Le besoin se fait donc sentir d'avoir un dispositif suffisamment simple - mais possédant cependant la capacité de traitement et la souplesse des systèmes complexes classiques tel que le cycliste puisse programmer en toute sécurité ou utiliser le dispositif et afficher les données sélectionnées dans plusieurs positions. RESUME DE L'INVENTION La présente invention prévoit un ordinateur cyclo programmable, adapté spécialement à la bicyclette, qui pallie la majorité des inconvénients soulevés par la technique antérieure, voire tous. L'ordinateur cyclo programmable de la présente invention inclut un système de calcul à base de microprocesseur capable de mesurer et de fournir toute une variété de données associées au fonctionnement de la bicyclette. Dans une forme de réalisation, l'ordinateur cyclo évalue et actualise toutes les fonctions pour les rappeler à tout moment, qu'une fonction particulière fasse partie du programme en cours ou non. En outre, mais cela est tout aussi important, l'invention inclut également une interface simple et facile à utiliser dotée d'un nombre limité de boutons (par exemple, deux) et d'un écran approprié pour afficher les informations choisies. L'écran peut comporter une fenêtre unique ou plusieurs fenêtres pour permettre un affichage efficace et bien visible des données choisies par l'utilisateur. Dans une forme de réalisation, les fenêtres incluent des cadres ou champs supérieur et inférieur dans lesquels peuvent être affichées les données. Pour améliorer la souplesse pour l'utilisateur, l'ordinateur cyclo de la présente invention peut être programmé par l'utilisateur qui pourra spécifier l'ordre, la position et la sélection des données affichées. Par suite, l'utilisateur pourra programmer l'invention pour sélectionner celles des nombreuses fonctions qui seront affichées, les fenêtres disponibles o elles seront affichées et l'ordre dans lequel d'autres fonctions disponibles seront affichées. Les fonctions types affichables sont les suivantes: vitesse, vitesse maximum, vitesse moyenne, temps de parcours moyen, distance correspondante, altitude, altitude cumulée (du parcours et totale), longueur du parcours, distance totale, distance restant à parcourir, temps restant, cadence, chronomètre, horloge et d'autres. En outre, l'écran ou l'afficheur, de la présente invention comporte une matrice de points ou un dispositif à configuration par points qui permet d'afficher de façon interchangeable une pluralité de fonctions désirées dans diverses positions d'affichage. L'utilisateur peut, de cette façon, afficher des données dans une position choisie au lieu d'être limité aux positions désignées de la technique antérieure. Dans certaines formes de réalisation, l'affichage à matrice de points peut ne constituer qu'une partie de l'écran, des éléments d'affichage multisegments classiques étant réservés aux champs numériques. Un autre aspect de l'invention est constitué par la fourniture d'une méthode grâce à laquelle les fonctions ne faisant pas partie du programme en cours peuvent être affichées. Une fonction "d'interrogation" ou de consultation peut être fournie, au moins dans quelques formes de réalisation, ce qui permet à l'utilisateur d'examiner l'état de nombreuses fonctions de collecte de données et dans certains cas, de toutes, même si ces fonctions-là ne font pas partie du programme sous-jacent. Un objet de la présente invention est donc de fournir un ordinateur cyclo programmable pouvant être programmé et utilisé de façon simple. Un autre objet de la présente invention est de fournir un ordinateur cyclo programmable dans lequel, l'ordre, la position et la sélection des données affichées puissent être programmés. Un autre objet de la présente invention est de fournir un ordinateur cyclo programmable disposant de fonctions de configuration préprogrammées. Un autre objet de la présente invention est de fournir un ordinateur cyclo qui évalue et actualise plusieurs fonctions pour pouvoir les rappeler, que ces fonctions fassent partie ou non du programme en cours. Un autre objet de la présente invention est de fournir une méthode pour afficher, sur un ordinateur cyclo, plusieurs fonctions, que ces fonctions soient affichées ou non dans le cadre du programme courant. Un autre objet de la présente invention est de fournir un affichage pour ordinateur cyclo dans lequel au moins une partie de l'écran soit capable d'afficher des données en mode par points. On comprendra mieux ces objets, d'autres, de l'invention en lisant la description détaillée de l'invention complétée par les figures annexées. FIGURES La figure 1 montre la disposition générale du système de la présente invention. La figure 2A donne le schéma par blocs des principaux éléments de circuit de la présente invention. La figure 2B donne un programme conforme à la présente invention comprenant une pluralité de fenêtres avec un cadre supérieur et un ou plusieurs cadres inférieurs, pour une pluralité de fonctions disponibles. La figure 2C donne un exemple de groupe de fonctions d'o l'on peut sélectionner le programme de la figure 2B. Les figures 3A-3E donnent, sous forme d'organigramme, le niveau initial de l'organigramme pour le logiciel de la présente invention. DESCRIPTION DETAILLLE DE L'INVENTION La figure 1 donne la disposition générale d'un ordinateur cyclo programmable 10. Un écran 15 est constitué typiquement de deux champs numériques constituant un champ supérieur ou cadre 20A et un champ inférieur ou cadre 20B et dans une forme de réalisation préférée actuellement, les deux cadres peuvent être considérés comme des fenêtres 25 pouvant être rappelées. Dans une telle forme de réalisation, deux fenêtres seulement (qualifiées de "supérieure" et "inférieure" ci- après) sont affichées à la fois pour permettre au cycliste de saisir d'un coup d'oeil les informations affichées tout en pédalant. Chaque cadre supérieur définit une fenêtre et chaque fenêtre peut contenir un ou plusieurs cadres inférieurs. Bien que la forme de réalisation préférée actuellement ne comprenne que deux cadres dans l'affichage, d'autres dispositions sont réalisables pour d'autres mises en oeuvre, par exemple un écran unique plus grand. Pour des raisons similaires, la forme de réalisation actuellement préférée n'utilise que deux boutons 30 pour entrer les données ou programmer le dispositif d'une façon qui sera décrite plus en détail ci-après. L'écran 15, les boutons 30 et l'électronique associée sont logés dans un boîtier 35. Les fixations 40 permettent à l'utilisateur de fixer l'ordinateur cyclo sur la bicyclette dans la position facilitant la vue. On comprendra que, bien que la présente invention convienne particulièrement à une utilisation sur les bicyclettes, elle offre des applications sur de nombreuses autres formes d'engins, notamment toute sorte de cycles. La figure 2A donne les éléments de circuits primaires de la présente invention sous forme de schéma par blocs. L'écran 15 reçoit des données de sortie d'un microprocesseur 50 qui extrait les données d'une mémoire 55 et peut également cumuler les données provenant d'un capteur sur la roue et/ou d'un capteur de cadence 56. Les programmes concernant le dispositif sont conservés dans la mémoire 55. Des boutons ou interrupteurs 30 fournissent au microprocesseur 50 les entrées effectuées par l'utilisateur. Diverses autres entrées 60 peuvent être prévues telles que: vitesse, rythme cardiaque, altitude ou autres données. Une source d'alimentation classique, par exemple batterie ou cellules solaires est nécessaire mais elle n'est pas représentée. Un programme de lancement, stocké dans la mémoire 55, est lancé lors de l'application d'une tension, par exemple lors de la mise en place d'une batterie. En outre, des configurations prédéfinies concernant l'ordre, la position et la sélection des diverses fonctions disponibles désignées ci-après par le terme "programmes" peuvent également être stockés dans la mémoire 55. Dans une forme de réalisation actuellement préférée, trois programmes préconfigurés de ce type sont chargés en mémoire et il y a aussi un espace réservé à un programme défini par l'utilisateur. Chacun des cadres 20 qui constituent l'écran 15 comporte typiquement cinq chiffres constitués généralement de caractères à sept bâtonnets. Les symboles deux-points et point, qui n'interviennent pas dans l'espacement des chiffres, sont également fournis. De plus, sont également fournis les flèches haut et bas et divers symboles tels que "mi" et "km". Pour identifier la fonction affichée, une matrice de points ou un autre afficheur alphabétique ou alphanumérique en mode par points 20C est disposé à côté de chaque champ numérique et l'affichage peut donc se présenter de la façon suivante: X 88888 km X 88888 mi o "X" indique un élément de signalisation tel que matrice de points qui peut afficher une grande variété de caractères ou d'icones. D'autres dispositions peuvent être envisagées facilement par le spécialiste. Dans une forme de réalisation préférée actuellement, l'afficheur n'exige que deux caractères, bien que des dispositions différentes puissent être souhaitables selon l'application. Pour sélectionner un mode autre que celui dans lequel le système est en train d'opérer, il faut actionner un ou deux interrupteurs dans un ordre prédéterminé. Bien qu'il existe plusieurs solutions, on considère comme efficaces les conventions suivantes relatives à la frappe ou aux commandes de boutons. Dans une forme de réalisation actuellement préférée, l'action provoquée par la frappe d'une touche prend effet lorsqu'on relâche le bouton. Cela permet la détection de frappes de touches temporisées (et particulièrement de celles nécessitant les deux touches) ainsi qu'une action différée, une action à deux boutons et l'annulation de commandes erronées. Par commodité, on considère qu'appuyer sur un bouton moins d'une seconde constitue une commande momentanée. Appuyer sur un bouton pendant une durée supérieure à trois secondes appelle une action différée. Appuyer sur un bouton pendant une durée de plus de trois secondes ou sur les deux boutons pendant une durée de trois à six secondes appelle le mode Préparation. Une séquence associée fera passer le système en mode Programmation. En général, le mode de fonctionnement de la présente invention peut être compris d'après l'explication suivante. L'important, c'est l'affichage des données. Comme on l'a expliqué précédemment, dans une forme de réalisation actuellement préférée, l'affichage comprend un champ supérieur primaire et un champ inférieur secondaire. Ensemble, ces champs complémentaires, ou cadres, constituent une fenêtre. Bien qu'il soit possible d'afficher un plus grand nombre de cadres dans une fenêtre pour certaines formes de réalisation, on constate qu'au-delà de deux cadres, le cycliste, même expérimenté, a du mal à lire les données. En consultant maintenant la figure 2B, on comprendra mieux la disposition des fonctions pour l'affichage dans les fenêtres comportant des cadres supérieur et inférieur. La figure 2C donne l'exemple d'un pool de fonctions dans lequel l'utilisateur peut choisir celles à afficher, bien que, de toute évidence, le pool illustré ne soit pas exhaustif. La figure 2B représente un programme de cinq fenêtres dans lequel les fonctions sélectionnées pour l'affichage séquentiel comprennent les fenêtres 200A-200E. De plus, une dernière fenêtre 200F marque la "FIN" ou la fonction "fin de fichier" qui n'est normalement pas affichée en fonctionnement normal. Chacune des fenêtres inclut un cadre supérieur 205A-E et un ou plusieurs cadres inférieurs 210A-E. Dans une forme de réalisation type, une fenêtre n'affiche à la fois que le cadre supérieur et l'un des cadres inférieurs, lorsqu'il existe plus d'un cadre inférieur. Par suite, pour la fenêtre 200A, la vitesse a été choisie pour être affichée dans le cadre supérieur alors que trois fonctions liées (vitesse maximale, vitesse moyenne et cadence) sont représentées dans trois cadres inférieurs. De même, la distance est indiquée dans le cadre supérieur de la fenêtre 200B alors que la distance totale est indiquée dans le cadre inférieur unique. Dans la fenêtre C, cependant, la fonction horloge indiquée dans le cadre supérieur ne comporte aucun cadre inférieur associé et la fonction horloge est donc reproduite dans le cadre inférieur pour éviter d'avoir un cadre vide. Les fonctions sélectionnées pour être affichées sont choisies dans un pool de fonctions disponibles 220A-n. Le programme peut contenir toutes les fonctions disponibles, mais cela n'est pas obligatoire. L'affichage d'une fonction particulière, soit dans le cadre supérieur, soit dans le cadre inférieur d'une fenêtre, peut être modifié. De même, l'ordre dans lequel les fonctions sélectionnées peuvent être affichées peut être modifié. Ainsi, pour la figure 2B, les traits en pointillé indiquent les fonctions sélectionnées pour affichage dans un ordre éventuellement différent de celui initialement prévu. On comprendra mieux la programmabilité de la présente invention en se référant aux figures 3A-3E. En général, le mode Programme a pour objet de personnaliser l'ordre, la position et la sélection des données affichées. Dans une forme de réalisation type, l'utilisateur peut effectuer un choix parmi diverses fonctions telles que: vitesse, vitesse maximum, vitesse moyenne, temps de parcours moyen, distance correpondante, longueur du parcours, distance totale, distance restant à parcourir, temps restant, cadence, chronomètre, horloge, etc. Ces fonctions s'affichent selon des combinaisons sélectionnables par l'utilisateur, de fenêtres successives de deux cadres. Le programme initial peut être modifié en remplaçant, en supprimant ou en insérant des cadres ou des fenêtres. Par convention pour une forme de réalisation type, tout cadre peut être réaffecté pour afficher une fonction disponible, quelle qu'elle soit. La suppression du cadre supérieur d'une fenêtre supprime les cadres inférieurs qui lui sont associés. De même, par convention, pour une forme de réalisation actuellement préférée, chaque cadre comprend deux fenêtres. La suppression de la seule fenêtre inférieure d'un cadre fait que cette fenêtre inférieure affiche les mêmes informations que le cadre supérieur, car les cadres vides sont interdits. Si le cadre inférieur qui est supprimé n'est pas le seul cadre inférieur disponible pour cette fenêtre, le cadre inférieur suivant en séquence passe à la position en cours. Dans une forme de réalisation actuellement préférée, les fonctions exécutées par l'ordinateur cyclo sont toutes actives en permanence pendant le fonctionnement du dispositif, même si bon nombre d'entre elles ne sont pas affichées ou, peut-être, ne font même pas partie du programme spécifié par l'utilisateur pour l'affichage des données. Outre les fonctions disponibles pour l'affichage, diverses fonctions "cachées" sont également fournies. Les fonctions cachées sont, en l'occurrence, des fonctions qui sont, de préférence, exclues de la boucle séquentielle de fonctions pouvant être affichées. Ces fonctions sont généralement exclues des fonctions de boucle, car elles sont utilisées et fixées indépendamment des autres fonctions. Parmi les exemples de fonctions "cachées" figurent les courses de vitesse, ou braquet et cadence. Ces fonctions peuvent être agencées pour occuper leur propre fenêtre et sont rendues accessibles par une séquence de touches prédéfinie. Ainsi, dans un dispositif selon la présente invention, les fonctions cachées sont accessibles pendant la programmation. Le programme avance jusqu'à la position désirée o l'on appuie sur le bouton gauche pendant environ une seconde. La fonction cachée est alors insérée comme nouvelle fenêtre avec un indicateur (par exemple, H) qui indique la nature cachée de la fonction. La fonction cachée peut ensuite être supprimée. Dans la forme de réalisation actuellement préférée, ces fonctions ne peuvent être "révélées", mais elles peuvent être supprimées ou ajoutées dans d'autres positions appropriées de la séquence. Comme on l'a indiqué précédemment, toutes les fonctions d'enregistrement cumulent les données, qu'elles aient été sélectionnées pour l'affichage ou non. La méthode de la présente invention inclut une fonction d'interrogation (qui peut être une fonction cachée) grâce à laquelle l'utilisateur peut provoquer l'affichage de toutes les fonctions d'enregistrement, qu'elles fassent partie du programme utilisateur en cours ou non. Par exemple, la fonction d'interrogation peut être accessible par un appui de trois secondes sur le bouton droit. Il n'est pas nécessaire, dans toutes les formes de réalisation, que toutes les fonctions soient affichées en réponse à la fonction d'interrogation, bien que l'on préfère actuellement qu'au moins certaines des fonctions qui ne sont pas actuellement sélectionnées pour l'affichage du programme soient affichées en réponse à la fonction d'interrogation. Comme on l'a indiqué ci-dessus, le système de la présente invention inclut plusieurs programmes préstockés - autrement dit, plusieurs dispositions de fonctions qui peuvent être affichées séquentiellement dans les fenêtres en appuyant sur un ou plusieurs des boutons du dispositif. Lorsque le dispositif est programmé par l'utilisateur, ces programmes préstockés peuvent être modifiés pour réordonner les données ou les repositionner dans les fenêtres, par un processus de modification. Toute fonction disponible peut être affectée à un cadre. Le processus de modification inclut à la fois la suppression d'une fonction dans un cadre existant et l'insertion d'une fonction différente dans un cadre existant. Dans une forme de réalisation préférée, la modification ne se produit que lorsque le mode Programmation a été lancé en appuyant sur le bouton gauche puis en le maintenant. Ensuite, on peut supprimer un cadre dans la séquence actuelle en appuyant momentanément sur les deux boutons. Les fonctions suivantes ne sont pas modifiées. En variante, l'utilisateur peut supprimer toutes les fonctions suivantes en insérant une fonction "FIN" en un point spécifié par l'utilisateur dans la séquence. Une fonction sélectionnée peut être insérée dans une séquence du cadre en cours en appuyant momentanément, dans la forme de réalisation préférée, sur le bouton droit. Le programme passe alors au cadre suivant. En variante, une fonction sélectionnée peut être insérée devant la position de programme en cours en appuyant sur le bouton droit et en le maintenant, par exemple, pendant une seconde. Après ce délai, l'insertion est effectuée et le programme avance. Dans une forme de réalisation actuellement préférée, aucun cadre vide n'est permis et la fonction qui se trouvait auparavant dans le cadre supérieur s'affiche maintenant dans le cadre inférieur. Si l'insertion se produit dans un cadre inférieur, la fonction qui occupait précédemment ce cadre est alors incrémentée d'une unité pour affichage ultérieur dans la séquence. L'insertion du mot "FIN" avant une fenêtre supprime toutes les fenêtres suivantes. L'insertion du mot "FIN" dans le cadre inférieur d'une fenêtre supprime tous les cadres suivants de la fenêtre. Pendant la programmation, la partie afficheur de l'affichage est, de préférence, configurée pour afficher la fonction qui occupait précédemment cette position dans la séquence. Le champ numérique indique typiquement le numéro de la fenêtre ou du cadre à affecter. Si l'emplacement est vide, le mot "FIN" s'affiche. La description générale du système donnée ci- dessus de la présente invention sera comprise plus en détail en se référant aux figures 3A-3E et en partant de la figure 3A. Le programme commence à l'étape 400 et, à l'étape 402, il vérifie si les deux boutons ont été enfoncés pratiquement simultanément. Si c'est le cas, le programme se branche en 403 et se poursuit figure 3C. Dans le cas contraire, on contrôle, à l'étape 404, si c'est le bouton droit qui a été enfoncé. Si oui, le programme se branche et se poursuit figure 3B. Si ce n'est pas le cas, on contrôle, à l'étape 406, si le bouton gauche a été enfoncé. Si le bouton gauche n'a pas été enfoncé, c'est qu'aucune action n'a eu lieu et le programme revient à l'étape 408. En revanche, si c'est le bouton gauche qui a été enfoncé, on vérifie alors, à l'étape 410, le temps pendant lequel ce bouton a été enfoncé. On comprendra que, dans une forme de réalisation actuellement préférée de la présente invention, toutes les fonctions de bouton n'ont d'effet que lorsqu'on relâche le bouton. Si l'on a appuyé sur le bouton gauche pendant un temps ne dépassant pas une seconde, le programme passe à l'étape 412 pour déterminer s'il existe une fonction de temporisation. Si ce n'est pas le cas, le programme passe à l'étape 414 pour permettre la sélection des cadres inférieurs successifs, après quoi le programme revient à l'étape 416. S'il existe une fonction de temporisation à l'étape 412, le programme passe à l'étape 418 pour déclencher l'horloge ou valider le compteur, après quoi le programme revient à l'étape 420. En revanche, si l'on a appuyé sur-le bouton gauche, pendant plus d'une seconde, on vérifie, à l'étape 422, si le bouton a été enfoncé pendant plus de trois secondes. Si ce n'est pas le cas, le programme se branche et vérifie, à l'étape 424, si une fonction de temporisation est affichée. Sinon, le programme revient à l'étape 426. Alors, l'écran clignote une fois, à l'étape 428, après quoi on vérifie, à l'étape 430, si le bouton gauche a été relâché après avoir été enfoncé moins de trois secondes. Si le bouton gauche n'a pas été relâché au bout de trois secondes, le programme revient à l'étape 422; s'il a été relâché en moins de trois secondes, le programme passe à l'étape 414. Si, à l'étape 422, on détermine que le bouton a été enfoncé plus de trois secondes, le programme passe à l'étape 432 o l'on contrôle si la fonction en cours est réglable. Si elle ne l'est pas, le programme revient à l'étape 434. Dans ce cas, le programme se met en mode "préparation" à l'étape 436 et fait clignoter le chiffre le plus à droite, après quoi, la colonne à régler clignote à l'étape 438. Une interrogation est alors faite à l'étape 440 pour déterminer si les deux boutons ont été enfoncés. Si oui, le programme passe à l'étape 442 o l'on vérifie si les deux boutons ont été enfoncés plus d'une seconde. Si non, le programme revient à l'étape 444. Dans ce cas, le programme passe à l'étape 403 et se poursuit figure 3C. Si le résultat, à l'étape 446, était non, on vérifie alors, à l'étape 456, si le bouton gauche a été enfoncé. Si non, le programme passe à l'étape 438. Si oui, une interrogation a lieu à l'étape 448 pour déterminer si le bouton gauche a été enfoncé plus d'une seconde et les minutes s'affichent. Si non, l'affichage est incrémenté d'une unité à l'étape 460. Dans ce cas, le mode incrémentation accélérée est introduit à l'étape 462 et l'affichage est incrémenté rapidement jusqu'à ce que l'on relâche le bouton gauche. Après l'étape 460 ou 462, le programme revient à l'étape 438. Comme on l'a expliqué ci-dessus, si l'on a appuyé sur le bouton droit comme l'a déterminé l'étape 404, le programme se branche. Comme l'indique la figure 3B, on vérifie ensuite, à l'étape 480, si l'on a appuyé sur le bouton droit plus d'une seconde. Si le résultat est négatif, on vérifie ensuite, à l'étape 482, si la fonction en cours est une fonction cachée. Si c'est le cas, le programme revient à la fonction précédente, à l'étape 484, puis à l'étape 486. Si non, le programme passe à la fonction suivante, étape 488, et retourne ensuite à l'étape 490. Si la réponse est oui à l'étape 480, on vérifie, à l'étape 492, si l'on a appuyé sur le bouton droit plus de trois secondes. Si ce n'est pas le cas, on vérifie alors, à l'étape 494, s'il y a une fonction cachée. Si non, le programme revient à l'étape 496. Si la réponse est oui, le programme avance et introduit la fonction cachée à l'étape 498, après quoi il revient à l'étape 500. Si, à l'étape 492, on a appuyé sur le bouton droit plus de trois secondes, le système se met en mode "interrogation" à l'étape 502. On vérifie, à l'étape 504, si les deux boutons ont été enfoncés. Si non, on vérifie, à l'étape 506, si le bouton droit a été enfoncé plus d'une seconde. Dans ce cas, le programme passe à l'étape 508 et revient au programme principal (figure 3A). Si non, on vérifie alors, à l'étape 510, si le bouton gauche a été enfoncé plus d'une seconde. Sinon, le programme revient à l'étape 512; dans ce cas, le programme passe à l'étape 514 et affiche la fonction suivante, après quoi il revient à l'étape 516. Si, à l'étape 504, on a constaté que les deux boutons avaient été enfoncés, une interrogation a lieu à l'étape 520 pour déterminer si les deux boutons ont été enfoncés plus d'une seconde. Si non, une interrogation a lieu alors à l'étape 522 pour déterminer si la fonction en cours est restaurable. Si oui, la valeur de la fonction en cours est restaurée à l'étape 524 et le programme se boucle sur l'étape 504. Si le résultat de l'étape 522 est négatif, le programme se boucle également sur l'étape 504. Si le résultat de l'étape 520 est positif, une nouvelle interrogation a lieu à l'étape 526 pour déterminer si les deux boutons ont été enfoncés plus de trois secondes. Si non, le programme se boucle sur l'étape 504. Si oui, une configuration de test s'affiche à l'étape 528 et le programme passe à l'étape 403 indiquée figure 3C. On comprendra mieux, en se référant maintenant à la figure 3C, les événements qui se produisent lorsque les deux boutons ont été enfoncés aux étapes 402 (figure 3A) ou 526 (figure 3B). Une nouvelle interrogation a lieu à l'étape 540 pour déterminer si les deux boutons ont été enfoncés plus d'une seconde. Si oui, une nouvelle interrogation a lieu à l'étape 542 pour déterminer si les deux boutons ont été enfoncés plus de trois secondes. Si non, le programme revient à l'étape 544. Si oui, le programme passe à l'étape 546 pour afficher la configuration de test, après quoi une nouvelle interrogation a lieu à l'étape 548 pour déterminer si les deux boutons ont été enfoncés plus de six secondes. Si non, une restauration générale a lieu à l'étape 550, après quoi le programme revient à l'étape 552. Si oui, le programme se met en mode "préparation" à l'étape 554 puis se poursuit sur la figure 3D décrite ci-après. Si, à l'étape 540, le résultat est non, une interrogation a lieu à l'étape 560 pour déterminer si la fonction en cours est restaurable. Si non, le programme revient à l'étape 562. Si oui, une nouvelle interrogation a lieu à l'étape 564 pour déterminer si la fenêtre en cours inclut deux fonctions séparément restaurables. Si non, la fonction en cours est restaurée à l'étape 566 et le programme revient à l'étape 568. Si le résultat de l'étape 564 est oui, le programme passe à l'étape 570 et le cadre inférieur clignote. Une nouvelle interrogation a lieu alors à l'étape 574 pour déterminer si les deux boutons sont enfoncés. Si non, une interrogation a lieu à l'étape 576 pour déterminer si le bouton droit a été enfoncé. Si non, le programme passe à l'étape 578 et affiche le cadre supérieur, après quoi le programme se boucle sur l'étape 574. Si le résultat, à l'étape 574, est oui, une interrogation a lieu à l'étape 590 pour déterminer si les deux boutons ont été enfoncés plus de trois secondes. Si oui, le programme se boucle sur l'étape 546 décrite précédemment. Si non, la fonction affichée est restaurée à l'étape 592 et le programme revient à l'étape 594. On comprendra mieux le mode "Préparation", indiqué à l'étape 554, en se référant à la figure 3D. Le processus se poursuit à partir de la figure 3C et passe à l'étape 600 o "PROG" s'affiche dans l'afficheur. Une interrogation a lieu ensuite à l'étape 602 pour déterminer si le bouton droit a été enfoncé. Si non, une nouvelle interrogation a lieu à l'étape 604 pour déterminer si le bouton gauche a été enfoncé plus d'une seconde. Si non, le programme passe à l'étape 606 et s'incrémente jusqu'à la configuration de programme préstockée suivante. On comprendra que, dans une forme de réalisation actuellement préférée, plusieurs programmes prédéterminés puissent être stockés en mémoire et que l'utilisateur puisse choisir, le cas échéant, celui des programmes prédéterminés qu'il désire utiliser. Dans certaines formes de réalisation, il peut être souhaitable de ne pas fournir de tels programmes prédéterminés, bien que, dans ce cas, l'utilisateur dispose alors, en général, de moins de souplesse. Après incrémentation à l'étape 606, le programme se boucle sur l'étape 602. Si l'interrogation effectuée à l'étape 604 a donné un résultat positif, le système passe en mode "Programme" à l'étape 608. Le mode Programme est décrit ci-après figure 3E. Si le résultat, à l'étape 602 est oui, le programme passe à l'étape 620 et affiche les unités et la distance totale, après quoi une interrogation a lieu à l'étape 622 pour déterminer si le bouton droit a été enfoncé. Si non, une nouvelle interrogation a lieu à l'étape 624 pour déterminer si le bouton gauche a été enfoncé plus d'une seconde. Si oui, le programme passe à l'étape 628 et déroule un sous-programme "GOSUB SET VALUE". Si non, le programme passe à l'étape 620 et exécute un sous- programme "GOSUB CHANGE UNITS" dont chacun sera décrit ci-après. Après chaque sous-programme, le programme se boucle sur l'étape 622. Lorsqu'on obtient un résultat positif à l'étape 622, le programme passe à l'étape 640 et affiche les unités et le numéro d'étalonnage. Une nouvelle interrogation a lieu alors à l'étape 642 pour déterminer si le bouton droit a été enfoncé. Si non, une vérification a lieu a l'étape 644 pour déterminer si le bouton gauche a été enfoncé plus d'une seconde. Dans ce cas, le sous-programme GOSUB SET VALUE est lancé à l'étape 646; si non, le sous-programme GOSUB CHANGE UNITS est lancé à l'étape 648. A l'achèvement de l'un ou l'autre sous-programme, le programme se boucle sur l'étape 642. Si la réponse à l'étape 642 est positive, le programme passe à l'étape 650 et affiche une fonction horloge en mode 12/24 heures. A l'étape 652, on détermine si le bouton droit a été enfoncé. Si oui, le programme sort du mode Préparation à l'étape 654 et revient à la figure 3A. Si non, on détermine, à l'étape 656, si le bouton gauche a été enfoncé plus d'une secondQ. Si non, on véqrifie, à l'étape 658, si l'horloge est en mode 24 heures. Si oui, on bascule l'horloge sur le mode 12 heures à l'étape 660; si non, on bascule l'horloge sur le mode 24 heures à l'étape 662. Si l'on obtient la réponse oui à l'étape 656, le programme passe à l'étape 670 et affiche les minutes sur l'écran. On détermine alors, à l'étape 672, si le bouton droit a été enfoncé. Si ce n'est pas le cas, une nouvelle interrogation a lieu à l'étape 674 pour déterminer si le bouton gauche a été enfoncé plus d'une seconde. Si non, le programme passe à l'étape 676 en incrémentant les minutes d'une unité. Si oui, les minutes sont incrémentées en passant à l'étape 678. Si la réponse est oui à l'étape 672, une nouvelle interrogation a lieu à l'étape 680 pour déterminer si l'affichage en cours se trouve dans la colonne de gauche. Si oui, le programme revient à l'étape 654; si non, le programme passe à l'étape 682 en faisant clignoter la colonne suivante à gauche, après quoi le programme se boucle sur l'étape 672. Le sous-programme SET VALUE commence, à l'étape 684 par vérifier si le bouton droit a été enfoncé. Si ce n'est pas le cas, on détermine, à l'étape 686, si le bouton gauche a été enfoncé. Si non, le programme revient à l'étape 684. Si oui, la colonne en cours, qui clignote normalement dans la forme de réalisation actuellement préférée, est incrémentée à l'étape 688, après quoi le sous-programme revient à l'étape 690. Si la vérification effectuée à l'étape 684 est positive, une nouvelle vérification a lieu à l'étape 692 pour déterminer si la colonne actuellement disponible pour incrémentation est la colonne à l'extrême gauche. Si oui, le sous-programme fait retour, via l'étape 690; si non, le programme s'incrémente à l'étape 694 pour permettre d'incrémenter la colonne de gauche suivante, généralement indiquée par clignotement de cette colonne. Le programme se boucle ensuite sur l'étape 686. Le sous-programme CHANGE UNITS permet simplement à l'utilisateur de basculer entre kilomètres et miles, et commence, à l'étape 700, par déterminer si l'unité en cours est le kilomètre. Si c'est le cas, le sous-programme avance en commutant sur "miles" à l'étape 702 et continue à l'étape 704 en convertissant les valeurs appropriées. Si non, le sous-programme passe à l'étape 706 en conservant le kilomètre comme unité en cours et convertit les valeurs à l'étape 706. Après conversion des valeurs à l'étape 706, le sous- programme revient à l'étape 708. On comprendra mieux le mode Programmation de la présente invention en se référant à la figure 3E. Comme on l'a indiqué précédemment, on accède au mode programmation à partir de l'étape 608 de la figure 3D. Le processus commence à l'étape 720 en affichant la première fenêtre, avec un curseur entre le numéro de fenêtre et l'afficheur de fonction clignotant, ce qui indique le cadre à programmer. Le programme passe alors à l'étape 722 et affiche la fonction du programme en cours et la position programmée. Le programme demande ensuite, à l'étape 724, si les deux boutons ont été enfoncés. Si c'est le cas, une nouvelle interrogation est faite à l'étape 726 pour déterminer si les deux boutons ont été enfoncés plus d'une seconde. Si c'est le cas, une nouvelle interrogation est effectuée à l'étape 728 pour déterminer si les deux boutons ont été enfoncés plus de trois secondes. Si c'est le cas, le programme revient à la figure 3C; si non, le programme revient à l'étape 722. Si la réponse, à l'étape 726, est non, on vérifie, à l'étape 730, si le cadre en cours est le cadre supérieur. Si oui, la fenêtre est supprimée à l'étape 732 et une interrogation a lieu à l'étape 734 pour déterminer s'il reste des fenêtres. Si ce n'est pas le cas, le programme se boucle sur l'étape 722; dans ce cas, le programme se boucle sur la figure 3C. Si la réponse à l'étape 730 est non, le programme passe à l'étape 736 en supprimant le cadre en cours et exécute ensuite une vérification à l'étape 738 pour déterminer s'il existe des cadres inférieurs supplémentaires. S'il n'existe aucun autre cadre inférieur, avec une réponse oui à l'étape 738, le cadre supérieur est reproduit dans le cadre inférieur à l'étape 740, car dans une forme de réalisation actuellement préférée, aucun cadre vide n'est admis. S'il existe des cadres inférieurs, d'o la réponse non à l'étape 738, le programme se boucle sur l'étape 722. Si le résultat, à l'étape 724, est que les deux boutons n'ont pas été enfoncés, on vérifie ensuite, à l'étape 750, si le bouton droit a été enfoncé. Si non, on vérifie, à l'étape 752 si le bouton gauche a été enfoncé. Si non, le programme se boucle sur l'étape 724. Si oui, une nouvelle interrogation a lieu à l'étape 754 pour déterminer si le bouton gauche a été enfoncé plus d'une seconde. Si non, le programme passe à l'étape 756 en affichant, dans la position en cours, la fonction suivante de la liste des fonctions qui constituent le programme en cours. Le programme se boucle ensuite sur l'étape 722. Si l'on a appuyé sur le bouton gauche plus d'une seconde, une interrogation a lieu à l'étape 758 pour déterminer si le cadre en cours est un cadre supérieur. Si non, ce qui signifie que le cadre en cours est un cadre inférieur, le programme passe à l'étape 760 et ajoute une fenêtre cachée avec un cadre supérieur et un cadre inférieur au cadre inférieur en cours. La fonction active affichée est mise dans le cadre supérieur avec un H" à droite de l'écran pour indiquer la nature cachée de la fonction. Le programme avance ensuite à l'étape 762 en passant dans le cadre inférieur de la fenêtre en cours, après quoi le programme se boucle sur l'étape 722. Le programme se boucle en outre sur l'étape 722 si le résultat de l'étape 758 est oui. Si le résultat de l'étape 750 est oui, le programme avance en demandant, à l'étape 770, si le bouton droit a été enfoncé plus d'une seconde. Si c'est le cas, le programme passe à l'étape 772 et la fonction en cours d'affichage est insérée devant la position en cours affichée, le reste du programme restant inchangé. Si non, le programme passe à l'étape 774 et la fonction actuellement affichée est placée dans la position actuellement affichée de la séquence et remplace la fonction qui occupait cette position antérieurement. Dans l'un ou l'autre cas, le programme avance ensuite à l'étape 776 et demande si la fonction actuellement affichée est la fonction "FIN". Si c'est le cas, une interrogation est effectuée à l'étape 778 pour déterminer si le cadre en cours est un cadre supérieur. Si c'est le cas, c'est que l'utilisateur a indiqué qu'il ne désirait aucune autre fenêtre dans le programme en cours. Dans ce cas, le programme passe à l'étape 780, le mot "PROG" s'affiche pour indiquer que le programme est achevé et le programme revient à la figure 3C. Si le résultat, à l'étape 778 est non, ce qui signifie que la fin d'une fenêtre a été atteinte, le programme passe à l'étape 782 et à la fenêtre suivante. Si le résultat est non à l'étape 776, une nouvelle interrogation a lieu à l'étape 790 pour déterminer si la fonction en cours est une fonction cachée. Si ce n'est pas le cas, une nouvelle interrogation a lieu à l'étape 794 pour déterminer si le cadre en cours est un cadre supérieur. Si oui, le programme passe à l'étape 762 décrite précédemment. Si non, le programme se boucle sur l'étape 722. Si le résultat est oui à l'étape 790, une nouvelle interrogation a lieu à l'étape 792 pour déterminer si le cadre en cours est un cadre inférieur. Si oui, le programme se branche sur l'étape 782 décrite précédemment. Si non, le programme passe à l'étape 762 décrite également précédemment. D'après ce qui précède, on comprendra que l'on a décrit une méthode et un appareil nouveaux et originaux pour commander et afficher une pluralité de fonctions sélectionnables dans un dispositif tel qu'une horloge multifonction en ayant recours à deux boutons seulement pour simplifier le fonctionnement et la programmation. La réalisation de ces objectifs est rendue possible, en partie, par le recours à un affichage en mode par points tel que l'affichage en matrice de points. Si l'on a décrit en détail diverses formes de réalisation de la présente invention, il apparaîtra néanmoins au spécialiste qu'il peut exister de nombreuses variantes et équivalents ne s'écartant pas de la présente invention. Il est donc prévu que l'invention ne se limite pas à la description précédente, mais uniquement aux revendications jointes. REVENDICATIONS Sont revendiqués: 1. Un ordinateur cyclo disposant de moyens de fixation pour être monté sur un vélocipède, et destiné à être utilisé en roulant, d'un moyen de traitement pour collecter des données d'après un critère présélectionné, d'un premier moyen d'affichage pour indiquer une valeur en réponse au moyen de traitement et d'un second moyen d'affichage en mode points pour afficher un caractère sélectionné avec la valeur affichée dans le premier moyen d'affichage. 2. Un ordinateur cyclo programmable comportant d'un moyen de traitement de données pour collecter des données pour une pluralité de fonctions d'après un critère présélectionné un moyen d'affichage constitué d'au moins un cadre dans au moins une fenêtre pour afficher, en séquence, les données associées à celles des fonctions sélectionnées, une mémoire pour stocker un programme défini par l'utilisateur, ledit programme définissant au moins l'ordre dans lequel ces fonctions sont affichées, un moyen d'entrée accessible à l'utilisateur pour spécifier le programme. 3. L'ordinateur cyclo programmable selon la revendication 2 comprenant, en outre, un moyen manoeuvrable par l'utilisateur pour afficher une pluralité de fonctions, y compris, au moins, une fonction non spécifiée pour affichage par le programme; 4. L'ordinateur cyclo programmable selon la revendication 3 dans lequel l'affichage de l'état de la pluralité des fonctions est séquentiel. 5. L'ordinateur cyclo programmable selon la revendication 3 dans lequel l'affichage de l'état de la pluralité de fonctions est simultané. 6. Le procédé d'affichage des données d'un ordinateur cyclo programmable consistant à fournir au moins une séquence préétablie de fonctions à afficher, fournir un moyen manoeuvrable par l'utilisateur pour modifier la séquence préétablie afin d'établir une séquence spécifiée par l'utilisateur, fournir une mémoire pour stocker la séquence spécifiée par l'utilisateur et fournir un écran pour afficher, tour à tour, les fonctions de la séquence spécifiée par l'utilisateur.