/**************************************************************************//**
|
* @file wwdt.c
|
* @version V1.00
|
* $Revision: 2 $
|
* $Date: 16/02/25 10:23 $
|
* @brief Panchip series WWDT driver source file
|
*
|
* @note
|
* Copyright (C) 2016 Panchip Technology Corp. All rights reserved.
|
*****************************************************************************/
|
#include "PanSeries.h"
|
#include "pan_wwdt.h"
|
|
|
/**
|
* @brief This function make WWDT module start counting with different counter period and compared window value
|
* @param[in] preScale Prescale period for the WWDT counter period. Valid values are:
|
* - \ref WWDT_PRESCALER_1
|
* - \ref WWDT_PRESCALER_2
|
* - \ref WWDT_PRESCALER_4
|
* - \ref WWDT_PRESCALER_8
|
* - \ref WWDT_PRESCALER_16
|
* - \ref WWDT_PRESCALER_32
|
* - \ref WWDT_PRESCALER_64
|
* - \ref WWDT_PRESCALER_128
|
* - \ref WWDT_PRESCALER_192
|
* - \ref WWDT_PRESCALER_256
|
* - \ref WWDT_PRESCALER_384
|
* - \ref WWDT_PRESCALER_512
|
* - \ref WWDT_PRESCALER_768
|
* - \ref WWDT_PRESCALER_1024
|
* - \ref WWDT_PRESCALER_1536
|
* - \ref WWDT_PRESCALER_2048
|
* @param[in] u32CmpValue Window compared value. Valid values are between 0x0 to 0x3F
|
* @param[in] u32EnableInt Enable WWDT interrupt or not. Valid values are \ref TRUE and \ref FALSE
|
* @return None
|
* @note Application can call this function can only once after boot up
|
*/
|
void WWDT_Open(WWDT_PrescaleDef preScale, uint32_t u32CmpValue, uint32_t u32EnableInt)
|
{
|
WWDT->CTL = preScale |
|
(u32CmpValue << WWDT_CTL_CMPDAT_Pos)|
|
WWDT_CTL_WWDTEN_Msk |
|
(u32EnableInt ? WWDT_CTL_INTEN_Msk : 0);
|
return;
|
}
|
|
/**
|
* @brief This function stops WWDT counting
|
* @param None
|
* @return None
|
*/
|
void WWDT_Close(void)
|
{
|
WWDT->CTL &= ~WWDT_CTL_WWDTEN_Msk;
|
}
|
|
|
/*@}*/ /* end of group PN501_WWDT_EXPORTED_FUNCTIONS */
|
|
/*@}*/ /* end of group PN501_WWDT_Driver */
|
|
/*@}*/ /* end of group PN501_Device_Driver */
|
|
/*** (C) COPYRIGHT 2016 Panchip Technology Corp. ***/
|