12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- #ifndef __CH57x_SYS_H__
- #define __CH57x_SYS_H__
- #ifdef __cplusplus
- extern "C" {
- #endif
- #include "CH579SFR.h"
- #include "core_cm0.h"
- /**
- * @brief rtc interrupt event define
- */
- typedef enum
- {
- RST_STATUS_SW = 0, // 软件复位
- RST_STATUS_RPOR, // 上电复位
- RST_STATUS_WTR, // 看门狗超时复位
- RST_STATUS_MR, // 外部手动复位
- RST_STATUS_LRM0, // 唤醒复位-软复位引起
- RST_STATUS_GPWSM, // 下电模式唤醒复位
- RST_STATUS_LRM1, // 唤醒复位-看门狗引起
- RST_STATUS_LRM2, // 唤醒复位-手动复位引起
- }SYS_ResetStaTypeDef;
- /**
- * @brief rtc interrupt event define
- */
- typedef enum
- {
- INFO_ROM_READ = 0, // FlashROM 代码和数据区 是否可读
- INFO_RESET_EN = 2, // RST#外部手动复位输入功能是否开启
- INFO_BOOT_EN, // 系统引导程序 BootLoader 是否开启
- INFO_DEBUG_EN, // 系统仿真调试接口是否开启
- INFO_LOADER, // 当前系统是否处于Bootloader 区
- STA_SAFEACC_ACT, // 当前系统是否处于安全访问状态,否则RWA属性区域不可访问
- }SYS_InfoStaTypeDef;
- #define SYS_GetChipID() R8_CHIP_ID /* 获取芯片ID类,一般为固定值 */
- #define SYS_GetAccessID() R8_SAFE_ACCESS_ID /* 获取安全访问ID,一般为固定值 */
- UINT8 SYS_GetInfoSta( SYS_InfoStaTypeDef i ); /* 获取当前系统信息状态 */
- // refer to SYS_ResetStaTypeDef
- #define SYS_GetLastResetSta() (R8_RESET_STATUS&RB_RESET_FLAG) /* 获取系统上次复位状态 */
- void SYS_ResetExecute( void ); /* 执行系统软件复位 */
- #define SYS_ResetKeepBuf( d ) (R8_GLOB_RESET_KEEP = d) /* 不受手动复位、 软件复位、 看门狗复位或者普通唤醒复位的影响 */
- void SYS_DisableAllIrq( PUINT32 pirqv); /* 关闭所有中断,并保留当前中断值 */
- void SYS_RecoverIrq( UINT32 irq_status ); /* 恢复之前关闭的中断值 */
- UINT32 SYS_GetSysTickCnt( void ); /* 获取当前系统(SYSTICK)计数值 */
- #define WWDG_SetCounter( c ) (R8_WDOG_COUNT = c) /* 加载看门狗计数初值,递增型 */
- void WWDG_ITCfg( UINT8 s ); /* 看门狗溢出中断使能 */
- void WWDG_ResetCfg( UINT8 s ); /* 看门狗溢出复位使能 */
- #define WWDG_GetFlowFlag() (R8_RST_WDOG_CTRL&RB_WDOG_INT_FLAG) /* 获取当前看门狗定时器溢出标志 */
- void WWDG_ClearFlag(void); /* 清除看门狗中断标志,重新加载计数值也可清除 */
- void mDelayuS( UINT16 t ); /* uS 延时 */
- void mDelaymS( UINT16 t ); /* mS 延时 */
- #ifdef __cplusplus
- }
- #endif
- #endif // __CH57x_SYS_H__
|