epoch_time.h

来自「sharp的arm920t 7A400的评估板附带光盘Sharp KEVLH7A」· C头文件 代码 · 共 84 行

H
84
字号
/***********************************************************************
 * $Workfile:   epoch_time.h  $
 * $Revision:   1.0  $
 * $Author:   WellsK  $
 * $Date:   Sep 22 2002 11:00:08  $
 *
 * Project: Epoch time (Unix) display and conversion functions
 *
 * Description:
 *  See code.
 *
 * Revision History:
 * $Log:   //smaicnt2/pvcs/VM/CDROM/archives/KEV7A400/Software/Examples/rtcdemo/epoch_time.h-arc  $
 * 
 *    Rev 1.0   Sep 22 2002 11:00:08   WellsK
 * Initial revision.
 * 
 *
 * SHARP MICROELECTRONICS OF THE AMERICAS MAKES NO REPRESENTATION
 * OR WARRANTIES WITH RESPECT TO THE PERFORMANCE OF THIS SOFTWARE,
 * AND SPECIFICALLY DISCLAIMS ANY RESPONSIBILITY FOR ANY DAMAGES, 
 * SPECIAL OR CONSEQUENTIAL, CONNECTED WITH THE USE OF THIS SOFTWARE.
 *
 * SHARP MICROELECTRONICS OF THE AMERICAS PROVIDES THIS SOFTWARE SOLELY 
 * FOR THE PURPOSE OF SOFTWARE DEVELOPMENT INCORPORATING THE USE OF A 
 * SHARP MICROCONTROLLER OR SYSTEM-ON-CHIP PRODUCT. USE OF THIS SOURCE
 * FILE IMPLIES ACCEPTANCE OF THESE CONDITIONS.
 *
 * COPYRIGHT (C) 2002 SHARP MICROELECTRONICS OF THE AMERICAS, INC.
 *     CAMAS, WA
 **********************************************************************/
#ifndef EPOCH_TIME_H
#define EPOCH_TIME_H

#ifdef __cplusplus
#if __cplusplus
extern 'C'
{
#endif // __cplusplus
#endif // __cplusplus

#include "SMA_types.h"

//**********************************************************************
// Defines
//**********************************************************************

// Working values
#define SECS_PER_MIN		60
#define SECS_PER_HOUR		(60 * SECS_PER_MIN)
#define SECS_PER_DAY		(24 * SECS_PER_HOUR)
#define SECS_PER_YEAR		(365 * SECS_PER_DAY)

// Number of seconds to next leap year from first 'leap'
#define LEAP_OFS_YEARS		(4 * SECS_PER_YEAR + SECS_PER_DAY)

// THE FOLLOWING CONSTANTS are for UNIX epoch time only
// Number of seconds past 01/01/1970 to first 'leap'
#define LEAP_OFS_START		(2 * SECS_PER_YEAR + 60 * SECS_PER_DAY)

// Offset into a year for the 'leap'
#define LEAP_YEAR_START		(60 * SECS_PER_DAY)

// Epoch years
#define EPOCH_YEAR			1970  // For Unix
#define FIRST_LEAP			1972  // Unix

//**********************************************************************
// Function prototypes
//**********************************************************************

// Convert the epoch time to a date/time string and display it
void Time_Show (UNS_32 epoch_time);

// Convert date and time values to an epich time
UNS_32 Time_Convert_To_Epoch (INT_32 year, INT_32 month, INT_32 day,
    INT_32 hour, INT_32 minute, INT_32 second);

#ifdef __cplusplus
}
#endif

#endif // EPOCH_TIME_H

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?