Johannes Stratmann / mbed-dev

Fork of mbed-dev by mbed official

Committer:
JojoS
Date:
Sat Sep 10 15:32:04 2016 +0000
Revision:
147:ba84b7dc41a7
Parent:
144:ef7eb2e8f9f7
added prescaler for 16 bit timers (solution as in LPC11xx), default prescaler 31 for max 28 ms period time

Who changed what in which revision?

UserRevisionLine numberNew contents of line
<> 144:ef7eb2e8f9f7 1 /**************************************************************************//**
<> 144:ef7eb2e8f9f7 2 * @file wdt.c
<> 144:ef7eb2e8f9f7 3 * @version V1.00
<> 144:ef7eb2e8f9f7 4 * $Revision: 6 $
<> 144:ef7eb2e8f9f7 5 * $Date: 14/10/02 7:19p $
<> 144:ef7eb2e8f9f7 6 * @brief NUC472/NUC442 WDT driver source 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 #include "NUC472_442.h"
<> 144:ef7eb2e8f9f7 12
<> 144:ef7eb2e8f9f7 13 /** @addtogroup NUC472_442_Device_Driver NUC472/NUC442 Device Driver
<> 144:ef7eb2e8f9f7 14 @{
<> 144:ef7eb2e8f9f7 15 */
<> 144:ef7eb2e8f9f7 16
<> 144:ef7eb2e8f9f7 17 /** @addtogroup NUC472_442_WDT_Driver WDT Driver
<> 144:ef7eb2e8f9f7 18 @{
<> 144:ef7eb2e8f9f7 19 */
<> 144:ef7eb2e8f9f7 20
<> 144:ef7eb2e8f9f7 21
<> 144:ef7eb2e8f9f7 22 /** @addtogroup NUC472_442_WDT_EXPORTED_FUNCTIONS WDT Exported Functions
<> 144:ef7eb2e8f9f7 23 @{
<> 144:ef7eb2e8f9f7 24 */
<> 144:ef7eb2e8f9f7 25
<> 144:ef7eb2e8f9f7 26 /**
<> 144:ef7eb2e8f9f7 27 * @brief This function make WDT module start counting with different time-out interval
<> 144:ef7eb2e8f9f7 28 * @param[in] u32TimeoutInterval Time-out interval period of WDT module. Valid values are:
<> 144:ef7eb2e8f9f7 29 * - \ref WDT_TIMEOUT_2POW4
<> 144:ef7eb2e8f9f7 30 * - \ref WDT_TIMEOUT_2POW6
<> 144:ef7eb2e8f9f7 31 * - \ref WDT_TIMEOUT_2POW8
<> 144:ef7eb2e8f9f7 32 * - \ref WDT_TIMEOUT_2POW10
<> 144:ef7eb2e8f9f7 33 * - \ref WDT_TIMEOUT_2POW12
<> 144:ef7eb2e8f9f7 34 * - \ref WDT_TIMEOUT_2POW14
<> 144:ef7eb2e8f9f7 35 * - \ref WDT_TIMEOUT_2POW16
<> 144:ef7eb2e8f9f7 36 * - \ref WDT_TIMEOUT_2POW18
<> 144:ef7eb2e8f9f7 37 * @param[in] u32ResetDelay Reset delay period while WDT time-out happened. Valid values are:
<> 144:ef7eb2e8f9f7 38 * - \ref WDT_RESET_DELAY_3CLK
<> 144:ef7eb2e8f9f7 39 * - \ref WDT_RESET_DELAY_18CLK
<> 144:ef7eb2e8f9f7 40 * - \ref WDT_RESET_DELAY_130CLK
<> 144:ef7eb2e8f9f7 41 * - \ref WDT_RESET_DELAY_1026CLK
<> 144:ef7eb2e8f9f7 42 * @param[in] u32EnableReset Enable WDT rest system function. Valid values are \ref TRUE and \ref FALSE
<> 144:ef7eb2e8f9f7 43 * @param[in] u32EnableWakeup Enable WDT wake-up system function. Valid values are \ref TRUE and \ref FALSE
<> 144:ef7eb2e8f9f7 44 * @return None
<> 144:ef7eb2e8f9f7 45 */
<> 144:ef7eb2e8f9f7 46 void WDT_Open(uint32_t u32TimeoutInterval,
<> 144:ef7eb2e8f9f7 47 uint32_t u32ResetDelay,
<> 144:ef7eb2e8f9f7 48 uint32_t u32EnableReset,
<> 144:ef7eb2e8f9f7 49 uint32_t u32EnableWakeup)
<> 144:ef7eb2e8f9f7 50 {
<> 144:ef7eb2e8f9f7 51
<> 144:ef7eb2e8f9f7 52 WDT->CTL = u32TimeoutInterval | u32ResetDelay | WDT_CTL_WDTEN_Msk |
<> 144:ef7eb2e8f9f7 53 (u32EnableReset << WDT_CTL_RSTEN_Pos) |
<> 144:ef7eb2e8f9f7 54 (u32EnableWakeup << WDT_CTL_WKEN_Pos);
<> 144:ef7eb2e8f9f7 55 return;
<> 144:ef7eb2e8f9f7 56 }
<> 144:ef7eb2e8f9f7 57
<> 144:ef7eb2e8f9f7 58
<> 144:ef7eb2e8f9f7 59 /*@}*/ /* end of group NUC472_442_WDT_EXPORTED_FUNCTIONS */
<> 144:ef7eb2e8f9f7 60
<> 144:ef7eb2e8f9f7 61 /*@}*/ /* end of group NUC472_442_WDT_Driver */
<> 144:ef7eb2e8f9f7 62
<> 144:ef7eb2e8f9f7 63 /*@}*/ /* end of group NUC472_442_Device_Driver */
<> 144:ef7eb2e8f9f7 64
<> 144:ef7eb2e8f9f7 65 /*** (C) COPYRIGHT 2013 Nuvoton Technology Corp. ***/