]> begriffs open source - cmsis-freertos/blob - Demo/CORTEX_LM3S811_IAR/LuminaryCode/hw_watchdog.h
Initial commit
[cmsis-freertos] / Demo / CORTEX_LM3S811_IAR / LuminaryCode / hw_watchdog.h
1 //*****************************************************************************
2 //
3 // hw_watchdog.h - Macros used when accessing the Watchdog Timer hardware.
4 //
5 // Copyright (c) 2005,2006 Luminary Micro, Inc.  All rights reserved.
6 //
7 // Software License Agreement
8 //
9 // Luminary Micro, Inc. (LMI) is supplying this software for use solely and
10 // exclusively on LMI's Stellaris Family of microcontroller products.
11 //
12 // The software is owned by LMI and/or its suppliers, and is protected under
13 // applicable copyright laws.  All rights are reserved.  Any use in violation
14 // of the foregoing restrictions may subject the user to criminal sanctions
15 // under applicable laws, as well as to civil liability for the breach of the
16 // terms and conditions of this license.
17 //
18 // THIS SOFTWARE IS PROVIDED "AS IS".  NO WARRANTIES, WHETHER EXPRESS, IMPLIED
19 // OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
20 // MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
21 // LMI SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
22 // CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
23 //
24 // This is part of revision 991 of the Stellaris Driver Library.
25 //
26 //*****************************************************************************
27
28 #ifndef __HW_WATCHDOG_H__
29 #define __HW_WATCHDOG_H__
30
31 //*****************************************************************************
32 //
33 // The following define the offsets of the Watchdog Timer registers.
34 //
35 //*****************************************************************************
36 #define WDT_O_LOAD              0x00000000  // Load register
37 #define WDT_O_VALUE             0x00000004  // Current value register
38 #define WDT_O_CTL               0x00000008  // Control register
39 #define WDT_O_ICR               0x0000000C  // Interrupt clear register
40 #define WDT_O_RIS               0x00000010  // Raw interrupt status register
41 #define WDT_O_MIS               0x00000014  // Masked interrupt status register
42 #define WDT_O_TEST              0x00000418  // Test register
43 #define WDT_O_LOCK              0x00000C00  // Lock register
44 #define WDT_O_PeriphID4         0x00000FD0  //
45 #define WDT_O_PeriphID5         0x00000FD4  //
46 #define WDT_O_PeriphID6         0x00000FD8  //
47 #define WDT_O_PeriphID7         0x00000FDC  //
48 #define WDT_O_PeriphID0         0x00000FE0  //
49 #define WDT_O_PeriphID1         0x00000FE4  //
50 #define WDT_O_PeriphID2         0x00000FE8  //
51 #define WDT_O_PeriphID3         0x00000FEC  //
52 #define WDT_O_PCellID0          0x00000FF0  //
53 #define WDT_O_PCellID1          0x00000FF4  //
54 #define WDT_O_PCellID2          0x00000FF8  //
55 #define WDT_O_PCellID3          0x00000FFC  //
56
57 //*****************************************************************************
58 //
59 // The following define the bit fields in the WDT_CTL register.
60 //
61 //*****************************************************************************
62 #define WDT_CTL_RESEN           0x00000002  // Enable reset output
63 #define WDT_CTL_INTEN           0x00000001  // Enable the WDT counter and int
64
65 //*****************************************************************************
66 //
67 // The following define the bit fields in the WDT_ISR, WDT_RIS, and WDT_MIS
68 // registers.
69 //
70 //*****************************************************************************
71 #define WDT_INT_TIMEOUT         0x00000001  // Watchdog timer expired
72
73 //*****************************************************************************
74 //
75 // The following define the bit fields in the WDT_TEST register.
76 //
77 //*****************************************************************************
78 #define WDT_TEST_STALL          0x00000100  // Watchdog stall enable
79 #ifndef DEPRECATED
80 #define WDT_TEST_STALL_EN       0x00000100  // Watchdog stall enable
81 #endif
82
83 //*****************************************************************************
84 //
85 // The following define the bit fields in the WDT_LOCK register.
86 //
87 //*****************************************************************************
88 #define WDT_LOCK_LOCKED         0x00000001  // Watchdog timer is locked
89 #define WDT_LOCK_UNLOCKED       0x00000000  // Watchdog timer is unlocked
90 #define WDT_LOCK_UNLOCK         0x1ACCE551  // Unlocks the watchdog timer
91
92 //*****************************************************************************
93 //
94 // The following define the reset values for the WDT registers.
95 //
96 //*****************************************************************************
97 #define WDT_RV_LOAD             0xFFFFFFFF  // Load register
98 #define WDT_RV_VALUE            0xFFFFFFFF  // Current value register
99 #define WDT_RV_CTL              0x00000000  // Control register
100 #define WDT_RV_RIS              0x00000000  // Raw interrupt status register
101 #define WDT_RV_MIS              0x00000000  // Masked interrupt status register
102 #define WDT_RV_LOCK             0x00000000  // Lock register
103 #define WDT_RV_PeriphID4        0x00000000  //
104 #define WDT_RV_PeriphID5        0x00000000  //
105 #define WDT_RV_PeriphID6        0x00000000  //
106 #define WDT_RV_PeriphID7        0x00000000  //
107 #define WDT_RV_PeriphID0        0x00000005  //
108 #define WDT_RV_PeriphID1        0x00000018  //
109 #define WDT_RV_PeriphID2        0x00000018  //
110 #define WDT_RV_PeriphID3        0x00000001  //
111 #define WDT_RV_PCellID0         0x0000000D  //
112 #define WDT_RV_PCellID1         0x000000F0  //
113 #define WDT_RV_PCellID2         0x00000005  //
114 #define WDT_RV_PCellID3         0x000000B1  //
115
116 #endif // __HW_WATCHDOG_H__