sdcard
Dependencies: SDFileSystem mbed
Fork of rtcfinalcodeyuppie by
rtsc.cpp
- Committer:
- pradeepvk2208
- Date:
- 2014-12-22
- Revision:
- 4:374c51671a69
- Parent:
- 3:6cde88f8c50f
- Child:
- 5:3979ca24777a
File content as of revision 4:374c51671a69:
#include "rtsc.h" SPI spi(PTD6, PTD7, PTD5); DigitalOut cs(PTD2); SDFileSystem sd(PTD6, PTD7, PTD5, D10,"sd"); void spiwrite(int a) { cs=1; cs=0; spi.write(a); spi.write(0x01); } int spiread(int a) { cs=1; cs=0; spi.write(a); return(spi.write(0x00)); } char* getname(int year1,int month1,int date1,int day1,int hours1,int minutes1,int seconds1) { year1= hexint(year1); month1=hexint(month1); date1=hexint(date1); day1=hexint(day1); hours1=hexint(hours1); minutes1=hexint(minutes1); seconds1=hexint(seconds1); /*char y[3]=getstr(year); char m[3]=getstr(month); char dat[3]=getstr(date); char da[3]=getstr(day); char h[3]=getstr(hours); char mi[3]=getstr(minutes); char s[3]=getstr(seconds);*/ char time[15]; sprintf(time,"%02d%02d%02d%02d%02d%02d%02d",year1,month1,date1,day1,hours1,minutes1,seconds1); return(time); } int hexint(int a) { a=(a/16)*10+(a%16); return a; } char* getts(void) { spi.format(8,3); spi.frequency(1000000); spiwrite(0x80); spiwrite(0x81); spiwrite(0x82); spiwrite(0x83); spiwrite(0x84); spiwrite(0x85); spiwrite(0x86); for(int i=0;i<1000000;i++){ int seconds=spiread(0x00); int minutes =spiread(0x01); int hours =spiread(0x02); int day =spi.write(0x03); int date =spiread(0x04); int month =spiread(0x05); int year =spiread(0x06); cs = 1; wait(1); printf("Seconds register = %2X : %2X : %2X : %2X : %2X : %2X : %2X \n\r",year,month,date,day, hours,minutes,seconds); printf("b4 returning tmpstmp is : %s\n",getname(year,month,date,day,hours,minutes,seconds)); printf("Hello World!\n"); SensorData Sensor; printf("Writing dummy values\n"); strcpy( Sensor.Voltage, "49"); strcpy( Sensor.Current, "83"); strcpy( Sensor.Temperature, "53"); strcpy( Sensor.PanelTemperature, "43"); Sensor.Vcell_soc='9'; Sensor.alerts= '4'; Sensor.crate='7'; Sensor.BatteryTemperature='6'; Sensor.faultpoll='4'; Sensor.faultir='g'; Sensor.power_mode='k'; strcpy( Sensor.AngularSpeed, "49"); strcpy(Sensor.Bnewvalue,"76"); SensorData* Sensor1= &Sensor; printf("Done writing dummy values\n"); mkdir("/sd/hk", 0777); char date2[100]="/sd/hk/"; strcat(date2,getname(year,month,date,day,hours,minutes,seconds)); strcat(date2,".txt"); FILE *fp ; fp= fopen(date2, "w"); if(fp == NULL) { error("Could not open file for write\n"); } else { fwrite(Sensor1, sizeof(*Sensor1), 1, fp); fclose(fp); printf("Mission Accomplished\n"); printf("Goodbye World!\n"); } }}