mbed library sources. Supersedes mbed-src.

Fork of mbed-dev by mbed official

Committer:
<>
Date:
Fri Oct 28 11:17:30 2016 +0100
Revision:
149:156823d33999
Parent:
targets/cmsis/TARGET_NUVOTON/TARGET_NUC472/StdDriver/nuc472_wwdt.h@144:ef7eb2e8f9f7
This updates the lib to the mbed lib v128

NOTE: This release includes a restructuring of the file and directory locations and thus some
include paths in your code may need updating accordingly.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
<> 144:ef7eb2e8f9f7 1 /**************************************************************************//**
<> 144:ef7eb2e8f9f7 2 * @file wwdt.h
<> 144:ef7eb2e8f9f7 3 * @version V1.00
<> 144:ef7eb2e8f9f7 4 * $Revision: 9 $
<> 144:ef7eb2e8f9f7 5 * $Date: 14/05/29 1:13p $
<> 144:ef7eb2e8f9f7 6 * @brief NUC472/NUC442 WWDT driver header file
<> 144:ef7eb2e8f9f7 7 *
<> 144:ef7eb2e8f9f7 8 * @note
<> 144:ef7eb2e8f9f7 9 * Copyright (C) 2013 Nuvoton Technology Corp. All rights reserved.
<> 144:ef7eb2e8f9f7 10 *****************************************************************************/
<> 144:ef7eb2e8f9f7 11 #ifndef __WWDT_H__
<> 144:ef7eb2e8f9f7 12 #define __WWDT_H__
<> 144:ef7eb2e8f9f7 13
<> 144:ef7eb2e8f9f7 14 #ifdef __cplusplus
<> 144:ef7eb2e8f9f7 15 extern "C"
<> 144:ef7eb2e8f9f7 16 {
<> 144:ef7eb2e8f9f7 17 #endif
<> 144:ef7eb2e8f9f7 18
<> 144:ef7eb2e8f9f7 19
<> 144:ef7eb2e8f9f7 20 /** @addtogroup NUC472_442_Device_Driver NUC472/NUC442 Device Driver
<> 144:ef7eb2e8f9f7 21 @{
<> 144:ef7eb2e8f9f7 22 */
<> 144:ef7eb2e8f9f7 23
<> 144:ef7eb2e8f9f7 24 /** @addtogroup NUC472_442_WWDT_Driver WWDT Driver
<> 144:ef7eb2e8f9f7 25 @{
<> 144:ef7eb2e8f9f7 26 */
<> 144:ef7eb2e8f9f7 27
<> 144:ef7eb2e8f9f7 28 /** @addtogroup NUC472_442_WWDT_EXPORTED_CONSTANTS WWDT Exported Constants
<> 144:ef7eb2e8f9f7 29 @{
<> 144:ef7eb2e8f9f7 30 */
<> 144:ef7eb2e8f9f7 31 #define WWDT_PRESCALER_1 (0UL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 1 \hideinitializer
<> 144:ef7eb2e8f9f7 32 #define WWDT_PRESCALER_2 (1UL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 2 \hideinitializer
<> 144:ef7eb2e8f9f7 33 #define WWDT_PRESCALER_4 (2UL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 4 \hideinitializer
<> 144:ef7eb2e8f9f7 34 #define WWDT_PRESCALER_8 (3UL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 8 \hideinitializer
<> 144:ef7eb2e8f9f7 35 #define WWDT_PRESCALER_16 (4UL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 16 \hideinitializer
<> 144:ef7eb2e8f9f7 36 #define WWDT_PRESCALER_32 (5UL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 32 \hideinitializer
<> 144:ef7eb2e8f9f7 37 #define WWDT_PRESCALER_64 (6UL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 64 \hideinitializer
<> 144:ef7eb2e8f9f7 38 #define WWDT_PRESCALER_128 (7UL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 128 \hideinitializer
<> 144:ef7eb2e8f9f7 39 #define WWDT_PRESCALER_192 (8UL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 192 \hideinitializer
<> 144:ef7eb2e8f9f7 40 #define WWDT_PRESCALER_256 (9UL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 256 \hideinitializer
<> 144:ef7eb2e8f9f7 41 #define WWDT_PRESCALER_384 (0xAUL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 384 \hideinitializer
<> 144:ef7eb2e8f9f7 42 #define WWDT_PRESCALER_512 (0xBUL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 512 \hideinitializer
<> 144:ef7eb2e8f9f7 43 #define WWDT_PRESCALER_768 (0xCUL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 768 \hideinitializer
<> 144:ef7eb2e8f9f7 44 #define WWDT_PRESCALER_1024 (0xDUL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 1024 \hideinitializer
<> 144:ef7eb2e8f9f7 45 #define WWDT_PRESCALER_1536 (0xEUL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 1536 \hideinitializer
<> 144:ef7eb2e8f9f7 46 #define WWDT_PRESCALER_2048 (0xFUL << WWDT_CTL_PSCSEL_Pos) ///< WWDT setting prescaler to 2048 \hideinitializer
<> 144:ef7eb2e8f9f7 47
<> 144:ef7eb2e8f9f7 48 #define WWDT_RELOAD_WORD (0x00005AA5) ///< Fill this value to RLD register to reload WWDT counter \hideinitializer
<> 144:ef7eb2e8f9f7 49 /*@}*/ /* end of group NUC472_442_WWDT_EXPORTED_CONSTANTS */
<> 144:ef7eb2e8f9f7 50
<> 144:ef7eb2e8f9f7 51
<> 144:ef7eb2e8f9f7 52 /** @addtogroup NUC472_442_WWDT_EXPORTED_FUNCTIONS WWDT Exported Functions
<> 144:ef7eb2e8f9f7 53 @{
<> 144:ef7eb2e8f9f7 54 */
<> 144:ef7eb2e8f9f7 55
<> 144:ef7eb2e8f9f7 56 /**
<> 144:ef7eb2e8f9f7 57 * @brief This macro clear WWDT time-out reset system flag.
<> 144:ef7eb2e8f9f7 58 * @param None
<> 144:ef7eb2e8f9f7 59 * @return None
<> 144:ef7eb2e8f9f7 60 * \hideinitializer
<> 144:ef7eb2e8f9f7 61 */
<> 144:ef7eb2e8f9f7 62 #define WWDT_CLEAR_RESET_FLAG() (WWDT->STATUS = WWDT_STATUS_WWDTRF_Msk)
<> 144:ef7eb2e8f9f7 63
<> 144:ef7eb2e8f9f7 64 /**
<> 144:ef7eb2e8f9f7 65 * @brief This macro clear WWDT compare match interrupt flag.
<> 144:ef7eb2e8f9f7 66 * @param None
<> 144:ef7eb2e8f9f7 67 * @return None
<> 144:ef7eb2e8f9f7 68 * \hideinitializer
<> 144:ef7eb2e8f9f7 69 */
<> 144:ef7eb2e8f9f7 70 #define WWDT_CLEAR_INT_FLAG() (WWDT->STATUS = WWDT_STATUS_WWDTIF_Msk)
<> 144:ef7eb2e8f9f7 71
<> 144:ef7eb2e8f9f7 72 /**
<> 144:ef7eb2e8f9f7 73 * @brief This macro is use to get WWDT time-out reset system flag.
<> 144:ef7eb2e8f9f7 74 * @return WWDT reset system or not
<> 144:ef7eb2e8f9f7 75 * @retval 0 WWDT did not cause system reset
<> 144:ef7eb2e8f9f7 76 * @retval 1 WWDT caused system reset
<> 144:ef7eb2e8f9f7 77 * \hideinitializer
<> 144:ef7eb2e8f9f7 78 */
<> 144:ef7eb2e8f9f7 79 #define WWDT_GET_RESET_FLAG() (WWDT->STATUS & WWDT_STATUS_WWDTRF_Msk ? 1 : 0)
<> 144:ef7eb2e8f9f7 80
<> 144:ef7eb2e8f9f7 81 /**
<> 144:ef7eb2e8f9f7 82 * @brief This macro is used to indicate WWDT compare match interrupt flag.
<> 144:ef7eb2e8f9f7 83 * @return WWDT compare match interrupt occurred or not
<> 144:ef7eb2e8f9f7 84 * @retval 0 WWDT compare match interrupt did not occur
<> 144:ef7eb2e8f9f7 85 * @retval 1 WWDT compare match interrupt occurred
<> 144:ef7eb2e8f9f7 86 * \hideinitializer
<> 144:ef7eb2e8f9f7 87 */
<> 144:ef7eb2e8f9f7 88 #define WWDT_GET_INT_FLAG() (WWDT->STATUS & WWDT_STATUS_WWDTIF_Msk ? 1 : 0)
<> 144:ef7eb2e8f9f7 89
<> 144:ef7eb2e8f9f7 90 /**
<> 144:ef7eb2e8f9f7 91 * @brief This macro to reflects current WWDT counter value
<> 144:ef7eb2e8f9f7 92 * @param None
<> 144:ef7eb2e8f9f7 93 * @return Return current WWDT counter value
<> 144:ef7eb2e8f9f7 94 * \hideinitializer
<> 144:ef7eb2e8f9f7 95 */
<> 144:ef7eb2e8f9f7 96 #define WWDT_GET_COUNTER() (WWDT->CNT)
<> 144:ef7eb2e8f9f7 97
<> 144:ef7eb2e8f9f7 98 /**
<> 144:ef7eb2e8f9f7 99 * @brief This macro is used to reload the WWDT counter value to 0x3F.
<> 144:ef7eb2e8f9f7 100 * @param None
<> 144:ef7eb2e8f9f7 101 * @return None
<> 144:ef7eb2e8f9f7 102 * @details After WWDT enabled, application must reload WWDT counter while
<> 144:ef7eb2e8f9f7 103 * current counter is less than compare value and larger than 0,
<> 144:ef7eb2e8f9f7 104 * otherwise WWDT will cause system reset.
<> 144:ef7eb2e8f9f7 105 * \hideinitializer
<> 144:ef7eb2e8f9f7 106 */
<> 144:ef7eb2e8f9f7 107 #define WWDT_RELOAD_COUNTER() (WWDT->RLDCNT = WWDT_RELOAD_WORD)
<> 144:ef7eb2e8f9f7 108
<> 144:ef7eb2e8f9f7 109
<> 144:ef7eb2e8f9f7 110 void WWDT_Open(uint32_t u32PreScale, uint32_t u32CmpValue, uint32_t u32EnableInt);
<> 144:ef7eb2e8f9f7 111
<> 144:ef7eb2e8f9f7 112
<> 144:ef7eb2e8f9f7 113 /*@}*/ /* end of group NUC472_442_WWDT_EXPORTED_FUNCTIONS */
<> 144:ef7eb2e8f9f7 114
<> 144:ef7eb2e8f9f7 115 /*@}*/ /* end of group NUC472_442_WWDT_Driver */
<> 144:ef7eb2e8f9f7 116
<> 144:ef7eb2e8f9f7 117 /*@}*/ /* end of group NUC472_442_Device_Driver */
<> 144:ef7eb2e8f9f7 118
<> 144:ef7eb2e8f9f7 119 #ifdef __cplusplus
<> 144:ef7eb2e8f9f7 120 }
<> 144:ef7eb2e8f9f7 121 #endif
<> 144:ef7eb2e8f9f7 122
<> 144:ef7eb2e8f9f7 123 #endif //__WWDT_H__
<> 144:ef7eb2e8f9f7 124
<> 144:ef7eb2e8f9f7 125 /*** (C) COPYRIGHT 2013 Nuvoton Technology Corp. ***/