X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/7776aa4e2e7430da6fab1712816b887d21032dd9..77a9df36a77d2523dd2bc24fa17f9f04c6c175c5:/Projects/TempDataLogger/Lib/DS1307.h?ds=sidebyside diff --git a/Projects/TempDataLogger/Lib/DS1307.h b/Projects/TempDataLogger/Lib/DS1307.h index 212cdfecc..9d93f2c4c 100644 --- a/Projects/TempDataLogger/Lib/DS1307.h +++ b/Projects/TempDataLogger/Lib/DS1307.h @@ -30,9 +30,9 @@ { struct { - unsigned int Sec : 4; - unsigned int TenSec : 3; - unsigned int CH : 1; + unsigned Sec : 4; + unsigned TenSec : 3; + unsigned CH : 1; } Fields; uint8_t IntVal; @@ -42,9 +42,9 @@ { struct { - unsigned int Min : 4; - unsigned int TenMin : 3; - unsigned int Reserved : 1; + unsigned Min : 4; + unsigned TenMin : 3; + unsigned Reserved : 1; } Fields; uint8_t IntVal; @@ -54,61 +54,68 @@ { struct { - unsigned int Hour : 4; - unsigned int TenHour : 2; - unsigned int TwelveHourMode : 1; - unsigned int Reserved : 1; + unsigned Hour : 4; + unsigned TenHour : 2; + unsigned TwelveHourMode : 1; + unsigned Reserved : 1; } Fields; uint8_t IntVal; } Byte3; - } DS1307_TimeRegs_t; - typedef struct - { union { struct { - unsigned int Day : 4; - unsigned int TenDay : 2; - unsigned int Reserved : 2; + unsigned DayOfWeek : 3; + unsigned Reserved : 5; } Fields; uint8_t IntVal; - } Byte1; + } Byte4; + + union + { + struct + { + unsigned Day : 4; + unsigned TenDay : 2; + unsigned Reserved : 2; + } Fields; + + uint8_t IntVal; + } Byte5; union { struct { - unsigned int Month : 4; - unsigned int TenMonth : 1; - unsigned int Reserved : 3; + unsigned Month : 4; + unsigned TenMonth : 1; + unsigned Reserved : 3; } Fields; uint8_t IntVal; - } Byte2; + } Byte6; union { struct { - unsigned int Year : 4; - unsigned int TenYear : 4; + unsigned Year : 4; + unsigned TenYear : 4; } Fields; uint8_t IntVal; - } Byte3; - } DS1307_DateRegs_t; + } Byte7; + } DS1307_DateTimeRegs_t; /* Macros: */ - #define DS1307_ADDRESS_READ (0xD0 | TWI_ADDRESS_READ) - #define DS1307_ADDRESS_WRITE (0xD0 | TWI_ADDRESS_WRITE) + #define DS1307_ADDRESS 0xD0 /* Function Prototypes: */ - void DS1307_SetTimeDate(const TimeDate_t* NewTimeDate); - void DS1307_GetTimeDate(TimeDate_t* const TimeDate); + bool DS1307_SetTimeDate(const TimeDate_t* NewTimeDate); + bool DS1307_GetTimeDate(TimeDate_t* const TimeDate); #endif