0% ont trouvé ce document utile (0 vote)
73 vues9 pages

Code Gray

Le document décrit le code Gray, un codage binaire où seul un bit change lors du passage d'un nombre au suivant. Il explique la construction et l'utilité du code Gray, ainsi que des circuits pour la conversion entre code binaire et code Gray.

Transféré par

umbaxavier0
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
73 vues9 pages

Code Gray

Le document décrit le code Gray, un codage binaire où seul un bit change lors du passage d'un nombre au suivant. Il explique la construction et l'utilité du code Gray, ainsi que des circuits pour la conversion entre code binaire et code Gray.

Transféré par

umbaxavier0
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Electronique Robotique Cours gratuits Formations

Apprendre l'électronique | Construire des robots | Utiliser Arduino

Vous êtes ici : Accueil ⟩ Cours ⟩ Électronique ⟩ Logique combinatoire ⟩ Codage information

Code Gray
Avoir de meilleures notes | Réviser, étudier et travailler 2 fois plus vite

Le code Gray est fréquemment utilisé dans les capteurs angulaires ou de positionnement, mais
aussi lorsque l'on désire une progression numérique binaire sans parasite transitoire.
Le code Gray sert également dans les tableaux de Karnaugh utilisés lors de la conception de
circuits logiques.

Code binaire réfléchi ou code Gray


Le code Gray est un code construit de telle façon qu'a partir du chiffre 0 chaque nombre
consécutif diffère du précédent immédiat d'un seul digit.
En l'exprimant autrement nous pouvons également dire que l'on change un seul bit à la fois
quand un nombre est augmenté d'une unité.
De plus, nous opèrons de telle manière que le digit de transformation soit d'un poids faible.
Si une erreur survient lors d'une transformation d'un nombre à un autre elle est ainsi minimisée.

Construction du code Gray


Commençons par un exemple simple et établissons le code gray pour les 4 premiers chiffres
décimaux 0 à 3.
Deux bits suffisent et les combinaison en binaire BCD sont les suivantes :

Nous remarquons que pour aller du nombre 110 à 210 nous changeons les deux bits à la fois
pour passer de 012 à 102 .
En code Gray, pour passer d'une ligne à la suivante, on inverse un seul bit de telle manière
qu'il soit le bit le plus à droite possible conduisant à un nouveau nombre.
Ce qui donne les combinaisons suivantes :

Construction par la méthode du code binaire réfléchi ou code


REFLEX
Le nom code binaire réfléchi vient d'une autre méthode de construction. Elle est plus pratique
ou plus visuelle quand au choix du bit à inverser lors du passage d'un nombre au suivant.
On établi un code de départ : zéro est codé 0 et un est codé 1 (1).
Puis, à chaque fois qu'on a besoin d'un bit supplémentaire (2),
on symétrise les nombres déjà obtenus (comme une réflexion dans un miroir)(3)
et on rajoute un 1 au début des nouveaux nombres (4) et un zéro sur les anciens.

Ci-dessous nous recommençons l'expérience pour les nombres 010 à 710 .


Règle de formation du code Gray à partir du binaire pur
Soit un nombre N en binaire pur, pour obtenir son équivalent n en binaire réfléchi, il suffit
d'effectuer l'opération suivante :

Exemple :
soit N = 0111,
nous avons 2N = 1110 (pour multiplier par 2 on effectue un décalage de la droite vers la
gauche).
On effectue maintenant l'opération OU Exclusif de N et 2N :

Puis nous divisons par 2 le résultat soit 1001 / 2 = 0100 (pour diviser par 2 on effectue un
décalage de la gauche vers la droite).
Nous avons alors :
pour N = 0111 en binaire pur correspond n = 0100 en code Gray.

Les convertisseurs de code

Convertir du binaire au code gray


La construction du code Gray pour les nombres de 0 à 15 est représentée par le tableau
suivant :
Etablissons un diagramme de Karnaugh pour G1, G2, G3, G4 à partir de B1, B2, B3 et B4.

Nous pouvons maintenant établir les équations de G1 à G4 :

Nous pouvons remarquer que le passage du binaire pur au code Gray se fait en effectuant une
opération OU Exclusif.
Le circuit du transcodeur est très simple. En désignant par Bn (B1 = LSB) un bit quelconque en
code binaire pur et par Gn le bit recherché en code Gray, nous avons alors :

A partir de cette formule, il est tout à fait possible de concevoir sans difficulté le circuit
représenté ci-dessous.

Convertir du code gray en code binaire


Pour la conversion du code Gray en code binaire la relation suivante s'apparente à l'équation
vue pour le convertisseur inverse.

Là encore les fonctions OU Exclusif sont de mise pour la réalisation du circuit de transcodage.

Les circuit représentés ci-dessus peuvent être étendus au nombre de bit nécessaires ou
souhaités.

Le code Gray en pratique


Ce code est surtout utilisé pour des capteurs de positions absolue , par exemple sur des règles
optiques ou un codeur angulaire solidaire d'un arbre.
En effet, si on utilise le code binaire pur, pendant le passage de la position cinq (101)2 à six
(110)2 (changement simultané de 2 bits) il y a un risque de passage transitoire par quatre
(100)2 ou sept (111)2 , ce que le code Gray évite.
On remarquera que le passage du maximum (quinze sur 4 bits) à zéro se fait également en
ne modifiant qu'un seul bit.
Ceci permet par exemple d'encoder un angle, comme la direction d'une girouette ou la position
d'un axe sur une machine automatique ou un robot.

Pour la construction d'un codeur angulaire solidaire d'un axe il faut de préférence établir des
ensembles de position angulaire multiples d'une puissance de 2 (2, 4, 8, 16, 32…) si l'on veut
que le changement du nombre le plus élevé du groupe vers le nombre le plus faible se fasse
avec un seul bit.
Pour une girouette à huit position (0=Nord, 1=Nord-Est, 2=Est, … 7=Nord-Ouest) le passage de
Nord-Ouest à Nord se fait également sans problème en ne changeant qu'un seul bit.
Exemple de roue codeuse Gray :

Nous avons 16 positions angulaires détectées en 4 bits. La lecture s'effectue par 4 cellules
photosensibles.

↑ Retourner au début de l'article

◄ Retour vers Continuer vers ►


Code AIKEN Code complément à 9
Code Code co p é e t à 9

Rechercher sur Positron-libre :

Rechercher

OFFERT :

Navigation
Codage, codes et transcodeurs
◄ Cours de logique combinatoire

Sommaire code, codeurs et transcodeurs

Codes, codeurs et transcodeurs

Codes binaires, décimaux et BCD

Code 2421

Code plus 3

Code AIKEN

Code GRAY

Code complément à 9

Codage des caractères, code ASCII et EBCDIC

HAUT DE PAGE ↑

Fichiers - Construire un robot - C'est quoi Arduino ?


EN SAVOIR PLUS :

Contact

A propos

Nouveautés

Plan du site

Réseaux sociaux

Plus…

ABONNEMENT

► Recevoir ma lettre d'information


► Flux RSS

Mentions légales - Confidentialité - CGVU

E-mail
Copyright Positron-libre - Exoudun, 2004-2020
Droits d'auteur enregistrés, [Link] numéro 00050298.

Vous aimerez peut-être aussi