PuG
/
RTC
bubu
Revision 0:c368b419bdf1, committed 2015-11-15
- Comitter:
- Peeraya
- Date:
- Sun Nov 15 09:27:05 2015 +0000
- Commit message:
- bubu; ;
Changed in this revision
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DS1307.lib Sun Nov 15 09:27:05 2015 +0000 @@ -0,0 +1,1 @@ +http://developer.mbed.org/users/harrypowers/code/DS1307/#c3e4da8feb10
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Sun Nov 15 09:27:05 2015 +0000 @@ -0,0 +1,63 @@ +// show how the DS1307 class works + #include "ds1307.h" + #include "mbed.h" + + //Serial pc(USBTX, USBRX); // tx, rx for debug and usb pc comunications + + DS1307 my1307(A4,A5); // start DS1307 class and give it pins for connections of the DS1307 device + + int sec = 0; + int min = 0; + int hours = 0; + int day = 0; + int date = 0; + int month = 0; + int year = 0; + + void test_rw(int test) { + if (test == 0) printf("Last R/W operaion passed!\n\r"); + else printf("Last R/W operation failed!\n\r"); + } + + int main() { + while(1){ + int junk = 0; + + sec = 24; // 24 seconds + min = 13; // 13 min + hours = 13; // 1 pm + day = 4; // wednesday + date = 20; // June 20 + month = 6; + year = 12; // 2012 + // set time to these values on the ds1307 connected device + + test_rw(my1307.settime( sec, min, hours, day, date, month, year)); + printf("seconds set are %.2d \n\r",sec); + printf("min set are %.2d \n\r",min); + printf("hour set are %.2d \n\r",hours); + printf("day set are %.2d \n\r",day); + printf("date set are %.2d \n\r",date); + printf("month set are %.2d \n\r",month); + printf("year set are %.2d \n\r",year); + wait(3); + // now read the time of the DS1307 device and see what time it is + // note that because of the 3 second wait this time should be 3 seconds past what it was set to earlier + + test_rw(my1307.gettime( &sec, &min, &hours, &day, &date, &month, &year)); + printf("seconds read are %.2d \n\r",sec); + printf("min read are %.2d \n\r",min); + printf("hour read are %.2d \n\r",hours); + printf("day read are %.2d \n\r",day); + printf("date read are %.2d \n\r",date); + printf("month read are %.2d \n\r",month); + printf("year read are %.2d \n\r",year); + + junk = 0x39; // just a junk value do read and write test to DS1307 ram + test_rw(my1307.write( 0x20, junk)); // this should write the value of junk to register 0x20 (a ram location) in the ds1307. + printf("Value written to register 0x20 %.2x \n\r",junk); + junk = 0; // clear junk to show that when the register is read from the correct value is obtained + test_rw(my1307.read( 0x20, &junk)); // this should read register 0x20 + printf("Value read from register 0x20 %.2x \n\r",junk); + } + } \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Sun Nov 15 09:27:05 2015 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/9296ab0bfc11 \ No newline at end of file