MINI55_BSP V3.02.004
The Board Support Package for Mini55 Series MCU
Macros | Functions
sys.h File Reference

MINI55 series SYS driver header file. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define ADC_RST   ((0x4<<24) | SYS_IPRST1_ADCRST_Pos )
 
#define ACMP_RST   ((0x4<<24) | SYS_IPRST1_ACMPRST_Pos )
 
#define PWM_RST   ((0x4<<24) | SYS_IPRST1_PWMRST_Pos )
 
#define UART0_RST   ((0x4<<24) | SYS_IPRST1_UART0RST_Pos )
 
#define UART1_RST   ((0x4<<24) | SYS_IPRST1_UART1RST_Pos )
 
#define SPI_RST   ((0x4<<24) | SYS_IPRST1_SPIRST_Pos )
 
#define I2C_RST   ((0x4<<24) | SYS_IPRST1_I2C_RST_Pos )
 
#define TMR1_RST   ((0x4<<24) | SYS_IPRST1_TMR1RST_Pos )
 
#define TMR0_RST   ((0x4<<24) | SYS_IPRST1_TMR0RST_Pos )
 
#define GPIO_RST   ((0x4<<24) | SYS_IPRST1_GPIORST_Pos )
 
#define SYS_BODCTL_BOD_RST_EN   (1UL<<SYS_BODCTL_BODRSTEN_Pos)
 
#define SYS_BODCTL_BOD_INTERRUPT_EN   (0UL<<SYS_BODCTL_BODRSTEN_Pos)
 
#define SYS_BODCTL_BOD_VL_3_0V   ((3UL<<SYS_BODCTL_BODVL1_0_Pos)|(1UL<<SYS_BODCTL_BODVL2_Pos))
 
#define SYS_BODCTL_BOD_VL_2_4V   ((2UL<<SYS_BODCTL_BODVL1_0_Pos)|(1UL<<SYS_BODCTL_BODVL2_Pos))
 
#define SYS_BODCTL_BOD_VL_2_0V   ((1UL<<SYS_BODCTL_BODVL1_0_Pos)|(1UL<<SYS_BODCTL_BODVL2_Pos))
 
#define SYS_BODCTL_BOD_VL_1_7V   ((0UL<<SYS_BODCTL_BODVL1_0_Pos)|(1UL<<SYS_BODCTL_BODVL2_Pos))
 
#define SYS_BODCTL_BOD_VL_4_4V   ((3UL<<SYS_BODCTL_BODVL1_0_Pos)|(0UL<<SYS_BODCTL_BODVL2_Pos))
 
#define SYS_BODCTL_BOD_VL_3_7V   ((2UL<<SYS_BODCTL_BODVL1_0_Pos)|(0UL<<SYS_BODCTL_BODVL2_Pos))
 
#define SYS_BODCTL_BOD_VL_2_7V   ((1UL<<SYS_BODCTL_BODVL1_0_Pos)|(0UL<<SYS_BODCTL_BODVL2_Pos))
 
#define SYS_BODCTL_BOD_VL_2_2V   ((0UL<<SYS_BODCTL_BODVL1_0_Pos)|(0UL<<SYS_BODCTL_BODVL2_Pos))
 
#define SYS_IRCTCTL_TRIM_22_1184M   ((uint32_t)0x00000001)
 
#define SYS_IRCTCTL_LOOP_4CLK   ((uint32_t)0x00000000)
 
#define SYS_IRCTCTL_LOOP_8CLK   ((uint32_t)0x00000010)
 
#define SYS_IRCTCTL_LOOP_16CLK   ((uint32_t)0x00000020)
 
#define SYS_IRCTCTL_LOOP_32CLK   ((uint32_t)0x00000030)
 
#define SYS_IRCTIEN_DISABLE   ((uint32_t)0x00000000)
 
#define SYS_IRCTIEN_FAIL_EN   ((uint32_t)0x00000002)
 
#define SYS_IRCTIEN_32KERR_EN   ((uint32_t)0x00000004)
 
#define SYS_MFP_TYPE_Msk(bit)   (1UL << ((bit) +16))
 
#define SYS_MFP_ALT_Msk(bit)   (1UL << ((bit) + 8))
 
#define SYS_MFP_MFP_Msk(bit)   (1UL << ((bit) ))
 
#define SYS_MFP_P00_GPIO   0x00000000UL
 
#define SYS_MFP_P00_CTS   0x00000100UL
 
#define SYS_MFP_P00_TXD   0x00000101UL
 
