forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-05-11 267016d6cf472dd4c8d2a66dc9ed800b55997fea
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/**
  ******************************************************************************
  * @file    fm33a0xxev_iwdt.h
  * @author  FM33A0XXEV Application Team
  * @version V1.0.0
  * @date    16-April-2020
  * @brief   This file contains all the functions prototypes for the IWDT firmware library.  
  ******************************************************************************
  */
  
/* Define to prevent recursive inclusion -------------------------------------*/
 
#ifndef __FM33A0XXEV_IWDT_H
#define __FM33A0XXEV_IWDT_H
 
 
#ifdef __cplusplus
 extern "C" {
#endif
 
/* Includes ------------------------------------------------------------------*/
 
#include "FM33A0XXEV.h" 
#define IWDT_SERV_IWDTSERV_KEY  0x12345A5AU
#define    IWDT_SERV_IWDTSERV_Pos    0    /* IWDTÆô¶¯ºó£¬Èí¼þÏò´ËµØÖ·Ð´Èë0x1234_5A5AʱÇå¹· */
#define    IWDT_SERV_IWDTSERV_Msk    (0xffffffffU << IWDT_SERV_IWDTSERV_Pos)
 
#define    IWDT_CFGR_IWDTOVP_Pos    0    /* IWDTÒç³öÖÜÆÚÉèÖÃ
x00£º125ms
x01£º500ms
x10£º2s
x11£º8s
˵Ã÷£ºµ±bit2Ϊ0ʱ£¬ÐÝÃߺóÈÔʹÓöÌÖÜÆÚ£¬¶øbit2Ϊ1ʱ£¬ÐÝÃߺó×Ô¶¯Ê¹ÓÃ4096s£»·ÇÐÝÃß״̬ϽöÖ§³Ö125ms/500ms/2s/8sËÄÖÖÖÜÆÚ¡£ */
#define    IWDT_CFGR_IWDTOVP_Msk    (0x7U << IWDT_CFGR_IWDTOVP_Pos)
#define IWDT_IWDTOVP_125MS    (0x0U << IWDT_CFGR_IWDTOVP_Pos)
#define IWDT_IWDTOVP_500MS    (0x1U << IWDT_CFGR_IWDTOVP_Pos)
#define IWDT_IWDTOVP_2S       (0x2U << IWDT_CFGR_IWDTOVP_Pos)
#define IWDT_IWDTOVP_8S      (0x3U << IWDT_CFGR_IWDTOVP_Pos)
 
#define IWDT_IWDTOVP_4096S    (0x4U << IWDT_CFGR_IWDTOVP_Pos)
 
#define    IWDT_CNTR_IWDTCNT_Pos    0    /* IWDTµ±Ç°¼ÆÊýÖµ */
#define    IWDT_CNTR_IWDTCNT_Msk    (0xfffffU << IWDT_CNTR_IWDTCNT_Pos)
//Macro_End
 
/* Exported functions --------------------------------------------------------*/ 
extern void IWDT_Deinit(void);
 
/* IWDTÆô¶¯ºó£¬Èí¼þÏò´ËµØÖ·Ð´Èë0x1234_5A5AʱÇå¹· Ïà¹Øº¯Êý */
extern void IWDT_SERV_IWDTSERV_Set(uint32_t SetValue);
 
/* IWDTÒç³öÖÜÆÚÉèÖÃ
x00£º125ms
x01£º500ms
x10£º2s
x11£º8s
˵Ã÷£ºµ±bit2Ϊ0ʱ£¬ÐÝÃߺóÈÔʹÓöÌÖÜÆÚ£¬¶øbit2Ϊ1ʱ£¬ÐÝÃߺó×Ô¶¯Ê¹ÓÃ4096s£»·ÇÐÝÃß״̬ϽöÖ§³Ö125ms/500ms/2s/8sËÄÖÖÖÜÆÚ¡£ Ïà¹Øº¯Êý */
extern void IWDT_CFGR_Write(uint32_t SetValue);
extern uint32_t IWDT_CFGR_Read(void);
 
/* IWDTµ±Ç°¼ÆÊýÖµ Ïà¹Øº¯Êý */
extern uint32_t IWDT_CNTR_IWDTCNT_Get(void);
//Announce_End
#ifdef __cplusplus
}
#endif
 
#endif /* __FM33A0XXEV_IWDT_H */