示例#1
0
//
// Write a string to the logfile.
//
void appendToLogfile(const char* text, int logLevel)
{
    word mjd;
    byte hour;
    byte min;
    byte sec;
    word year;
    byte month;
    byte day;
    byte weekday;
    char str[20];
    dword tempTick;

    if (logLevel > LOGLEVEL) return;

    if (logFD != NULL)
    {
        TAP_GetTime( &mjd, &hour, &min, &sec);
        TAP_ExtractMjd(mjd, &year, &month, &day, &weekday);
        tempTick = TAP_GetTick();
        //sprintf(str,"%02d-%02d-%04d %02d:%02d:%02d - ", day, month, year, hour, min, sec);
        sprintf(str,"%02d:%02d:%02d %i - ", hour, min, sec, tempTick);
        TAP_Hdd_Fwrite((void*)str, strlen(str), 1, logFD);
        TAP_Hdd_Fwrite((void*)text, strlen(text), 1, logFD);
        TAP_Hdd_Fwrite((void*)"\r\n", strlen("\r\n"), 1, logFD);
        logByteCount += strlen(text) + strlen("\r\n");
    }
}
示例#2
0
char* Time_DOWDDMM( dword mjd ) {
    word year;
    byte month, day, weekDay;
    static char date[10];
    if( TAP_ExtractMjd( mjd, &year, &month, &day, &weekDay ) == 1 ) {
        switch( weekDay ) {
        case 6:
            sprintf(date, "Sun %02d/%02d\0", day, month );
            break;
        case 0:
            sprintf(date, "Mon %02d/%02d\0", day, month );
            break;
        case 1:
            sprintf(date, "Tue %02d/%02d\0", day, month );
            break;
        case 2:
            sprintf(date, "Wed %02d/%02d\0", day, month);
            break;
        case 3:
            sprintf(date, "Thu %02d/%02d\0", day, month );
            break;
        case 4:
            sprintf(date, "Fri %02d/%02d\0", day, month );
            break;
        case 5:
            sprintf(date, "Sat %02d/%02d\0", day, month );
            break;
        }
    } else {
        // Malformeed mjd format
        sprintf(date, "?\0" );
    }
    return date;
}
示例#3
0
void tmMain(void)
{
	static byte tmMainSV = TM_INITILAISE;

	signalLevel = TAP_GetSignalLevel();
	signalQuality = TAP_GetSignalQuality();
	TAP_GetTime( &mjd, &hour, &min, &sec);
	TAP_ExtractMjd( mjd, &year, &month, &day, &weekday);
	timers = TAP_Timer_GetTotalNum();

	switch(tmMainSV)
	{
	/* ------------------------------------------------------------------------------------ */
	case TM_INITILAISE:

		tmInitialise();

		tmMainSV = TM_SERVICE;

		break;
	/* ------------------------------------------------------------------------------------ */
	case TM_SERVICE:

		tmService();

		break;
	/* ------------------------------------------------------------------------------------ */
	}

	mjdLast = mjd;
	hourLast = hour;
	minLast = min;
	secLast = sec;
	yearLast = year;
	monthLast = month;
	dayLast = day;

	signalLevelLast = signalLevel;
	signalQualityLast = signalQuality;

	timersLast = timers;
}
示例#4
0
char *TimeFormat(dword DateTime, byte Sec, eTimeStampFormat TimeStampFormat)
{
  static char           sTimeStamp [25];      //Log adds a SPACE to sTimeStamp. Do not make it too small!
  word                  Mjd, Year;
  byte                  Month, Day, WeekDay, Hour, Min;

  Mjd  = MJD    (DateTime);
  Hour = HOUR   (DateTime);
  Min  = MINUTE (DateTime);
  TAP_ExtractMjd (Mjd, &Year, &Month, &Day, &WeekDay);

  switch (TimeStampFormat)
  {
    case TIMESTAMP_HM     : TAP_SPrint (sTimeStamp, "%02d:%02d", Hour, Min); break;
    case TIMESTAMP_HMS    : TAP_SPrint (sTimeStamp, "%02d:%02d:%02d", Hour, Min, Sec); break;
    case TIMESTAMP_YMD    : TAP_SPrint (sTimeStamp, "%02d-%02d-%02d", Year, Month, Day); break;
    case TIMESTAMP_YMDHM  : TAP_SPrint (sTimeStamp, "%04d-%02d-%02d %02d:%02d", Year, Month, Day, Hour, Min); break;
    case TIMESTAMP_YMDHMS : TAP_SPrint (sTimeStamp, "%04d-%02d-%02d %02d:%02d:%02d", Year, Month, Day, Hour, Min, Sec); break;
    case TIMESTAMP_FNYMDHM: TAP_SPrint (sTimeStamp, "%04d%02d%02d_%02d%02d", Year, Month, Day, Hour, Min); break;
    default               : sTimeStamp [0] = '\0';
  }

  return sTimeStamp;
}
示例#5
0
char *TimeFormat(dword DateTime, byte Sec, eTimeStampFormat TimeStampFormat, char *Result)
{
  TRACEENTER();

  word                  Mjd, Year;
  byte                  Month, Day, WeekDay, Hour, Min;

  if(Result)
  {
    Mjd  = MJD    (DateTime);
    Hour = HOUR   (DateTime);
    Min  = MINUTE (DateTime);
    TAP_ExtractMjd(Mjd, &Year, &Month, &Day, &WeekDay);
    if(Mjd == 0)
    {
      Year = 0;
      Month = 0;
      Day = 0;
      WeekDay = 0;
    }

    switch(TimeStampFormat)
    {
      case TIMESTAMP_HM     : TAP_SPrint(Result, "%02d:%02d", Hour, Min); break;
      case TIMESTAMP_HMS    : TAP_SPrint(Result, "%02d:%02d:%02d", Hour, Min, Sec); break;
      case TIMESTAMP_YMD    : TAP_SPrint(Result, "%02d-%02d-%02d", Year, Month, Day); break;
      case TIMESTAMP_YMDHM  : TAP_SPrint(Result, "%04d-%02d-%02d %02d:%02d", Year, Month, Day, Hour, Min); break;
      case TIMESTAMP_YMDHMS : TAP_SPrint(Result, "%04d-%02d-%02d %02d:%02d:%02d", Year, Month, Day, Hour, Min, Sec); break;
      case TIMESTAMP_FNYMDHM: TAP_SPrint(Result, "%04d%02d%02d_%02d%02d", Year, Month, Day, Hour, Min); break;
      default               : Result[0] = '\0'; break;
    }
  }

  TRACEEXIT();
  return Result;
}
示例#6
0
void appendToLogfile(const char* text)
{	
    word mjd; byte hour; byte min; byte sec; 
	word year; byte month; byte day; byte weekday;
    char str[20]; 

	//TAP_Print("Appending to log file...\r\n");
	openLogfile();

	if (logFD != NULL)
	{
		TAP_Hdd_Fseek(logFD, logByteCount, SEEK_SET);

        TAP_GetTime( &mjd, &hour, &min, &sec);
        TAP_ExtractMjd(mjd, &year, &month, &day, &weekday);
		sprintf(str,"%02d-%02d-%04d %02d:%02d:%02d - ", day, month, year, hour, min, sec);
		TAP_Hdd_Fwrite((void*)str, strlen(str), 1, logFD);
		TAP_Hdd_Fwrite((void*)text, strlen(text), 1, logFD);
		TAP_Hdd_Fwrite((void*)"\r\n", strlen("\r\n"), 1, logFD);
		logByteCount += strlen(str) + strlen(text) + strlen("\r\n");
		closeLogfile();
	}
	
}