#define SYS_MFP_P00_Msk   0x01000101UL
 
#define SYS_MFP_P01_GPIO   0x00000000UL
 
#define SYS_MFP_P01_SPISS   0x00000002UL
 
#define SYS_MFP_P01_RTS   0x00000200UL
 
#define SYS_MFP_P01_RXD   0x00000202UL
 
#define SYS_MFP_P01_Msk   0x02000202UL
 
#define SYS_MFP_P04_GPIO   0x00000000UL
 
#define SYS_MFP_P04_SPISS   0x00001000UL
 
#define SYS_MFP_P04_PWM5   0x00001010UL
 
#define SYS_MFP_P04_Msk   0x00001010UL
 
#define SYS_MFP_P05_GPIO   0x00000000UL
 
#define SYS_MFP_P05_MOSI   0x00002000UL
 
#define SYS_MFP_P05_Msk   0x00002020UL
 
#define SYS_MFP_P06_GPIO   0x00000000UL
 
#define SYS_MFP_P06_MISO   0x00004000UL
 
#define SYS_MFP_P06_Msk   0x00004040UL
 
#define SYS_MFP_P07_GPIO   0x00000000UL
 
#define SYS_MFP_P07_SPICLK   0x00008000UL
 
#define SYS_MFP_P07_Msk   0x00008080UL
 
#define SYS_MFP_P10_GPIO   0x00000000UL
 
#define SYS_MFP_P10_AIN1   0x00000001UL
 
#define SYS_MFP_P10_CPP0   0x00000101UL
 
#define SYS_MFP_P10_Msk   0x00000101UL
 
#define SYS_MFP_P12_GPIO   0x00000000UL
 
#define SYS_MFP_P12_AIN2   0x00000004UL
 
#define SYS_MFP_P12_RXD   0x00000400UL
 
#define SYS_MFP_P12_CPP0   0x00000404UL
 
#define SYS_MFP_P12_Msk   0x00000404UL
 
#define SYS_MFP_P13_GPIO   0x00000000UL
 
#define SYS_MFP_P13_AIN3   0x00000008UL
 
#define SYS_MFP_P13_TXD   0x00000800UL
 
#define SYS_MFP_P13_CPP0   0x00000808UL
 
#define SYS_MFP_P13_Msk   0x00000808UL
 
#define SYS_MFP_P14_GPIO   0x00000000UL
 
#define SYS_MFP_P14_AIN4   0x00000010UL
 
#define SYS_MFP_P14_CPN0   0x00001010UL
 
#define SYS_MFP_P14_Msk   0x00001010UL
 
#define SYS_MFP_P15_GPIO   0x00000000UL
 
#define SYS_MFP_P15_AIN5   0x00000020UL
 
#define SYS_MFP_P15_CPP0   0x00002020UL
 
#define SYS_MFP_P15_Msk   0x00002020UL
 
#define SYS_MFP_P22_GPIO   0x00000000UL
 
#define SYS_MFP_P22_PWM0   0x00000400UL
 
#define SYS_MFP_P22_Msk   0x00000404UL
 
#define SYS_MFP_P23_GPIO   0x00000000UL
 
#define SYS_MFP_P23_PWM1   0x00000800UL
 
#define SYS_MFP_P23_Msk   0x00000808UL
 
#define SYS_MFP_P24_GPIO   0x00000000UL
 
#define SYS_MFP_P24_PWM2   0x00001000UL
 
#define SYS_MFP_P24_RX1   0x00001010UL
 
#define SYS_MFP_P24_Msk   0x00001010UL
 
#define SYS_MFP_P25_GPIO   0x00000000UL
 
#define SYS_MFP_P25_PWM3   0x00002000UL
 
#define SYS_MFP_P25_TX1   0x00002020UL
 
#define SYS_MFP_P25_Msk   0x00002020UL
 
#define SYS_MFP_P26_GPIO   0x00000000UL
 
#define SYS_MFP_P26_PWM4   0x00004000UL
 
#define SYS_MFP_P26_CPO1   0x00004040UL
 
#define SYS_MFP_P26_Msk   0x00004040UL
 
#define SYS_MFP_P30_GPIO   0x00000000UL
 
#define SYS_MFP_P30_CPN1   0x00000100UL
 
#define SYS_MFP_P30_AIN6   0x00000101UL
 
#define SYS_MFP_P30_Msk   0x00000101UL
 
#define SYS_MFP_P31_GPIO   0x00000000UL
 
