📄 csl_pwrdwnaux.h
字号:
/* ============================================================================
* Copyright (c) Texas Instruments Inc 2002, 2003, 2004, 2005
*
* Use of this software is controlled by the terms and conditions found in the
* license agreement under which this software has been supplied.
* ============================================================================
*/
/** ===========================================================================
* @file csl_pwrdwnAux.h
*
* @brief API Auxilary header file for PWRDWN CSL
*
* @path $(CSLPATH)\inc
*
* @desc PWRDWN module
* Modification : 30th Aug 2004
* Modified function
* Added documentation
* ============================================================================
*/
/* =============================================================================
* Revision History
* ===============
* 20-Dec-2005 Modified CSL_pwrdwnGetPage1SleepStatus () and
* CSL_pwrdwnGetPage0SleepStatus () to fix issue in release
* mode
* 01-Mar-2006 Modified CSL_pwrdwnPage1Wake () to fix bug PSG00000880
* =============================================================================
*/
#ifndef _CSL_PWRDWNAUX_H
#define _CSL_PWRDWNAUX_H
#ifdef __cplusplus
extern "C" {
#endif
#define CSL_IDEF_INLINE static inline
/** @addtogroup CSL_PWRDWN_FUNCTION_INTERNAL
@{ */
/** ============================================================================
* @n@b CSL_pwrdwnPage0Sleep
*
* @b Description
* @n Manual power down. Puts page0 on specified port to sleep
*
* @b Arguments
* @verbatim
hPwr Handle to the power down module
arg consists of port number and page0 on the port that need
to be put to sleep
@endverbatim
*
* <b> Return Value </b> Status (CSL_SOK)
*
* <b> Pre Condition </b>
* @n None
*
* <b> Post Condition </b>
* @n Puts page0 on specified port to sleep
*
* @b Modifies
* @n None
*
* @b Example
* @verbatim
CSL_PwrdwnObj pwrObj;
CSL_PwrdwnConfig pwrConfig;
CSL_PwrdwnHandle hPwr;
CSL_PwrdwnPortData *arg
arg.portNum = 0x0;
arg.data = 0x1;
// Init Module
...
if (CSL_pwrdwnInit(NULL) != CSL_SOK)
exit;
// Opening a handle for the Module
hPwr = CSL_pwrdwnOpen (&pwrObj, CSL_PWRDWN, NULL, NULL);
CSL_pwrdwnPage0Sleep(hPwr, (CSL_PwrdwnPortData *)&arg);
@endverbatim
* ===========================================================================
*/
CSL_IDEF_INLINE
CSL_Status CSL_pwrdwnPage0Sleep (
CSL_PwrdwnHandle hPwr,
CSL_PwrdwnPortData *arg
)
{
CSL_FINS(hPwr->l2pwrdwnRegs->L2PDSLEEP[arg->portNum],
L2PWRDWN_L2PDSLEEP_P0, arg->data);
return CSL_SOK;
}
/** ============================================================================
* @n@b CSL_pwrdwnPage1Sleep
*
* @b Description
* @n Manual power down. Puts page1 on specified port to sleep
*
* @b Arguments
* @verbatim
hPwr Handle to the power down module
arg consists of port number and page1 on the port that need
to be put to sleep
@endverbatim
*
* <b> Return Value </b> Status (CSL_SOK)
*
* <b> Pre Condition </b>
* @n None
*
* <b> Post Condition </b>
* @n Puts page1 on specified port to sleep
*
* @b Modifies
* @n None
*
* @b Example
* @verbatim
CSL_PwrdwnObj pwrObj;
CSL_PwrdwnConfig pwrConfig;
CSL_PwrdwnHandle hPwr;
CSL_PwrdwnPortData *arg
arg.portNum = 0x0;
arg.data = 0x1;
// Init Module
...
if (CSL_pwrdwnInit(NULL) != CSL_SOK)
exit;
// Opening a handle for the Module
hPwr = CSL_pwrdwnOpen (&pwrObj, CSL_PWRDWN, NULL, NULL);
CSL_pwrdwnPage1Sleep(hPwr, (CSL_PwrdwnPortData *)&arg);
@endverbatim
* ===========================================================================
*/
CSL_IDEF_INLINE
CSL_Status CSL_pwrdwnPage1Sleep (
CSL_PwrdwnHandle hPwr,
CSL_PwrdwnPortData *arg
)
{
CSL_FINS(hPwr->l2pwrdwnRegs->L2PDSLEEP[arg->portNum],
L2PWRDWN_L2PDSLEEP_P1, arg->data);
return CSL_SOK;
}
/** ============================================================================
* @n@b CSL_pwrdwnPage0Wake
*
* @b Description
* @n Manual page wake. Awakes page0 on specified port.
*
* @b Arguments
* @verbatim
hPwr Handle to the power down module
wake consists of port number and page0 on the port that need
to be put to woken
@endverbatim
*
* <b> Return Value </b> Status (CSL_SOK)
*
* <b> Pre Condition </b>
* @n None
*
* <b> Post Condition </b>
* @n Awakes page0 on specified port
*
* @b Modifies
* @n None
*
* @b Example
* @verbatim
CSL_PwrdwnObj pwrObj;
CSL_PwrdwnConfig pwrConfig;
CSL_PwrdwnHandle hPwr;
arg.portNum = 0x0;
arg.data = 0x1;
// Init Module
...
if (CSL_pwrdwnInit(NULL) != CSL_SOK)
exit;
// Opening a handle for the Module
hPwr = CSL_pwrdwnOpen (&pwrObj, CSL_PWRDWN, NULL, NULL);
CSL_pwrdwnPage0Wake(hPwr, (CSL_PwrdwnPortData *)&arg);
@endverbatim
* ===========================================================================
*/
CSL_IDEF_INLINE
CSL_Status CSL_pwrdwnPage0Wake (
CSL_PwrdwnHandle hPwr,
CSL_PwrdwnPortData *arg
)
{
CSL_FINS(hPwr->l2pwrdwnRegs->L2PDWAKE[arg->portNum],
L2PWRDWN_L2PDWAKE_P0, arg->data);
return CSL_SOK;
}
/** ============================================================================
* @n@b CSL_pwrdwnPage1Wake
*
* @b Description
* @n Manual page wake. Awakes page0 on specified port.
*
* @b Arguments
* @verbatim
hPwr Handle to the power down module
wake consists of port number and page1 on the port that need
to be put to woken
@endverbatim
*
* <b> Return Value </b> Status (CSL_SOK)
*
* <b> Pre Condition </b>
* @n None
*
* <b> Post Condition </b>
* @n Awakes page1 on specified port
*
* @b Modifies
* @n None
*
* @b Example
* @verbatim
CSL_PwrdwnObj pwrObj;
CSL_PwrdwnConfig pwrConfig;
CSL_PwrdwnHandle hPwr;
arg.portNum = 0x0;
arg.data = 0x1;
// Init Module
...
if (CSL_pwrdwnInit(NULL) != CSL_SOK)
exit;
// Opening a handle for the Module
hPwr = CSL_pwrdwnOpen (&pwrObj, CSL_PWRDWN, NULL, NULL);
CSL_pwrdwnPage1Wake(hPwr, (CSL_PwrdwnPortData *)&arg);
@endverbatim
* ===========================================================================
*/
CSL_IDEF_INLINE
CSL_Status CSL_pwrdwnPage1Wake (
CSL_PwrdwnHandle hPwr,
CSL_PwrdwnPortData *arg
)
{
CSL_FINS(hPwr->l2pwrdwnRegs->L2PDWAKE[arg->portNum],
L2PWRDWN_L2PDWAKE_P1, arg->data);
return CSL_SOK;
}
/** ============================================================================
* @n@b CSL_pwrdwnGetPage0SleepStatus
*
* @b Description
* @n Queries page0 status.
*
* @b Arguments
* @verbatim
hPwr Handle to the power down module
response Place holder for sleep status of the page0 on specified port
@endverbatim
*
* <b> Return Value </b> Status (CSL_SOK)
*
* <b> Pre Condition </b>
* @n None
*
* <b> Post Condition </b>
* @n None
*
* @b Modifies
* @n None
*
* @b Example
* @verbatim
CSL_PwrdwnObj pwrObj;
CSL_PwrdwnConfig pwrConfig;
CSL_PwrdwnHandle hPwr;
CSL_PwrdwnPortData response;
response.portNum = 0x0;
// Init Module
...
if (CSL_pwrdwnInit(NULL) != CSL_SOK)
exit;
// Opening a handle for the Module
hPwr = CSL_pwrdwnOpen (&pwrObj, CSL_PWRDWN, NULL, NULL);
CSL_pwrdwnGetPage0SleepStatus(hPwr, (CSL_PwrdwnPortData *)&response);
@endverbatim
* ===========================================================================
*/
CSL_IDEF_INLINE
void CSL_pwrdwnGetPage0SleepStatus (
CSL_PwrdwnHandle hPwr,
CSL_PwrdwnPortData *response
)
{
volatile Uint8 data;
data = CSL_FEXT(hPwr->l2pwrdwnRegs->L2PDSTAT[response->portNum],
L2PWRDWN_L2PDSTAT_P0);
response->data = data;
}
/** ============================================================================
* @n@b CSL_pwrdwnGetPage1SleepStatus
*
* @b Description
* @n Queries page1 status.
*
* @b Arguments
* @verbatim
hPwr Handle to the power down module
response Place holder for sleep status of the page1 on specified port
@endverbatim
*
* <b> Return Value </b> Status (CSL_SOK)
*
* <b> Pre Condition </b>
* @n None
*
* <b> Post Condition </b>
* @n None
*
* @b Modifies
* @n None
*
* @b Example
* @verbatim
CSL_PwrdwnObj pwrObj;
CSL_PwrdwnConfig pwrConfig;
CSL_PwrdwnHandle hPwr;
CSL_PwrdwnPortData response;
response.portNum = 0x0;
// Init Module
...
if (CSL_pwrdwnInit(NULL) != CSL_SOK)
exit;
// Opening a handle for the Module
hPwr = CSL_pwrdwnOpen (&pwrObj, CSL_PWRDWN, NULL, NULL);
CSL_pwrdwnGetPage1SleepStatus(hPwr, (CSL_PwrdwnPortData *)&response);
@endverbatim
* ===========================================================================
*/
CSL_IDEF_INLINE
void CSL_pwrdwnGetPage1SleepStatus (
CSL_PwrdwnHandle hPwr,
CSL_PwrdwnPortData *response
)
{
volatile Uint8 data;
data = CSL_FEXT(hPwr->l2pwrdwnRegs->L2PDSTAT[response->portNum],
L2PWRDWN_L2PDSTAT_P1);
response->data = data;
}
#ifdef __cplusplus
extern "C" {
#endif
/**
@}
*/
#endif /* _CSL_PWRDWNAUX_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -