Buenas tardes, quiero reiniciar el reloj del arduino due, con el código de abajo, pero en el momento de hacerlo me sale este error: "'SREG' was not declared in this scope", este es el código que estoy utilizando:
extern volatile unsigned long timer0_millis;
unsigned long new_value = 0;
void setup(){
}
void loop(){
setMillis(new_value);
}
void setMillis(unsigned long new_millis){
uint8_t oldSREG = SREG;
cli();
timer0_millis = new_millis;
SREG = oldSREG;
}
Gracias de antemano al que me quiera ayudar a solucionar la duda.
Moderador
Hola @ing_arce, bienvenido al foro Arduino.
Por favor edita tu post usando etiquetas de código.
Lee las Normas del foro
Para qué quieres reiniciar millis()?
Esta debidamente informado en varios tutoriales y temas de este foro que el overflow que tiene millis() a los 49.7 días no genera ningún problema en las operaciones matemáticas que necesites hacer.
De modo que su reinicio tal como lo estoy imaginando no tiene sentido.
Ve a Documentación => indice de temas tutoriales =>millis() y alguno de los tutoriales lo explica con claridad.
ing_arce descargate eel datasheet , yo tengo un arduino due y tu codigo me da el mismo error, en el data no figura la interrupcion https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-11057-32-bit-Cortex-M3-Microcontroller-SAM3X-SAM3A_Datasheet.pdf