RTC project

Dependencies:   DS1307 TextLCD mbed

Committer:
RubenHendriks
Date:
Thu Nov 27 10:29:01 2014 +0000
Revision:
0:a1b3b73a7312
RTC project

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RubenHendriks 0:a1b3b73a7312 1 // show how the DS1307 class works
RubenHendriks 0:a1b3b73a7312 2 #include "ds1307.h"
RubenHendriks 0:a1b3b73a7312 3 #include "mbed.h"
RubenHendriks 0:a1b3b73a7312 4 #include "TextLCD.h"
RubenHendriks 0:a1b3b73a7312 5
RubenHendriks 0:a1b3b73a7312 6 DS1307 my1307(p9,p10); // start DS1307 class and give it pins for connections of the DS1307 device
RubenHendriks 0:a1b3b73a7312 7 TextLCD lcd(p21,p22,p23,p24,p25,p26);
RubenHendriks 0:a1b3b73a7312 8
RubenHendriks 0:a1b3b73a7312 9 int sec;
RubenHendriks 0:a1b3b73a7312 10 int min;
RubenHendriks 0:a1b3b73a7312 11 int hours;
RubenHendriks 0:a1b3b73a7312 12 int day;
RubenHendriks 0:a1b3b73a7312 13 int date;
RubenHendriks 0:a1b3b73a7312 14 int month;
RubenHendriks 0:a1b3b73a7312 15 int year;
RubenHendriks 0:a1b3b73a7312 16
RubenHendriks 0:a1b3b73a7312 17 void test_rw(int test) {
RubenHendriks 0:a1b3b73a7312 18 }
RubenHendriks 0:a1b3b73a7312 19
RubenHendriks 0:a1b3b73a7312 20 int main() {
RubenHendriks 0:a1b3b73a7312 21 int junk = 0;
RubenHendriks 0:a1b3b73a7312 22
RubenHendriks 0:a1b3b73a7312 23 while(1){
RubenHendriks 0:a1b3b73a7312 24 wait(0.5);
RubenHendriks 0:a1b3b73a7312 25
RubenHendriks 0:a1b3b73a7312 26 test_rw(my1307.gettime( &sec, &min, &hours, &day, &date, &month, &year));
RubenHendriks 0:a1b3b73a7312 27
RubenHendriks 0:a1b3b73a7312 28 lcd.cls();
RubenHendriks 0:a1b3b73a7312 29 lcd.locate(0,0);
RubenHendriks 0:a1b3b73a7312 30 lcd.printf("%d:%d:%d",hours,min,sec);
RubenHendriks 0:a1b3b73a7312 31 lcd.locate(0,1);
RubenHendriks 0:a1b3b73a7312 32 lcd.printf("%d/%d/%d",date,month,year);
RubenHendriks 0:a1b3b73a7312 33
RubenHendriks 0:a1b3b73a7312 34 junk = 0x39; // just a junk value do read and write test to DS1307 ram
RubenHendriks 0:a1b3b73a7312 35 test_rw(my1307.write( 0x20, junk)); // this should write the value of junk to register 0x20 (a ram location) in the ds1307.
RubenHendriks 0:a1b3b73a7312 36 junk = 0; // clear junk to show that when the register is read from the correct value is obtained
RubenHendriks 0:a1b3b73a7312 37 test_rw(my1307.read( 0x20, &junk)); // this should read register 0x20
RubenHendriks 0:a1b3b73a7312 38 }
RubenHendriks 0:a1b3b73a7312 39 }