Electricity/FWLIB/include/ENS1_WATCHDOG.h

44 lines
1.3 KiB
C
Raw Permalink Normal View History

/*
*Copyright ,2023 , NANOCHAP
*File name: ENS1_WATCHDOG.h
*Author:
*Version: V1.0
*Date: 2023-11-
*Description:
*Function List:
History:
1.V1.0
Date:
Author:
Modification: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
#ifndef ENS1_WATCHDOG_H
#define ENS1_WATCHDOG_H
#include "CMSDK_CM0.h"
#include "ENS1_CLOCK.h"
#include "my_header.h"
/*
1<EFBFBD><EFBFBD>watchdog<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD>watchdog<EFBFBD>ļĴ<EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD> WDOGLOCK <EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD> 0x1ACCE551
2<EFBFBD><EFBFBD>watchdog<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD> WDOGLOAD = interval(us) * pclk(MHZ)
3<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ã<EFBFBD> WDOGVALUE
4<EFBFBD><EFBFBD>д1<EFBFBD><EFBFBD> WDOGCONTROL <EFBFBD><EFBFBD> INTEN λ <EFBFBD><EFBFBD>ʹ<EFBFBD>ܿ<EFBFBD><EFBFBD>Ź<EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD>жϣ<EFBFBD><EFBFBD><EFBFBD>WDT<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD><EFBFBD>򴥷<EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>
<EFBFBD>ж<EFBFBD>״̬<EFBFBD><EFBFBD>֪ʶͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> WDOGMISλ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> WDOGINTCLR <EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д1<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD>ʱWDOGMIS λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>0 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>RESENλ<EFBFBD><EFBFBD> 0 <EFBFBD><EFBFBD>watchdog<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD>
5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɺ<EFBFBD><EFBFBD><EFBFBD>дһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0x1ACCE551<EFBFBD><EFBFBD><EFBFBD><EFBFBD>WDOGLOCK<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD>
6<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WDT<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵû<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0ʱ WDT <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> WDOGLOAD<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD>
*/
typedef enum{UNLOCK = 0,LOCK=1}WdogLockState;
extern void WatchDogLoad(uint32_t loadvalue_us);
extern uint32_t Read_WDOGVALUE(void);
extern void WatchDog_Control(FunctionalState newstate);
extern void WatchDog_IntClear(void);
extern uint8_t WatchDog_LOCK_RegSet(WdogLockState newstate);
#endif