BLE_TYQ_CH584M/BSP/inc/bsp_iwdg.h

43 lines
1.4 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
* @Author : stark1898y 1658608470@qq.com
* @Date : 2024-12-15 16:13:37
* @LastEditors : stark1898y 1658608470@qq.com
* @LastEditTime : 2025-05-21 13:36:03
* @FilePath : \BLE_TYQ_CH584M\BSP\inc\bsp_iwdg.h
* @Description :
*
* Copyright (c) 2024 by yzy, All Rights Reserved.
*/
#ifndef __BSP_IWDG_H__
#define __BSP_IWDG_H__
#include "CONFIG.h"
#define RB_RLR 0x0FFF // RW, watch-dog counter reload (write protect)
#define RB_PR 0x7000 // PR, prescale (write protect)
#define RB_PVU 0x8000 // RO, register update flag (write protect)
#define RB_COUNT 0xFF0000 // RO, watch-dog down counter
#define RB_STOP_EN 0x20000000 // RW, watch-dog stop enable (write protect)
#define RB_WR_PROTECT 0x40000000 // RO, write protect
#define RB_IWDG_EN 0x80000000 // RO, watch-dog enable
#define IWDG_TIMEOUT_MS (10000)
#define IWDG_FEED_MS (3000)
#define IWIG_FEED_EVENT (0x01 << 0)
void IWDG_Init(uint16_t ms);
// 需要定时调用喂狗
// 在看门狗键寄存器 (R32_IWDG_KR) 中,软件要以一定的间隔写入 0xAAAA重装载计数值这就是喂狗的操作。
// 否则,当计数器为 0 时,看门狗会产生复位。
#define FEED_IWDG() {R32_IWDG_KR=0xAAAA;}
void ShowRestartReason(void);
#endif // !__BSP_IWDG_H__