DS3231, problema estrapolazione dati ( e forse altro)

PaoloF_60:
"The contents of the time and calendar registers are in the binary-coded decimal (BCD) format."

Esatto ... occorrono queste due piccole funzioni di conversione da e verso il BCD ...

uint8_t decToBcd(uint8_t val) {
  return ( (val / 10 * 16) + (val % 10) );
}

uint8_t bcdToDec(uint8_t val) {
  return ( (val / 16 * 10) + (val % 16) );
}

La prima converte il valore decimale in BCD e la seconda dal BCD in decimale.

Guglielmo