summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/burst.c31
-rw-r--r--examples/readwrite.c33
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;
+}