decToBcd e bcdToDec
ciao tutti, nel reference non trovo riferimenti queste due funzioni, ho capito, cercando in giro, che trasformano un decimale in binario bcd e viceversa, e ho trovato che questo è il codice:
non riesco però ad immaginarmi cosa fa di preciso, vado su un esempio pratico: quando setto l'ora attuale sul ds1307 e trovo quando segue:
come viene inviato il numero?
code: [select]
uint8_t dectobcd( int val )
{
return (uint8_t) ((val / 10 * 16) + (val % 10));
}
uint8_t bcdtodec( uint8_t val )
{
return (uint8_t) ((val / 16 * 10) + (val % 16));
}
non riesco però ad immaginarmi cosa fa di preciso, vado su un esempio pratico: quando setto l'ora attuale sul ds1307 e trovo quando segue:
code: [select]
byte second = 55;
wire.write(dectobcd(second));
come viene inviato il numero?
penso che sia come scritto nella funzione:
55/10*16 + 55 modulo 10 = 88 + 5 = 93
55/10*16 + 55 modulo 10 = 88 + 5 = 93
Arduino Forum > International > Italiano > Software (Moderator: leo72) > decToBcd e bcdToDec
arduino
Comments
Post a Comment