wdtCtrl.h

Go to the documentation of this file.
00001 /****************************************************************************/
00018 #ifndef _HALWDTCTRL_H
00019 #define _HALWDTCTRL_H
00020 
00021 /******************************************************************************
00022                    Includes section
00023 ******************************************************************************/
00024 #include <halWdt.h>
00025 
00026 /******************************************************************************
00027                    Types section
00028 ******************************************************************************/
00029 // \cond
00030 // an interval before WDT will expire
00031 #if defined(AT91SAM7X256)
00032   typedef enum
00033   {
00034     WDT_INTERVAL_4    = 0xFFE,   // 4 ms
00035     WDT_INTERVAL_16   = 0xFFB,   // 16 ms
00036     WDT_INTERVAL_32   = 0xFF9,   // 32 ms
00037     WDT_INTERVAL_64   = 0xFEF,   // 64 ms
00038     WDT_INTERVAL_125  = 0xFDF,   // 125 ms
00039     WDT_INTERVAL_250  = 0xFBF,   // 250 ms
00040     WDT_INTERVAL_500  = 0xF7F,   // 500 ms
00041     WDT_INTERVAL_1000 = 0xEFF,   // 1 second
00042     WDT_INTERVAL_2000 = 0xDFF,   // 2 seconds
00043     WDT_INTERVAL_4000 = 0xBFF,   // 4 seconds
00044     WDT_INTERVAL_8000 = 0x7FF    // 8 seconds
00045   } HAL_WdtInterval_t;
00046 #elif defined(ATMEGA1281) || defined(ATMEGA2561) || defined(ATMEGA1284) || defined(AT90USB1287)
00047   typedef enum
00048   {
00049     WDT_INTERVAL_16   = 0x00,    // 16 ms
00050     WDT_INTERVAL_32   = 0x01,    // 32 ms
00051     WDT_INTERVAL_64   = 0x02,    // 64 ms
00052     WDT_INTERVAL_125  = 0x03,    // 125 ms
00053     WDT_INTERVAL_250  = 0x04,    // 250 ms
00054     WDT_INTERVAL_500  = 0x05,    // 500 ms
00055     WDT_INTERVAL_1000 = 0x06,    // 1 second
00056     WDT_INTERVAL_2000 = 0x07,    // 2 seconds
00057     WDT_INTERVAL_4000 = 0x20,    // 4 seconds
00058     WDT_INTERVAL_8000 = 0x21     // 8 seconds
00059   }HAL_WdtInterval_t;
00060 #endif
00061 // \endcond
00062 
00063 /******************************************************************************
00064                    Prototypes section
00065 ******************************************************************************/
00066 /***************************************************************************/
00082 void HAL_StartWdt(HAL_WdtInterval_t interval);
00083 
00084 /***************************************************************************/
00090 void HAL_RegisterWdtCallback(void (*wdtCallback)());
00091 
00092 /******************************************************************************
00093                    Inline static functions section
00094 ******************************************************************************/
00095 #if defined(AT91SAM7X256)
00096 /**************************************************************************/
00099 INLINE void HAL_ResetWdt(void)
00100 {
00101   halResetWdt();
00102 }
00103 
00104 #elif defined(ATMEGA1281) || defined(ATMEGA2561) || defined(ATMEGA1284) || defined(AT90USB1287)
00105 /*******************************************************************/
00108 #define HAL_StopWdt() wdt_disable()
00109 
00110 /*******************************************************************/
00113 #define HAL_ResetWdt() wdt_reset()
00114 #endif
00115 
00116 #endif /*_HALWDTCTRL_H*/
00117 
00118 // eof wdtCtrl.h

Generated on Mon Feb 16 17:53:40 2009 for BitCloud Stack Documentation by  doxygen 1.5.1-p1