#define SYS_MFP_P31_CPP1   0x00000200UL
 
#define SYS_MFP_P31_AIN7   0x00000202UL
 
#define SYS_MFP_P31_Msk   0x00000202UL
 
#define SYS_MFP_P32_GPIO   0x00000000UL
 
#define SYS_MFP_P32_INT0   0x00000004UL
 
#define SYS_MFP_P32_T0EX   0x00000400UL
 
#define SYS_MFP_P32_STADC   0x00000404UL
 
#define SYS_MFP_P32_Msk   0x00000404UL
 
#define SYS_MFP_P34_GPIO   0x00000000UL
 
#define SYS_MFP_P34_T0   0x00000010UL
 
#define SYS_MFP_P34_SDA   0x00001000UL
 
#define SYS_MFP_P34_CPP1   0x00001010UL
 
#define SYS_MFP_P34_Msk   0x00001010UL
 
#define SYS_MFP_P35_GPIO   0x00000000UL
 
#define SYS_MFP_P35_T1   0x00000020UL
 
#define SYS_MFP_P35_SCL   0x00002000UL
 
#define SYS_MFP_P35_CPP1   0x00002020UL
 
#define SYS_MFP_P35_Msk   0x00002020UL
 
#define SYS_MFP_P36_GPIO   0x00000000UL
 
#define SYS_MFP_P36_T1EX   0x00000040UL
 
#define SYS_MFP_P36_CKO   0x00004000UL
 
#define SYS_MFP_P36_CPO0   0x00004040UL
 
#define SYS_MFP_P36_Msk   0x00004040UL
 
#define SYS_MFP_P46_GPIO   0x00000000UL
 
#define SYS_MFP_P46_ICE_CLK   0x00000040UL
 
#define SYS_MFP_P46_Msk   0x00004040UL
 
#define SYS_MFP_P47_GPIO   0x00000000UL
 
#define SYS_MFP_P47_ICE_DAT   0x00000080UL
 
#define SYS_MFP_P47_Msk   0x00008080UL
 
#define SYS_MFP_P50_GPIO   0x00000000UL
 
#define SYS_MFP_P50_XTAL1   0x00000001UL
 
#define SYS_MFP_P50_Msk   0x00000101UL
 
#define SYS_MFP_P51_GPIO   0x00000000UL
 
#define SYS_MFP_P51_XTAL2   0x00000002UL
 
#define SYS_MFP_P51_Msk   0x00000202UL
 
#define SYS_MFP_P52_GPIO   0x00000000UL
 
#define SYS_MFP_P52_INT1   0x00000004UL
 
#define SYS_MFP_P52_Msk   0x00000404UL
 
#define SYS_MFP_P53_GPIO   0x00000000UL
 
#define SYS_MFP_P53_AIN0   0x00000008UL
 
#define SYS_MFP_P53_Msk   0x00000808UL
 
#define SYS_MFP_P54_GPIO   0x00000000UL
 
#define SYS_MFP_P54_Msk   0x00001010UL
 
#define SYS_MFP_P55_GPIO   0x00000000UL
 
#define SYS_MFP_P55_Msk   0x00002020UL
 
#define SYS_CLEAR_BOD_INT_FLAG()   (SYS->BODCTL |= SYS_BODCTL_BODIF_Msk)
 Clear Brown-out detector interrupt flag. More...
 
#define SYS_CLEAR_BOD_LPM()   (SYS->BODCTL &= ~SYS_BODCTL_BODLPM_Msk)
 Set Brown-out detector function to normal mode. More...
 
#define SYS_DISABLE_BOD()   (SYS->BODCTL = (SYS->BODCTL &~(SYS_BODCTL_BODVL1_0_Msk|SYS_BODCTL_BODEN_Msk))|SYS_BODCTL_BODVL1_0_Msk)
 Disable Brown-out detector function. More...
 
#define SYS_ENABLE_BOD()   (SYS->BODCTL = (SYS->BODCTL | SYS_BODCTL_BODEN_Msk))
 Enable Brown-out detector function. More...
 
#define SYS_GET_BOD_INT_FLAG()   (SYS->BODCTL & SYS_BODCTL_BODIF_Msk)
 Get Brown-out detector interrupt flag. More...
 
#define SYS_GET_BOD_OUTPUT()   (SYS->BODCTL & SYS_BODCTL_BODOUT_Msk)
 Get Brown-out detector status. More...
 
