cs for writing
Fork of rtc_justtest by
main.cpp
- Committer:
- z3on
- Date:
- 2014-12-21
- Revision:
- 1:21efeeb9b679
- Parent:
- 0:a07e5a4c94bb
File content as of revision 1:21efeeb9b679:
#include "mbed.h"
SPI spi(PTD6, PTD7, PTD5); // mosi, miso, sclk
DigitalOut cs(D9);
int main()
{
// Setup the spi for 8 bit data, high steady state clock,
// second edge capture, with a 1MHz clock rate
spi.format(8,3);
spi.frequency(3000000);
cs = 0;
spi.write(0x80); // set write register to seconds
spi.write(0x01); // send value of zero
cs=1;
cs=0;
spi.write(0x81);
spi.write(0x58); //write reg to minutes
cs=1;
cs=0;
spi.write(0x82);
spi.write(0x01); //write reg to hours (00-23)
cs=1;
cs=0;
spi.write(0x83);
spi.write(0x01); //write reg to day (1-7)
cs=1;
cs=0;
spi.write(0x84);
spi.write(0x01); //write reg to date(01-31)
cs=1;
cs=0;
spi.write(0x85);
spi.write(0x01); //write reg to mnth(01-12)
cs=1;
cs=0;
spi.write(0x86);
spi.write(0x01); //write reg to year(00-99)
cs=1;
// Receive the contents of the seconds register
for(int i=0;i<1000000;i++){
cs=0;
spi.write(0x00); // set read register to seconds
int seconds = spi.write(0x00); // read the value by sending dummy byte
cs=1;
cs=0;
spi.write(0x01);
int minutes =spi.write(0x01);
cs=1;
cs=0;
spi.write(0x02);
int hours =spi.write(0x01);
cs=1;
cs=0;
spi.write(0x03);
int day =spi.write(0x01);
cs=1;
cs=0;
spi.write(0x04);
int date =spi.write(0x01);
cs=1;
cs=0;
spi.write(0x05);
int mnth =spi.write(0x01);
cs=1;
cs=0;
spi.write(0x06);
int year =spi.write(0x01);
//This cs=1 is to make the chipselect line high to "deselect" the slave in our case RTC
cs = 1;
//This printf function is to check the timestamp function in the terminal output
printf("timestamp as = %X : %X : %X : %X : %X : %X : %X\n\r", year,mnth,date,day,hours,minutes,seconds);
}
return 0;
}
