Prof Greg Egan
/
UAVXArm-GKE
UAVX Multicopter Flight Controller.
Diff: nonvolatile.c
- Revision:
- 2:90292f8bd179
- Parent:
- 0:62a1c91a859a
diff -r 1e3318a30ddd -r 90292f8bd179 nonvolatile.c --- a/nonvolatile.c Fri Feb 25 01:35:24 2011 +0000 +++ b/nonvolatile.c Tue Apr 26 12:12:29 2011 +0000 @@ -2,7 +2,7 @@ // = UAVXArm Quadrocopter Controller = // = Copyright (c) 2008 by Prof. Greg Egan = // = Original V3.15 Copyright (c) 2007 Ing. Wolfgang Mahringer = -// = http://code.google.com/p/uavp-mods/ http://uavp.ch = +// = http://code.google.com/p/uavp-mods/ = // =============================================================================================== // This is part of UAVXArm. @@ -45,16 +45,9 @@ int8 PX[PX_LENGTH], PXNew[PX_LENGTH]; void CheckSDCardValid(void) { - /* - FILE *testfile; - testfile = fopen("/SDCard/OK", "w"); - F.SDCardValid = testfile != NULL; - if ( F.SDCardValid ) fclose(testfile); - */ F.SDCardValid = SDCard.initialise_card() != 0; - } // CheckSDCardValid void WritePXImagefile(void) { @@ -93,7 +86,6 @@ boolean ReadPXImagefile(void) { static uint16 a; - static int8 r; static int32 v, CheckSum; static boolean OK; @@ -102,7 +94,6 @@ else pxfile = fopen("/local/Params.txt", "r"); - OK = false; if ( pxfile != NULL ) { CheckSum = 0; @@ -129,11 +120,14 @@ } // ReadPXImagefile +void CreateLogfile(void) { -void CreateLogfile(void) { - static uint8 i; +#ifndef SUPPRESS_SDCARD + + static int16 i; UpdateRTC(); + if ( F.SDCardValid ) strftime(RTCLogfile, 32, "/SDCard/L%H-%M.log", RTCTime ); else @@ -143,7 +137,7 @@ LogfileIsOpen = logfile != NULL; if ( LogfileIsOpen ) { - i=0; + i = 0; while ( RTCString[i] != 0 ) TxLogChar(RTCString[i++]); TxLogChar(CR); @@ -151,6 +145,8 @@ } LogChars = 0; +#endif // !SUPPRESS_SDCARD + } // CreateLogfile void CloseLogfile(void) { @@ -160,8 +156,11 @@ void TxLogChar(uint8 ch) { #ifndef SUPPRESS_SDCARD - if ( LogfileIsOpen ) - fprintf(logfile, "%c", ch); + if ( LogfileIsOpen ) { + LogfileIsOpen = fprintf(logfile, "%c", ch) > 0; + if ( !LogfileIsOpen ) + CloseLogfile(); + } #endif // !SUPPRESS_SDCARD } // TxLogChar