?? rtc.c
字號(hào):
/****************************************Copyright (c)**************************************************
** 廣州周立功單片機(jī)發(fā)展有限公司
** 研 究 所
** 產(chǎn)品一部
**
** http://www.zlgmcu.com
**
**--------------文件信息--------------------------------------------------------------------------------
**文 件 名: rtc.c
**創(chuàng) 建 人: 陳明計(jì)
**最后修改日期: 2003年7月8日
**描 述: lpc210x(飛利浦的ARM)的實(shí)時(shí)時(shí)鐘使用在μCOS-II示例
**
**--------------歷史版本信息----------------------------------------------------------------------------
** 創(chuàng)建人: 陳明計(jì)
** 版 本: v1.0
** 日 期: 2003年7月8日
** 描 述: 原始版本
**
**------------------------------------------------------------------------------------------------------
** 修改人: 陳明計(jì)
** 版 本: v1.1
** 日 期: 2003年7月21日
** 描 述: 根據(jù)正式文檔更改寄存器名
**
**--------------當(dāng)前版本修訂------------------------------------------------------------------------------
** 修改人:
** 日 期:
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#define IN_RTC
#include "config.h"
/*********************************************************************************************************
** 函數(shù)名稱: RTCInit
** 功能描述: 實(shí)時(shí)時(shí)鐘初始化
**
** 輸 入: 無
**
** 輸 出: 無
**
** 全局變量: 無
** 調(diào)用模塊: 無
**
** 作 者: 陳明計(jì)
** 日 期: 2003年7月8日
**-------------------------------------------------------------------------------------------------------
** 修改人: 陳明計(jì)
** 日 期: 2003年7月21日
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void RTCInit(void)
{
CCR = 1;
PREINT = Fpclk / 32768 - 1;
PREFRAC = Fpclk - (Fpclk / 32768) * 32768;
}
/*********************************************************************************************************
** 函數(shù)名稱: getdate
** 功能描述: 獲取當(dāng)前日期
**
** 輸 入: today:date結(jié)構(gòu)體指針用于返回日期
**
** 輸 出: 當(dāng)前日期
**
** 全局變量: 無
** 調(diào)用模塊: 無
**
** 作 者: 陳明計(jì)
** 日 期: 2003年7月8日
**-------------------------------------------------------------------------------------------------------
** 修改人: 陳明計(jì)
** 日 期: 2003年7月21日
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void getdate(struct date *today)
{
OS_ENTER_CRITICAL();
today->da_year = YEAR;
today->da_mon = MONTH;
today->da_day = DOM;
today->da_dow = DOW;
OS_EXIT_CRITICAL();
}
/*********************************************************************************************************
** 函數(shù)名稱: gettime
** 功能描述: 獲取當(dāng)前時(shí)間
** 輸 入: now:time結(jié)構(gòu)體指針用于返回時(shí)間
**
** 輸 出: 無
**
** 全局變量: 無
** 調(diào)用模塊: 無
**
** 作 者: 陳明計(jì)
** 日 期: 2003年7月8日
**-------------------------------------------------------------------------------------------------------
** 修改人: 陳明計(jì)
** 日 期: 2003年7月21日
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void gettime(struct time *now)
{
OS_ENTER_CRITICAL();
now->ti_hour = HOUR;
now->ti_min = MIN;
now->ti_sec = SEC;
now->ti_hund = (CTC * 100) / 32768;
OS_EXIT_CRITICAL();
}
/*********************************************************************************************************
** 函數(shù)名稱: setdate
** 功能描述: 設(shè)置日期
** 輸 入: today:date結(jié)構(gòu)體指針指明當(dāng)前日期
**
** 輸 出: 無
**
** 全局變量: 無
** 調(diào)用模塊: 無
**
** 作 者: 陳明計(jì)
** 日 期: 2003年7月8日
**-------------------------------------------------------------------------------------------------------
** 修改人: 陳明計(jì)
** 日 期: 2003年7月21日
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void setdate(struct date *today)
{
OS_ENTER_CRITICAL();
YEAR = today->da_year;
MONTH = today->da_mon;
DOM = today->da_day;
DOW = today->da_dow;
OS_EXIT_CRITICAL();
}
/*********************************************************************************************************
** 函數(shù)名稱: settime
** 功能描述: 獲取當(dāng)前時(shí)間
** 輸 入: now:time結(jié)構(gòu)體指針用于指明當(dāng)前時(shí)間
**
** 輸 出: 無
**
** 全局變量: 無
** 調(diào)用模塊: 無
**
** 作 者: 陳明計(jì)
** 日 期: 2003年7月8日
**-------------------------------------------------------------------------------------------------------
** 修改人: 陳明計(jì)
** 日 期: 2003年7月21日
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void settime(struct time *now)
{
OS_ENTER_CRITICAL();
HOUR = now->ti_hour;
MIN = now->ti_min;
SEC = now->ti_sec;
OS_EXIT_CRITICAL();
}
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -