1 /*!
2 * ======== GPIO for MSP430x22xx ========
3 * MSP430 General Purpose Input Output Ports
4 */
5 metaonly module GPIO_MSP430x22xx inherits IGPIO {
6 /*!
7 * ======== create ========
8 * Create an instance of this peripheral
9 */
10 create();
11
12 instance:
13 14 15 16 17 18
19
20 /*! Port 1 Output Register */
21 config GpioBits8PxOut_t P1OUT = {
22 Bit0 : BIT0_OFF,
23 Bit1 : BIT1_OFF,
24 Bit2 : BIT2_OFF,
25 Bit3 : BIT3_OFF,
26 Bit4 : BIT4_OFF,
27 Bit5 : BIT5_OFF,
28 Bit6 : BIT6_OFF,
29 Bit7 : BIT7_OFF
30 };
31
32 /*! Port 1 Port Select Register */
33 config GpioBits8PxSel_t P1SEL = {
34 Bit0 : BIT0_OFF,
35 Bit1 : BIT1_OFF,
36 Bit2 : BIT2_OFF,
37 Bit3 : BIT3_OFF,
38 Bit4 : BIT4_OFF,
39 Bit5 : BIT5_OFF,
40 Bit6 : BIT6_OFF,
41 Bit7 : BIT7_OFF
42 };
43
44 /*! Port 1 Direction Register */
45 config GpioBits8PxDir_t P1DIR = {
46 Bit0 : BIT0_OFF,
47 Bit1 : BIT1_OFF,
48 Bit2 : BIT2_OFF,
49 Bit3 : BIT3_OFF,
50 Bit4 : BIT4_OFF,
51 Bit5 : BIT5_OFF,
52 Bit6 : BIT6_OFF,
53 Bit7 : BIT7_OFF
54 };
55
56 /*! Port 1 Resistor Enable Register */
57 config GpioBits8PxRen_t P1REN = {
58 Bit0 : BIT0_OFF,
59 Bit1 : BIT1_OFF,
60 Bit2 : BIT2_OFF,
61 Bit3 : BIT3_OFF,
62 Bit4 : BIT4_OFF,
63 Bit5 : BIT5_OFF,
64 Bit6 : BIT6_OFF,
65 Bit7 : BIT7_OFF
66 };
67
68 /*! Port 1 Interrupt Edge Select Register */
69 config GpioBits8PxIes_t P1IES = {
70 Bit0 : BIT0_OFF,
71 Bit1 : BIT1_OFF,
72 Bit2 : BIT2_OFF,
73 Bit3 : BIT3_OFF,
74 Bit4 : BIT4_OFF,
75 Bit5 : BIT5_OFF,
76 Bit6 : BIT6_OFF,
77 Bit7 : BIT7_OFF
78 };
79
80 /*! Port 1 Interrupt Flag Register */
81 config GpioBits8PxIfg_t P1IFG = {
82 Bit0 : BIT0_OFF,
83 Bit1 : BIT1_OFF,
84 Bit2 : BIT2_OFF,
85 Bit3 : BIT3_OFF,
86 Bit4 : BIT4_OFF,
87 Bit5 : BIT5_OFF,
88 Bit6 : BIT6_OFF,
89 Bit7 : BIT7_OFF
90 };
91
92 /*! Port 1 Interrupt Enable Register */
93 config GpioBits8PxIe_t P1IE = {
94 Bit0 : BIT0_OFF,
95 Bit1 : BIT1_OFF,
96 Bit2 : BIT2_OFF,
97 Bit3 : BIT3_OFF,
98 Bit4 : BIT4_OFF,
99 Bit5 : BIT5_OFF,
100 Bit6 : BIT6_OFF,
101 Bit7 : BIT7_OFF
102 };
103
104 /*! Port 2 Output Register */
105 config GpioBits8PxOut_t P2OUT = {
106 Bit0 : BIT0_OFF,
107 Bit1 : BIT1_OFF,
108 Bit2 : BIT2_OFF,
109 Bit3 : BIT3_OFF,
110 Bit4 : BIT4_OFF,
111 Bit5 : BIT5_OFF,
112 Bit6 : BIT6_OFF,
113 Bit7 : BIT7_OFF
114 };
115
116 /*! Port 2 Port Select Register */
117 config GpioBits8PxSel_t P2SEL = {
118 Bit0 : BIT0_OFF,
119 Bit1 : BIT1_OFF,
120 Bit2 : BIT2_OFF,
121 Bit3 : BIT3_OFF,
122 Bit4 : BIT4_OFF,
123 Bit5 : BIT5_OFF,
124 Bit6 : BIT6,
125 Bit7 : BIT7
126 };
127
128 /*! Port 2 Direction Register */
129 config GpioBits8PxDir_t P2DIR = {
130 Bit0 : BIT0_OFF,
131 Bit1 : BIT1_OFF,
132 Bit2 : BIT2_OFF,
133 Bit3 : BIT3_OFF,
134 Bit4 : BIT4_OFF,
135 Bit5 : BIT5_OFF,
136 Bit6 : BIT6_OFF,
137 Bit7 : BIT7_OFF
138 };
139
140 /*! Port 2 Resistor Enable Register */
141 config GpioBits8PxRen_t P2REN = {
142 Bit0 : BIT0_OFF,
143 Bit1 : BIT1_OFF,
144 Bit2 : BIT2_OFF,
145 Bit3 : BIT3_OFF,
146 Bit4 : BIT4_OFF,
147 Bit5 : BIT5_OFF,
148 Bit6 : BIT6_OFF,
149 Bit7 : BIT7_OFF
150 };
151
152 /*! Port 2 Interrupt Edge Select Register */
153 config GpioBits8PxIes_t P2IES = {
154 Bit0 : BIT0_OFF,
155 Bit1 : BIT1_OFF,
156 Bit2 : BIT2_OFF,
157 Bit3 : BIT3_OFF,
158 Bit4 : BIT4_OFF,
159 Bit5 : BIT5_OFF,
160 Bit6 : BIT6_OFF,
161 Bit7 : BIT7_OFF
162 };
163
164 /*! Port 2 Interrupt Flag Register */
165 config GpioBits8PxIfg_t P2IFG = {
166 Bit0 : BIT0_OFF,
167 Bit1 : BIT1_OFF,
168 Bit2 : BIT2_OFF,
169 Bit3 : BIT3_OFF,
170 Bit4 : BIT4_OFF,
171 Bit5 : BIT5_OFF,
172 Bit6 : BIT6_OFF,
173 Bit7 : BIT7_OFF
174 };
175
176 /*! Port 2 Interrupt Enable Register */
177 config GpioBits8PxIe_t P2IE = {
178 Bit0 : BIT0_OFF,
179 Bit1 : BIT1_OFF,
180 Bit2 : BIT2_OFF,
181 Bit3 : BIT3_OFF,
182 Bit4 : BIT4_OFF,
183 Bit5 : BIT5_OFF,
184 Bit6 : BIT6_OFF,
185 Bit7 : BIT7_OFF
186 };
187
188 /*! Port 3 Output Register */
189 config GpioBits8PxOut_t P3OUT = {
190 Bit0 : BIT0_OFF,
191 Bit1 : BIT1_OFF,
192 Bit2 : BIT2_OFF,
193 Bit3 : BIT3_OFF,
194 Bit4 : BIT4_OFF,
195 Bit5 : BIT5_OFF,
196 Bit6 : BIT6_OFF,
197 Bit7 : BIT7_OFF
198 };
199
200 /*! Port 3 Port Select Register */
201 config GpioBits8PxSel_t P3SEL = {
202 Bit0 : BIT0_OFF,
203 Bit1 : BIT1_OFF,
204 Bit2 : BIT2_OFF,
205 Bit3 : BIT3_OFF,
206 Bit4 : BIT4_OFF,
207 Bit5 : BIT5_OFF,
208 Bit6 : BIT6_OFF,
209 Bit7 : BIT7_OFF
210 };
211
212 /*! Port 3 Direction Register */
213 config GpioBits8PxDir_t P3DIR = {
214 Bit0 : BIT0_OFF,
215 Bit1 : BIT1_OFF,
216 Bit2 : BIT2_OFF,
217 Bit3 : BIT3_OFF,
218 Bit4 : BIT4_OFF,
219 Bit5 : BIT5_OFF,
220 Bit6 : BIT6_OFF,
221 Bit7 : BIT7_OFF
222 };
223
224 /*! Port 3 Resistor Enable Register */
225 config GpioBits8PxRen_t P3REN = {
226 Bit0 : BIT0_OFF,
227 Bit1 : BIT1_OFF,
228 Bit2 : BIT2_OFF,
229 Bit3 : BIT3_OFF,
230 Bit4 : BIT4_OFF,
231 Bit5 : BIT5_OFF,
232 Bit6 : BIT6_OFF,
233 Bit7 : BIT7_OFF
234 };
235
236 /*! Port 4 Output Register */
237 config GpioBits8PxOut_t P4OUT = {
238 Bit0 : BIT0_OFF,
239 Bit1 : BIT1_OFF,
240 Bit2 : BIT2_OFF,
241 Bit3 : BIT3_OFF,
242 Bit4 : BIT4_OFF,
243 Bit5 : BIT5_OFF,
244 Bit6 : BIT6_OFF,
245 Bit7 : BIT7_OFF
246 };
247
248 /*! Port 4 Port Select Register */
249 config GpioBits8PxSel_t P4SEL = {
250 Bit0 : BIT0_OFF,
251 Bit1 : BIT1_OFF,
252 Bit2 : BIT2_OFF,
253 Bit3 : BIT3_OFF,
254 Bit4 : BIT4_OFF,
255 Bit5 : BIT5_OFF,
256 Bit6 : BIT6_OFF,
257 Bit7 : BIT7_OFF
258 };
259
260 /*! Port 4 Direction Register */
261 config GpioBits8PxDir_t P4DIR = {
262 Bit0 : BIT0_OFF,
263 Bit1 : BIT1_OFF,
264 Bit2 : BIT2_OFF,
265 Bit3 : BIT3_OFF,
266 Bit4 : BIT4_OFF,
267 Bit5 : BIT5_OFF,
268 Bit6 : BIT6_OFF,
269 Bit7 : BIT7_OFF
270 };
271
272 /*! Port 4 Resistor Enable Register */
273 config GpioBits8PxRen_t P4REN = {
274 Bit0 : BIT0_OFF,
275 Bit1 : BIT1_OFF,
276 Bit2 : BIT2_OFF,
277 Bit3 : BIT3_OFF,
278 Bit4 : BIT4_OFF,
279 Bit5 : BIT5_OFF,
280 Bit6 : BIT6_OFF,
281 Bit7 : BIT7_OFF
282 };
283 }