diff options
Diffstat (limited to 'examples')
-rw-r--r-- | examples/burst.c | 31 | ||||
-rw-r--r-- | examples/readwrite.c | 33 |
2 files changed, 64 insertions, 0 deletions
diff --git a/examples/burst.c b/examples/burst.c new file mode 100644 index 0000000..e8c166e --- /dev/null +++ b/examples/burst.c @@ -0,0 +1,31 @@ +#include <stdio.h> +#include "ds1302.h" + +int main(int argc, char ** argv) { + if(!bcm2835_init()) { + printf("Unable to init bcm2835\n"); + return 0; + } + + struct tm *now, rtc; + time_t rawTime; + time(&rawTime); + struct ds1302_spi_session session = {RPI_GPIO_P1_23, RPI_GPIO_P1_24, RPI_GPIO_P1_21 }; + + ds1302_spi_session_start(&session); + + ds1302_getCalendarTime(&session, &rtc); + printf("DS1302 Time:\t %s", asctime(&rtc)); + + now = gmtime(&rawTime); + printf("Host Time:\t %s", asctime(now)); + + printf("Setting ds1302 time to host time\n"); + ds1302_setCalendarTime(&session, now); + + ds1302_getCalendarTime(&session, &rtc); + printf("DS1302 Time:\t %s", asctime(&rtc)); + + ds1302_spi_session_end(&session); + return 0; +} diff --git a/examples/readwrite.c b/examples/readwrite.c new file mode 100644 index 0000000..4b48bd6 --- /dev/null +++ b/examples/readwrite.c @@ -0,0 +1,33 @@ +#include <stdio.h> +#include "ds1302.h" + +int main(int argc, char ** argv) { + + uint8_t seconds = 0x00; + uint8_t minute = 0x00; + uint8_t writeProtect = 0xFF; + uint8_t buffer[9]; + struct tm date; + + if(!bcm2835_init()) { + printf("Unable to init bcm2835\n"); + return 0; + } + + struct ds1302_spi_session session = {RPI_GPIO_P1_23, RPI_GPIO_P1_24, RPI_GPIO_P1_21 }; + ds1302_spi_session_start(&session); + ds1302_set_writeprotect(&session, 0x00); + + seconds = ds1302_read_register(&session, DS1302_SECOND); + minute = ds1302_read_register(&session, DS1302_MINUTE); + printf("Seconds: 0x%X minute: 0x%X\n", seconds, minute); + + delay(1000); + + seconds = ds1302_read_register(&session, DS1302_SECOND); + minute = ds1302_read_register(&session, DS1302_MINUTE); + printf("Seconds: 0x%X minute: 0x%X\n", seconds, minute); + + ds1302_spi_session_end(&session); + return 0; +} |