LOCODUINO

Aide
Forum de discussion
Dépôt GIT Locoduino
Flux RSS

mercredi 24 avril 2024

Visiteurs connectés : 54

Bibliothèque DCCpp

Encore un DCC++ ? Mais à quoi ça sert ?

. Par : Thierry

Pourquoi une bibliothèque ? Nous sommes devant le cas typique d’un projet dont une bonne partie du code doit pouvoir être ré-utilisée dans d’autres projets. C’est le but d’une bibliothèque, et c’est ce que j’ai décidé de faire après avoir vu tout le monde ici s’en servir, et l’avoir moi-même utilisé dans au moins deux projets différents : (...)

Retourner à l'article

Vous répondez à :

Bibliothèque DCCpp 31 décembre 2017 18:35, par BobyAndCo

Ma petite contribution à ce formidable travail. J’ai pu tester la bibliothèque de Thierry en mode TEXTCOMMAND, en Ethernet avec le LMD18200 et aussi le POLOLU MC33926 Motor shield.

 

Je n’ai rencontré aucun problème, que ce soit en pilotage sur la voie Main ou en programmation, sur la voie Prog avec l’une et l’autre des cartes moteur.

 

Il ne faut pas oublier de modifier le fichier DCCpp comme cela est indiqué dans l’article (lignes 310 et 312 à décommenter)

/**Comment this line to avoid using and compiling Serial commands.*/
#define USE_TEXTCOMMAND
/**Comment this line to avoid using and compiling Ethernet shield using Wiznet 5100 chip (Arduino Shield v1).*/
#define USE_ETHERNET_WIZNET_5100

 

mais vous serrez rapidement rappelé à l’ordre en cas d’oubli au moment où vous chercherez à téléverser le programme sur l’Arduino.

 

Pour cela, dans le menu Exemples de l’IDE d’Arduino, on choisit EthernetDCC. Si vous utilisez un LMD18200, vous n’aurez rien à modifier, sauf une petite erreur qui est juste dans l’exemple (pas dans l’article). Sur la voie Main, la broche pour le PWM est la 3 et non la 11 (la 11 étant celle de la voie Prog)

 

Voici le code modifié et complété :

 

// Configuration for my LMD18200. See the page 'Configuration lines' in the documentation for other samples.
DCCpp::beginMain(UNDEFINED_PIN, DCC_SIGNAL_PIN_MAIN, 3, A0);
DCCpp::beginProg(UNDEFINED_PIN, DCC_SIGNAL_PIN_PROG, 11, A1);

En cas d’utilisation d’un Pololu, le code à ajouter est celui-ci :

 

// Configuration for my POLOLU MC33926 Motor shield.
DCCpp::beginMain(POLOLU_DIRECTION_MOTOR_CHANNEL_PIN_A, DCC_SIGNAL_PIN_MAIN, POLOLU_SIGNAL_ENABLE_PIN_MAIN, POLOLU_CURRENT_MONITOR_PIN_MAIN);
DCCpp::beginProg(POLOLU_DIRECTION_MOTOR_CHANNEL_PIN_B, DCC_SIGNAL_PIN_PROG, POLOLU_SIGNAL_ENABLE_PIN_PROG, POLOLU_CURRENT_MONITOR_PIN_PROG);

 

Bravo encore.

 

Christophe

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)

98 Messages

Rubrique Bibliothèques

Bibliothèque Accessories (1)

Bibliothèque Accessories (2)

Un décodeur d’accessoires universel (1)

Un décodeur d’accessoires universel (2)

Un décodeur d’accessoires universel (3)

Bibliothèque LcdUi (1)

Bibliothèque LcdUi (2)

Bibliothèque LightEffect

La bibliothèque ACAN (2)

La bibliothèque ACAN (1)

Bibliothèque DcDccNanoController

Bibliothèque DCCpp

Bibliothèque Commanders

La bibliothèque SlowMotionServo

Bibliothèque EEPROMextent

Bibliothèque MemoryUsage

La bibliothèque ScheduleTable

Bibliothèque LCD

Bibliothèque Wire : I2C

Bibliothèque EEPROM

Bibliothèque Serial

Bibliothèque SoftWare Serial

La bibliothèque Servo

Les derniers articles

Bibliothèque LightEffect


Christian

La bibliothèque ACAN (2)


Jean-Luc

La bibliothèque ACAN (1)


Jean-Luc

La bibliothèque SlowMotionServo


Jean-Luc

Bibliothèque DCCpp


Thierry

Bibliothèque DcDccNanoController


Thierry

Bibliothèque LcdUi (2)


Thierry

Bibliothèque LcdUi (1)


Thierry

Bibliothèque Accessories (2)


Thierry

Bibliothèque Accessories (1)


Thierry

Les articles les plus lus

Bibliothèque Wire : I2C

La bibliothèque Servo

Un décodeur d’accessoires universel (1)

La bibliothèque ACAN (1)

Bibliothèque DcDccNanoController

Bibliothèque LCD

Bibliothèque SoftWare Serial

Bibliothèque Commanders

Bibliothèque DCCpp

La bibliothèque SlowMotionServo