#define SYS_DISABLE_BOD_RST()   (SYS->BODCTL &= ~SYS_BODCTL_BODRSTEN_Msk)
 Enable Brown-out detector interrupt function. More...
 
#define SYS_ENABLE_BOD_RST()   (SYS->BODCTL |= SYS_BODCTL_BODRSTEN_Msk)
 Enable Brown-out detector reset function. More...
 
#define SYS_SET_BOD_LPM()   (SYS->BODCTL |= SYS_BODCTL_BODLPM_Msk)
 Set Brown-out detector function low power mode. More...
 
#define SYS_SET_BOD_LEVEL(u32Level)   (SYS->BODCTL = (SYS->BODCTL & ~(SYS_BODCTL_BODVL1_0_Msk|SYS_BODCTL_BODVL2_Msk)) | (u32Level))
 Set Brown-out detector voltage level. More...
 
#define SYS_IS_BOD_RST()   (SYS->RSTSTS & SYS_RSTSTS_BODRF_Msk)
 Get reset source is from Brown-out detector reset. More...
 
#define SYS_IS_CPU_RST()   (SYS->RSTSTS & SYS_RSTSTS_CPURF_Msk)
 Get reset source is from CPU reset. More...
 
#define SYS_IS_POR_RST()   (SYS->RSTSTS & SYS_RSTSTS_PORF_Msk)
 Get reset source is from Power-on Reset. More...
 
#define SYS_IS_RSTPIN_RST()   (SYS->RSTSTS & SYS_RSTSTS_PINRF_Msk)
 Get reset source is from reset pin reset. More...
 
#define SYS_IS_SYSTEM_RST()   (SYS->RSTSTS & SYS_RSTSTS_SYSRF_Msk)
 Get reset source is from system reset. More...
 
#define SYS_IS_WDT_RST()   (SYS->RSTSTS & SYS_RSTSTS_WDTRF_Msk)
 Get reset source is from window watch dog reset. More...
 
#define SYS_DISABLE_POR()   (SYS->PORCTL = 0x5AA5)
 Disable Power-on Reset function. More...
 
#define SYS_ENABLE_POR()   (SYS->PORCTL = 0)
 Enable Power-on Reset function. More...
 
#define SYS_CLEAR_RST_SOURCE(u32RstSrc)   ((SYS->RSTSTS) = (u32RstSrc) )
 Clear reset source flag. More...
 
#define SYS_GET_IRCTRIM_INT_FLAG()   (SYS->IRCTISTS)
 Get HIRC trim status. More...
 
#define SYS_CLEAR_IRCTRIM_INT_FLAG(u32IRCTrimFlg)   (SYS->IRCTISTS = u32IRCTrimFlg )
 Clear HIRC trim flag. More...
 

Functions

__STATIC_INLINE void SYS_UnlockReg (void)
 Disable register write-protection function. More...
 
__STATIC_INLINE void SYS_LockReg (void)
 Enable register write-protection function. More...
 
void SYS_ClearResetSrc (uint32_t u32Src)
 This function clear the selected system reset source. More...
 
uint32_t SYS_GetBODStatus (void)
 This function get Brown-out detector output status. More...
 
uint32_t SYS_GetResetSrc (void)
 This function get the system reset source register value. More...
 
uint32_t SYS_IsRegLocked (void)
 This function check register write-protection bit setting. More...
 
uint32_t SYS_ReadPDID (void)
 This function get product ID. More...
 
void SYS_ResetChip (void)
 This function reset chip. More...
 
void SYS_ResetCPU (void)
 This function reset CPU. More...
 
void SYS_ResetModule (uint32_t u32ModuleIndex)
 This function reset selected modules. More...
 
void SYS_EnableBOD (int32_t i32Mode, uint32_t u32BODLevel)
 This function configure BOD function. Configure BOD reset or interrupt mode and set Brown-out voltage level. Enable Brown-out function. More...
 
void SYS_DisableBOD (void)
 This function disable BOD function. More...
 
void SYS_EnableIRCTrim (uint32_t u32TrimSel, uint32_t u32TrimEnInt)
 This function enable HIRC trim function. More...
 
void SYS_DisableIRCTrim (void)
 This function disable HIRC trim function. More...
 

Detailed Description

MINI55 series SYS driver header file.

Version
V1.00
Revision
7
Date
15/07/09 8:42a
Note
SPDX-License-Identifier: Apache-2.0 Copyright (C) 2014 Nuvoton Technology Corp. All rights reserved.

Definition in file sys.h.