Brevet FR2641103A1 — publié le 19900629

La présente invention se rapporte au domaine des émetteurs de télécommande programmables pour un produit électronique courant tel qu'un enregistreur de cassettes vidéo, un convertisseur à câble, un tourne- vidéodisque, un récepteur de télévision ou analogue. La tendance dans la télécommande à infrarouge pour l'électronique du commerce est l'unité de télécommande universelle pour plusieurs marques, qui commande chacun d'un certain nombre de produits électroniques du commerce fabriqués par différents fabricants, et utilisant des formats respectifs différents de code de signaux de télécommande. Les unités manuelles universelles de télécommande donnent à l'utilisateur la facilité de n'utiliser qu'une seule unité de télécommande tout en pouvant contr81er la plupart, si ce n'est toutes les fonctions des produits électroniques courants. A un grand degré, le nombre de fonctions différentes et de formats différents de signaux de télécommande pouvant être traités par une télécommande universelle dépend de la quantité de la mémoire disponible pour le stockage du code infrarouge. Il y a deux tentatives de base à des unités universelles manuelles de télécommande. Un système à base d'une mémoire volatile (ROM) est souvent décrit comme une unité manuelle de télécommande "qui apprend". Ce type d'unité de télécommande nécessite que l'utilisateur lui "enseigne" les fonctions qu'il souhaite lui voir accomplir. Cela est usuellement fait par commutation de l'unité manuelle de télécommande "qui apprend" à un "mode d'apprentissage", et en orientant physiquement les deux unités manuelles de manière que l'unité de télécommande "qui apprend" puisse recevoir les émissions infrarouges de l'unité manuelle à imiter. Ce procédé d'apprentissage commence comme un procédé de stockage de l'information o une émission infrarouge est enregistrée alors qu'elle est reçue par la télécommande qui apprend. Après ce stockage initial de la donnée "brute" la donnée brute est analysée et comprimée puis la version finale comprimée de la donnée est stockée. Quand l'unité manuelle universelle de télécommande est utilisée en mode de télécommande pour transmettre un ordre, les codes comprimés et stockés sont rappelés de la mémoire, décomprimés et le signal résultant est émis. Un système à base d'une mémoire non volatile (ROM) est restreint à un ensemble fixe de dispositifs, usuellement des récepteurs de télévision, des enregistreurs de cassettes vidéo et des convertisseurs à câble. Dans une telle unité, tous les formats différents de code pour toutes les fonctions de chaque type de dispositif à commander doivent 8tre programmés au préalable, et ces fonctions sont usuellement comprimées d'une certaine manière pour occuper aussi peu d'espace de la mémoire que possible. Avec chaque technique, comme l'espace dans la mémoire est limité, plus la technique de compression que l'on utilise est efficace, plus on peut stocker de fonctions. Un principe des techniques de compression est l'identification des caractéristiques communes des formats en code infrarouge. Un exemple de compression de données infrarouges est révélé dans le brevet US No. 4 623 887 (Welles II), pour une utilisation, par exemple, dans un système à base de RAM. Welles II a observé de nombreuses similitudes dans divers formats infrarouges et révèle une méthode de compression de données employant la classifi- cation d'un certain nombre de caractéristiques, comprenant la durée de la "salve" porteuse, la durée des "espaces" entre les salves porteuses et le temps entre les répétitions de l'information de transmission. Le brevet US No. 4 802 114 (Sogame) publié le 31 Janvier 1989 révèle un système qui comprime de plus la donnée comprimée produite selon Welles II en classant des paires "salve" et "espace" en paires binaires. Il faut reconna!tre ici qu'il y a plusieurs autres caractéristiques ou attributs communs que l'on trouve dans la plupart des formats de codes infrarouges de télécommande que l'on peut employer pour produire une amélioration significative de la compression. Un dispositif selon un mode de réalisation préféré de la présente invention utilisant cela stocke de manière contigUe les données comprimées afin d'économiser l'espace dans la mémoire. L'invention sera mieux comprise et d'autres buts, caractéristiques, détails et avantages de celle-ci apparaîtront plus clairement au cours de la description explicative qui va suivre faite en référence aux dessins schématiques annexés donnés uniquement à titre d'exemple illustrant un mode de réalisation de l'invention et dans lesquels: - la figure 1 illustre la répartition de l'espace dans la mémoire d'une unité manuelle de télécommande selon l'invention; - la figure 2 illustre la classification des composants d'une émission infrarouge typique de télécommande selon l'invention; - la figure 3a illustre en détail une Structure de Format Typique (FS) telle que les Structures de Format montrées à la figure 1; la figure 3b illustre en détail une Table de Fonctions Comprimées typique (CFT) telle que celles que l'on peut voir à la figure 1; - la figure 4 illustre, sous forme de schéma bloc, un montage d'une unité manuelle de télécommande appropriée à une utilisation avec l'invention; - la figure 5a est un organigramme montrant un programme de décompression de code approprié à une utilisation avec la présente invention; et - la figure 5b illustre une portion d'une mémoire d'utilisation générale o est stockée une donnée FS. Tel qu'utilisé ici, le terme "fonction (s)" indique l'émission infrarouge ou action du dispositif associée à une seule pression d'une touche de la télécommande. Le terme "ordre" est synonyme du terme "fonction". Le terme "format" indique un protocole de code infrarouge établi par un fabricant. Ainsi, on.peut dire qu'un enregistreur de cassettes vidéo d'un fabricant particulier a dix fonctions, toutes employant le même format. Le terme "zone" indique une paire du code espace-salve. Le terme "marque" de fabrique indique des dispositifs électroniques partageant le même format de code et qui sont produits par un fabricant particulier. On part de l'hypothèse majeure qu'un ensemble de fonctions en rapport pour chaque dispositif (comme MARCHE, ARRET, ENREGISTREMENT, etc... pour un enregistreur de cassettes vidéo) sera stocké sous pas plus d'un format et qu'ainsi l'information de format de base peut être extraite et stockée séparément pour chaque marque de fabrique. Le stockage de données infrarouges à la manière illustrée à la figure i donne une grande amélioration de l'efficacité de la mémoire pendant la compression des données. Tout l'ensemble des données comprimées pour chaque marque se compose de deux parties, la structure du format (FS) et la table des fonctions comprimées (CFT). Chaque marque doit avoir ces deux parties, mais de nombreuses marques peuvent partager la même FS et quelques unes peuvent partager la même CFT. Pour illustrer ce point, la mémoire 100 de la figure 1 comprend une aire 110 o est stockée la donnée de structure de format (FS) pour une marque de fabrique donnée. La donnée de structure de format stockée dans l'aire 110 de la mémoire peut être applicable à plus d'une marque (dont la reconnaissance permet une économie supplémentaire de l'espace de la mémoire). Une aire de mémoire 120 contenant une table de fonctions comprimées (CFT) utilisée, par exemple, par un dispositif de la Marque A, est stockée dans la mémoire, suivant immédiatement FS 110 se rapportant au dispositif de la Marque A. Une aire 130 de la mémoire contenant une table de fonctions comprimées (CFT) utilisée, par exemple, par un dispositif de Marque B, est stockée dans la mémoire suivant immédiatement CFT 120 pour la marque qui partage FS 110. FS 140 et CFT 150 pour une troisième marque, par exemple C, sont stockées d'une manière similaire. Comme le montre la figure 2, une émission infrarouge se compose d'une certaine forme d'enveloppe numérique que l'on utilise pour moduler la porteuse souhaitée. Cette enveloppe se compose d'un nombre défini et limité de salves porteuses et espaces qui alternent. Les salves porteuses et espaces peuvent avoir de nombreuses durées différentes (ou "largeurs"). Alternativement, au lieu de moduler une porteuse par les paires espace/salve, les paires espace/salve peuvent être directement émises. On dit que ce type de transmission utilise un format non porteuse o l'enveloppe est, par définition, l'émission elle-même. De nombreux formats sont initialisés par une séquence spécifique d'une salve suivie d'un espace, que l'on appelle une séquence MARQUE-ESPACE (ci-après MARQUEESPACE), qui est la même pour toutes les fonctions d'une marque de fabrique. Le nombre de cycles de la salve porteuse correspondant à la MARQUE et la durée de l'ESPACE suivant sont stockés dans la portion FS de la mémoire pour une marque donnée de fabrique (par exemple voir 312 et 314 sur la figure 3). (Les formats sans MARQUE-ESPACE peuvent employer cette mémoire dans FS pour toute autre information). On suppose maintenant, dans la présente technique de compression, que le restant de l'enveloppe peut être réduit à une série de paires séquentielles d'espaces et de salves. Chaque paire espace/salve est appelée une zone et se compose d'une information codée qui contient à la fois la durée de la salve infrarouge (dans les cycles de la porteuse) et une valeur de décompte qui est utilisée pour générer l'espace infrarouge. Un espace infrarouge est une absence de cycles de salve pendant un temps spécifié. La valeur de décompte est utilisée pour contr8ler la durée de l'espace souhaité. Typiquement, on utilise un octet (8 bits) pour stocker la salve et un octet pour l'espace, ou bien deux octets pour chaque zone. Ainsi, la donnée représentative de chaque type de zone utilisée par une marque particulière de fabrique est stockée dans la portion FS de la mémoire pour une marque donnée de fabrique. Toute émission infrarouge peut être identifiée comme étant simplement une séquence de zones. La figure 3a illustre le contenu d'une portion FS typique de la mémoire 300. Le contenu de la portion FS de la mémoire définit les caractéristiques d'un format de code infrarouge particulier. Il comprend un certain nombre fixe de constantes comprenant l'information codée indiquant des choses telles que le nombre de bits par zone 302 (en réalité le nombre de bits d'un indicateur de zone), le nombre de zones différentes 304, la fréquence de la porteuse infrarouge 306, les zones par ordre 308, l'espacement (usuellement donné en millisecondes) entre émission répétée 310 et les données de temporisation 312-332 comprenant les largeurs de salve et d'espace (312: cycles marques, 314: largeur espace, 316: cycles synchronisation, 318: espace zone numéro 0, 320: cycle zone numéro 0, 322: espace Fl ou zone numéro 1, 324: cycle F1, 326: espace F2 ou zone numéro 2, 328: cycles zone numéro 2 ou F2, 330:'espace zone numéro 3 ou F3, 332: cycles F3. FS contient également une information concernant la salve initiale de la porteuse en cycles de porteuse (synchronisation) 316. Cettte information est supposée ne changer pour aucune fonction dans une marque de fabrique. En ce qui concerne la fréquence de la porteuse infrarouge, il faut noter ce qui suit. Etant donné la disponibilité des pièces électroniques, et la nature de la conception du système infrarouge, cette fréquence est usuellement dans la plage des dizaines de kilohertz et étant générée par de simples oscillateurs, elle est souvent d'un sous-groupe d'environ huit fréquences porteuses "communes". Un microprocesseur peut simuler chacune de celles-ci avec une précision suffisante pour le récepteur infrarouge souhaité, soit en utilisant sa propre horloge et un diviseur ou bien par simple basculement de bits (comme on le décrira ci-dessous en se référant à la figure 4). Il faut noter que cette définition comprend les formats de non porteuse qui utilisent l'espacement des salves d'infrarouge (usuellement de l'ordre de dizaines de microsecondes) pour transporter l'information. Dans ces cas, la largeur de la salve est considérée comme étant une constante. La figure 3b montre une portion d'une table de fonctions comprimées (CFT) pour un format o il y a trois bits par zone (BPF) et deux octets par ordre (BPC). La table de fonctions comprimées (CFT) se compose d'un bloc de mémoire 340-346 qui contient un groupe de données comprimées de zones sous la forme d' "indicateurs" d'adresse à des emplacements dans FS o la donnée de zone est réellement placée pour toutes les fonctions d'une marque particulière de fabrique. Une caractéristique de l'invention est que les indicateurs de zone sont séquentiellement stockés, à travers des limites d'octets, afin d'économiser l'espace de la mémoire. Chaque "indicateur" (trois bits dans cet exemple) est dirigé vers une seule zone stockée dans FS. Par exemple, les trois bits de l'indicateur de zone 0 (F0) de l'emplacement de fonction 342 sont dirigés vers les emplacements de la mémoire contenant l'aire correspondante de mémoire 318, 320 (figure 3a) qui définissent la zone 0 en terme de durée de l'espace et du nombre de cycles de la salve suivant l'espace. Dans cet exemple, l'emplacement de fonction 342 comprend deux octets de la mémoire (c'est-àdire octets par ordre (BPC) = 2). En général, le nombre de bits par zone (BPF) indique le nombre de bits qu'il faut stocker dans CFT afin que chacune des zones de la portion FS de la mémoire puisse être adressée. Par exemple, avec trois bits par zone, on peut adresser de manière unique huit zones (c'est-à-dire 0-7). Il est important de noter que si l'on ne stockait pas BPF, alors chaque emplacement de mémoire d'indicateur de zone dans la portion CFT de la mémoire devrait être du même nombre fixe de bits de longueur, et le nombre fixe de bits devrait être établi suivant le nombre de bits nécessaires pour accéder à la mémoire FS ayant le plus grand nombre de zones. Très probablement, ce nombre serait établi à huit bits pour la facilité car huit bits constituent un octet facilement adressable de la mémoire. Cependant, si un format ne nécessite que trois bits par indicateur de zone, les cinq bits supplémentaires d'espace réservés sont perdus. En stockant les bits par zone (BPF), les indicateurs de zone stockés dans CFT peuvent être "rassemblés" (c'est-à-dire stockés de manière contigUe à travers les limites des octets, comme cela est montré au détail 342 de la figure 3b), conservant ainsi l'espace de la mémoire. Le contrôleur accédant à la mémoire CFT "sait", en vertu de BPF stocké, exactement le nombre de bits à extraire pour adresser chaque zone stockée dans la mémoire FS. Comme on l'a noté ci-dessus, la mémoire FS contient la donnée qui définit chacune des zones utilisées dans une marque donnée de fabrique. Chaque fonction (c'est-à-dire ordre à transmettre) comprend une combinaison unique de zones choisies parmi celles stockées dans FS. Ainsi, afin de former une séquence particulière de zones en préparation d'une émission infrarouge, l'aire de définition des zones (c'est-à-dire 320-322 sur la figure 3) de la mémoire FS est adressée par une séquence particulière d'indicateurs stockée dans CFT. En d'autres termes, CFT ne contient pas d'information concernant les cycles et espaces de salves à émettre mais contient au contraire des indicateurs vers les emplacements de la mémoire FS o cette information peut être trouvée. Le nombre de zones différentes (NDF) utilisées par tout format infrarouge varie. Un grand nombre de formats n'utilise que deux zones différentes, tandis que d'autres peuvent en employer jusqu'à douze. Cependant, dans un format donné, ce nombre est constant et est stocké dans l'emplacement de mémoire 308 dans la portion FS de la mémoire 300 et on l'utilise pour trouver le début de la portion CFT de la mémoire car la portion CFT de la mémoire suit immédiatement la portion FS de la mémoire et est par conséquent à 2 emplacements de mémoire NDF après l'emplacement CYCLES SYNCHRONISATION dans la mémoire 300 (voir figure 3). Une autre constante stockée dans la portion FS de la mémoire et le nombre de zones composant chaque fonction ou zones par ordre (FPC) 308. Dans la pratique, FPC peut varier entre 5 et 32 zones. Il faut noter que le nombre total de fonctions d'un format ne peut dépasser NDF X FPC fonctions et est usuellement bien plus fa?3le. Un groupe d'équations qui peut être utile pour la compréhension de l'invention est présenté ci-dessous au tableau 1. Bien que le nombre de bits (BPF) alloué dans CFT pour indiquer chaque zone et stocké dans l'emplacement de mémoire FS 302 puisse être supposé égal au nombre minimum de bits nécessaires pour adresser chacune des zones différentes, cela n'est pas toujours le cas. Une valeur BPF plus importante que celle requise pour adresser toutes les zones différentes est quelquefois prévue pour permettre d'indiquer des zones qui n'existent pas. Cela est fait parce que certains formats infrarouges conservent des constantes de temps total d'émission en changeant le nombre de zones par fonction (c'est-à-dire en variant FPC). En effet, dans ces formats, lorsqu'une émission comprend des zones ayant de longues durées, alors moins de zones sont envoyées. La présente technique de compression compense cela en allouant le nombre maximum de zones utilisées par toute fonction pour le format particulier sous la forme de NDF pour tout le format, (c'est-à-dire pour chaque fonction) et "bourre" la différence par des indicateurs de zone plus grands que NDF. Ainsi, lors de la décompression, il y a deux façons de terminer une transmission: soit transmettre le nombre FPC de zones ou bien rencontrer une zone d'un numéro plus grand que la valeur de NDF. Il faut noter qu'en stockant NDF, il est inutile de stocker une valeur "'remorque" pour indiquer la fin de l'aire de stockage des zones. En plus de ce qui précède, plusieurs autres facteurs d'économie de la mémoire sont reconnus ici. Par exemple, l'information stockée dans FS peut être mise en carte binaire en un petit nombre d'octets, c'est-à-dire que la donnée dans FS peut être stockée de manière contigUe telle qu'elle est dans la portion CFT de la mémoire. Dans de nombreux formats, le complément d'un il message est également envoyé pour la vérification de l'erreur. Dans ce cas, une indication de complément (drapeau) peut être stockée, et des indicateurs des compléments être éliminés de CFT pour l'efficacité du stockage. Ces compléments peuvent être générés pour une émission à la décompression en réponse au drapeau de complément stocké. Un dispositif, pour une unité manuelle de télécommande appropriée à une utilisation avec un mode de réalisation de l'invention, est montré à la figure 4. Un contrôleur 400 peut être un microprocesseur (les termes microprocesseur et microordinateur tels qu'utilisés ici ont la même signification). Le contrôleur 400 reçoit, de l'oscillateur d'horloge 410, des signaux d'horloge qui établissent la temporisation des fonctions du contrôleur 400. Le contrôleur 400, selon ses instructions programmées, adresse une mémoire 420 qui peut être ou ne pas être interne au contrôleur 400. La mémoire 420 contient une aire d'utilisation générale (ou zone de travail) 422, une aire pour stocker la donnée FS 424 ci-dessus mentionnée et une aire pour stocker la donnée CFT 426 ci-dessus mentionnée. Le contrôleur 400 reçoit également la donnée introduite par un utilisateur via un clavier 430 comprenant un groupe de touches 432 comprenant des touches de chiffres 0-9, une touche canal vers le haut, une touche canal vers le bas et une touche marche/arrêt. Le clavier 430 peut également comprendre un interrupteur pour l'introduction du "mode d'apprentissage" ci-dessus mentionné. Cet interrupteur est montré sur le clavier 430 par une touche 434 mais, cependant cela peut être un interrupteur à bascule séparé, placé ailleurs sur l'unité manuelle de télécommande. Dans le mode de réalisation illustré à la figure 4, la touche 434 est supposée présenter une caractéristique de "bascule". C'est-à-dire qu'une pression de la touche 434 force le mode d'apprentissage à être actif et une seconde pression de la touche 434 remet l'unité de télécommande à son mode normal de télécommande, o les ordres de l'utilisateur peuvent être envoyés aux dispositifs pouvant être commandés. En mode d'apprentissage, le récepteur d'infrarouges 440 reçoit les signaux infrarouges qui sont émis par les unités de télécommande à imiter et applique une donnée numérique représentative de ces signaux infrarouges au contrôleur 400. Le contrôleur 400 stocke la donnée "brute" (c'est-à-dire non comprimée) dans la mémoire d'utilisation générale 422, extrait la donnée représentative de la structure du format et la stocke dans la mémoire FS 424 et comprime la donnée en rapport avec l'ordre en une donnée de fonction comprimée et la stocke dans la mémoire CFT 426. En mode normal de télécommande, et lorsque l'on souhaite l'émission d'un ordre, le contrôleur 400 décomprime la donnée stockée de fonction et fait passer la donnée à une unité de sortie 460 qui assemble la séquence appropriée de salves et espaces pour la transmission. L'oscillateur d'horloge 410 applique également des signaux à un diviseur de fréquence 450 qui applique des signaux à plus basse fréquence à l'unité de sortie 460. Ces signaux à plus basse fréquence sont introduits dans le courant de données dans l'unité de sortie 460 et forment la composante de salve du courant de données qui est appliqué à une diode infrarouge 470 pour l'émission. Dans l'alternative, le diviseur de fréquence 450 peut être éliminé, les impulsions de salve étant produites par le contrôleur 400 en "basculant" rapidement une sortie. Dans des systèmes à base de ROM, l'algorithme de compression n'est pas accompli dans l'unité de télécommande mais est au contraire accompli en un temps antérieur en usine afin de produire les codes FS et CFT pour programmation dans une ROM. Dans ce cas, le récepteur 440 d'infrarouges et la touche 434 "mode d'apprentissage" peuvent être éliminés de l'unité de. télécommande. La décompression et la transmission de la donnée stockée de fonction de télécommande seront maintenant expliquées en se référant aux figures 4, Sa et b. Lorsqu'un utilisateur manoeuvre le clavier 430 de l'unité de télécommande pour émettre un ordre vers un dispositif choisi, le contrôleur 400, sous le contr8le d'un programme stocké dans la mémoire de programme (ROM) 402, établit un indicateur à l'ordre approprié à émettre et introduit la portion du programme que l'on peut voir sous forme d'organigramme à la figure 5a. Pour la facilité de la programmation, il est souhaitable de touJours copier FS à adresser dans le même "espace de travail" dans la mémoire d'utilisation générale 422 (étape 515). Une portion de FS copiée est illustrée à la figure 55 et est adressée par un indicateur (également connu comme index). Il est également facile de toujours copier le code de fonction en rapport de la portion de CFT de la mémoire au même "espace" de travail dans la mémoire d'utilisation générale 422 (étape 520) en vue de la décompression. La période d'un cycle de la salve est recherchée (étape 525) et la valeur MARQUE est également recherchée (étape 530) de FS. Si la valeur MARQUE n'est pas zéro, alors une émission doit inclure une composante MARQUE (comme le montre la figure 2). La valeur de salve est recherchée (dans ce cas la valeur MARQUE), le nombre de cycles nécessaires pour produire la MARQUE de longueur appropriée est calculé et la MARQUE est émise (étape 570). Dans le cas o la valeur MARQUE est égale à zéro, alors l'émission débutera par un espace. Cela est fait en vidant l'index (étape 540) ce qui dirige l'index vers la portion ESPACE de FS copiée. L'index est chargé. pendant la décompression de données des numéros de zones de la fonction copiée de CFT. La valeur d'index est doublée (étape 545) pour garantir que l'index sera dirigé vers un ESPACE au début de chaque zone. Par exemple, la zone numéro 3 débute au sixième emplacement de stockage parce que chaque zone contient un emplacement de mémoire ESPACE et un emplacement Mémoire Salve. La valeur d'espace adressée par l'index est recherchée dans FS (étape 550) et examinée pour voir si c'est zéro (étape 555). Il faut reconnaître ici qu'un espace additionnel de la mémoire peut être conservé en stockant la racine carrée de la durée souhaitée de l'ESPACE plut8t qu'en stockant la durée de l'ESPACE elle même. Ainsi, à l'étape 560, la valeur stockée dans ESPACE est mise au carré avant d'être chargée dans un temporisateur de durée d'ESPACE (étape 565). Le temporisateur de durée d'ESPACE peut être une fonction logicielle dans le microordinateur 400, ou bien peut être un temporisateur en matériel soit dans ou en dehors du microordinateur 400. Quand la période ESPACE est terminée, la valeur de SALVE stockée immédiatement à la suite de la valeur courante d'ESPACE est recherchée et le nombre approprié de cycles est transmis (étape 570). L'indicateur de zones de fonction (qui est dirigé vers les numéros de zone) (comme F0, F2, F2, F1, F0 de la fonction copiée de CFT) est augmenté (étape 575) et on vérifie pour voir s'il est égal au nombre de Zones Par Ordre (FPC) (étape 580). Si la valeur d'indicateur de zones de fonction n'est pas égale au nombre total de Zones Par Ordre, alors le nombre suivant de zones est recherché de l'ordre copié (étape 590). Si le nombre de zones recherchées est plus grand que le Nombre total de Zone Différentes (NDF) (étape 595) alors ce nombre sera dirigé, lorsqu'il sera doublé, vers une zone non existante. Dans ce cas, comme on l'a mentionné ci-dessus, la transmission se termine, autrement le nombre de zones nouvellement recherché est doublé (étape 545) (pour le diriger vers l'emplacement approprié de la mémoire FS), et la transmission continue, Tableau 1. Bits par Zone (BPF) = INT (log2 (NDF-1))+i (1) o INT signifie "ne prendre que la partie entière du résultat" Octets par Ordre (BPC) = INT (((BPF x FPC) -1)) +1 (2) STRUCTURE DU FORMAT FS = BPF+NDF+FRQ+FPC+RPT+MRK+SPC+SYN+2xNDF (3) = 1 + 1 + 1 +1 +1 +1 +2 +1 +2 (NDF) = 9+2(NDF) octets TABLE FONCTIONS COMPRIMEES (CFT) = BPC x N (4) o N est un nombre de fonctions FS + CFT() EFFICACITE DU STOCKAGE = FS + FT (5) N = 9 + 2(NDF) + BPC N o l'efficacité du stockage est exprimée en octets/fonction. En soustrayant un bit du produit de BPF X FPC dans l'équation (2), cela empêche le croisement des limites des octets d'affecter le calcul de la valeur de BPC, et cela empêche ainsi une augmentation inutile de la valeur de BPC. L'utilisation de la fonction "INT" arrondit le résultat à un nombre entier d'octets et l'addition d'un octet garantit que BPC sera toujours plus important que zéro. Cette constante est utile pour décomprimer CFT et plutSt que son stockage, cela permet son calcul au moment de la décompression. Pour N fonctions, la taille de CFT est BPC N octets. Tandis que l'invention a été décrite en se référant à une unité manuelle de télécommande à infrarouge, l'invention s'applique également à des unités de télécommande à ultrasons. La routine de décompression illustrée dans l'organigramme de la figure 5a s'applique également à une télécommande basée sur une RAM (mode d'apprentissage). R E V E N D I C A T I 0 N S 1. Emetteur de télécommande pour commander divers dispositifs dont chacun peut utiliser un format différent parmi plusieurs formats d'émission de codes de commande, chacun desdits formats présentant des caractéristiques comprenant le nombre de zones différentes employées, les zones par ordre et les bits par zone, du type comprenant: un moyen formant clavier pour l'introduction de la donnée de commande pour commander l'un desdits dispositifs; un moyen formant mémoire pour stocker la donnée comprenant des indicateurs de codes de zone, o chacun desdits indicateurs de codes de zone est un indicateur d'adresse vers une paire de codes de zone comprenant un premier code représentant un type d'une composante sans impulsion d'un signal de télécommande et un second code représentant un type d'une composante de salve impulsionnelle dudit signal de télécommande, ledit signal ayant l'un desdits formats d'émission; un moyen de commande pour produire des données pour l'émission, par lecture dudit moyen formant mémoire, de ladite donnée représentative des composantes sans impulsion et des composantes de salve d'impulsion dudit formant d'émission de codes de commande selon lesdits indicateurs stockés de codes de zone; un moyen d'émission pour recevoir ladite donnée et émettre ladite donnée à l'un desdits formats de transmission pour commander lesdits dispositifs à commander, caractérisé en ce que: ledit moyen formant mémoire (420) stocke également une donnée additionnelle indiquant au moins l'une desdites caractéristiques de format déterminant la temporisation desdites composantes sans impulsion et de salve d'impulsion; et ledit moyen de commande (400) adresse, en réponse à ladite donnée additionnelle, une aire (426) dudit moyen formant mémoire (420) contenant lesdits indicateurs de codes de zone, qui correspond à celui desdits formats d'émission de codes de commande qui est utilisé par lesdits dispositifs à commander. 2. Emetteur selon la revendication 1, caractérisé en ce que ledit moyen formant mémoire (420) comprend: un premier moyen formant mémoire comprenant un certain nombre d'emplacements de mémoire (318; 320; 322; 324; 326; 328; 330; 332) pour stocker une donnée codée correspondant à des paires de cycles de porteuse de salve et d'espaces; un second moyen formant mémoire (120) comprenant un certain nombre d'emplacements de mémoire (342) ayant un nombre donné de bits par emplacement de mémoire pour stocker la donnée codée correspondant aux adresses desdits emplacements de mémoire dudit premier moyen formant mémoire, ladite donnée codée dépendant de ladite fonction choisie d'un premier type sélectionné du signal de télécommande; et un troisième moyen formant mémoire comprenant des emplacements de mémoire (302; 304; 308) pour stocker la donnnée codée représentative de la répartition desdits emplacements de mémoire dudit second moyen formant mémoire en groupes de bits plus petits que ledit nombre donné de bits desdits emplacements de mémoire dudit second moyen formant mémoire, dépendant du type choisi de télécommande; et ledit moyen de commande (400) répond à ladite donnée codée stockée dans lesdites seconde et troisième mémoires pour extraire la donnée codée stockée dans ladite première mémoire et, en réponse, produire le type choisi de signaux de télécommande. 3. Emetteur selon la revendication 2, caractérisé en ce que la donnée codée stockée dans ledit troisième moyen formant mémoire dépend du nombre de paires différentes de cycles de porteuses de salves et d'espaces du type choisi de signaux de télécommande. 4. Emetteur selon la revendication 2, caractérisé en ce que la donnée codée stockée dans la seconde mémoire est stockée de manière contigue. 5. Emetteur selon la revendication 4, caractérisé de plus par un quatrième moyen formant mémoire (130) contenant un certain nombre d'emplacements de mémoire ayant un nombre donné de bits par emplacement de mémoire pour stocker la donnée codée correspondant aux adresses desdits emplacements dudit premier moyen formant mémoire, ladite donnée codée dépendant d'une fonction choisie d'un second type du signal de télécommande. 6. Emetteur selon la revendication 5, caractérisé en ce que chacun des types différents de signaux de télécommande correspond à une marque respective de fabrique de l'équipement télécommandé. 7. Emetteur selon la revendication 6, caractérisé en ce que la donnée codée des second (120) et quatrième (130) moyens formant mémoire est stockée de manière contigUe.