1 2 3 4 5 6 7 8 9 10 11
12 /*!
13 * ======== IE1 ========
14 * MSP430 Interrupt Enable Register 1
15 */
16 metaonly module IE1 inherits xdc.platform.IPeripheral {
17
18 enum NMIIE_t {
19 NMIIE_OFF = 0x00, /*! Interrupt not enabled */
20 NMIIE = 0x10 /*! Interrupt enabled */
21 };
22
23 enum WDTIE_t {
24 WDTIE_OFF = 0x00, /*! Interrupt not enabled */
25 WDTIE = 0x01 /*! Interrupt enabled */
26 };
27
28 enum OFIE_t {
29 OFIE_OFF = 0x00, /*! Interrupt not enabled */
30 OFIE = 0x02 /*! Interrupt enabled */
31 };
32
33 enum ACCVIE_t {
34 ACCVIE_OFF = 0x00, /*! Interrupt not enabled */
35 ACCVIE = 0x20 /*! Interrupt enabled */
36 };
37
38 enum NMIIFG_t {
39 NMIIFG_OFF = 0x00, /*! No interrupt pending */
40 NMIIFG = 0x10 /*! Interrupt pending */
41 };
42
43 enum WDTIFG_t {
44 WDTIFG_OFF = 0x00, /*! No interrupt pending */
45 WDTIFG = 0x01 /*! Interrupt pending */
46 };
47
48 enum OFIFG_t {
49 OFIFG_OFF = 0x00, /*! No interrupt pending */
50 OFIFG = 0x02 /*! Interrupt pending */
51 };
52
53 enum ACCVIFG_t {
54 ACCVIFG_OFF = 0x00, /*! No interrupt pending */
55 ACCVIFG = 0x20 /*! Interrupt pending */
56 };
57
58
59 struct IE1_t {
60 ACCVIE_t ACCVIE; /*! Flash memory access violation interrupt
61 * enable. This bit enables the ACCVIFG interrupt.
62 * 0 Interrupt disabled
63 * 1 Interrupt enabled */
64 NMIIE_t NMIIE; /*! NMI interrupt enable. This bit enables
65 *the NMI interrupt.
66 * 0 Interrupt disabled
67 * 1 Interrupt enabled */
68 OFIE_t OFIE; /*! Oscillator fault flag interrupt enable
69 *This bit enables the OFIFG interrupt.
70 * 0 Interrupt disabled
71 * 1 Interrupt enabled */
72 WDTIE_t WDTIE; /*! Watchdog timer+ interrupt enable. This
73 *bit enables the WDTIFG interrupt for
74 *interval timer mode. It is not necessary
75 *to set this bit for watchdog mode.
76 * 0 Interrupt disabled
77 * 1 Interrupt enabled */
78 }
79
80
81 struct IFG1_t {
82 ACCVIFG_t ACCVIFG; /*! Flash memory access violation interrupt
83 * flag.
84 * 0 No interrupt pending
85 * 1 Interrupt pending */
86 NMIIFG_t NMIIFG; /*! NMI interrupt flag.
87 * 0 No interrupt pending
88 * 1 Interrupt pending */
89 OFIFG_t OFIFG; /*! Oscillator fault interrupt flag
90 * 0 No interrupt pending
91 * 1 Interrupt pending */
92 WDTIFG_t WDTIFG; /*! Watchdog timer+ interrupt flag.
93 * 0 No interrupt pending
94 * 1 Interrupt pending */
95 }
96
97 /*!
98 * ======== ForceSetDefaultRegister_t ========
99 * Force Set Default Register
100 *
101 * Type to store if each register needs to be forced initialized
102 * even if the register is in default state.
103 *
104 * @see #ForceSetDefaultRegister_t
105 */
106 struct ForceSetDefaultRegister_t {
107 String register;
108 Bool regForceSet;
109 }
110
111 instance:
112 /*! IE1, Interrupt Enable Register 1 */
113 config IE1_t IE1 = {
114 ACCVIE : ACCVIE_OFF,
115 NMIIE : NMIIE_OFF,
116 OFIE : OFIE_OFF,
117 WDTIE : WDTIE_OFF
118 };
119
120 /*! IFG1, Interrupt Flag Register 1 */
121 config IFG1_t IFG1 = {
122 ACCVIFG : ACCVIFG_OFF,
123 NMIIFG : NMIIFG_OFF,
124 OFIFG : OFIFG_OFF,
125 WDTIFG : WDTIFG_OFF
126 };
127
128 /*!
129 * ======== getWDTIE ========
130 * Gets WDTIE bit
131 *
132 * @see #getWDTIE
133 */
134 Bool getWDTIE();
135
136 /*!
137 * ======== setWDTIE ========
138 * Sets WDTIE bit
139 *
140 * @see #setWDTIE
141 */
142 Bool setWDTIE(Bool set);
143
144 /*!
145 * ======== getOFIE ========
146 * Gets OFIE bit
147 *
148 * @see #getOFIE
149 */
150 Bool getOFIE();
151
152 /*!
153 * ======== setOFIE ========
154 * Sets OFIE bit
155 *
156 * @see #setOFIE
157 */
158 Bool setOFIE(Bool set);
159
160 /*!
161 * ======== getNMIIE ========
162 * Gets NMIIE bit
163 *
164 * @see #getNMIIE
165 */
166 Bool getNMIIE();
167
168 /*!
169 * ======== setNMIIE ========
170 * Sets NMIIE bit
171 *
172 * @see #setNMIIE
173 */
174 Bool setNMIIE(Bool set);
175
176 /*!
177 * ======== getACCVIE ========
178 * Gets ACCVIE bit
179 *
180 * @see #getACCVIE
181 */
182 Bool getACCVIE();
183
184 /*!
185 * ======== setACCVIE ========
186 * Sets ACCVIE bit
187 *
188 * @see #setACCVIE
189 */
190 Bool setACCVIE(Bool set);
191
192 /*! Determine if each Register needs to be forced set or not */
193 readonly config ForceSetDefaultRegister_t forceSetDefaultRegister[] =
194 [
195 { register : "IE1" , regForceSet : false },
196 { register : "IFG1" , regForceSet : false },
197 ];
198 }