Hello les gars,
Voici une version 0.0.1 (en attendant mieux) de DCC++ considérablement amaigri et augmenté d'une fonction de récupération du CV de la loco placée SEULE sur la voie principale (il n'y a plus de voie de programmation dans ce code adapté d'aileurs au Nano).
Ces modifications comprennent :
- l'ajout d'une méthode discover() dans la structure SerialCommand (SerialCommand.h)
- le code de discover() dans SerialCommand.cpp : il simule l'envoi des commandes "<1><r 1 123 123><0>"
- l'ajout d'une variable addressDccToDiscover dans la structure RegisterList de PacketRegister.h
- l'ajout d'une fonction readCV_Main() dans PacketRegister.h et .ccp
- l'appel de cette mécanique en fin de setup
mainRegs.addressDccToDiscover = 3;
SerialCommand::discover(); // dcc adress found is stored in readCV_Main()
Serial.println();
Serial.print("adresse DCC : ");Serial.println(mainRegs.addressDccToDiscover);
Le principe est simple : en fin de Setup, on établi le courant sur la voie principale (<1>) puis on demande une lecture du CV 1 (<r1...>) où r est un caractère ajouté à la liste des commandes, puis on coupe le courant (<0>).
Le CV de la machine s'affiche dans la fenêtre du moniteur.
Il n'y a rien à faire, c'est automatique.
L'exploitation du numéro de CV découvert n'est pas écrite dans cette version, mais on l'a et c'est le principal.
J'espère que ça pourra vous servir
Amicalement
Dominique