00001 /************************************************************************************************** 00002 Title : Virtual Real Time Clock Driver 00003 Programmer : Yosuke FURUSAWA 00004 Copyright : Copyright (C) 2008-2010 Yosuke FURUSAWA. 00005 Since : 2008/11/12 00006 00007 Filename : librtc.h 00008 Last up date : 2010/08/13 00009 Kanji-Code : Shift-JIS 00010 TAB Space : 4 00011 **************************************************************************************************/ 00012 00013 00014 #ifndef _LIBRTC_H_ 00015 #define _LIBRTC_H_ 00016 00017 00018 /*================================================================================================= 00019 マクロ定義 00020 =================================================================================================*/ 00021 #define RTC_LOWMEM 00022 00023 00024 /*================================================================================================ 00025 構造体 00026 =================================================================================================*/ 00027 typedef struct RTC { 00028 unsigned int msec; /* ミリ秒 */ 00029 unsigned char sec; /* 秒 */ 00030 unsigned char min; /* 分 */ 00031 unsigned char hour; /* 時 */ 00032 unsigned int day; /* 日 */ 00033 00034 unsigned int tick; /* 起動後の合計時間(ミリ秒) */ 00035 00036 #ifndef RTC_LOWMEM 00037 unsigned int secmeter; /* 起動後の合計時間(秒) */ 00038 unsigned int minmeter; /* 起動後の合計時間(分) */ 00039 unsigned int hourmeter; /* 起動後の合計時間(時) */ 00040 #endif 00041 00042 } RTC_T; 00043 typedef RTC_T* pRTC_T; 00044 00045 00046 /*================================================================================================= 00047 グローバル変数 00048 =================================================================================================*/ 00049 extern RTC_T rtc; 00050 00051 00052 /*================================================================================================ 00053 プロトタイプ宣言 00054 =================================================================================================*/ 00055 extern void RTC_init(void); 00056 extern void RTC_init_timer(void); 00057 extern unsigned int RTC_get_ticks(unsigned int start, unsigned int end); 00058 00059 00060 #endif