FBRLogger final version
Dependencies: EthernetInterface MSCAN Nanopb SDFileSystem mbed-rtos mbed
main.cpp
- Committer:
- intrinseca
- Date:
- 2012-10-07
- Revision:
- 0:6f69ea2839fa
- Child:
- 1:5f51069d5e09
File content as of revision 0:6f69ea2839fa:
#include "SDHCFileSystem.h" SDFileSystem sd(p5, p6, p7, p8, "sd"); // the pinout on the mbed Cool Components workshop board FILE *logFile; CAN can1(p30, p29); //Needs to be CAN1 - SD takes CAN0 void can_interrupt() { CANMessage msg; if(can1.read(msg)) { fprintf(logFile, "Message Received\r\n"); } } bool file_exists(const char * filename) { if (FILE * file = fopen(filename, "r")) { fclose(file); return true; } return false; } int main() { char logIndex = 0; char logFileName[50]; printf("Hello World!\r\n"); mkdir("/sd/fbr", 0777); can1.attach(&can_interrupt); do { sprintf(&logFileName[0], "/sd/fbr/log.%d", logIndex); logIndex++; } while(file_exists(&logFileName[0])); printf(&logFileName[0]); logFile = fopen(&logFileName[0], "w"); if(logFile == NULL) { error("Could not open file for write\r\n"); } fprintf(logFile, "FBR CAN Log File"); while(true) { __wfi(); } }