Gestione CV 'lunghe' Arduino

L'angolo degli smanettoni .Discussioni inerenti lo sviluppo di nuovi progetti DCC o l'hack di sistemi commerciali.

Moderatori: Luca.Rubini, Seba55

Messaggio
Autore
Fidax
TrenoDigitale
Messaggi: 95
Età: 23
Iscritto il: martedì 20 febbraio 2018, 9:03
Scala: H0
Ho il plastico: No
La mia centrale digitale.: Marklin Mobile Station 1

Gestione CV 'lunghe' Arduino

#1 Messaggioda Fidax » mercoledì 3 giugno 2020, 8:33

Buongiorno, sto provando a realizzare alcuni Decoder DCC con l'uso di Arduino IDE e relativa libreria NmraDCC.
Premetto che non posseggo una centrale DCC al momento, essendo su sistema Marklin ho ancora una vecchia MS1, ma posseggo il lokprogrammer che ha una sezione per leggere e scrivere CV in modalità 'Binario di Programmazione'.

Studiando suddetta libreria ho trovato che i metodi usati per gestire le CV (leggere e scrivere) hanno parametro per 'scegliere su quale CV lavorare' in formato 'uint16_t'

Codice: Seleziona tutto

 /*+
   *  getCV() returns the selected CV value.
   *
   *  Inputs:
   *    CV    - CV number. It must point to a valid CV.
   *
   *  Returns:
   *    Value - CV value. Invalid CV numbers will return an undefined result
   *            since nothing will have been set in that EEPROM position.
   *            Calls notifyCVRead() if it is defined.
   */
  uint8_t getCV( uint16_t CV );

Ora, il formato uint16_t (unsigned int su 16 bit) permette di contenere valori da 0 a 65.535‬ :D
Pertanto ho provato a leggere una CV superiore alla 255 tramite il lokprogrammer e arrivo fino alla 1023 (i valori successivi non sono selezionabili dal lokprogrammer) e vengono lette senza problemi.

La mia domanda allora è: ma le CV31 e 32 a cosa servono?
Durante le prove che ho fatto tali cv non erano nemmeno 'gestite' nel codice che ho scritto per il micro, eppure il lokprogrammer leggeva 'CV alte' lo stesso.
Il non avere bisogno delle CV31 e 32 è una caratteristicha del LokProgrammer? Sono oboslete e non servono più? Sono abbastanza confuso in merito.

Anche perchè nel mio progetto arrivo massimo alla CV351, non avendo bisogno di CV più alte non sarebbe male l'idea di usare il vantaggio datomi dal formato uin16_t e di poter ignorare la gestione delle CV31 e 32.

Avatar utente
Buddace
Site Admin
Messaggi: 15895
Età: 42
Iscritto il: lunedì 2 febbraio 2004, 17:25
Scala: H0
Ho il plastico: Si
La mia centrale digitale.: TMWDCC TBX zDCC Lokmaus2 HornbySelect Arnold Intellibox Claudia_CommandStation
Località: Torino
Contatta:

Re: Gestione CV 'lunghe' Arduino

#2 Messaggioda Buddace » mercoledì 3 giugno 2020, 9:17

CV31 e cv32 sono forse le cv indice per accedere a quelelsuperiori a 255 ? Non ho mai indagato ma credo fosse un walkaorund per ovviare ad una limitazione del multimaus. Il range ammesso dall'NMRA per le cv è 0-1023 quindi è giusto che si usa una variabile a 16 bit
Fondatore e amministratore di DCCWorld

http://www.DCCWorld.com - il sito dedicato interamente ai sistemi di controllo digitale per il modellismo ferroviario.

Fidax
TrenoDigitale
Messaggi: 95
Età: 23
Iscritto il: martedì 20 febbraio 2018, 9:03
Scala: H0
Ho il plastico: No
La mia centrale digitale.: Marklin Mobile Station 1

Re: Gestione CV 'lunghe' Arduino

#3 Messaggioda Fidax » mercoledì 3 giugno 2020, 9:24

Quindi con centrali che gestiscono il range 0 - 1023 non sono necessarie le CV31 e 32.
Mentre sembrano servire se si devono programmare le CV oltre alla 1024

Avatar utente
Buddace
Site Admin
Messaggi: 15895
Età: 42
Iscritto il: lunedì 2 febbraio 2004, 17:25
Scala: H0
Ho il plastico: Si
La mia centrale digitale.: TMWDCC TBX zDCC Lokmaus2 HornbySelect Arnold Intellibox Claudia_CommandStation
Località: Torino
Contatta:

Re: Gestione CV 'lunghe' Arduino

#4 Messaggioda Buddace » mercoledì 3 giugno 2020, 9:32

Fidax ha scritto:Quindi con centrali che gestiscono il range 0 - 1023 non sono necessarie le CV31 e 32.
Mentre sembrano servire se si devono programmare le CV oltre alla 1024

Sulla Claudia CS sicuramente non servono :D POi inverità non visto decoder con più di 1024 cv :D
Fondatore e amministratore di DCCWorld

http://www.DCCWorld.com - il sito dedicato interamente ai sistemi di controllo digitale per il modellismo ferroviario.

Fidax
TrenoDigitale
Messaggi: 95
Età: 23
Iscritto il: martedì 20 febbraio 2018, 9:03
Scala: H0
Ho il plastico: No
La mia centrale digitale.: Marklin Mobile Station 1

Re: Gestione CV 'lunghe' Arduino

#5 Messaggioda Fidax » mercoledì 3 giugno 2020, 9:39

Tale informazione mi riempie di felicità! :D :D :D

Uno dei decoder (più che un decoder é proprio un sistema di illuminazione) ha 32 Aux, ne servono di CV :wink:


Chi c’è in linea

Visitano il forum: Nessuno e 6 ospiti