forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-06-19 6e3f1f560d618b37ee1a47fa2b0f682b70c3ef1c
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
/**
  ******************************************************************************
  * @file    fm33a0xxev_iwdt.c
  * @author  FM33A0XXEV Application Team
  * @version V1.0.0
  * @date    16-April-2020
  * @brief   This file provides firmware functions to manage the following 
  *          functionalities of....:
  *
*/
 
/* Includes ------------------------------------------------------------------*/
 
#include "fm33a0xxev_iwdt.h"
 
/** @addtogroup fm33a0xxev_StdPeriph_Driver
  * @{
  */
 
/** @defgroup IWDT 
  * @brief IWDT driver modules
  * @{
  */ 
 
/* IWDTÆô¶¯ºó£¬Èí¼þÏò´ËµØÖ·Ð´Èë0x1234_5A5AʱÇå¹· Ïà¹Øº¯Êý */
void IWDT_SERV_IWDTSERV_Set(uint32_t SetValue)
{
    uint32_t tmpreg;
    tmpreg = IWDT->SERV;
    tmpreg &= ~(IWDT_SERV_IWDTSERV_Msk);
    tmpreg |= (SetValue & IWDT_SERV_IWDTSERV_Msk);
    IWDT->SERV = tmpreg;
}
 
/* IWDTÒç³öÖÜÆÚÉèÖÃ
x00£º125ms
x01£º500ms
x10£º2s
x11£º8s
˵Ã÷£ºµ±bit2Ϊ0ʱ£¬ÐÝÃߺóÈÔʹÓöÌÖÜÆÚ£¬¶øbit2Ϊ1ʱ£¬ÐÝÃߺó×Ô¶¯Ê¹ÓÃ4096s£»·ÇÐÝÃß״̬ϽöÖ§³Ö125ms/500ms/2s/8sËÄÖÖÖÜÆÚ¡£ Ïà¹Øº¯Êý */
void IWDT_CFGR_Write(uint32_t SetValue)
{
    IWDT->CFGR = (SetValue & IWDT_CFGR_IWDTOVP_Msk);
}
 
uint32_t IWDT_CFGR_Read(void)
{
    return (IWDT->CFGR & IWDT_CFGR_IWDTOVP_Msk);
}
 
/* IWDTµ±Ç°¼ÆÊýÖµ Ïà¹Øº¯Êý */
uint32_t IWDT_CNTR_IWDTCNT_Get(void)
{
    return (IWDT->CNTR & IWDT_CNTR_IWDTCNT_Msk);
}
 
 
void IWDT_Deinit(void)
{
    //IWDT->SERV = 0x00000000;
    //IWDT->CFGR = 0x00000001;
    //IWDT->CNTR = ;
}
 
/******END OF FILE****/