1 2 3 4 5 6 7 8 9 10 11
12
13 14 15 16 17 18 19 20 21
22
23 metaonly interface IMSP430F54xx inherits ti.catalog.msp430.IMSP430
24 {
25
26 instance:
27
28 override config string cpuCore = "MSP430X";
29 override config string isa = "430|430X";
30
31 config ti.catalog.msp430.peripherals.special_function.IE1.Instance
32 interruptEnableRegister1;
33 config ti.catalog.msp430.peripherals.timer.Timer0_A5.Instance TA0;
34 config ti.catalog.msp430.peripherals.timer.Timer1_A3.Instance TA1;
35 config ti.catalog.msp430.peripherals.timer.Timer0_B7.Instance TB0;
36 config ti.catalog.msp430.peripherals.watchdog.WDTplus.Instance wdtPlus;
37 config ti.catalog.msp430.peripherals.interrupt.Interrupt_Controller.Instance
38 interruptController;
39
40 /*!
41 * ======== commonMap ========
42 * Memory map elements shared by all MSP430F54xx devices
43 */
44 config xdc.platform.IPlatform.Memory commonMap[string] = [
45
46 ["PERIPHERALS", {
47 comment: "Memory mapped peripherals",
48 name: "PERIPHERALS",
49 base: 0x0,
50 len: 0x1000,
51 space: "io",
52 access: "RW"
53 }],
54
55 ["BSL", {
56 comment: "Bootstrap loader (flash)",
57 name: "BSL",
58 base: 0x1000,
59 len: 0x800,
60 space: "code",
61 access: "RW"
62 }],
63
64 ["INFO", {
65 comment: "Information memory (flash)",
66 name: "INFO",
67 base: 0x1800,
68 len: 0x200,
69 space: "data",
70 access: "RW"
71 }],
72
73 ["INT00", {
74 comment: "Reserved Vector",
75 name: "INT00",
76 base: 0xFF80,
77 len: 0x2,
78 space: "data"
79 }],
80
81 ["INT01", {
82 comment: "Reserved Vector",
83 name: "INT01",
84 base: 0xFF82,
85 len: 0x2,
86 space: "data"
87 }],
88
89 ["INT02", {
90 comment: "Reserved Vector",
91 name: "INT02",
92 base: 0xFF84,
93 len: 0x2,
94 space: "data"
95 }],
96
97 ["INT03", {
98 comment: "Reserved Vector",
99 name: "INT03",
100 base: 0xFF86,
101 len: 0x2,
102 space: "data"
103 }],
104
105 ["INT04", {
106 comment: "Reserved Vector",
107 name: "INT04",
108 base: 0xFF88,
109 len: 0x2,
110 space: "data"
111 }],
112
113 ["INT05", {
114 comment: "Reserved Vector",
115 name: "INT05",
116 base: 0xFF8A,
117 len: 0x2,
118 space: "data"
119 }],
120
121 ["INT06", {
122 comment: "Reserved Vector",
123 name: "INT06",
124 base: 0xFF8C,
125 len: 0x2,
126 space: "data"
127 }],
128
129 ["INT07", {
130 comment: "Reserved Vector",
131 name: "INT07",
132 base: 0xFF8E,
133 len: 0x2,
134 space: "data"
135 }],
136
137 ["INT08", {
138 comment: "Reserved Vector",
139 name: "INT08",
140 base: 0xFF90,
141 len: 0x2,
142 space: "data"
143 }],
144
145 ["INT09", {
146 comment: "Reserved Vector",
147 name: "INT09",
148 base: 0xFF92,
149 len: 0x2,
150 space: "data"
151 }],
152
153 ["INT10", {
154 comment: "Reserved Vector",
155 name: "INT10",
156 base: 0xFF94,
157 len: 0x2,
158 space: "data"
159 }],
160
161 ["INT11", {
162 comment: "Reserved Vector",
163 name: "INT11",
164 base: 0xFF96,
165 len: 0x2,
166 space: "data"
167 }],
168
169 ["INT12", {
170 comment: "Reserved Vector",
171 name: "INT12",
172 base: 0xFF98,
173 len: 0x2,
174 space: "data"
175 }],
176
177 ["INT13", {
178 comment: "Reserved Vector",
179 name: "INT13",
180 base: 0xFF9A,
181 len: 0x2,
182 space: "data"
183 }],
184
185 ["INT14", {
186 comment: "Reserved Vector",
187 name: "INT14",
188 base: 0xFF9C,
189 len: 0x2,
190 space: "data"
191 }],
192
193 ["INT15", {
194 comment: "Reserved Vector",
195 name: "INT15",
196 base: 0xFF9E,
197 len: 0x2,
198 space: "data"
199 }],
200
201 ["INT16", {
202 comment: "Reserved Vector",
203 name: "INT16",
204 base: 0xFFA0,
205 len: 0x2,
206 space: "data"
207 }],
208
209 ["INT17", {
210 comment: "Reserved Vector",
211 name: "INT17",
212 base: 0xFFA2,
213 len: 0x2,
214 space: "data"
215 }],
216
217 ["INT18", {
218 comment: "Reserved Vector",
219 name: "INT18",
220 base: 0xFFA4,
221 len: 0x2,
222 space: "data"
223 }],
224
225 ["INT19", {
226 comment: "Reserved Vector",
227 name: "INT19",
228 base: 0xFFA6,
229 len: 0x2,
230 space: "data"
231 }],
232
233 ["INT20", {
234 comment: "Reserved Vector",
235 name: "INT20",
236 base: 0xFFA8,
237 len: 0x2,
238 space: "data"
239 }],
240
241 ["INT21", {
242 comment: "Reserved Vector",
243 name: "INT21",
244 base: 0xFFAA,
245 len: 0x2,
246 space: "data"
247 }],
248
249 ["INT22", {
250 comment: "Reserved Vector",
251 name: "INT22",
252 base: 0xFFAC,
253 len: 0x2,
254 space: "data"
255 }],
256
257 ["INT23", {
258 comment: "Reserved Vector",
259 name: "INT23",
260 base: 0xFFAE,
261 len: 0x2,
262 space: "data"
263 }],
264
265 ["INT24", {
266 comment: "Reserved Vector",
267 name: "INT24",
268 base: 0xFFB0,
269 len: 0x2,
270 space: "data"
271 }],
272
273 ["INT25", {
274 comment: "Reserved Vector",
275 name: "INT25",
276 base: 0xFFB2,
277 len: 0x2,
278 space: "data"
279 }],
280
281 ["INT26", {
282 comment: "Reserved Vector",
283 name: "INT26",
284 base: 0xFFB4,
285 len: 0x2,
286 space: "data"
287 }],
288
289 ["INT27", {
290 comment: "Reserved Vector",
291 name: "INT27",
292 base: 0xFFB6,
293 len: 0x2,
294 space: "data"
295 }],
296
297 ["INT28", {
298 comment: "Reserved Vector",
299 name: "INT28",
300 base: 0xFFB8,
301 len: 0x2,
302 space: "data"
303 }],
304
305 ["INT29", {
306 comment: "Reserved Vector",
307 name: "INT29",
308 base: 0xFFBA,
309 len: 0x2,
310 space: "data"
311 }],
312
313 ["INT30", {
314 comment: "Reserved Vector",
315 name: "INT30",
316 base: 0xFFBC,
317 len: 0x2,
318 space: "data"
319 }],
320
321 ["INT31", {
322 comment: "Reserved Vector",
323 name: "INT31",
324 base: 0xFFBE,
325 len: 0x2,
326 space: "data"
327 }],
328
329 ["INT32", {
330 comment: "Reserved Vector",
331 name: "INT32",
332 base: 0xFFC0,
333 len: 0x2,
334 space: "data"
335 }],
336
337 ["INT33", {
338 comment: "Reserved Vector",
339 name: "INT33",
340 base: 0xFFC2,
341 len: 0x2,
342 space: "data"
343 }],
344
345 ["INT34", {
346 comment: "Reserved Vector",
347 name: "INT34",
348 base: 0xFFC4,
349 len: 0x2,
350 space: "data"
351 }],
352
353 ["INT35", {
354 comment: "Reserved Vector",
355 name: "INT35",
356 base: 0xFFC6,
357 len: 0x2,
358 space: "data"
359 }],
360
361 ["INT36", {
362 comment: "Reserved Vector",
363 name: "INT36",
364 base: 0xFFC8,
365 len: 0x2,
366 space: "data"
367 }],
368
369 ["INT37", {
370 comment: "Reserved Vector",
371 name: "INT37",
372 base: 0xFFCA,
373 len: 0x2,
374 space: "data"
375 }],
376
377 ["INT38", {
378 comment: "Reserved Vector",
379 name: "INT38",
380 base: 0xFFCC,
381 len: 0x2,
382 space: "data"
383 }],
384
385 ["INT39", {
386 comment: "Reserved Vector",
387 name: "INT39",
388 base: 0xFFCE,
389 len: 0x2,
390 space: "data"
391 }],
392
393 ["INT40", {
394 comment: "Reserved Vector",
395 name: "INT40",
396 base: 0xFFD0,
397 len: 0x2,
398 space: "data"
399 }],
400
401 ["INT41", {
402 comment: "RTC_A Vector",
403 name: "INT41",
404 base: 0xFFD2,
405 len: 0x2,
406 space: "data"
407 }],
408
409 ["INT42", {
410 comment: "I/O Port P2 Vector",
411 name: "INT42",
412 base: 0xFFD4,
413 len: 0x2,
414 space: "data"
415 }],
416
417 ["INT43", {
418 comment: "USCI_B3 Receive/Transmit Vector",
419 name: "INT43",
420 base: 0xFFD6,
421 len: 0x2,
422 space: "data"
423 }],
424
425 ["INT44", {
426 comment: "USCI_A3 Receive/Transmit Vector",
427 name: "INT44",
428 base: 0xFFD8,
429 len: 0x2,
430 space: "data"
431 }],
432
433 ["INT45", {
434 comment: "USCI_B1 Receive/Transmit Vector",
435 name: "INT45",
436 base: 0xFFDA,
437 len: 0x2,
438 space: "data"
439 }],
440
441 ["INT46", {
442 comment: "USCI_A1 Receive/Transmit Vector",
443 name: "INT46",
444 base: 0xFFDC,
445 len: 0x2,
446 space: "data"
447 }],
448
449 ["INT47", {
450 comment: "I/O Port P1 Vector",
451 name: "INT47",
452 base: 0xFFDE,
453 len: 0x2,
454 space: "data"
455 }],
456
457 ["INT48", {
458 comment: "TA1 CCR1-CCR2 Vector",
459 name: "INT48",
460 base: 0xFFE0,
461 len: 0x2,
462 space: "data"
463 }],
464
465 ["INT49", {
466 comment: "TA1 CCR0 Vector",
467 name: "INT49",
468 base: 0xFFE2,
469 len: 0x2,
470 space: "data"
471 }],
472
473 ["INT50", {
474 comment: "DMA Vector",
475 name: "INT50",
476 base: 0xFFE4,
477 len: 0x2,
478 space: "data"
479 }],
480
481 ["INT51", {
482 comment: "USCI_B2 Receive/Transmit Vector",
483 name: "INT51",
484 base: 0xFFE6,
485 len: 0x2,
486 space: "data"
487 }],
488
489 ["INT52", {
490 comment: "USCI_A2 Receive/Transmit Vector",
491 name: "INT52",
492 base: 0xFFE8,
493 len: 0x2,
494 space: "data"
495 }],
496
497 ["INT53", {
498 comment: "TA0 CCR1-CCR4 Vector",
499 name: "INT53",
500 base: 0xFFEA,
501 len: 0x2,
502 space: "data"
503 }],
504
505 ["INT54", {
506 comment: "TA0 CCR0 Vector",
507 name: "INT54",
508 base: 0xFFEC,
509 len: 0x2,
510 space: "data"
511 }],
512
513 ["INT55", {
514 comment: "ADC12_A Vector",
515 name: "INT55",
516 base: 0xFFEE,
517 len: 0x2,
518 space: "data"
519 }],
520
521 ["INT56", {
522 comment: "USCI_B0 Receive/Transmit Vector",
523 name: "INT56",
524 base: 0xFFF0,
525 len: 0x2,
526 space: "data"
527 }],
528
529 ["INT57", {
530 comment: "USCI_A0 Receive/Transmit Vector",
531 name: "INT57",
532 base: 0xFFF2,
533 len: 0x2,
534 space: "data"
535 }],
536
537 ["INT58", {
538 comment: "Watchdog Timer_A Interval Timer Mode Vector",
539 name: "INT58",
540 base: 0xFFF4,
541 len: 0x2,
542 space: "data"
543 }],
544
545 ["INT59", {
546 comment: "TB0 CCR1-CCR6 Vector",
547 name: "INT59",
548 base: 0xFFF6,
549 len: 0x2,
550 space: "data"
551 }],
552
553 ["INT60", {
554 comment: "TB0 CCR0 Vector",
555 name: "INT60",
556 base: 0xFFF8,
557 len: 0x2,
558 space: "data"
559 }],
560
561 ["INT61", {
562 comment: "User NMI Vector",
563 name: "INT61",
564 base: 0xFFFA,
565 len: 0x2,
566 space: "data"
567 }],
568
569 ["INT62", {
570 comment: "System NMI Vector",
571 name: "INT62",
572 base: 0xFFFC,
573 len: 0x2,
574 space: "data"
575 }],
576
577 ["RESET", {
578 comment: "Reset Vector",
579 name: "RESET",
580 base: 0xFFFE,
581 len: 0x2,
582 space: "data"
583 }],
584 ];
585 }
586 587 588
589