Grâce aux CV (variables de configuration), il est possible de modifier une série de paramètres qui déterminent le comportement d'un décodeur dans certaines conditions et dans certains domaines. Même avec ce qu'on appelle la programmation par registres, on ne fait que modifier le CV correspondant. Cependant, la programmation directe des CV (bit à bit ou octet par octet) offre des possibilités beaucoup plus nombreuses et précises.
Qu'est-ce qu'un CV ?
Alors, faisons semblant de ne rien savoir et disons "un CV est avant tout une fiche de fichier..."
Le nombre de sorties fonctionnelles d'un décodeur ne peut pas être modifié, car il est défini par le matériel. Par exemple, la charge maximale est également une propriété qui ne peut pas être modifiée.
Mais il existe un grand nombre de propriétés qui ne sont pas définies par le matériel du décodeur, mais par le logiciel qui y est exécuté. Ces propriétés sont largement modifiables. Les propriétés les plus importantes pour le fonctionnement habituel sont l'adresse de la locomotive, le délai d'accélération et le délai de freinage.
Pour chacune de ces propriétés, il existe dans le décodeur un espace mémoire où un nombre est stocké. Ces espaces mémoire peuvent être comparés à des fiches dans un fichier. Chaque décodeur contient une telle "boîte de fichiers", certes microscopique. Sur chacune des "fiches" est inscrite une propriété du décodeur de locomotive, par exemple l'adresse de la locomotive sur la "fiche" numéro 1, le délai d'accélération sur la "fiche" numéro 3. Ainsi, chaque propriété du décodeur correspond à une fiche. Selon le nombre de propriétés disponibles dans ce décodeur, la "boîte de fichiers" est plus grande ou légèrement plus petite.
Certains CVs doivent être inclus dans chaque décodeur pour répondre aux critères de normalisation de la NMRA. Ces CVs sont une des conditions nécessaires pour obtenir le "Conformance Seal". Parmi eux figurent, par exemple, le CV1 (adresse du décodeur), le CV7 (identification de version, immuable), le CV8 (identification du fabricant, immuable) et le CV29 (configuration de base du décodeur).
D'autres CVs, quant à eux, peuvent être utilisés par un fabricant dans son décodeur, mais ce n'est pas obligatoire. Toutefois, si ces CVs sont utilisés, leur signification doit être conforme à la norme. Enfin, il existe une catégorie de CVs dont la signification peut être librement définie par le fabricant.
La plupart des décodeurs modernes prennent en charge plus que les CVs obligatoires, y compris bien sûr tous les décodeurs Lenz actuels.
Différentes représentations d'une valeur numérique : Les "bits" dans les CVs
Dans le CV1, l'adresse de base du décodeur de locomotive est enregistrée. C'est simple ici, car vous pouvez entrer cette adresse sous forme de valeur numérique. Mais il se peut aussi qu'un CV influence différentes propriétés. Un exemple serait l'activation ou la désactivation de la régulation ou du fonctionnement conventionnel. Cela serait très compliqué si vous deviez entrer une valeur numérique distincte pour chaque combinaison possible.
Il est plus simple d'imaginer que dans les CVs concernés, il y a 8 interrupteurs qui peuvent être activés ou désactivés. Ces interrupteurs sont appelés "bits". Si l'interrupteur est activé, on dit que "le bit est activé" ou "le bit est à 1", et s'il est désactivé, on dit que "le bit est désactivé" ou "le bit est à 0".
Cela n'est rien d'autre qu'une autre notation des valeurs numériques. On l'appelle représentation binaire. Ici, la valeur numérique n'est pas représentée en décimal avec les chiffres de 0 à 9, mais uniquement avec les chiffres 0 et 1, donc binaire = seulement deux valeurs.
Numérotation des bits
Dans le domaine technique, il est courant de numéroter les bits en commençant par 0. Puisque cela ne correspond pas à l'usage courant (comptez-vous les wagons d'un train en disant "0, 1, 2..." ?), chez Lenz, nous numétons les bits en commençant par 1. Cette numérotation s'applique à tous les appareils et décodeurs Digital plus. Si vous programmez vos décodeurs avec des appareils d'autres fabricants, vous devrez peut-être appliquer la numérotation en commençant par 0. C'est pourquoi les numéros des bits indiquent également, entre parenthèses, leur numérotation en commençant par 0.
Exemple :
Bit 2 (1) : Le numéro avant la parenthèse indique le numéro du bit selon la numérotation "commençant par 1", et le numéro entre parenthèses celui selon la numérotation "commençant par 0".
Représentation binaire
Pour illustrer la représentation binaire, prenons l'exemple du CV29 :
Dans ce CV29, diverses configurations sont enregistrées. Chaque configuration est déterminée par un des 8 interrupteurs (bits). Si l'interrupteur est activé, le bit est à 1. Sinon, il est à 0.
Numéro d'interrupteur
(Numéro de bit) |
Interrupteur activé =
Bit activé "1" |
Interrupteur désactivé =
Bit désactivé "0" |
|
1 (0)
|
La locomotive recule lorsque l'inverseur est en position "avant"
|
La locomotive avance lorsque l'inverseur est en position "avant"
|
|
2 (1)
|
La locomotive fonctionne en mode 28/128 pas
|
La locomotive fonctionne en mode 14/27 pas
|
|
3 (2)
|
La locomotive peut également fonctionner en analogique
|
La locomotive ne peut pas fonctionner en analogique
|
|
4 (3)
|
non utilisé
|
|
5 (4)
|
Le décodeur utilise la courbe de vitesse configurée
|
Le décodeur utilise la courbe de vitesse d'usine
|
|
6 (5)
|
La locomotive est contrôlée avec une adresse étendue
depuis CV17 et CV18
|
La locomotive est contrôlée avec l'adresse de base
depuis CV1
|
|
7 (6)
|
non utilisé
|
|
8 (7)
|
non utilisé
|
Certaines caractéristiques sont donc activées ou désactivées simplement en modifiant l'état d'un bit dans un CV.