Reset conteggio giri encoder

Salve, sto lavorando ad un controllore pid di un motore dc con arduino, nello stesso progetto devo includere la risposta al gradino del motore. Il mio dubbio è che nel momento in cui avvio la risposta al gradino, il conteggio dell'encoder, ovviamente, si fermerà ad un certo angolo e a me interesserebbe resettarlo, cioè impostarlo nuovamente a zero. Questo è il codice relativo all'encoder

void InitEncoder(){
  // activate peripheral functions for quad pins
    REG_PIOB_PDR = mask_quad_A;     // activate peripheral function (disables all PIO functionality)
    REG_PIOB_ABSR |= mask_quad_A;   // choose peripheral option B    
    REG_PIOB_PDR = mask_quad_B;     // activate peripheral function (disables all PIO functionality)
    REG_PIOB_ABSR |= mask_quad_B;   // choose peripheral option B 
    
    // activate clock for TC0
    REG_PMC_PCER0 = (1<<27);
    // select XC0 as clock source and set capture mode
    REG_TC0_CMR0 = 5; 
    // activate quadrature encoder and position measure mode, no filters
    REG_TC0_BMR = (1<<9)|(1<<8); //|(1<<12)
    // enable the clock (CLKEN=1) and reset the counter (SWTRG=1) 
    // SWTRG = 1 necessary to start the clock!!
    REG_TC0_CCR0 = 5;
}

Codice che non ho scritto io in quanto sto continuando un progettino già avviato.
Mi interessava sapere se c'è qualche istruzione che appunto mi resetti il counter dell'encoder.

Risolto. Ho inizializzato nuovamente l'encoder tramite la funzione sopra. L'errore che commettevo è che davo l'istruzione subito dopo l'istruzione di stop del motore, non facendolo fermare completamente.
ho aggiunto un delay e ora funziona.