mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Committer:
AnnaBridge
Date:
Mon Oct 02 15:33:19 2017 +0100
Revision:
174:b96e65c34a4d
This updates the lib to the mbed lib v 152

Who changed what in which revision?

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