100 lines
4.4 KiB
C
100 lines
4.4 KiB
C
|
|
/*******************************************************************************
|
|||
|
|
*
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|||
|
|
* <EFBFBD>人<EFBFBD><EFBFBD>Դ<EFBFBD>뵼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD>̴<EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD>ר<EFBFBD><EFBFBD><EFBFBD>İ<EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɴ<EFBFBD>
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD>ɸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>ܡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD>κη<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD><EFBFBD>人<EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD>
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̺<EFBFBD>Ӧ<EFBFBD>̶Գ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṩ<EFBFBD>κ<EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>֤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD>;<EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD>ı<EFBFBD>֤
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD>ۺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD><EFBFBD>人<EFBFBD><EFBFBD>Դ<EFBFBD>뵼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>̾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>и<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* <EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪<EFBFBD>䷢<EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵĶ<EFBFBD>ʧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵġ<EFBFBD><EFBFBD>ر<EFBFBD><EFBFBD>ġ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κκ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ծ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>롢<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD>ڿɽ<EFBFBD>ʡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* <EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>
|
|||
|
|
* ijЩ˾<EFBFBD><EFBFBD>Ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵġ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κε<EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ijЩ<EFBFBD><EFBFBD>
|
|||
|
|
* ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƿ<EFBFBD><EFBFBD>ܲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
*******************************************************************************/
|
|||
|
|
/* Define to prevent recursive inclusion -------------------------------------*/
|
|||
|
|
#ifndef __CW32F030_WWDT_H
|
|||
|
|
#define __CW32F030_WWDT_H
|
|||
|
|
|
|||
|
|
#ifdef __cplusplus
|
|||
|
|
extern "C" {
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
/* Includes ------------------------------------------------------------------*/
|
|||
|
|
#include "cw32f030.h"
|
|||
|
|
|
|||
|
|
/******************************************************************************
|
|||
|
|
* type definitions ('typedef')
|
|||
|
|
******************************************************************************/
|
|||
|
|
typedef struct
|
|||
|
|
{
|
|||
|
|
uint32_t WWDT_Prescaler; /* Ԥ<><D4A4><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>ȡֵ<C8A1><D6B5>Χ2<CEA7><32>n<EFBFBD><6E><EFBFBD>ݣ<EFBFBD>n=12,13..19 */
|
|||
|
|
|
|||
|
|
uint32_t WWDT_WindowValue; /* <20><><EFBFBD>Ź<EFBFBD><C5B9><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ȡֵ<C8A1><D6B5>ΧС<CEA7><D0A1>0x80*/
|
|||
|
|
|
|||
|
|
uint8_t WWDT_CounterValue; /* <20><><EFBFBD>Ź<EFBFBD><C5B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ȡֵ<C8A1><D6B5>Χ0x40 <20><> 0x7F. */
|
|||
|
|
|
|||
|
|
FunctionalState WWDT_ITState; /* <20><><EFBFBD>Ź<EFBFBD><C5B9>ж<EFBFBD>״̬<D7B4><CCAC>ȡֵ<C8A1><D6B5>ΧENABLE<4C><45>DISABLE */
|
|||
|
|
} WWDT_InitTypeDef;
|
|||
|
|
/******************************************************************************
|
|||
|
|
* pre-processor symbols/macros ('#define')
|
|||
|
|
******************************************************************************/
|
|||
|
|
#define WWDT_Prescaler_DIV4096 ((uint32_t)0x00000000)
|
|||
|
|
#define WWDT_Prescaler_DIV8192 ((uint32_t)0x00000080)
|
|||
|
|
#define WWDT_Prescaler_DIV16384 ((uint32_t)0x00000100)
|
|||
|
|
#define WWDT_Prescaler_DIV32768 ((uint32_t)0x00000180)
|
|||
|
|
#define WWDT_Prescaler_DIV65536 ((uint32_t)0x00000200)
|
|||
|
|
#define WWDT_Prescaler_DIV131072 ((uint32_t)0x00000280)
|
|||
|
|
#define WWDT_Prescaler_DIV262144 ((uint32_t)0x00000300)
|
|||
|
|
#define WWDT_Prescaler_DIV524288 ((uint32_t)0x00000380)
|
|||
|
|
#define IS_WWDT_PRESCALER(PRESCALER) (((PRESCALER) == WWDT_Prescaler_DIV4096) || \
|
|||
|
|
((PRESCALER) == WWDT_Prescaler_DIV8192) || \
|
|||
|
|
((PRESCALER) == WWDT_Prescaler_DIV16384) || \
|
|||
|
|
((PRESCALER) == WWDT_Prescaler_DIV32768) || \
|
|||
|
|
((PRESCALER) == WWDT_Prescaler_DIV65536) || \
|
|||
|
|
((PRESCALER) == WWDT_Prescaler_DIV131072) || \
|
|||
|
|
((PRESCALER) == WWDT_Prescaler_DIV262144) || \
|
|||
|
|
((PRESCALER) == WWDT_Prescaler_DIV524288))
|
|||
|
|
#define IS_WWDT_WINDOW_VALUE(VALUE) ((VALUE) <= 0x7F)
|
|||
|
|
#define IS_WWDT_COUNTER(COUNTER) (((COUNTER) >= 0x40) && ((COUNTER) <= 0x7F))
|
|||
|
|
|
|||
|
|
|
|||
|
|
#define WWDT_GET_POV_STATUS(VALUE) {(VALUE) = (FlagStatus)(CW_WWDT->SR);}
|
|||
|
|
#define WWDT_CLR_POV_STATUS() {REGBITS_CLR(CW_WWDT->SR, WWDT_SR_POV_Msk);}
|
|||
|
|
#define WWDT_ENABLE_IT() {REGBITS_SET(CW_WWDT->CR1,WWDT_CR1_IE_Msk);}
|
|||
|
|
#define WWDT_FEED(VALUE) {REGBITS_MODIFY(CW_WWDT->CR0, WWDT_CR0_WCNT_Msk,(VALUE));}
|
|||
|
|
|
|||
|
|
/******************************************************************************
|
|||
|
|
* Global variable definitions (declared in header file with 'extern')
|
|||
|
|
******************************************************************************/
|
|||
|
|
|
|||
|
|
|
|||
|
|
/******************************************************************************
|
|||
|
|
* Global function prototypes
|
|||
|
|
******************************************************************************/
|
|||
|
|
void WWDT_DeInit(void);
|
|||
|
|
void WWDT_Init(WWDT_InitTypeDef* WWDT_InitStruct);
|
|||
|
|
void WWDT_Refresh(uint8_t Counter);
|
|||
|
|
|
|||
|
|
|
|||
|
|
void WWDT_Cmd(void);
|
|||
|
|
void WWDT_SetPrescaler(uint32_t WWDT_Prescaler);
|
|||
|
|
void WWDT_SetWindowValue(uint8_t WindowValue);
|
|||
|
|
uint8_t WWDT_GetCounterValue(void);
|
|||
|
|
uint8_t WWDT_GetWindowValue(void);
|
|||
|
|
void WWDT_EnableIT(void);
|
|||
|
|
FlagStatus WWDT_GetFlagStatus(void);
|
|||
|
|
void WWDT_ClearFlag(void);
|
|||
|
|
|
|||
|
|
|
|||
|
|
#ifdef __cplusplus
|
|||
|
|
}
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
#endif /*__CW32F030_WWDT_H */
|
|||
|
|
/**
|
|||
|
|
* @}
|
|||
|
|
*/
|