1 /****************************************************************************** 2 * Filename: hw_cpu_scs_h 3 * Revised: 2018-05-14 12:24:52 +0200 (Mon, 14 May 2018) 4 * Revision: 51990 5 * 6 * Copyright (c) 2015 - 2017, Texas Instruments Incorporated 7 * All rights reserved. 8 * 9 * Redistribution and use in source and binary forms, with or without 10 * modification, are permitted provided that the following conditions are met: 11 * 12 * 1) Redistributions of source code must retain the above copyright notice, 13 * this list of conditions and the following disclaimer. 14 * 15 * 2) Redistributions in binary form must reproduce the above copyright notice, 16 * this list of conditions and the following disclaimer in the documentation 17 * and/or other materials provided with the distribution. 18 * 19 * 3) Neither the name of the ORGANIZATION nor the names of its contributors may 20 * be used to endorse or promote products derived from this software without 21 * specific prior written permission. 22 * 23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 24 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 25 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 26 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 27 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 28 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 29 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 30 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 31 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 32 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 33 * POSSIBILITY OF SUCH DAMAGE. 34 * 35 ******************************************************************************/ 36 37 #ifndef __HW_CPU_SCS_H__ 38 #define __HW_CPU_SCS_H__ 39 40 //***************************************************************************** 41 // 42 // This section defines the register offsets of 43 // CPU_SCS component 44 // 45 //***************************************************************************** 46 // Interrupt Control Type 47 #define CPU_SCS_O_ICTR 0x00000004 48 49 // Auxiliary Control 50 #define CPU_SCS_O_ACTLR 0x00000008 51 52 // SysTick Control and Status 53 #define CPU_SCS_O_STCSR 0x00000010 54 55 // SysTick Reload Value 56 #define CPU_SCS_O_STRVR 0x00000014 57 58 // SysTick Current Value 59 #define CPU_SCS_O_STCVR 0x00000018 60 61 // SysTick Calibration Value 62 #define CPU_SCS_O_STCR 0x0000001C 63 64 // Irq 0 to 31 Set Enable 65 #define CPU_SCS_O_NVIC_ISER0 0x00000100 66 67 // Irq 32 to 63 Set Enable 68 #define CPU_SCS_O_NVIC_ISER1 0x00000104 69 70 // Irq 0 to 31 Clear Enable 71 #define CPU_SCS_O_NVIC_ICER0 0x00000180 72 73 // Irq 32 to 63 Clear Enable 74 #define CPU_SCS_O_NVIC_ICER1 0x00000184 75 76 // Irq 0 to 31 Set Pending 77 #define CPU_SCS_O_NVIC_ISPR0 0x00000200 78 79 // Irq 32 to 63 Set Pending 80 #define CPU_SCS_O_NVIC_ISPR1 0x00000204 81 82 // Irq 0 to 31 Clear Pending 83 #define CPU_SCS_O_NVIC_ICPR0 0x00000280 84 85 // Irq 32 to 63 Clear Pending 86 #define CPU_SCS_O_NVIC_ICPR1 0x00000284 87 88 // Irq 0 to 31 Active Bit 89 #define CPU_SCS_O_NVIC_IABR0 0x00000300 90 91 // Irq 32 to 63 Active Bit 92 #define CPU_SCS_O_NVIC_IABR1 0x00000304 93 94 // Irq 0 to 3 Priority 95 #define CPU_SCS_O_NVIC_IPR0 0x00000400 96 97 // Irq 4 to 7 Priority 98 #define CPU_SCS_O_NVIC_IPR1 0x00000404 99 100 // Irq 8 to 11 Priority 101 #define CPU_SCS_O_NVIC_IPR2 0x00000408 102 103 // Irq 12 to 15 Priority 104 #define CPU_SCS_O_NVIC_IPR3 0x0000040C 105 106 // Irq 16 to 19 Priority 107 #define CPU_SCS_O_NVIC_IPR4 0x00000410 108 109 // Irq 20 to 23 Priority 110 #define CPU_SCS_O_NVIC_IPR5 0x00000414 111 112 // Irq 24 to 27 Priority 113 #define CPU_SCS_O_NVIC_IPR6 0x00000418 114 115 // Irq 28 to 31 Priority 116 #define CPU_SCS_O_NVIC_IPR7 0x0000041C 117 118 // Irq 32 to 35 Priority 119 #define CPU_SCS_O_NVIC_IPR8 0x00000420 120 121 // Irq 32 to 35 Priority 122 #define CPU_SCS_O_NVIC_IPR9 0x00000424 123 124 // CPUID Base 125 #define CPU_SCS_O_CPUID 0x00000D00 126 127 // Interrupt Control State 128 #define CPU_SCS_O_ICSR 0x00000D04 129 130 // Vector Table Offset 131 #define CPU_SCS_O_VTOR 0x00000D08 132 133 // Application Interrupt/Reset Control 134 #define CPU_SCS_O_AIRCR 0x00000D0C 135 136 // System Control 137 #define CPU_SCS_O_SCR 0x00000D10 138 139 // Configuration Control 140 #define CPU_SCS_O_CCR 0x00000D14 141 142 // System Handlers 4-7 Priority 143 #define CPU_SCS_O_SHPR1 0x00000D18 144 145 // System Handlers 8-11 Priority 146 #define CPU_SCS_O_SHPR2 0x00000D1C 147 148 // System Handlers 12-15 Priority 149 #define CPU_SCS_O_SHPR3 0x00000D20 150 151 // System Handler Control and State 152 #define CPU_SCS_O_SHCSR 0x00000D24 153 154 // Configurable Fault Status 155 #define CPU_SCS_O_CFSR 0x00000D28 156 157 // Hard Fault Status 158 #define CPU_SCS_O_HFSR 0x00000D2C 159 160 // Debug Fault Status 161 #define CPU_SCS_O_DFSR 0x00000D30 162 163 // Mem Manage Fault Address 164 #define CPU_SCS_O_MMFAR 0x00000D34 165 166 // Bus Fault Address 167 #define CPU_SCS_O_BFAR 0x00000D38 168 169 // Auxiliary Fault Status 170 #define CPU_SCS_O_AFSR 0x00000D3C 171 172 // Processor Feature 0 173 #define CPU_SCS_O_ID_PFR0 0x00000D40 174 175 // Processor Feature 1 176 #define CPU_SCS_O_ID_PFR1 0x00000D44 177 178 // Debug Feature 0 179 #define CPU_SCS_O_ID_DFR0 0x00000D48 180 181 // Auxiliary Feature 0 182 #define CPU_SCS_O_ID_AFR0 0x00000D4C 183 184 // Memory Model Feature 0 185 #define CPU_SCS_O_ID_MMFR0 0x00000D50 186 187 // Memory Model Feature 1 188 #define CPU_SCS_O_ID_MMFR1 0x00000D54 189 190 // Memory Model Feature 2 191 #define CPU_SCS_O_ID_MMFR2 0x00000D58 192 193 // Memory Model Feature 3 194 #define CPU_SCS_O_ID_MMFR3 0x00000D5C 195 196 // ISA Feature 0 197 #define CPU_SCS_O_ID_ISAR0 0x00000D60 198 199 // ISA Feature 1 200 #define CPU_SCS_O_ID_ISAR1 0x00000D64 201 202 // ISA Feature 2 203 #define CPU_SCS_O_ID_ISAR2 0x00000D68 204 205 // ISA Feature 3 206 #define CPU_SCS_O_ID_ISAR3 0x00000D6C 207 208 // ISA Feature 4 209 #define CPU_SCS_O_ID_ISAR4 0x00000D70 210 211 // Coprocessor Access Control 212 #define CPU_SCS_O_CPACR 0x00000D88 213 214 // MPU Type 215 #define CPU_SCS_O_MPU_TYPE 0x00000D90 216 217 // MPU Control 218 #define CPU_SCS_O_MPU_CTRL 0x00000D94 219 220 // MPU Region Number 221 #define CPU_SCS_O_MPU_RNR 0x00000D98 222 223 // MPU Region Base Address 224 #define CPU_SCS_O_MPU_RBAR 0x00000D9C 225 226 // MPU Region Attribute and Size 227 #define CPU_SCS_O_MPU_RASR 0x00000DA0 228 229 // MPU Alias 1 Region Base Address 230 #define CPU_SCS_O_MPU_RBAR_A1 0x00000DA4 231 232 // MPU Alias 1 Region Attribute and Size 233 #define CPU_SCS_O_MPU_RASR_A1 0x00000DA8 234 235 // MPU Alias 2 Region Base Address 236 #define CPU_SCS_O_MPU_RBAR_A2 0x00000DAC 237 238 // MPU Alias 2 Region Attribute and Size 239 #define CPU_SCS_O_MPU_RASR_A2 0x00000DB0 240 241 // MPU Alias 3 Region Base Address 242 #define CPU_SCS_O_MPU_RBAR_A3 0x00000DB4 243 244 // MPU Alias 3 Region Attribute and Size 245 #define CPU_SCS_O_MPU_RASR_A3 0x00000DB8 246 247 // Debug Halting Control and Status 248 #define CPU_SCS_O_DHCSR 0x00000DF0 249 250 // Deubg Core Register Selector 251 #define CPU_SCS_O_DCRSR 0x00000DF4 252 253 // Debug Core Register Data 254 #define CPU_SCS_O_DCRDR 0x00000DF8 255 256 // Debug Exception and Monitor Control 257 #define CPU_SCS_O_DEMCR 0x00000DFC 258 259 // Software Trigger Interrupt 260 #define CPU_SCS_O_STIR 0x00000F00 261 262 // Floating Point Context Control 263 #define CPU_SCS_O_FPCCR 0x00000F34 264 265 // Floating-Point Context Address 266 #define CPU_SCS_O_FPCAR 0x00000F38 267 268 // Floating Point Default Status Control 269 #define CPU_SCS_O_FPDSCR 0x00000F3C 270 271 // Media and FP Feature 0 272 #define CPU_SCS_O_MVFR0 0x00000F40 273 274 // Media and FP Feature 1 275 #define CPU_SCS_O_MVFR1 0x00000F44 276 277 //***************************************************************************** 278 // 279 // Register: CPU_SCS_O_ICTR 280 // 281 //***************************************************************************** 282 // Field: [2:0] INTLINESNUM 283 // 284 // Total number of interrupt lines in groups of 32. 285 // 286 // 0: 0...32 287 // 1: 33...64 288 // 2: 65...96 289 // 3: 97...128 290 // 4: 129...160 291 // 5: 161...192 292 // 6: 193...224 293 // 7: 225...256 294 #define CPU_SCS_ICTR_INTLINESNUM_W 3 295 #define CPU_SCS_ICTR_INTLINESNUM_M 0x00000007 296 #define CPU_SCS_ICTR_INTLINESNUM_S 0 297 298 //***************************************************************************** 299 // 300 // Register: CPU_SCS_O_ACTLR 301 // 302 //***************************************************************************** 303 // Field: [9] DISOOFP 304 // 305 // Disables floating point instructions completing out of order with respect to 306 // integer instructions. 307 #define CPU_SCS_ACTLR_DISOOFP 0x00000200 308 #define CPU_SCS_ACTLR_DISOOFP_BITN 9 309 #define CPU_SCS_ACTLR_DISOOFP_M 0x00000200 310 #define CPU_SCS_ACTLR_DISOOFP_S 9 311 312 // Field: [8] DISFPCA 313 // 314 // Disable automatic update of CONTROL.FPCA 315 #define CPU_SCS_ACTLR_DISFPCA 0x00000100 316 #define CPU_SCS_ACTLR_DISFPCA_BITN 8 317 #define CPU_SCS_ACTLR_DISFPCA_M 0x00000100 318 #define CPU_SCS_ACTLR_DISFPCA_S 8 319 320 // Field: [2] DISFOLD 321 // 322 // Disables folding of IT instruction. 323 #define CPU_SCS_ACTLR_DISFOLD 0x00000004 324 #define CPU_SCS_ACTLR_DISFOLD_BITN 2 325 #define CPU_SCS_ACTLR_DISFOLD_M 0x00000004 326 #define CPU_SCS_ACTLR_DISFOLD_S 2 327 328 // Field: [1] DISDEFWBUF 329 // 330 // Disables write buffer use during default memory map accesses. This causes 331 // all bus faults to be precise bus faults but decreases the performance of the 332 // processor because the stores to memory have to complete before the next 333 // instruction can be executed. 334 #define CPU_SCS_ACTLR_DISDEFWBUF 0x00000002 335 #define CPU_SCS_ACTLR_DISDEFWBUF_BITN 1 336 #define CPU_SCS_ACTLR_DISDEFWBUF_M 0x00000002 337 #define CPU_SCS_ACTLR_DISDEFWBUF_S 1 338 339 // Field: [0] DISMCYCINT 340 // 341 // Disables interruption of multi-cycle instructions. This increases the 342 // interrupt latency of the processor becuase LDM/STM completes before 343 // interrupt stacking occurs. 344 #define CPU_SCS_ACTLR_DISMCYCINT 0x00000001 345 #define CPU_SCS_ACTLR_DISMCYCINT_BITN 0 346 #define CPU_SCS_ACTLR_DISMCYCINT_M 0x00000001 347 #define CPU_SCS_ACTLR_DISMCYCINT_S 0 348 349 //***************************************************************************** 350 // 351 // Register: CPU_SCS_O_STCSR 352 // 353 //***************************************************************************** 354 // Field: [16] COUNTFLAG 355 // 356 // Returns 1 if timer counted to 0 since last time this was read. Clears on 357 // read by application of any part of the SysTick Control and Status Register. 358 // If read by the debugger using the DAP, this bit is cleared on read-only if 359 // the MasterType bit in the **AHB-AP** Control Register is set to 0. 360 // Otherwise, COUNTFLAG is not changed by the debugger read. 361 #define CPU_SCS_STCSR_COUNTFLAG 0x00010000 362 #define CPU_SCS_STCSR_COUNTFLAG_BITN 16 363 #define CPU_SCS_STCSR_COUNTFLAG_M 0x00010000 364 #define CPU_SCS_STCSR_COUNTFLAG_S 16 365 366 // Field: [2] CLKSOURCE 367 // 368 // Clock source: 369 // 370 // 0: External reference clock. 371 // 1: Core clock 372 // 373 // External clock is not available in this device. Writes to this field will be 374 // ignored. 375 #define CPU_SCS_STCSR_CLKSOURCE 0x00000004 376 #define CPU_SCS_STCSR_CLKSOURCE_BITN 2 377 #define CPU_SCS_STCSR_CLKSOURCE_M 0x00000004 378 #define CPU_SCS_STCSR_CLKSOURCE_S 2 379 380 // Field: [1] TICKINT 381 // 382 // 0: Counting down to zero does not pend the SysTick handler. Software can use 383 // COUNTFLAG to determine if the SysTick handler has ever counted to zero. 384 // 1: Counting down to zero pends the SysTick handler. 385 #define CPU_SCS_STCSR_TICKINT 0x00000002 386 #define CPU_SCS_STCSR_TICKINT_BITN 1 387 #define CPU_SCS_STCSR_TICKINT_M 0x00000002 388 #define CPU_SCS_STCSR_TICKINT_S 1 389 390 // Field: [0] ENABLE 391 // 392 // Enable SysTick counter 393 // 394 // 0: Counter disabled 395 // 1: Counter operates in a multi-shot way. That is, counter loads with the 396 // Reload value STRVR.RELOAD and then begins counting down. On reaching 0, it 397 // sets COUNTFLAG to 1 and optionally pends the SysTick handler, based on 398 // TICKINT. It then loads STRVR.RELOAD again, and begins counting. 399 #define CPU_SCS_STCSR_ENABLE 0x00000001 400 #define CPU_SCS_STCSR_ENABLE_BITN 0 401 #define CPU_SCS_STCSR_ENABLE_M 0x00000001 402 #define CPU_SCS_STCSR_ENABLE_S 0 403 404 //***************************************************************************** 405 // 406 // Register: CPU_SCS_O_STRVR 407 // 408 //***************************************************************************** 409 // Field: [23:0] RELOAD 410 // 411 // Value to load into the SysTick Current Value Register STCVR.CURRENT when the 412 // counter reaches 0. 413 #define CPU_SCS_STRVR_RELOAD_W 24 414 #define CPU_SCS_STRVR_RELOAD_M 0x00FFFFFF 415 #define CPU_SCS_STRVR_RELOAD_S 0 416 417 //***************************************************************************** 418 // 419 // Register: CPU_SCS_O_STCVR 420 // 421 //***************************************************************************** 422 // Field: [23:0] CURRENT 423 // 424 // Current value at the time the register is accessed. No read-modify-write 425 // protection is provided, so change with care. Writing to it with any value 426 // clears the register to 0. Clearing this register also clears 427 // STCSR.COUNTFLAG. 428 #define CPU_SCS_STCVR_CURRENT_W 24 429 #define CPU_SCS_STCVR_CURRENT_M 0x00FFFFFF 430 #define CPU_SCS_STCVR_CURRENT_S 0 431 432 //***************************************************************************** 433 // 434 // Register: CPU_SCS_O_STCR 435 // 436 //***************************************************************************** 437 // Field: [31] NOREF 438 // 439 // Reads as one. Indicates that no separate reference clock is provided. 440 #define CPU_SCS_STCR_NOREF 0x80000000 441 #define CPU_SCS_STCR_NOREF_BITN 31 442 #define CPU_SCS_STCR_NOREF_M 0x80000000 443 #define CPU_SCS_STCR_NOREF_S 31 444 445 // Field: [30] SKEW 446 // 447 // Reads as one. The calibration value is not exactly 10ms because of clock 448 // frequency. This could affect its suitability as a software real time clock. 449 #define CPU_SCS_STCR_SKEW 0x40000000 450 #define CPU_SCS_STCR_SKEW_BITN 30 451 #define CPU_SCS_STCR_SKEW_M 0x40000000 452 #define CPU_SCS_STCR_SKEW_S 30 453 454 // Field: [23:0] TENMS 455 // 456 // An optional Reload value to be used for 10ms (100Hz) timing, subject to 457 // system clock skew errors. The value read is valid only when core clock is at 458 // 48MHz. 459 #define CPU_SCS_STCR_TENMS_W 24 460 #define CPU_SCS_STCR_TENMS_M 0x00FFFFFF 461 #define CPU_SCS_STCR_TENMS_S 0 462 463 //***************************************************************************** 464 // 465 // Register: CPU_SCS_O_NVIC_ISER0 466 // 467 //***************************************************************************** 468 // Field: [31] SETENA31 469 // 470 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 471 // interrupt number 31 (See EVENT:CPUIRQSEL31.EV for details). Reading the bit 472 // returns its current enable state. 473 #define CPU_SCS_NVIC_ISER0_SETENA31 0x80000000 474 #define CPU_SCS_NVIC_ISER0_SETENA31_BITN 31 475 #define CPU_SCS_NVIC_ISER0_SETENA31_M 0x80000000 476 #define CPU_SCS_NVIC_ISER0_SETENA31_S 31 477 478 // Field: [30] SETENA30 479 // 480 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 481 // interrupt number 30 (See EVENT:CPUIRQSEL30.EV for details). Reading the bit 482 // returns its current enable state. 483 #define CPU_SCS_NVIC_ISER0_SETENA30 0x40000000 484 #define CPU_SCS_NVIC_ISER0_SETENA30_BITN 30 485 #define CPU_SCS_NVIC_ISER0_SETENA30_M 0x40000000 486 #define CPU_SCS_NVIC_ISER0_SETENA30_S 30 487 488 // Field: [29] SETENA29 489 // 490 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 491 // interrupt number 29 (See EVENT:CPUIRQSEL29.EV for details). Reading the bit 492 // returns its current enable state. 493 #define CPU_SCS_NVIC_ISER0_SETENA29 0x20000000 494 #define CPU_SCS_NVIC_ISER0_SETENA29_BITN 29 495 #define CPU_SCS_NVIC_ISER0_SETENA29_M 0x20000000 496 #define CPU_SCS_NVIC_ISER0_SETENA29_S 29 497 498 // Field: [28] SETENA28 499 // 500 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 501 // interrupt number 28 (See EVENT:CPUIRQSEL28.EV for details). Reading the bit 502 // returns its current enable state. 503 #define CPU_SCS_NVIC_ISER0_SETENA28 0x10000000 504 #define CPU_SCS_NVIC_ISER0_SETENA28_BITN 28 505 #define CPU_SCS_NVIC_ISER0_SETENA28_M 0x10000000 506 #define CPU_SCS_NVIC_ISER0_SETENA28_S 28 507 508 // Field: [27] SETENA27 509 // 510 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 511 // interrupt number 27 (See EVENT:CPUIRQSEL27.EV for details). Reading the bit 512 // returns its current enable state. 513 #define CPU_SCS_NVIC_ISER0_SETENA27 0x08000000 514 #define CPU_SCS_NVIC_ISER0_SETENA27_BITN 27 515 #define CPU_SCS_NVIC_ISER0_SETENA27_M 0x08000000 516 #define CPU_SCS_NVIC_ISER0_SETENA27_S 27 517 518 // Field: [26] SETENA26 519 // 520 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 521 // interrupt number 26 (See EVENT:CPUIRQSEL26.EV for details). Reading the bit 522 // returns its current enable state. 523 #define CPU_SCS_NVIC_ISER0_SETENA26 0x04000000 524 #define CPU_SCS_NVIC_ISER0_SETENA26_BITN 26 525 #define CPU_SCS_NVIC_ISER0_SETENA26_M 0x04000000 526 #define CPU_SCS_NVIC_ISER0_SETENA26_S 26 527 528 // Field: [25] SETENA25 529 // 530 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 531 // interrupt number 25 (See EVENT:CPUIRQSEL25.EV for details). Reading the bit 532 // returns its current enable state. 533 #define CPU_SCS_NVIC_ISER0_SETENA25 0x02000000 534 #define CPU_SCS_NVIC_ISER0_SETENA25_BITN 25 535 #define CPU_SCS_NVIC_ISER0_SETENA25_M 0x02000000 536 #define CPU_SCS_NVIC_ISER0_SETENA25_S 25 537 538 // Field: [24] SETENA24 539 // 540 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 541 // interrupt number 24 (See EVENT:CPUIRQSEL24.EV for details). Reading the bit 542 // returns its current enable state. 543 #define CPU_SCS_NVIC_ISER0_SETENA24 0x01000000 544 #define CPU_SCS_NVIC_ISER0_SETENA24_BITN 24 545 #define CPU_SCS_NVIC_ISER0_SETENA24_M 0x01000000 546 #define CPU_SCS_NVIC_ISER0_SETENA24_S 24 547 548 // Field: [23] SETENA23 549 // 550 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 551 // interrupt number 23 (See EVENT:CPUIRQSEL23.EV for details). Reading the bit 552 // returns its current enable state. 553 #define CPU_SCS_NVIC_ISER0_SETENA23 0x00800000 554 #define CPU_SCS_NVIC_ISER0_SETENA23_BITN 23 555 #define CPU_SCS_NVIC_ISER0_SETENA23_M 0x00800000 556 #define CPU_SCS_NVIC_ISER0_SETENA23_S 23 557 558 // Field: [22] SETENA22 559 // 560 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 561 // interrupt number 22 (See EVENT:CPUIRQSEL22.EV for details). Reading the bit 562 // returns its current enable state. 563 #define CPU_SCS_NVIC_ISER0_SETENA22 0x00400000 564 #define CPU_SCS_NVIC_ISER0_SETENA22_BITN 22 565 #define CPU_SCS_NVIC_ISER0_SETENA22_M 0x00400000 566 #define CPU_SCS_NVIC_ISER0_SETENA22_S 22 567 568 // Field: [21] SETENA21 569 // 570 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 571 // interrupt number 21 (See EVENT:CPUIRQSEL21.EV for details). Reading the bit 572 // returns its current enable state. 573 #define CPU_SCS_NVIC_ISER0_SETENA21 0x00200000 574 #define CPU_SCS_NVIC_ISER0_SETENA21_BITN 21 575 #define CPU_SCS_NVIC_ISER0_SETENA21_M 0x00200000 576 #define CPU_SCS_NVIC_ISER0_SETENA21_S 21 577 578 // Field: [20] SETENA20 579 // 580 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 581 // interrupt number 20 (See EVENT:CPUIRQSEL20.EV for details). Reading the bit 582 // returns its current enable state. 583 #define CPU_SCS_NVIC_ISER0_SETENA20 0x00100000 584 #define CPU_SCS_NVIC_ISER0_SETENA20_BITN 20 585 #define CPU_SCS_NVIC_ISER0_SETENA20_M 0x00100000 586 #define CPU_SCS_NVIC_ISER0_SETENA20_S 20 587 588 // Field: [19] SETENA19 589 // 590 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 591 // interrupt number 19 (See EVENT:CPUIRQSEL19.EV for details). Reading the bit 592 // returns its current enable state. 593 #define CPU_SCS_NVIC_ISER0_SETENA19 0x00080000 594 #define CPU_SCS_NVIC_ISER0_SETENA19_BITN 19 595 #define CPU_SCS_NVIC_ISER0_SETENA19_M 0x00080000 596 #define CPU_SCS_NVIC_ISER0_SETENA19_S 19 597 598 // Field: [18] SETENA18 599 // 600 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 601 // interrupt number 18 (See EVENT:CPUIRQSEL18.EV for details). Reading the bit 602 // returns its current enable state. 603 #define CPU_SCS_NVIC_ISER0_SETENA18 0x00040000 604 #define CPU_SCS_NVIC_ISER0_SETENA18_BITN 18 605 #define CPU_SCS_NVIC_ISER0_SETENA18_M 0x00040000 606 #define CPU_SCS_NVIC_ISER0_SETENA18_S 18 607 608 // Field: [17] SETENA17 609 // 610 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 611 // interrupt number 17 (See EVENT:CPUIRQSEL17.EV for details). Reading the bit 612 // returns its current enable state. 613 #define CPU_SCS_NVIC_ISER0_SETENA17 0x00020000 614 #define CPU_SCS_NVIC_ISER0_SETENA17_BITN 17 615 #define CPU_SCS_NVIC_ISER0_SETENA17_M 0x00020000 616 #define CPU_SCS_NVIC_ISER0_SETENA17_S 17 617 618 // Field: [16] SETENA16 619 // 620 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 621 // interrupt number 16 (See EVENT:CPUIRQSEL16.EV for details). Reading the bit 622 // returns its current enable state. 623 #define CPU_SCS_NVIC_ISER0_SETENA16 0x00010000 624 #define CPU_SCS_NVIC_ISER0_SETENA16_BITN 16 625 #define CPU_SCS_NVIC_ISER0_SETENA16_M 0x00010000 626 #define CPU_SCS_NVIC_ISER0_SETENA16_S 16 627 628 // Field: [15] SETENA15 629 // 630 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 631 // interrupt number 15 (See EVENT:CPUIRQSEL15.EV for details). Reading the bit 632 // returns its current enable state. 633 #define CPU_SCS_NVIC_ISER0_SETENA15 0x00008000 634 #define CPU_SCS_NVIC_ISER0_SETENA15_BITN 15 635 #define CPU_SCS_NVIC_ISER0_SETENA15_M 0x00008000 636 #define CPU_SCS_NVIC_ISER0_SETENA15_S 15 637 638 // Field: [14] SETENA14 639 // 640 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 641 // interrupt number 14 (See EVENT:CPUIRQSEL14.EV for details). Reading the bit 642 // returns its current enable state. 643 #define CPU_SCS_NVIC_ISER0_SETENA14 0x00004000 644 #define CPU_SCS_NVIC_ISER0_SETENA14_BITN 14 645 #define CPU_SCS_NVIC_ISER0_SETENA14_M 0x00004000 646 #define CPU_SCS_NVIC_ISER0_SETENA14_S 14 647 648 // Field: [13] SETENA13 649 // 650 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 651 // interrupt number 13 (See EVENT:CPUIRQSEL13.EV for details). Reading the bit 652 // returns its current enable state. 653 #define CPU_SCS_NVIC_ISER0_SETENA13 0x00002000 654 #define CPU_SCS_NVIC_ISER0_SETENA13_BITN 13 655 #define CPU_SCS_NVIC_ISER0_SETENA13_M 0x00002000 656 #define CPU_SCS_NVIC_ISER0_SETENA13_S 13 657 658 // Field: [12] SETENA12 659 // 660 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 661 // interrupt number 12 (See EVENT:CPUIRQSEL12.EV for details). Reading the bit 662 // returns its current enable state. 663 #define CPU_SCS_NVIC_ISER0_SETENA12 0x00001000 664 #define CPU_SCS_NVIC_ISER0_SETENA12_BITN 12 665 #define CPU_SCS_NVIC_ISER0_SETENA12_M 0x00001000 666 #define CPU_SCS_NVIC_ISER0_SETENA12_S 12 667 668 // Field: [11] SETENA11 669 // 670 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 671 // interrupt number 11 (See EVENT:CPUIRQSEL11.EV for details). Reading the bit 672 // returns its current enable state. 673 #define CPU_SCS_NVIC_ISER0_SETENA11 0x00000800 674 #define CPU_SCS_NVIC_ISER0_SETENA11_BITN 11 675 #define CPU_SCS_NVIC_ISER0_SETENA11_M 0x00000800 676 #define CPU_SCS_NVIC_ISER0_SETENA11_S 11 677 678 // Field: [10] SETENA10 679 // 680 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 681 // interrupt number 10 (See EVENT:CPUIRQSEL10.EV for details). Reading the bit 682 // returns its current enable state. 683 #define CPU_SCS_NVIC_ISER0_SETENA10 0x00000400 684 #define CPU_SCS_NVIC_ISER0_SETENA10_BITN 10 685 #define CPU_SCS_NVIC_ISER0_SETENA10_M 0x00000400 686 #define CPU_SCS_NVIC_ISER0_SETENA10_S 10 687 688 // Field: [9] SETENA9 689 // 690 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 691 // interrupt number 9 (See EVENT:CPUIRQSEL9.EV for details). Reading the bit 692 // returns its current enable state. 693 #define CPU_SCS_NVIC_ISER0_SETENA9 0x00000200 694 #define CPU_SCS_NVIC_ISER0_SETENA9_BITN 9 695 #define CPU_SCS_NVIC_ISER0_SETENA9_M 0x00000200 696 #define CPU_SCS_NVIC_ISER0_SETENA9_S 9 697 698 // Field: [8] SETENA8 699 // 700 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 701 // interrupt number 8 (See EVENT:CPUIRQSEL8.EV for details). Reading the bit 702 // returns its current enable state. 703 #define CPU_SCS_NVIC_ISER0_SETENA8 0x00000100 704 #define CPU_SCS_NVIC_ISER0_SETENA8_BITN 8 705 #define CPU_SCS_NVIC_ISER0_SETENA8_M 0x00000100 706 #define CPU_SCS_NVIC_ISER0_SETENA8_S 8 707 708 // Field: [7] SETENA7 709 // 710 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 711 // interrupt number 7 (See EVENT:CPUIRQSEL7.EV for details). Reading the bit 712 // returns its current enable state. 713 #define CPU_SCS_NVIC_ISER0_SETENA7 0x00000080 714 #define CPU_SCS_NVIC_ISER0_SETENA7_BITN 7 715 #define CPU_SCS_NVIC_ISER0_SETENA7_M 0x00000080 716 #define CPU_SCS_NVIC_ISER0_SETENA7_S 7 717 718 // Field: [6] SETENA6 719 // 720 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 721 // interrupt number 6 (See EVENT:CPUIRQSEL6.EV for details). Reading the bit 722 // returns its current enable state. 723 #define CPU_SCS_NVIC_ISER0_SETENA6 0x00000040 724 #define CPU_SCS_NVIC_ISER0_SETENA6_BITN 6 725 #define CPU_SCS_NVIC_ISER0_SETENA6_M 0x00000040 726 #define CPU_SCS_NVIC_ISER0_SETENA6_S 6 727 728 // Field: [5] SETENA5 729 // 730 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 731 // interrupt number 5 (See EVENT:CPUIRQSEL5.EV for details). Reading the bit 732 // returns its current enable state. 733 #define CPU_SCS_NVIC_ISER0_SETENA5 0x00000020 734 #define CPU_SCS_NVIC_ISER0_SETENA5_BITN 5 735 #define CPU_SCS_NVIC_ISER0_SETENA5_M 0x00000020 736 #define CPU_SCS_NVIC_ISER0_SETENA5_S 5 737 738 // Field: [4] SETENA4 739 // 740 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 741 // interrupt number 4 (See EVENT:CPUIRQSEL4.EV for details). Reading the bit 742 // returns its current enable state. 743 #define CPU_SCS_NVIC_ISER0_SETENA4 0x00000010 744 #define CPU_SCS_NVIC_ISER0_SETENA4_BITN 4 745 #define CPU_SCS_NVIC_ISER0_SETENA4_M 0x00000010 746 #define CPU_SCS_NVIC_ISER0_SETENA4_S 4 747 748 // Field: [3] SETENA3 749 // 750 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 751 // interrupt number 3 (See EVENT:CPUIRQSEL3.EV for details). Reading the bit 752 // returns its current enable state. 753 #define CPU_SCS_NVIC_ISER0_SETENA3 0x00000008 754 #define CPU_SCS_NVIC_ISER0_SETENA3_BITN 3 755 #define CPU_SCS_NVIC_ISER0_SETENA3_M 0x00000008 756 #define CPU_SCS_NVIC_ISER0_SETENA3_S 3 757 758 // Field: [2] SETENA2 759 // 760 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 761 // interrupt number 2 (See EVENT:CPUIRQSEL2.EV for details). Reading the bit 762 // returns its current enable state. 763 #define CPU_SCS_NVIC_ISER0_SETENA2 0x00000004 764 #define CPU_SCS_NVIC_ISER0_SETENA2_BITN 2 765 #define CPU_SCS_NVIC_ISER0_SETENA2_M 0x00000004 766 #define CPU_SCS_NVIC_ISER0_SETENA2_S 2 767 768 // Field: [1] SETENA1 769 // 770 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 771 // interrupt number 1 (See EVENT:CPUIRQSEL1.EV for details). Reading the bit 772 // returns its current enable state. 773 #define CPU_SCS_NVIC_ISER0_SETENA1 0x00000002 774 #define CPU_SCS_NVIC_ISER0_SETENA1_BITN 1 775 #define CPU_SCS_NVIC_ISER0_SETENA1_M 0x00000002 776 #define CPU_SCS_NVIC_ISER0_SETENA1_S 1 777 778 // Field: [0] SETENA0 779 // 780 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 781 // interrupt number 0 (See EVENT:CPUIRQSEL0.EV for details). Reading the bit 782 // returns its current enable state. 783 #define CPU_SCS_NVIC_ISER0_SETENA0 0x00000001 784 #define CPU_SCS_NVIC_ISER0_SETENA0_BITN 0 785 #define CPU_SCS_NVIC_ISER0_SETENA0_M 0x00000001 786 #define CPU_SCS_NVIC_ISER0_SETENA0_S 0 787 788 //***************************************************************************** 789 // 790 // Register: CPU_SCS_O_NVIC_ISER1 791 // 792 //***************************************************************************** 793 // Field: [5] SETENA37 794 // 795 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 796 // interrupt number 37 (See EVENT:CPUIRQSEL37.EV for details). Reading the bit 797 // returns its current enable state. 798 #define CPU_SCS_NVIC_ISER1_SETENA37 0x00000020 799 #define CPU_SCS_NVIC_ISER1_SETENA37_BITN 5 800 #define CPU_SCS_NVIC_ISER1_SETENA37_M 0x00000020 801 #define CPU_SCS_NVIC_ISER1_SETENA37_S 5 802 803 // Field: [4] SETENA36 804 // 805 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 806 // interrupt number 36 (See EVENT:CPUIRQSEL36.EV for details). Reading the bit 807 // returns its current enable state. 808 #define CPU_SCS_NVIC_ISER1_SETENA36 0x00000010 809 #define CPU_SCS_NVIC_ISER1_SETENA36_BITN 4 810 #define CPU_SCS_NVIC_ISER1_SETENA36_M 0x00000010 811 #define CPU_SCS_NVIC_ISER1_SETENA36_S 4 812 813 // Field: [3] SETENA35 814 // 815 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 816 // interrupt number 35 (See EVENT:CPUIRQSEL35.EV for details). Reading the bit 817 // returns its current enable state. 818 #define CPU_SCS_NVIC_ISER1_SETENA35 0x00000008 819 #define CPU_SCS_NVIC_ISER1_SETENA35_BITN 3 820 #define CPU_SCS_NVIC_ISER1_SETENA35_M 0x00000008 821 #define CPU_SCS_NVIC_ISER1_SETENA35_S 3 822 823 // Field: [2] SETENA34 824 // 825 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 826 // interrupt number 34 (See EVENT:CPUIRQSEL34.EV for details). Reading the bit 827 // returns its current enable state. 828 #define CPU_SCS_NVIC_ISER1_SETENA34 0x00000004 829 #define CPU_SCS_NVIC_ISER1_SETENA34_BITN 2 830 #define CPU_SCS_NVIC_ISER1_SETENA34_M 0x00000004 831 #define CPU_SCS_NVIC_ISER1_SETENA34_S 2 832 833 // Field: [1] SETENA33 834 // 835 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 836 // interrupt number 33 (See EVENT:CPUIRQSEL33.EV for details). Reading the bit 837 // returns its current enable state. 838 #define CPU_SCS_NVIC_ISER1_SETENA33 0x00000002 839 #define CPU_SCS_NVIC_ISER1_SETENA33_BITN 1 840 #define CPU_SCS_NVIC_ISER1_SETENA33_M 0x00000002 841 #define CPU_SCS_NVIC_ISER1_SETENA33_S 1 842 843 // Field: [0] SETENA32 844 // 845 // Writing 0 to this bit has no effect, writing 1 to this bit enables the 846 // interrupt number 32 (See EVENT:CPUIRQSEL32.EV for details). Reading the bit 847 // returns its current enable state. 848 #define CPU_SCS_NVIC_ISER1_SETENA32 0x00000001 849 #define CPU_SCS_NVIC_ISER1_SETENA32_BITN 0 850 #define CPU_SCS_NVIC_ISER1_SETENA32_M 0x00000001 851 #define CPU_SCS_NVIC_ISER1_SETENA32_S 0 852 853 //***************************************************************************** 854 // 855 // Register: CPU_SCS_O_NVIC_ICER0 856 // 857 //***************************************************************************** 858 // Field: [31] CLRENA31 859 // 860 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 861 // interrupt number 31 (See EVENT:CPUIRQSEL31.EV for details). Reading the bit 862 // returns its current enable state. 863 #define CPU_SCS_NVIC_ICER0_CLRENA31 0x80000000 864 #define CPU_SCS_NVIC_ICER0_CLRENA31_BITN 31 865 #define CPU_SCS_NVIC_ICER0_CLRENA31_M 0x80000000 866 #define CPU_SCS_NVIC_ICER0_CLRENA31_S 31 867 868 // Field: [30] CLRENA30 869 // 870 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 871 // interrupt number 30 (See EVENT:CPUIRQSEL30.EV for details). Reading the bit 872 // returns its current enable state. 873 #define CPU_SCS_NVIC_ICER0_CLRENA30 0x40000000 874 #define CPU_SCS_NVIC_ICER0_CLRENA30_BITN 30 875 #define CPU_SCS_NVIC_ICER0_CLRENA30_M 0x40000000 876 #define CPU_SCS_NVIC_ICER0_CLRENA30_S 30 877 878 // Field: [29] CLRENA29 879 // 880 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 881 // interrupt number 29 (See EVENT:CPUIRQSEL29.EV for details). Reading the bit 882 // returns its current enable state. 883 #define CPU_SCS_NVIC_ICER0_CLRENA29 0x20000000 884 #define CPU_SCS_NVIC_ICER0_CLRENA29_BITN 29 885 #define CPU_SCS_NVIC_ICER0_CLRENA29_M 0x20000000 886 #define CPU_SCS_NVIC_ICER0_CLRENA29_S 29 887 888 // Field: [28] CLRENA28 889 // 890 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 891 // interrupt number 28 (See EVENT:CPUIRQSEL28.EV for details). Reading the bit 892 // returns its current enable state. 893 #define CPU_SCS_NVIC_ICER0_CLRENA28 0x10000000 894 #define CPU_SCS_NVIC_ICER0_CLRENA28_BITN 28 895 #define CPU_SCS_NVIC_ICER0_CLRENA28_M 0x10000000 896 #define CPU_SCS_NVIC_ICER0_CLRENA28_S 28 897 898 // Field: [27] CLRENA27 899 // 900 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 901 // interrupt number 27 (See EVENT:CPUIRQSEL27.EV for details). Reading the bit 902 // returns its current enable state. 903 #define CPU_SCS_NVIC_ICER0_CLRENA27 0x08000000 904 #define CPU_SCS_NVIC_ICER0_CLRENA27_BITN 27 905 #define CPU_SCS_NVIC_ICER0_CLRENA27_M 0x08000000 906 #define CPU_SCS_NVIC_ICER0_CLRENA27_S 27 907 908 // Field: [26] CLRENA26 909 // 910 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 911 // interrupt number 26 (See EVENT:CPUIRQSEL26.EV for details). Reading the bit 912 // returns its current enable state. 913 #define CPU_SCS_NVIC_ICER0_CLRENA26 0x04000000 914 #define CPU_SCS_NVIC_ICER0_CLRENA26_BITN 26 915 #define CPU_SCS_NVIC_ICER0_CLRENA26_M 0x04000000 916 #define CPU_SCS_NVIC_ICER0_CLRENA26_S 26 917 918 // Field: [25] CLRENA25 919 // 920 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 921 // interrupt number 25 (See EVENT:CPUIRQSEL25.EV for details). Reading the bit 922 // returns its current enable state. 923 #define CPU_SCS_NVIC_ICER0_CLRENA25 0x02000000 924 #define CPU_SCS_NVIC_ICER0_CLRENA25_BITN 25 925 #define CPU_SCS_NVIC_ICER0_CLRENA25_M 0x02000000 926 #define CPU_SCS_NVIC_ICER0_CLRENA25_S 25 927 928 // Field: [24] CLRENA24 929 // 930 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 931 // interrupt number 24 (See EVENT:CPUIRQSEL24.EV for details). Reading the bit 932 // returns its current enable state. 933 #define CPU_SCS_NVIC_ICER0_CLRENA24 0x01000000 934 #define CPU_SCS_NVIC_ICER0_CLRENA24_BITN 24 935 #define CPU_SCS_NVIC_ICER0_CLRENA24_M 0x01000000 936 #define CPU_SCS_NVIC_ICER0_CLRENA24_S 24 937 938 // Field: [23] CLRENA23 939 // 940 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 941 // interrupt number 23 (See EVENT:CPUIRQSEL23.EV for details). Reading the bit 942 // returns its current enable state. 943 #define CPU_SCS_NVIC_ICER0_CLRENA23 0x00800000 944 #define CPU_SCS_NVIC_ICER0_CLRENA23_BITN 23 945 #define CPU_SCS_NVIC_ICER0_CLRENA23_M 0x00800000 946 #define CPU_SCS_NVIC_ICER0_CLRENA23_S 23 947 948 // Field: [22] CLRENA22 949 // 950 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 951 // interrupt number 22 (See EVENT:CPUIRQSEL22.EV for details). Reading the bit 952 // returns its current enable state. 953 #define CPU_SCS_NVIC_ICER0_CLRENA22 0x00400000 954 #define CPU_SCS_NVIC_ICER0_CLRENA22_BITN 22 955 #define CPU_SCS_NVIC_ICER0_CLRENA22_M 0x00400000 956 #define CPU_SCS_NVIC_ICER0_CLRENA22_S 22 957 958 // Field: [21] CLRENA21 959 // 960 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 961 // interrupt number 21 (See EVENT:CPUIRQSEL21.EV for details). Reading the bit 962 // returns its current enable state. 963 #define CPU_SCS_NVIC_ICER0_CLRENA21 0x00200000 964 #define CPU_SCS_NVIC_ICER0_CLRENA21_BITN 21 965 #define CPU_SCS_NVIC_ICER0_CLRENA21_M 0x00200000 966 #define CPU_SCS_NVIC_ICER0_CLRENA21_S 21 967 968 // Field: [20] CLRENA20 969 // 970 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 971 // interrupt number 20 (See EVENT:CPUIRQSEL20.EV for details). Reading the bit 972 // returns its current enable state. 973 #define CPU_SCS_NVIC_ICER0_CLRENA20 0x00100000 974 #define CPU_SCS_NVIC_ICER0_CLRENA20_BITN 20 975 #define CPU_SCS_NVIC_ICER0_CLRENA20_M 0x00100000 976 #define CPU_SCS_NVIC_ICER0_CLRENA20_S 20 977 978 // Field: [19] CLRENA19 979 // 980 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 981 // interrupt number 19 (See EVENT:CPUIRQSEL19.EV for details). Reading the bit 982 // returns its current enable state. 983 #define CPU_SCS_NVIC_ICER0_CLRENA19 0x00080000 984 #define CPU_SCS_NVIC_ICER0_CLRENA19_BITN 19 985 #define CPU_SCS_NVIC_ICER0_CLRENA19_M 0x00080000 986 #define CPU_SCS_NVIC_ICER0_CLRENA19_S 19 987 988 // Field: [18] CLRENA18 989 // 990 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 991 // interrupt number 18 (See EVENT:CPUIRQSEL18.EV for details). Reading the bit 992 // returns its current enable state. 993 #define CPU_SCS_NVIC_ICER0_CLRENA18 0x00040000 994 #define CPU_SCS_NVIC_ICER0_CLRENA18_BITN 18 995 #define CPU_SCS_NVIC_ICER0_CLRENA18_M 0x00040000 996 #define CPU_SCS_NVIC_ICER0_CLRENA18_S 18 997 998 // Field: [17] CLRENA17 999 // 1000 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1001 // interrupt number 17 (See EVENT:CPUIRQSEL17.EV for details). Reading the bit 1002 // returns its current enable state. 1003 #define CPU_SCS_NVIC_ICER0_CLRENA17 0x00020000 1004 #define CPU_SCS_NVIC_ICER0_CLRENA17_BITN 17 1005 #define CPU_SCS_NVIC_ICER0_CLRENA17_M 0x00020000 1006 #define CPU_SCS_NVIC_ICER0_CLRENA17_S 17 1007 1008 // Field: [16] CLRENA16 1009 // 1010 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1011 // interrupt number 16 (See EVENT:CPUIRQSEL16.EV for details). Reading the bit 1012 // returns its current enable state. 1013 #define CPU_SCS_NVIC_ICER0_CLRENA16 0x00010000 1014 #define CPU_SCS_NVIC_ICER0_CLRENA16_BITN 16 1015 #define CPU_SCS_NVIC_ICER0_CLRENA16_M 0x00010000 1016 #define CPU_SCS_NVIC_ICER0_CLRENA16_S 16 1017 1018 // Field: [15] CLRENA15 1019 // 1020 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1021 // interrupt number 15 (See EVENT:CPUIRQSEL15.EV for details). Reading the bit 1022 // returns its current enable state. 1023 #define CPU_SCS_NVIC_ICER0_CLRENA15 0x00008000 1024 #define CPU_SCS_NVIC_ICER0_CLRENA15_BITN 15 1025 #define CPU_SCS_NVIC_ICER0_CLRENA15_M 0x00008000 1026 #define CPU_SCS_NVIC_ICER0_CLRENA15_S 15 1027 1028 // Field: [14] CLRENA14 1029 // 1030 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1031 // interrupt number 14 (See EVENT:CPUIRQSEL14.EV for details). Reading the bit 1032 // returns its current enable state. 1033 #define CPU_SCS_NVIC_ICER0_CLRENA14 0x00004000 1034 #define CPU_SCS_NVIC_ICER0_CLRENA14_BITN 14 1035 #define CPU_SCS_NVIC_ICER0_CLRENA14_M 0x00004000 1036 #define CPU_SCS_NVIC_ICER0_CLRENA14_S 14 1037 1038 // Field: [13] CLRENA13 1039 // 1040 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1041 // interrupt number 13 (See EVENT:CPUIRQSEL13.EV for details). Reading the bit 1042 // returns its current enable state. 1043 #define CPU_SCS_NVIC_ICER0_CLRENA13 0x00002000 1044 #define CPU_SCS_NVIC_ICER0_CLRENA13_BITN 13 1045 #define CPU_SCS_NVIC_ICER0_CLRENA13_M 0x00002000 1046 #define CPU_SCS_NVIC_ICER0_CLRENA13_S 13 1047 1048 // Field: [12] CLRENA12 1049 // 1050 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1051 // interrupt number 12 (See EVENT:CPUIRQSEL12.EV for details). Reading the bit 1052 // returns its current enable state. 1053 #define CPU_SCS_NVIC_ICER0_CLRENA12 0x00001000 1054 #define CPU_SCS_NVIC_ICER0_CLRENA12_BITN 12 1055 #define CPU_SCS_NVIC_ICER0_CLRENA12_M 0x00001000 1056 #define CPU_SCS_NVIC_ICER0_CLRENA12_S 12 1057 1058 // Field: [11] CLRENA11 1059 // 1060 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1061 // interrupt number 11 (See EVENT:CPUIRQSEL11.EV for details). Reading the bit 1062 // returns its current enable state. 1063 #define CPU_SCS_NVIC_ICER0_CLRENA11 0x00000800 1064 #define CPU_SCS_NVIC_ICER0_CLRENA11_BITN 11 1065 #define CPU_SCS_NVIC_ICER0_CLRENA11_M 0x00000800 1066 #define CPU_SCS_NVIC_ICER0_CLRENA11_S 11 1067 1068 // Field: [10] CLRENA10 1069 // 1070 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1071 // interrupt number 10 (See EVENT:CPUIRQSEL10.EV for details). Reading the bit 1072 // returns its current enable state. 1073 #define CPU_SCS_NVIC_ICER0_CLRENA10 0x00000400 1074 #define CPU_SCS_NVIC_ICER0_CLRENA10_BITN 10 1075 #define CPU_SCS_NVIC_ICER0_CLRENA10_M 0x00000400 1076 #define CPU_SCS_NVIC_ICER0_CLRENA10_S 10 1077 1078 // Field: [9] CLRENA9 1079 // 1080 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1081 // interrupt number 9 (See EVENT:CPUIRQSEL9.EV for details). Reading the bit 1082 // returns its current enable state. 1083 #define CPU_SCS_NVIC_ICER0_CLRENA9 0x00000200 1084 #define CPU_SCS_NVIC_ICER0_CLRENA9_BITN 9 1085 #define CPU_SCS_NVIC_ICER0_CLRENA9_M 0x00000200 1086 #define CPU_SCS_NVIC_ICER0_CLRENA9_S 9 1087 1088 // Field: [8] CLRENA8 1089 // 1090 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1091 // interrupt number 8 (See EVENT:CPUIRQSEL8.EV for details). Reading the bit 1092 // returns its current enable state. 1093 #define CPU_SCS_NVIC_ICER0_CLRENA8 0x00000100 1094 #define CPU_SCS_NVIC_ICER0_CLRENA8_BITN 8 1095 #define CPU_SCS_NVIC_ICER0_CLRENA8_M 0x00000100 1096 #define CPU_SCS_NVIC_ICER0_CLRENA8_S 8 1097 1098 // Field: [7] CLRENA7 1099 // 1100 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1101 // interrupt number 7 (See EVENT:CPUIRQSEL7.EV for details). Reading the bit 1102 // returns its current enable state. 1103 #define CPU_SCS_NVIC_ICER0_CLRENA7 0x00000080 1104 #define CPU_SCS_NVIC_ICER0_CLRENA7_BITN 7 1105 #define CPU_SCS_NVIC_ICER0_CLRENA7_M 0x00000080 1106 #define CPU_SCS_NVIC_ICER0_CLRENA7_S 7 1107 1108 // Field: [6] CLRENA6 1109 // 1110 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1111 // interrupt number 6 (See EVENT:CPUIRQSEL6.EV for details). Reading the bit 1112 // returns its current enable state. 1113 #define CPU_SCS_NVIC_ICER0_CLRENA6 0x00000040 1114 #define CPU_SCS_NVIC_ICER0_CLRENA6_BITN 6 1115 #define CPU_SCS_NVIC_ICER0_CLRENA6_M 0x00000040 1116 #define CPU_SCS_NVIC_ICER0_CLRENA6_S 6 1117 1118 // Field: [5] CLRENA5 1119 // 1120 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1121 // interrupt number 5 (See EVENT:CPUIRQSEL5.EV for details). Reading the bit 1122 // returns its current enable state. 1123 #define CPU_SCS_NVIC_ICER0_CLRENA5 0x00000020 1124 #define CPU_SCS_NVIC_ICER0_CLRENA5_BITN 5 1125 #define CPU_SCS_NVIC_ICER0_CLRENA5_M 0x00000020 1126 #define CPU_SCS_NVIC_ICER0_CLRENA5_S 5 1127 1128 // Field: [4] CLRENA4 1129 // 1130 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1131 // interrupt number 4 (See EVENT:CPUIRQSEL4.EV for details). Reading the bit 1132 // returns its current enable state. 1133 #define CPU_SCS_NVIC_ICER0_CLRENA4 0x00000010 1134 #define CPU_SCS_NVIC_ICER0_CLRENA4_BITN 4 1135 #define CPU_SCS_NVIC_ICER0_CLRENA4_M 0x00000010 1136 #define CPU_SCS_NVIC_ICER0_CLRENA4_S 4 1137 1138 // Field: [3] CLRENA3 1139 // 1140 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1141 // interrupt number 3 (See EVENT:CPUIRQSEL3.EV for details). Reading the bit 1142 // returns its current enable state. 1143 #define CPU_SCS_NVIC_ICER0_CLRENA3 0x00000008 1144 #define CPU_SCS_NVIC_ICER0_CLRENA3_BITN 3 1145 #define CPU_SCS_NVIC_ICER0_CLRENA3_M 0x00000008 1146 #define CPU_SCS_NVIC_ICER0_CLRENA3_S 3 1147 1148 // Field: [2] CLRENA2 1149 // 1150 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1151 // interrupt number 2 (See EVENT:CPUIRQSEL2.EV for details). Reading the bit 1152 // returns its current enable state. 1153 #define CPU_SCS_NVIC_ICER0_CLRENA2 0x00000004 1154 #define CPU_SCS_NVIC_ICER0_CLRENA2_BITN 2 1155 #define CPU_SCS_NVIC_ICER0_CLRENA2_M 0x00000004 1156 #define CPU_SCS_NVIC_ICER0_CLRENA2_S 2 1157 1158 // Field: [1] CLRENA1 1159 // 1160 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1161 // interrupt number 1 (See EVENT:CPUIRQSEL1.EV for details). Reading the bit 1162 // returns its current enable state. 1163 #define CPU_SCS_NVIC_ICER0_CLRENA1 0x00000002 1164 #define CPU_SCS_NVIC_ICER0_CLRENA1_BITN 1 1165 #define CPU_SCS_NVIC_ICER0_CLRENA1_M 0x00000002 1166 #define CPU_SCS_NVIC_ICER0_CLRENA1_S 1 1167 1168 // Field: [0] CLRENA0 1169 // 1170 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1171 // interrupt number 0 (See EVENT:CPUIRQSEL0.EV for details). Reading the bit 1172 // returns its current enable state. 1173 #define CPU_SCS_NVIC_ICER0_CLRENA0 0x00000001 1174 #define CPU_SCS_NVIC_ICER0_CLRENA0_BITN 0 1175 #define CPU_SCS_NVIC_ICER0_CLRENA0_M 0x00000001 1176 #define CPU_SCS_NVIC_ICER0_CLRENA0_S 0 1177 1178 //***************************************************************************** 1179 // 1180 // Register: CPU_SCS_O_NVIC_ICER1 1181 // 1182 //***************************************************************************** 1183 // Field: [5] CLRENA37 1184 // 1185 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1186 // interrupt number 37 (See EVENT:CPUIRQSEL37.EV for details). Reading the bit 1187 // returns its current enable state. 1188 #define CPU_SCS_NVIC_ICER1_CLRENA37 0x00000020 1189 #define CPU_SCS_NVIC_ICER1_CLRENA37_BITN 5 1190 #define CPU_SCS_NVIC_ICER1_CLRENA37_M 0x00000020 1191 #define CPU_SCS_NVIC_ICER1_CLRENA37_S 5 1192 1193 // Field: [4] CLRENA36 1194 // 1195 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1196 // interrupt number 36 (See EVENT:CPUIRQSEL36.EV for details). Reading the bit 1197 // returns its current enable state. 1198 #define CPU_SCS_NVIC_ICER1_CLRENA36 0x00000010 1199 #define CPU_SCS_NVIC_ICER1_CLRENA36_BITN 4 1200 #define CPU_SCS_NVIC_ICER1_CLRENA36_M 0x00000010 1201 #define CPU_SCS_NVIC_ICER1_CLRENA36_S 4 1202 1203 // Field: [3] CLRENA35 1204 // 1205 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1206 // interrupt number 35 (See EVENT:CPUIRQSEL35.EV for details). Reading the bit 1207 // returns its current enable state. 1208 #define CPU_SCS_NVIC_ICER1_CLRENA35 0x00000008 1209 #define CPU_SCS_NVIC_ICER1_CLRENA35_BITN 3 1210 #define CPU_SCS_NVIC_ICER1_CLRENA35_M 0x00000008 1211 #define CPU_SCS_NVIC_ICER1_CLRENA35_S 3 1212 1213 // Field: [2] CLRENA34 1214 // 1215 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1216 // interrupt number 34 (See EVENT:CPUIRQSEL34.EV for details). Reading the bit 1217 // returns its current enable state. 1218 #define CPU_SCS_NVIC_ICER1_CLRENA34 0x00000004 1219 #define CPU_SCS_NVIC_ICER1_CLRENA34_BITN 2 1220 #define CPU_SCS_NVIC_ICER1_CLRENA34_M 0x00000004 1221 #define CPU_SCS_NVIC_ICER1_CLRENA34_S 2 1222 1223 // Field: [1] CLRENA33 1224 // 1225 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1226 // interrupt number 33 (See EVENT:CPUIRQSEL33.EV for details). Reading the bit 1227 // returns its current enable state. 1228 #define CPU_SCS_NVIC_ICER1_CLRENA33 0x00000002 1229 #define CPU_SCS_NVIC_ICER1_CLRENA33_BITN 1 1230 #define CPU_SCS_NVIC_ICER1_CLRENA33_M 0x00000002 1231 #define CPU_SCS_NVIC_ICER1_CLRENA33_S 1 1232 1233 // Field: [0] CLRENA32 1234 // 1235 // Writing 0 to this bit has no effect, writing 1 to this bit disables the 1236 // interrupt number 32 (See EVENT:CPUIRQSEL32.EV for details). Reading the bit 1237 // returns its current enable state. 1238 #define CPU_SCS_NVIC_ICER1_CLRENA32 0x00000001 1239 #define CPU_SCS_NVIC_ICER1_CLRENA32_BITN 0 1240 #define CPU_SCS_NVIC_ICER1_CLRENA32_M 0x00000001 1241 #define CPU_SCS_NVIC_ICER1_CLRENA32_S 0 1242 1243 //***************************************************************************** 1244 // 1245 // Register: CPU_SCS_O_NVIC_ISPR0 1246 // 1247 //***************************************************************************** 1248 // Field: [31] SETPEND31 1249 // 1250 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1251 // interrupt number 31 (See EVENT:CPUIRQSEL31.EV for details). Reading the bit 1252 // returns its current state. 1253 #define CPU_SCS_NVIC_ISPR0_SETPEND31 0x80000000 1254 #define CPU_SCS_NVIC_ISPR0_SETPEND31_BITN 31 1255 #define CPU_SCS_NVIC_ISPR0_SETPEND31_M 0x80000000 1256 #define CPU_SCS_NVIC_ISPR0_SETPEND31_S 31 1257 1258 // Field: [30] SETPEND30 1259 // 1260 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1261 // interrupt number 30 (See EVENT:CPUIRQSEL30.EV for details). Reading the bit 1262 // returns its current state. 1263 #define CPU_SCS_NVIC_ISPR0_SETPEND30 0x40000000 1264 #define CPU_SCS_NVIC_ISPR0_SETPEND30_BITN 30 1265 #define CPU_SCS_NVIC_ISPR0_SETPEND30_M 0x40000000 1266 #define CPU_SCS_NVIC_ISPR0_SETPEND30_S 30 1267 1268 // Field: [29] SETPEND29 1269 // 1270 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1271 // interrupt number 29 (See EVENT:CPUIRQSEL29.EV for details). Reading the bit 1272 // returns its current state. 1273 #define CPU_SCS_NVIC_ISPR0_SETPEND29 0x20000000 1274 #define CPU_SCS_NVIC_ISPR0_SETPEND29_BITN 29 1275 #define CPU_SCS_NVIC_ISPR0_SETPEND29_M 0x20000000 1276 #define CPU_SCS_NVIC_ISPR0_SETPEND29_S 29 1277 1278 // Field: [28] SETPEND28 1279 // 1280 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1281 // interrupt number 28 (See EVENT:CPUIRQSEL28.EV for details). Reading the bit 1282 // returns its current state. 1283 #define CPU_SCS_NVIC_ISPR0_SETPEND28 0x10000000 1284 #define CPU_SCS_NVIC_ISPR0_SETPEND28_BITN 28 1285 #define CPU_SCS_NVIC_ISPR0_SETPEND28_M 0x10000000 1286 #define CPU_SCS_NVIC_ISPR0_SETPEND28_S 28 1287 1288 // Field: [27] SETPEND27 1289 // 1290 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1291 // interrupt number 27 (See EVENT:CPUIRQSEL27.EV for details). Reading the bit 1292 // returns its current state. 1293 #define CPU_SCS_NVIC_ISPR0_SETPEND27 0x08000000 1294 #define CPU_SCS_NVIC_ISPR0_SETPEND27_BITN 27 1295 #define CPU_SCS_NVIC_ISPR0_SETPEND27_M 0x08000000 1296 #define CPU_SCS_NVIC_ISPR0_SETPEND27_S 27 1297 1298 // Field: [26] SETPEND26 1299 // 1300 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1301 // interrupt number 26 (See EVENT:CPUIRQSEL26.EV for details). Reading the bit 1302 // returns its current state. 1303 #define CPU_SCS_NVIC_ISPR0_SETPEND26 0x04000000 1304 #define CPU_SCS_NVIC_ISPR0_SETPEND26_BITN 26 1305 #define CPU_SCS_NVIC_ISPR0_SETPEND26_M 0x04000000 1306 #define CPU_SCS_NVIC_ISPR0_SETPEND26_S 26 1307 1308 // Field: [25] SETPEND25 1309 // 1310 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1311 // interrupt number 25 (See EVENT:CPUIRQSEL25.EV for details). Reading the bit 1312 // returns its current state. 1313 #define CPU_SCS_NVIC_ISPR0_SETPEND25 0x02000000 1314 #define CPU_SCS_NVIC_ISPR0_SETPEND25_BITN 25 1315 #define CPU_SCS_NVIC_ISPR0_SETPEND25_M 0x02000000 1316 #define CPU_SCS_NVIC_ISPR0_SETPEND25_S 25 1317 1318 // Field: [24] SETPEND24 1319 // 1320 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1321 // interrupt number 24 (See EVENT:CPUIRQSEL24.EV for details). Reading the bit 1322 // returns its current state. 1323 #define CPU_SCS_NVIC_ISPR0_SETPEND24 0x01000000 1324 #define CPU_SCS_NVIC_ISPR0_SETPEND24_BITN 24 1325 #define CPU_SCS_NVIC_ISPR0_SETPEND24_M 0x01000000 1326 #define CPU_SCS_NVIC_ISPR0_SETPEND24_S 24 1327 1328 // Field: [23] SETPEND23 1329 // 1330 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1331 // interrupt number 23 (See EVENT:CPUIRQSEL23.EV for details). Reading the bit 1332 // returns its current state. 1333 #define CPU_SCS_NVIC_ISPR0_SETPEND23 0x00800000 1334 #define CPU_SCS_NVIC_ISPR0_SETPEND23_BITN 23 1335 #define CPU_SCS_NVIC_ISPR0_SETPEND23_M 0x00800000 1336 #define CPU_SCS_NVIC_ISPR0_SETPEND23_S 23 1337 1338 // Field: [22] SETPEND22 1339 // 1340 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1341 // interrupt number 22 (See EVENT:CPUIRQSEL22.EV for details). Reading the bit 1342 // returns its current state. 1343 #define CPU_SCS_NVIC_ISPR0_SETPEND22 0x00400000 1344 #define CPU_SCS_NVIC_ISPR0_SETPEND22_BITN 22 1345 #define CPU_SCS_NVIC_ISPR0_SETPEND22_M 0x00400000 1346 #define CPU_SCS_NVIC_ISPR0_SETPEND22_S 22 1347 1348 // Field: [21] SETPEND21 1349 // 1350 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1351 // interrupt number 21 (See EVENT:CPUIRQSEL21.EV for details). Reading the bit 1352 // returns its current state. 1353 #define CPU_SCS_NVIC_ISPR0_SETPEND21 0x00200000 1354 #define CPU_SCS_NVIC_ISPR0_SETPEND21_BITN 21 1355 #define CPU_SCS_NVIC_ISPR0_SETPEND21_M 0x00200000 1356 #define CPU_SCS_NVIC_ISPR0_SETPEND21_S 21 1357 1358 // Field: [20] SETPEND20 1359 // 1360 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1361 // interrupt number 20 (See EVENT:CPUIRQSEL20.EV for details). Reading the bit 1362 // returns its current state. 1363 #define CPU_SCS_NVIC_ISPR0_SETPEND20 0x00100000 1364 #define CPU_SCS_NVIC_ISPR0_SETPEND20_BITN 20 1365 #define CPU_SCS_NVIC_ISPR0_SETPEND20_M 0x00100000 1366 #define CPU_SCS_NVIC_ISPR0_SETPEND20_S 20 1367 1368 // Field: [19] SETPEND19 1369 // 1370 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1371 // interrupt number 19 (See EVENT:CPUIRQSEL19.EV for details). Reading the bit 1372 // returns its current state. 1373 #define CPU_SCS_NVIC_ISPR0_SETPEND19 0x00080000 1374 #define CPU_SCS_NVIC_ISPR0_SETPEND19_BITN 19 1375 #define CPU_SCS_NVIC_ISPR0_SETPEND19_M 0x00080000 1376 #define CPU_SCS_NVIC_ISPR0_SETPEND19_S 19 1377 1378 // Field: [18] SETPEND18 1379 // 1380 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1381 // interrupt number 18 (See EVENT:CPUIRQSEL18.EV for details). Reading the bit 1382 // returns its current state. 1383 #define CPU_SCS_NVIC_ISPR0_SETPEND18 0x00040000 1384 #define CPU_SCS_NVIC_ISPR0_SETPEND18_BITN 18 1385 #define CPU_SCS_NVIC_ISPR0_SETPEND18_M 0x00040000 1386 #define CPU_SCS_NVIC_ISPR0_SETPEND18_S 18 1387 1388 // Field: [17] SETPEND17 1389 // 1390 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1391 // interrupt number 17 (See EVENT:CPUIRQSEL17.EV for details). Reading the bit 1392 // returns its current state. 1393 #define CPU_SCS_NVIC_ISPR0_SETPEND17 0x00020000 1394 #define CPU_SCS_NVIC_ISPR0_SETPEND17_BITN 17 1395 #define CPU_SCS_NVIC_ISPR0_SETPEND17_M 0x00020000 1396 #define CPU_SCS_NVIC_ISPR0_SETPEND17_S 17 1397 1398 // Field: [16] SETPEND16 1399 // 1400 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1401 // interrupt number 16 (See EVENT:CPUIRQSEL16.EV for details). Reading the bit 1402 // returns its current state. 1403 #define CPU_SCS_NVIC_ISPR0_SETPEND16 0x00010000 1404 #define CPU_SCS_NVIC_ISPR0_SETPEND16_BITN 16 1405 #define CPU_SCS_NVIC_ISPR0_SETPEND16_M 0x00010000 1406 #define CPU_SCS_NVIC_ISPR0_SETPEND16_S 16 1407 1408 // Field: [15] SETPEND15 1409 // 1410 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1411 // interrupt number 15 (See EVENT:CPUIRQSEL15.EV for details). Reading the bit 1412 // returns its current state. 1413 #define CPU_SCS_NVIC_ISPR0_SETPEND15 0x00008000 1414 #define CPU_SCS_NVIC_ISPR0_SETPEND15_BITN 15 1415 #define CPU_SCS_NVIC_ISPR0_SETPEND15_M 0x00008000 1416 #define CPU_SCS_NVIC_ISPR0_SETPEND15_S 15 1417 1418 // Field: [14] SETPEND14 1419 // 1420 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1421 // interrupt number 14 (See EVENT:CPUIRQSEL14.EV for details). Reading the bit 1422 // returns its current state. 1423 #define CPU_SCS_NVIC_ISPR0_SETPEND14 0x00004000 1424 #define CPU_SCS_NVIC_ISPR0_SETPEND14_BITN 14 1425 #define CPU_SCS_NVIC_ISPR0_SETPEND14_M 0x00004000 1426 #define CPU_SCS_NVIC_ISPR0_SETPEND14_S 14 1427 1428 // Field: [13] SETPEND13 1429 // 1430 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1431 // interrupt number 13 (See EVENT:CPUIRQSEL13.EV for details). Reading the bit 1432 // returns its current state. 1433 #define CPU_SCS_NVIC_ISPR0_SETPEND13 0x00002000 1434 #define CPU_SCS_NVIC_ISPR0_SETPEND13_BITN 13 1435 #define CPU_SCS_NVIC_ISPR0_SETPEND13_M 0x00002000 1436 #define CPU_SCS_NVIC_ISPR0_SETPEND13_S 13 1437 1438 // Field: [12] SETPEND12 1439 // 1440 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1441 // interrupt number 12 (See EVENT:CPUIRQSEL12.EV for details). Reading the bit 1442 // returns its current state. 1443 #define CPU_SCS_NVIC_ISPR0_SETPEND12 0x00001000 1444 #define CPU_SCS_NVIC_ISPR0_SETPEND12_BITN 12 1445 #define CPU_SCS_NVIC_ISPR0_SETPEND12_M 0x00001000 1446 #define CPU_SCS_NVIC_ISPR0_SETPEND12_S 12 1447 1448 // Field: [11] SETPEND11 1449 // 1450 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1451 // interrupt number 11 (See EVENT:CPUIRQSEL11.EV for details). Reading the bit 1452 // returns its current state. 1453 #define CPU_SCS_NVIC_ISPR0_SETPEND11 0x00000800 1454 #define CPU_SCS_NVIC_ISPR0_SETPEND11_BITN 11 1455 #define CPU_SCS_NVIC_ISPR0_SETPEND11_M 0x00000800 1456 #define CPU_SCS_NVIC_ISPR0_SETPEND11_S 11 1457 1458 // Field: [10] SETPEND10 1459 // 1460 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1461 // interrupt number 10 (See EVENT:CPUIRQSEL10.EV for details). Reading the bit 1462 // returns its current state. 1463 #define CPU_SCS_NVIC_ISPR0_SETPEND10 0x00000400 1464 #define CPU_SCS_NVIC_ISPR0_SETPEND10_BITN 10 1465 #define CPU_SCS_NVIC_ISPR0_SETPEND10_M 0x00000400 1466 #define CPU_SCS_NVIC_ISPR0_SETPEND10_S 10 1467 1468 // Field: [9] SETPEND9 1469 // 1470 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1471 // interrupt number 9 (See EVENT:CPUIRQSEL9.EV for details). Reading the bit 1472 // returns its current state. 1473 #define CPU_SCS_NVIC_ISPR0_SETPEND9 0x00000200 1474 #define CPU_SCS_NVIC_ISPR0_SETPEND9_BITN 9 1475 #define CPU_SCS_NVIC_ISPR0_SETPEND9_M 0x00000200 1476 #define CPU_SCS_NVIC_ISPR0_SETPEND9_S 9 1477 1478 // Field: [8] SETPEND8 1479 // 1480 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1481 // interrupt number 8 (See EVENT:CPUIRQSEL8.EV for details). Reading the bit 1482 // returns its current state. 1483 #define CPU_SCS_NVIC_ISPR0_SETPEND8 0x00000100 1484 #define CPU_SCS_NVIC_ISPR0_SETPEND8_BITN 8 1485 #define CPU_SCS_NVIC_ISPR0_SETPEND8_M 0x00000100 1486 #define CPU_SCS_NVIC_ISPR0_SETPEND8_S 8 1487 1488 // Field: [7] SETPEND7 1489 // 1490 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1491 // interrupt number 7 (See EVENT:CPUIRQSEL7.EV for details). Reading the bit 1492 // returns its current state. 1493 #define CPU_SCS_NVIC_ISPR0_SETPEND7 0x00000080 1494 #define CPU_SCS_NVIC_ISPR0_SETPEND7_BITN 7 1495 #define CPU_SCS_NVIC_ISPR0_SETPEND7_M 0x00000080 1496 #define CPU_SCS_NVIC_ISPR0_SETPEND7_S 7 1497 1498 // Field: [6] SETPEND6 1499 // 1500 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1501 // interrupt number 6 (See EVENT:CPUIRQSEL6.EV for details). Reading the bit 1502 // returns its current state. 1503 #define CPU_SCS_NVIC_ISPR0_SETPEND6 0x00000040 1504 #define CPU_SCS_NVIC_ISPR0_SETPEND6_BITN 6 1505 #define CPU_SCS_NVIC_ISPR0_SETPEND6_M 0x00000040 1506 #define CPU_SCS_NVIC_ISPR0_SETPEND6_S 6 1507 1508 // Field: [5] SETPEND5 1509 // 1510 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1511 // interrupt number 5 (See EVENT:CPUIRQSEL5.EV for details). Reading the bit 1512 // returns its current state. 1513 #define CPU_SCS_NVIC_ISPR0_SETPEND5 0x00000020 1514 #define CPU_SCS_NVIC_ISPR0_SETPEND5_BITN 5 1515 #define CPU_SCS_NVIC_ISPR0_SETPEND5_M 0x00000020 1516 #define CPU_SCS_NVIC_ISPR0_SETPEND5_S 5 1517 1518 // Field: [4] SETPEND4 1519 // 1520 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1521 // interrupt number 4 (See EVENT:CPUIRQSEL4.EV for details). Reading the bit 1522 // returns its current state. 1523 #define CPU_SCS_NVIC_ISPR0_SETPEND4 0x00000010 1524 #define CPU_SCS_NVIC_ISPR0_SETPEND4_BITN 4 1525 #define CPU_SCS_NVIC_ISPR0_SETPEND4_M 0x00000010 1526 #define CPU_SCS_NVIC_ISPR0_SETPEND4_S 4 1527 1528 // Field: [3] SETPEND3 1529 // 1530 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1531 // interrupt number 3 (See EVENT:CPUIRQSEL3.EV for details). Reading the bit 1532 // returns its current state. 1533 #define CPU_SCS_NVIC_ISPR0_SETPEND3 0x00000008 1534 #define CPU_SCS_NVIC_ISPR0_SETPEND3_BITN 3 1535 #define CPU_SCS_NVIC_ISPR0_SETPEND3_M 0x00000008 1536 #define CPU_SCS_NVIC_ISPR0_SETPEND3_S 3 1537 1538 // Field: [2] SETPEND2 1539 // 1540 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1541 // interrupt number 2 (See EVENT:CPUIRQSEL2.EV for details). Reading the bit 1542 // returns its current state. 1543 #define CPU_SCS_NVIC_ISPR0_SETPEND2 0x00000004 1544 #define CPU_SCS_NVIC_ISPR0_SETPEND2_BITN 2 1545 #define CPU_SCS_NVIC_ISPR0_SETPEND2_M 0x00000004 1546 #define CPU_SCS_NVIC_ISPR0_SETPEND2_S 2 1547 1548 // Field: [1] SETPEND1 1549 // 1550 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1551 // interrupt number 1 (See EVENT:CPUIRQSEL1.EV for details). Reading the bit 1552 // returns its current state. 1553 #define CPU_SCS_NVIC_ISPR0_SETPEND1 0x00000002 1554 #define CPU_SCS_NVIC_ISPR0_SETPEND1_BITN 1 1555 #define CPU_SCS_NVIC_ISPR0_SETPEND1_M 0x00000002 1556 #define CPU_SCS_NVIC_ISPR0_SETPEND1_S 1 1557 1558 // Field: [0] SETPEND0 1559 // 1560 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1561 // interrupt number 0 (See EVENT:CPUIRQSEL0.EV for details). Reading the bit 1562 // returns its current state. 1563 #define CPU_SCS_NVIC_ISPR0_SETPEND0 0x00000001 1564 #define CPU_SCS_NVIC_ISPR0_SETPEND0_BITN 0 1565 #define CPU_SCS_NVIC_ISPR0_SETPEND0_M 0x00000001 1566 #define CPU_SCS_NVIC_ISPR0_SETPEND0_S 0 1567 1568 //***************************************************************************** 1569 // 1570 // Register: CPU_SCS_O_NVIC_ISPR1 1571 // 1572 //***************************************************************************** 1573 // Field: [5] SETPEND37 1574 // 1575 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1576 // interrupt number 37 (See EVENT:CPUIRQSEL37.EV for details). Reading the bit 1577 // returns its current state. 1578 #define CPU_SCS_NVIC_ISPR1_SETPEND37 0x00000020 1579 #define CPU_SCS_NVIC_ISPR1_SETPEND37_BITN 5 1580 #define CPU_SCS_NVIC_ISPR1_SETPEND37_M 0x00000020 1581 #define CPU_SCS_NVIC_ISPR1_SETPEND37_S 5 1582 1583 // Field: [4] SETPEND36 1584 // 1585 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1586 // interrupt number 36 (See EVENT:CPUIRQSEL36.EV for details). Reading the bit 1587 // returns its current state. 1588 #define CPU_SCS_NVIC_ISPR1_SETPEND36 0x00000010 1589 #define CPU_SCS_NVIC_ISPR1_SETPEND36_BITN 4 1590 #define CPU_SCS_NVIC_ISPR1_SETPEND36_M 0x00000010 1591 #define CPU_SCS_NVIC_ISPR1_SETPEND36_S 4 1592 1593 // Field: [3] SETPEND35 1594 // 1595 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1596 // interrupt number 35 (See EVENT:CPUIRQSEL35.EV for details). Reading the bit 1597 // returns its current state. 1598 #define CPU_SCS_NVIC_ISPR1_SETPEND35 0x00000008 1599 #define CPU_SCS_NVIC_ISPR1_SETPEND35_BITN 3 1600 #define CPU_SCS_NVIC_ISPR1_SETPEND35_M 0x00000008 1601 #define CPU_SCS_NVIC_ISPR1_SETPEND35_S 3 1602 1603 // Field: [2] SETPEND34 1604 // 1605 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1606 // interrupt number 34 (See EVENT:CPUIRQSEL34.EV for details). Reading the bit 1607 // returns its current state. 1608 #define CPU_SCS_NVIC_ISPR1_SETPEND34 0x00000004 1609 #define CPU_SCS_NVIC_ISPR1_SETPEND34_BITN 2 1610 #define CPU_SCS_NVIC_ISPR1_SETPEND34_M 0x00000004 1611 #define CPU_SCS_NVIC_ISPR1_SETPEND34_S 2 1612 1613 // Field: [1] SETPEND33 1614 // 1615 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1616 // interrupt number 33 (See EVENT:CPUIRQSEL33.EV for details). Reading the bit 1617 // returns its current state. 1618 #define CPU_SCS_NVIC_ISPR1_SETPEND33 0x00000002 1619 #define CPU_SCS_NVIC_ISPR1_SETPEND33_BITN 1 1620 #define CPU_SCS_NVIC_ISPR1_SETPEND33_M 0x00000002 1621 #define CPU_SCS_NVIC_ISPR1_SETPEND33_S 1 1622 1623 // Field: [0] SETPEND32 1624 // 1625 // Writing 0 to this bit has no effect, writing 1 to this bit pends the 1626 // interrupt number 32 (See EVENT:CPUIRQSEL32.EV for details). Reading the bit 1627 // returns its current state. 1628 #define CPU_SCS_NVIC_ISPR1_SETPEND32 0x00000001 1629 #define CPU_SCS_NVIC_ISPR1_SETPEND32_BITN 0 1630 #define CPU_SCS_NVIC_ISPR1_SETPEND32_M 0x00000001 1631 #define CPU_SCS_NVIC_ISPR1_SETPEND32_S 0 1632 1633 //***************************************************************************** 1634 // 1635 // Register: CPU_SCS_O_NVIC_ICPR0 1636 // 1637 //***************************************************************************** 1638 // Field: [31] CLRPEND31 1639 // 1640 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1641 // corresponding pending interrupt 31 (See EVENT:CPUIRQSEL31.EV for details). 1642 // Reading the bit returns its current state. 1643 #define CPU_SCS_NVIC_ICPR0_CLRPEND31 0x80000000 1644 #define CPU_SCS_NVIC_ICPR0_CLRPEND31_BITN 31 1645 #define CPU_SCS_NVIC_ICPR0_CLRPEND31_M 0x80000000 1646 #define CPU_SCS_NVIC_ICPR0_CLRPEND31_S 31 1647 1648 // Field: [30] CLRPEND30 1649 // 1650 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1651 // corresponding pending interrupt 30 (See EVENT:CPUIRQSEL30.EV for details). 1652 // Reading the bit returns its current state. 1653 #define CPU_SCS_NVIC_ICPR0_CLRPEND30 0x40000000 1654 #define CPU_SCS_NVIC_ICPR0_CLRPEND30_BITN 30 1655 #define CPU_SCS_NVIC_ICPR0_CLRPEND30_M 0x40000000 1656 #define CPU_SCS_NVIC_ICPR0_CLRPEND30_S 30 1657 1658 // Field: [29] CLRPEND29 1659 // 1660 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1661 // corresponding pending interrupt 29 (See EVENT:CPUIRQSEL29.EV for details). 1662 // Reading the bit returns its current state. 1663 #define CPU_SCS_NVIC_ICPR0_CLRPEND29 0x20000000 1664 #define CPU_SCS_NVIC_ICPR0_CLRPEND29_BITN 29 1665 #define CPU_SCS_NVIC_ICPR0_CLRPEND29_M 0x20000000 1666 #define CPU_SCS_NVIC_ICPR0_CLRPEND29_S 29 1667 1668 // Field: [28] CLRPEND28 1669 // 1670 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1671 // corresponding pending interrupt 28 (See EVENT:CPUIRQSEL28.EV for details). 1672 // Reading the bit returns its current state. 1673 #define CPU_SCS_NVIC_ICPR0_CLRPEND28 0x10000000 1674 #define CPU_SCS_NVIC_ICPR0_CLRPEND28_BITN 28 1675 #define CPU_SCS_NVIC_ICPR0_CLRPEND28_M 0x10000000 1676 #define CPU_SCS_NVIC_ICPR0_CLRPEND28_S 28 1677 1678 // Field: [27] CLRPEND27 1679 // 1680 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1681 // corresponding pending interrupt 27 (See EVENT:CPUIRQSEL27.EV for details). 1682 // Reading the bit returns its current state. 1683 #define CPU_SCS_NVIC_ICPR0_CLRPEND27 0x08000000 1684 #define CPU_SCS_NVIC_ICPR0_CLRPEND27_BITN 27 1685 #define CPU_SCS_NVIC_ICPR0_CLRPEND27_M 0x08000000 1686 #define CPU_SCS_NVIC_ICPR0_CLRPEND27_S 27 1687 1688 // Field: [26] CLRPEND26 1689 // 1690 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1691 // corresponding pending interrupt 26 (See EVENT:CPUIRQSEL26.EV for details). 1692 // Reading the bit returns its current state. 1693 #define CPU_SCS_NVIC_ICPR0_CLRPEND26 0x04000000 1694 #define CPU_SCS_NVIC_ICPR0_CLRPEND26_BITN 26 1695 #define CPU_SCS_NVIC_ICPR0_CLRPEND26_M 0x04000000 1696 #define CPU_SCS_NVIC_ICPR0_CLRPEND26_S 26 1697 1698 // Field: [25] CLRPEND25 1699 // 1700 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1701 // corresponding pending interrupt 25 (See EVENT:CPUIRQSEL25.EV for details). 1702 // Reading the bit returns its current state. 1703 #define CPU_SCS_NVIC_ICPR0_CLRPEND25 0x02000000 1704 #define CPU_SCS_NVIC_ICPR0_CLRPEND25_BITN 25 1705 #define CPU_SCS_NVIC_ICPR0_CLRPEND25_M 0x02000000 1706 #define CPU_SCS_NVIC_ICPR0_CLRPEND25_S 25 1707 1708 // Field: [24] CLRPEND24 1709 // 1710 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1711 // corresponding pending interrupt 24 (See EVENT:CPUIRQSEL24.EV for details). 1712 // Reading the bit returns its current state. 1713 #define CPU_SCS_NVIC_ICPR0_CLRPEND24 0x01000000 1714 #define CPU_SCS_NVIC_ICPR0_CLRPEND24_BITN 24 1715 #define CPU_SCS_NVIC_ICPR0_CLRPEND24_M 0x01000000 1716 #define CPU_SCS_NVIC_ICPR0_CLRPEND24_S 24 1717 1718 // Field: [23] CLRPEND23 1719 // 1720 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1721 // corresponding pending interrupt 23 (See EVENT:CPUIRQSEL23.EV for details). 1722 // Reading the bit returns its current state. 1723 #define CPU_SCS_NVIC_ICPR0_CLRPEND23 0x00800000 1724 #define CPU_SCS_NVIC_ICPR0_CLRPEND23_BITN 23 1725 #define CPU_SCS_NVIC_ICPR0_CLRPEND23_M 0x00800000 1726 #define CPU_SCS_NVIC_ICPR0_CLRPEND23_S 23 1727 1728 // Field: [22] CLRPEND22 1729 // 1730 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1731 // corresponding pending interrupt 22 (See EVENT:CPUIRQSEL22.EV for details). 1732 // Reading the bit returns its current state. 1733 #define CPU_SCS_NVIC_ICPR0_CLRPEND22 0x00400000 1734 #define CPU_SCS_NVIC_ICPR0_CLRPEND22_BITN 22 1735 #define CPU_SCS_NVIC_ICPR0_CLRPEND22_M 0x00400000 1736 #define CPU_SCS_NVIC_ICPR0_CLRPEND22_S 22 1737 1738 // Field: [21] CLRPEND21 1739 // 1740 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1741 // corresponding pending interrupt 21 (See EVENT:CPUIRQSEL21.EV for details). 1742 // Reading the bit returns its current state. 1743 #define CPU_SCS_NVIC_ICPR0_CLRPEND21 0x00200000 1744 #define CPU_SCS_NVIC_ICPR0_CLRPEND21_BITN 21 1745 #define CPU_SCS_NVIC_ICPR0_CLRPEND21_M 0x00200000 1746 #define CPU_SCS_NVIC_ICPR0_CLRPEND21_S 21 1747 1748 // Field: [20] CLRPEND20 1749 // 1750 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1751 // corresponding pending interrupt 20 (See EVENT:CPUIRQSEL20.EV for details). 1752 // Reading the bit returns its current state. 1753 #define CPU_SCS_NVIC_ICPR0_CLRPEND20 0x00100000 1754 #define CPU_SCS_NVIC_ICPR0_CLRPEND20_BITN 20 1755 #define CPU_SCS_NVIC_ICPR0_CLRPEND20_M 0x00100000 1756 #define CPU_SCS_NVIC_ICPR0_CLRPEND20_S 20 1757 1758 // Field: [19] CLRPEND19 1759 // 1760 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1761 // corresponding pending interrupt 19 (See EVENT:CPUIRQSEL19.EV for details). 1762 // Reading the bit returns its current state. 1763 #define CPU_SCS_NVIC_ICPR0_CLRPEND19 0x00080000 1764 #define CPU_SCS_NVIC_ICPR0_CLRPEND19_BITN 19 1765 #define CPU_SCS_NVIC_ICPR0_CLRPEND19_M 0x00080000 1766 #define CPU_SCS_NVIC_ICPR0_CLRPEND19_S 19 1767 1768 // Field: [18] CLRPEND18 1769 // 1770 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1771 // corresponding pending interrupt 18 (See EVENT:CPUIRQSEL18.EV for details). 1772 // Reading the bit returns its current state. 1773 #define CPU_SCS_NVIC_ICPR0_CLRPEND18 0x00040000 1774 #define CPU_SCS_NVIC_ICPR0_CLRPEND18_BITN 18 1775 #define CPU_SCS_NVIC_ICPR0_CLRPEND18_M 0x00040000 1776 #define CPU_SCS_NVIC_ICPR0_CLRPEND18_S 18 1777 1778 // Field: [17] CLRPEND17 1779 // 1780 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1781 // corresponding pending interrupt 17 (See EVENT:CPUIRQSEL17.EV for details). 1782 // Reading the bit returns its current state. 1783 #define CPU_SCS_NVIC_ICPR0_CLRPEND17 0x00020000 1784 #define CPU_SCS_NVIC_ICPR0_CLRPEND17_BITN 17 1785 #define CPU_SCS_NVIC_ICPR0_CLRPEND17_M 0x00020000 1786 #define CPU_SCS_NVIC_ICPR0_CLRPEND17_S 17 1787 1788 // Field: [16] CLRPEND16 1789 // 1790 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1791 // corresponding pending interrupt 16 (See EVENT:CPUIRQSEL16.EV for details). 1792 // Reading the bit returns its current state. 1793 #define CPU_SCS_NVIC_ICPR0_CLRPEND16 0x00010000 1794 #define CPU_SCS_NVIC_ICPR0_CLRPEND16_BITN 16 1795 #define CPU_SCS_NVIC_ICPR0_CLRPEND16_M 0x00010000 1796 #define CPU_SCS_NVIC_ICPR0_CLRPEND16_S 16 1797 1798 // Field: [15] CLRPEND15 1799 // 1800 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1801 // corresponding pending interrupt 15 (See EVENT:CPUIRQSEL15.EV for details). 1802 // Reading the bit returns its current state. 1803 #define CPU_SCS_NVIC_ICPR0_CLRPEND15 0x00008000 1804 #define CPU_SCS_NVIC_ICPR0_CLRPEND15_BITN 15 1805 #define CPU_SCS_NVIC_ICPR0_CLRPEND15_M 0x00008000 1806 #define CPU_SCS_NVIC_ICPR0_CLRPEND15_S 15 1807 1808 // Field: [14] CLRPEND14 1809 // 1810 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1811 // corresponding pending interrupt 14 (See EVENT:CPUIRQSEL14.EV for details). 1812 // Reading the bit returns its current state. 1813 #define CPU_SCS_NVIC_ICPR0_CLRPEND14 0x00004000 1814 #define CPU_SCS_NVIC_ICPR0_CLRPEND14_BITN 14 1815 #define CPU_SCS_NVIC_ICPR0_CLRPEND14_M 0x00004000 1816 #define CPU_SCS_NVIC_ICPR0_CLRPEND14_S 14 1817 1818 // Field: [13] CLRPEND13 1819 // 1820 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1821 // corresponding pending interrupt 13 (See EVENT:CPUIRQSEL13.EV for details). 1822 // Reading the bit returns its current state. 1823 #define CPU_SCS_NVIC_ICPR0_CLRPEND13 0x00002000 1824 #define CPU_SCS_NVIC_ICPR0_CLRPEND13_BITN 13 1825 #define CPU_SCS_NVIC_ICPR0_CLRPEND13_M 0x00002000 1826 #define CPU_SCS_NVIC_ICPR0_CLRPEND13_S 13 1827 1828 // Field: [12] CLRPEND12 1829 // 1830 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1831 // corresponding pending interrupt 12 (See EVENT:CPUIRQSEL12.EV for details). 1832 // Reading the bit returns its current state. 1833 #define CPU_SCS_NVIC_ICPR0_CLRPEND12 0x00001000 1834 #define CPU_SCS_NVIC_ICPR0_CLRPEND12_BITN 12 1835 #define CPU_SCS_NVIC_ICPR0_CLRPEND12_M 0x00001000 1836 #define CPU_SCS_NVIC_ICPR0_CLRPEND12_S 12 1837 1838 // Field: [11] CLRPEND11 1839 // 1840 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1841 // corresponding pending interrupt 11 (See EVENT:CPUIRQSEL11.EV for details). 1842 // Reading the bit returns its current state. 1843 #define CPU_SCS_NVIC_ICPR0_CLRPEND11 0x00000800 1844 #define CPU_SCS_NVIC_ICPR0_CLRPEND11_BITN 11 1845 #define CPU_SCS_NVIC_ICPR0_CLRPEND11_M 0x00000800 1846 #define CPU_SCS_NVIC_ICPR0_CLRPEND11_S 11 1847 1848 // Field: [10] CLRPEND10 1849 // 1850 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1851 // corresponding pending interrupt 10 (See EVENT:CPUIRQSEL10.EV for details). 1852 // Reading the bit returns its current state. 1853 #define CPU_SCS_NVIC_ICPR0_CLRPEND10 0x00000400 1854 #define CPU_SCS_NVIC_ICPR0_CLRPEND10_BITN 10 1855 #define CPU_SCS_NVIC_ICPR0_CLRPEND10_M 0x00000400 1856 #define CPU_SCS_NVIC_ICPR0_CLRPEND10_S 10 1857 1858 // Field: [9] CLRPEND9 1859 // 1860 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1861 // corresponding pending interrupt 9 (See EVENT:CPUIRQSEL9.EV for details). 1862 // Reading the bit returns its current state. 1863 #define CPU_SCS_NVIC_ICPR0_CLRPEND9 0x00000200 1864 #define CPU_SCS_NVIC_ICPR0_CLRPEND9_BITN 9 1865 #define CPU_SCS_NVIC_ICPR0_CLRPEND9_M 0x00000200 1866 #define CPU_SCS_NVIC_ICPR0_CLRPEND9_S 9 1867 1868 // Field: [8] CLRPEND8 1869 // 1870 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1871 // corresponding pending interrupt 8 (See EVENT:CPUIRQSEL8.EV for details). 1872 // Reading the bit returns its current state. 1873 #define CPU_SCS_NVIC_ICPR0_CLRPEND8 0x00000100 1874 #define CPU_SCS_NVIC_ICPR0_CLRPEND8_BITN 8 1875 #define CPU_SCS_NVIC_ICPR0_CLRPEND8_M 0x00000100 1876 #define CPU_SCS_NVIC_ICPR0_CLRPEND8_S 8 1877 1878 // Field: [7] CLRPEND7 1879 // 1880 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1881 // corresponding pending interrupt 7 (See EVENT:CPUIRQSEL7.EV for details). 1882 // Reading the bit returns its current state. 1883 #define CPU_SCS_NVIC_ICPR0_CLRPEND7 0x00000080 1884 #define CPU_SCS_NVIC_ICPR0_CLRPEND7_BITN 7 1885 #define CPU_SCS_NVIC_ICPR0_CLRPEND7_M 0x00000080 1886 #define CPU_SCS_NVIC_ICPR0_CLRPEND7_S 7 1887 1888 // Field: [6] CLRPEND6 1889 // 1890 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1891 // corresponding pending interrupt 6 (See EVENT:CPUIRQSEL6.EV for details). 1892 // Reading the bit returns its current state. 1893 #define CPU_SCS_NVIC_ICPR0_CLRPEND6 0x00000040 1894 #define CPU_SCS_NVIC_ICPR0_CLRPEND6_BITN 6 1895 #define CPU_SCS_NVIC_ICPR0_CLRPEND6_M 0x00000040 1896 #define CPU_SCS_NVIC_ICPR0_CLRPEND6_S 6 1897 1898 // Field: [5] CLRPEND5 1899 // 1900 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1901 // corresponding pending interrupt 5 (See EVENT:CPUIRQSEL5.EV for details). 1902 // Reading the bit returns its current state. 1903 #define CPU_SCS_NVIC_ICPR0_CLRPEND5 0x00000020 1904 #define CPU_SCS_NVIC_ICPR0_CLRPEND5_BITN 5 1905 #define CPU_SCS_NVIC_ICPR0_CLRPEND5_M 0x00000020 1906 #define CPU_SCS_NVIC_ICPR0_CLRPEND5_S 5 1907 1908 // Field: [4] CLRPEND4 1909 // 1910 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1911 // corresponding pending interrupt 4 (See EVENT:CPUIRQSEL4.EV for details). 1912 // Reading the bit returns its current state. 1913 #define CPU_SCS_NVIC_ICPR0_CLRPEND4 0x00000010 1914 #define CPU_SCS_NVIC_ICPR0_CLRPEND4_BITN 4 1915 #define CPU_SCS_NVIC_ICPR0_CLRPEND4_M 0x00000010 1916 #define CPU_SCS_NVIC_ICPR0_CLRPEND4_S 4 1917 1918 // Field: [3] CLRPEND3 1919 // 1920 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1921 // corresponding pending interrupt 3 (See EVENT:CPUIRQSEL3.EV for details). 1922 // Reading the bit returns its current state. 1923 #define CPU_SCS_NVIC_ICPR0_CLRPEND3 0x00000008 1924 #define CPU_SCS_NVIC_ICPR0_CLRPEND3_BITN 3 1925 #define CPU_SCS_NVIC_ICPR0_CLRPEND3_M 0x00000008 1926 #define CPU_SCS_NVIC_ICPR0_CLRPEND3_S 3 1927 1928 // Field: [2] CLRPEND2 1929 // 1930 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1931 // corresponding pending interrupt 2 (See EVENT:CPUIRQSEL2.EV for details). 1932 // Reading the bit returns its current state. 1933 #define CPU_SCS_NVIC_ICPR0_CLRPEND2 0x00000004 1934 #define CPU_SCS_NVIC_ICPR0_CLRPEND2_BITN 2 1935 #define CPU_SCS_NVIC_ICPR0_CLRPEND2_M 0x00000004 1936 #define CPU_SCS_NVIC_ICPR0_CLRPEND2_S 2 1937 1938 // Field: [1] CLRPEND1 1939 // 1940 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1941 // corresponding pending interrupt 1 (See EVENT:CPUIRQSEL1.EV for details). 1942 // Reading the bit returns its current state. 1943 #define CPU_SCS_NVIC_ICPR0_CLRPEND1 0x00000002 1944 #define CPU_SCS_NVIC_ICPR0_CLRPEND1_BITN 1 1945 #define CPU_SCS_NVIC_ICPR0_CLRPEND1_M 0x00000002 1946 #define CPU_SCS_NVIC_ICPR0_CLRPEND1_S 1 1947 1948 // Field: [0] CLRPEND0 1949 // 1950 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1951 // corresponding pending interrupt 0 (See EVENT:CPUIRQSEL0.EV for details). 1952 // Reading the bit returns its current state. 1953 #define CPU_SCS_NVIC_ICPR0_CLRPEND0 0x00000001 1954 #define CPU_SCS_NVIC_ICPR0_CLRPEND0_BITN 0 1955 #define CPU_SCS_NVIC_ICPR0_CLRPEND0_M 0x00000001 1956 #define CPU_SCS_NVIC_ICPR0_CLRPEND0_S 0 1957 1958 //***************************************************************************** 1959 // 1960 // Register: CPU_SCS_O_NVIC_ICPR1 1961 // 1962 //***************************************************************************** 1963 // Field: [5] CLRPEND37 1964 // 1965 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1966 // corresponding pending interrupt 37 (See EVENT:CPUIRQSEL37.EV for details). 1967 // Reading the bit returns its current state. 1968 #define CPU_SCS_NVIC_ICPR1_CLRPEND37 0x00000020 1969 #define CPU_SCS_NVIC_ICPR1_CLRPEND37_BITN 5 1970 #define CPU_SCS_NVIC_ICPR1_CLRPEND37_M 0x00000020 1971 #define CPU_SCS_NVIC_ICPR1_CLRPEND37_S 5 1972 1973 // Field: [4] CLRPEND36 1974 // 1975 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1976 // corresponding pending interrupt 36 (See EVENT:CPUIRQSEL36.EV for details). 1977 // Reading the bit returns its current state. 1978 #define CPU_SCS_NVIC_ICPR1_CLRPEND36 0x00000010 1979 #define CPU_SCS_NVIC_ICPR1_CLRPEND36_BITN 4 1980 #define CPU_SCS_NVIC_ICPR1_CLRPEND36_M 0x00000010 1981 #define CPU_SCS_NVIC_ICPR1_CLRPEND36_S 4 1982 1983 // Field: [3] CLRPEND35 1984 // 1985 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1986 // corresponding pending interrupt 35 (See EVENT:CPUIRQSEL35.EV for details). 1987 // Reading the bit returns its current state. 1988 #define CPU_SCS_NVIC_ICPR1_CLRPEND35 0x00000008 1989 #define CPU_SCS_NVIC_ICPR1_CLRPEND35_BITN 3 1990 #define CPU_SCS_NVIC_ICPR1_CLRPEND35_M 0x00000008 1991 #define CPU_SCS_NVIC_ICPR1_CLRPEND35_S 3 1992 1993 // Field: [2] CLRPEND34 1994 // 1995 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 1996 // corresponding pending interrupt 34 (See EVENT:CPUIRQSEL34.EV for details). 1997 // Reading the bit returns its current state. 1998 #define CPU_SCS_NVIC_ICPR1_CLRPEND34 0x00000004 1999 #define CPU_SCS_NVIC_ICPR1_CLRPEND34_BITN 2 2000 #define CPU_SCS_NVIC_ICPR1_CLRPEND34_M 0x00000004 2001 #define CPU_SCS_NVIC_ICPR1_CLRPEND34_S 2 2002 2003 // Field: [1] CLRPEND33 2004 // 2005 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 2006 // corresponding pending interrupt 33 (See EVENT:CPUIRQSEL33.EV for details). 2007 // Reading the bit returns its current state. 2008 #define CPU_SCS_NVIC_ICPR1_CLRPEND33 0x00000002 2009 #define CPU_SCS_NVIC_ICPR1_CLRPEND33_BITN 1 2010 #define CPU_SCS_NVIC_ICPR1_CLRPEND33_M 0x00000002 2011 #define CPU_SCS_NVIC_ICPR1_CLRPEND33_S 1 2012 2013 // Field: [0] CLRPEND32 2014 // 2015 // Writing 0 to this bit has no effect, writing 1 to this bit clears the 2016 // corresponding pending interrupt 32 (See EVENT:CPUIRQSEL32.EV for details). 2017 // Reading the bit returns its current state. 2018 #define CPU_SCS_NVIC_ICPR1_CLRPEND32 0x00000001 2019 #define CPU_SCS_NVIC_ICPR1_CLRPEND32_BITN 0 2020 #define CPU_SCS_NVIC_ICPR1_CLRPEND32_M 0x00000001 2021 #define CPU_SCS_NVIC_ICPR1_CLRPEND32_S 0 2022 2023 //***************************************************************************** 2024 // 2025 // Register: CPU_SCS_O_NVIC_IABR0 2026 // 2027 //***************************************************************************** 2028 // Field: [31] ACTIVE31 2029 // 2030 // Reading 0 from this bit implies that interrupt line 31 is not active. 2031 // Reading 1 from this bit implies that the interrupt line 31 is active (See 2032 // EVENT:CPUIRQSEL31.EV for details). 2033 #define CPU_SCS_NVIC_IABR0_ACTIVE31 0x80000000 2034 #define CPU_SCS_NVIC_IABR0_ACTIVE31_BITN 31 2035 #define CPU_SCS_NVIC_IABR0_ACTIVE31_M 0x80000000 2036 #define CPU_SCS_NVIC_IABR0_ACTIVE31_S 31 2037 2038 // Field: [30] ACTIVE30 2039 // 2040 // Reading 0 from this bit implies that interrupt line 30 is not active. 2041 // Reading 1 from this bit implies that the interrupt line 30 is active (See 2042 // EVENT:CPUIRQSEL30.EV for details). 2043 #define CPU_SCS_NVIC_IABR0_ACTIVE30 0x40000000 2044 #define CPU_SCS_NVIC_IABR0_ACTIVE30_BITN 30 2045 #define CPU_SCS_NVIC_IABR0_ACTIVE30_M 0x40000000 2046 #define CPU_SCS_NVIC_IABR0_ACTIVE30_S 30 2047 2048 // Field: [29] ACTIVE29 2049 // 2050 // Reading 0 from this bit implies that interrupt line 29 is not active. 2051 // Reading 1 from this bit implies that the interrupt line 29 is active (See 2052 // EVENT:CPUIRQSEL29.EV for details). 2053 #define CPU_SCS_NVIC_IABR0_ACTIVE29 0x20000000 2054 #define CPU_SCS_NVIC_IABR0_ACTIVE29_BITN 29 2055 #define CPU_SCS_NVIC_IABR0_ACTIVE29_M 0x20000000 2056 #define CPU_SCS_NVIC_IABR0_ACTIVE29_S 29 2057 2058 // Field: [28] ACTIVE28 2059 // 2060 // Reading 0 from this bit implies that interrupt line 28 is not active. 2061 // Reading 1 from this bit implies that the interrupt line 28 is active (See 2062 // EVENT:CPUIRQSEL28.EV for details). 2063 #define CPU_SCS_NVIC_IABR0_ACTIVE28 0x10000000 2064 #define CPU_SCS_NVIC_IABR0_ACTIVE28_BITN 28 2065 #define CPU_SCS_NVIC_IABR0_ACTIVE28_M 0x10000000 2066 #define CPU_SCS_NVIC_IABR0_ACTIVE28_S 28 2067 2068 // Field: [27] ACTIVE27 2069 // 2070 // Reading 0 from this bit implies that interrupt line 27 is not active. 2071 // Reading 1 from this bit implies that the interrupt line 27 is active (See 2072 // EVENT:CPUIRQSEL27.EV for details). 2073 #define CPU_SCS_NVIC_IABR0_ACTIVE27 0x08000000 2074 #define CPU_SCS_NVIC_IABR0_ACTIVE27_BITN 27 2075 #define CPU_SCS_NVIC_IABR0_ACTIVE27_M 0x08000000 2076 #define CPU_SCS_NVIC_IABR0_ACTIVE27_S 27 2077 2078 // Field: [26] ACTIVE26 2079 // 2080 // Reading 0 from this bit implies that interrupt line 26 is not active. 2081 // Reading 1 from this bit implies that the interrupt line 26 is active (See 2082 // EVENT:CPUIRQSEL26.EV for details). 2083 #define CPU_SCS_NVIC_IABR0_ACTIVE26 0x04000000 2084 #define CPU_SCS_NVIC_IABR0_ACTIVE26_BITN 26 2085 #define CPU_SCS_NVIC_IABR0_ACTIVE26_M 0x04000000 2086 #define CPU_SCS_NVIC_IABR0_ACTIVE26_S 26 2087 2088 // Field: [25] ACTIVE25 2089 // 2090 // Reading 0 from this bit implies that interrupt line 25 is not active. 2091 // Reading 1 from this bit implies that the interrupt line 25 is active (See 2092 // EVENT:CPUIRQSEL25.EV for details). 2093 #define CPU_SCS_NVIC_IABR0_ACTIVE25 0x02000000 2094 #define CPU_SCS_NVIC_IABR0_ACTIVE25_BITN 25 2095 #define CPU_SCS_NVIC_IABR0_ACTIVE25_M 0x02000000 2096 #define CPU_SCS_NVIC_IABR0_ACTIVE25_S 25 2097 2098 // Field: [24] ACTIVE24 2099 // 2100 // Reading 0 from this bit implies that interrupt line 24 is not active. 2101 // Reading 1 from this bit implies that the interrupt line 24 is active (See 2102 // EVENT:CPUIRQSEL24.EV for details). 2103 #define CPU_SCS_NVIC_IABR0_ACTIVE24 0x01000000 2104 #define CPU_SCS_NVIC_IABR0_ACTIVE24_BITN 24 2105 #define CPU_SCS_NVIC_IABR0_ACTIVE24_M 0x01000000 2106 #define CPU_SCS_NVIC_IABR0_ACTIVE24_S 24 2107 2108 // Field: [23] ACTIVE23 2109 // 2110 // Reading 0 from this bit implies that interrupt line 23 is not active. 2111 // Reading 1 from this bit implies that the interrupt line 23 is active (See 2112 // EVENT:CPUIRQSEL23.EV for details). 2113 #define CPU_SCS_NVIC_IABR0_ACTIVE23 0x00800000 2114 #define CPU_SCS_NVIC_IABR0_ACTIVE23_BITN 23 2115 #define CPU_SCS_NVIC_IABR0_ACTIVE23_M 0x00800000 2116 #define CPU_SCS_NVIC_IABR0_ACTIVE23_S 23 2117 2118 // Field: [22] ACTIVE22 2119 // 2120 // Reading 0 from this bit implies that interrupt line 22 is not active. 2121 // Reading 1 from this bit implies that the interrupt line 22 is active (See 2122 // EVENT:CPUIRQSEL22.EV for details). 2123 #define CPU_SCS_NVIC_IABR0_ACTIVE22 0x00400000 2124 #define CPU_SCS_NVIC_IABR0_ACTIVE22_BITN 22 2125 #define CPU_SCS_NVIC_IABR0_ACTIVE22_M 0x00400000 2126 #define CPU_SCS_NVIC_IABR0_ACTIVE22_S 22 2127 2128 // Field: [21] ACTIVE21 2129 // 2130 // Reading 0 from this bit implies that interrupt line 21 is not active. 2131 // Reading 1 from this bit implies that the interrupt line 21 is active (See 2132 // EVENT:CPUIRQSEL21.EV for details). 2133 #define CPU_SCS_NVIC_IABR0_ACTIVE21 0x00200000 2134 #define CPU_SCS_NVIC_IABR0_ACTIVE21_BITN 21 2135 #define CPU_SCS_NVIC_IABR0_ACTIVE21_M 0x00200000 2136 #define CPU_SCS_NVIC_IABR0_ACTIVE21_S 21 2137 2138 // Field: [20] ACTIVE20 2139 // 2140 // Reading 0 from this bit implies that interrupt line 20 is not active. 2141 // Reading 1 from this bit implies that the interrupt line 20 is active (See 2142 // EVENT:CPUIRQSEL20.EV for details). 2143 #define CPU_SCS_NVIC_IABR0_ACTIVE20 0x00100000 2144 #define CPU_SCS_NVIC_IABR0_ACTIVE20_BITN 20 2145 #define CPU_SCS_NVIC_IABR0_ACTIVE20_M 0x00100000 2146 #define CPU_SCS_NVIC_IABR0_ACTIVE20_S 20 2147 2148 // Field: [19] ACTIVE19 2149 // 2150 // Reading 0 from this bit implies that interrupt line 19 is not active. 2151 // Reading 1 from this bit implies that the interrupt line 19 is active (See 2152 // EVENT:CPUIRQSEL19.EV for details). 2153 #define CPU_SCS_NVIC_IABR0_ACTIVE19 0x00080000 2154 #define CPU_SCS_NVIC_IABR0_ACTIVE19_BITN 19 2155 #define CPU_SCS_NVIC_IABR0_ACTIVE19_M 0x00080000 2156 #define CPU_SCS_NVIC_IABR0_ACTIVE19_S 19 2157 2158 // Field: [18] ACTIVE18 2159 // 2160 // Reading 0 from this bit implies that interrupt line 18 is not active. 2161 // Reading 1 from this bit implies that the interrupt line 18 is active (See 2162 // EVENT:CPUIRQSEL18.EV for details). 2163 #define CPU_SCS_NVIC_IABR0_ACTIVE18 0x00040000 2164 #define CPU_SCS_NVIC_IABR0_ACTIVE18_BITN 18 2165 #define CPU_SCS_NVIC_IABR0_ACTIVE18_M 0x00040000 2166 #define CPU_SCS_NVIC_IABR0_ACTIVE18_S 18 2167 2168 // Field: [17] ACTIVE17 2169 // 2170 // Reading 0 from this bit implies that interrupt line 17 is not active. 2171 // Reading 1 from this bit implies that the interrupt line 17 is active (See 2172 // EVENT:CPUIRQSEL17.EV for details). 2173 #define CPU_SCS_NVIC_IABR0_ACTIVE17 0x00020000 2174 #define CPU_SCS_NVIC_IABR0_ACTIVE17_BITN 17 2175 #define CPU_SCS_NVIC_IABR0_ACTIVE17_M 0x00020000 2176 #define CPU_SCS_NVIC_IABR0_ACTIVE17_S 17 2177 2178 // Field: [16] ACTIVE16 2179 // 2180 // Reading 0 from this bit implies that interrupt line 16 is not active. 2181 // Reading 1 from this bit implies that the interrupt line 16 is active (See 2182 // EVENT:CPUIRQSEL16.EV for details). 2183 #define CPU_SCS_NVIC_IABR0_ACTIVE16 0x00010000 2184 #define CPU_SCS_NVIC_IABR0_ACTIVE16_BITN 16 2185 #define CPU_SCS_NVIC_IABR0_ACTIVE16_M 0x00010000 2186 #define CPU_SCS_NVIC_IABR0_ACTIVE16_S 16 2187 2188 // Field: [15] ACTIVE15 2189 // 2190 // Reading 0 from this bit implies that interrupt line 15 is not active. 2191 // Reading 1 from this bit implies that the interrupt line 15 is active (See 2192 // EVENT:CPUIRQSEL15.EV for details). 2193 #define CPU_SCS_NVIC_IABR0_ACTIVE15 0x00008000 2194 #define CPU_SCS_NVIC_IABR0_ACTIVE15_BITN 15 2195 #define CPU_SCS_NVIC_IABR0_ACTIVE15_M 0x00008000 2196 #define CPU_SCS_NVIC_IABR0_ACTIVE15_S 15 2197 2198 // Field: [14] ACTIVE14 2199 // 2200 // Reading 0 from this bit implies that interrupt line 14 is not active. 2201 // Reading 1 from this bit implies that the interrupt line 14 is active (See 2202 // EVENT:CPUIRQSEL14.EV for details). 2203 #define CPU_SCS_NVIC_IABR0_ACTIVE14 0x00004000 2204 #define CPU_SCS_NVIC_IABR0_ACTIVE14_BITN 14 2205 #define CPU_SCS_NVIC_IABR0_ACTIVE14_M 0x00004000 2206 #define CPU_SCS_NVIC_IABR0_ACTIVE14_S 14 2207 2208 // Field: [13] ACTIVE13 2209 // 2210 // Reading 0 from this bit implies that interrupt line 13 is not active. 2211 // Reading 1 from this bit implies that the interrupt line 13 is active (See 2212 // EVENT:CPUIRQSEL13.EV for details). 2213 #define CPU_SCS_NVIC_IABR0_ACTIVE13 0x00002000 2214 #define CPU_SCS_NVIC_IABR0_ACTIVE13_BITN 13 2215 #define CPU_SCS_NVIC_IABR0_ACTIVE13_M 0x00002000 2216 #define CPU_SCS_NVIC_IABR0_ACTIVE13_S 13 2217 2218 // Field: [12] ACTIVE12 2219 // 2220 // Reading 0 from this bit implies that interrupt line 12 is not active. 2221 // Reading 1 from this bit implies that the interrupt line 12 is active (See 2222 // EVENT:CPUIRQSEL12.EV for details). 2223 #define CPU_SCS_NVIC_IABR0_ACTIVE12 0x00001000 2224 #define CPU_SCS_NVIC_IABR0_ACTIVE12_BITN 12 2225 #define CPU_SCS_NVIC_IABR0_ACTIVE12_M 0x00001000 2226 #define CPU_SCS_NVIC_IABR0_ACTIVE12_S 12 2227 2228 // Field: [11] ACTIVE11 2229 // 2230 // Reading 0 from this bit implies that interrupt line 11 is not active. 2231 // Reading 1 from this bit implies that the interrupt line 11 is active (See 2232 // EVENT:CPUIRQSEL11.EV for details). 2233 #define CPU_SCS_NVIC_IABR0_ACTIVE11 0x00000800 2234 #define CPU_SCS_NVIC_IABR0_ACTIVE11_BITN 11 2235 #define CPU_SCS_NVIC_IABR0_ACTIVE11_M 0x00000800 2236 #define CPU_SCS_NVIC_IABR0_ACTIVE11_S 11 2237 2238 // Field: [10] ACTIVE10 2239 // 2240 // Reading 0 from this bit implies that interrupt line 10 is not active. 2241 // Reading 1 from this bit implies that the interrupt line 10 is active (See 2242 // EVENT:CPUIRQSEL10.EV for details). 2243 #define CPU_SCS_NVIC_IABR0_ACTIVE10 0x00000400 2244 #define CPU_SCS_NVIC_IABR0_ACTIVE10_BITN 10 2245 #define CPU_SCS_NVIC_IABR0_ACTIVE10_M 0x00000400 2246 #define CPU_SCS_NVIC_IABR0_ACTIVE10_S 10 2247 2248 // Field: [9] ACTIVE9 2249 // 2250 // Reading 0 from this bit implies that interrupt line 9 is not active. Reading 2251 // 1 from this bit implies that the interrupt line 9 is active (See 2252 // EVENT:CPUIRQSEL9.EV for details). 2253 #define CPU_SCS_NVIC_IABR0_ACTIVE9 0x00000200 2254 #define CPU_SCS_NVIC_IABR0_ACTIVE9_BITN 9 2255 #define CPU_SCS_NVIC_IABR0_ACTIVE9_M 0x00000200 2256 #define CPU_SCS_NVIC_IABR0_ACTIVE9_S 9 2257 2258 // Field: [8] ACTIVE8 2259 // 2260 // Reading 0 from this bit implies that interrupt line 8 is not active. Reading 2261 // 1 from this bit implies that the interrupt line 8 is active (See 2262 // EVENT:CPUIRQSEL8.EV for details). 2263 #define CPU_SCS_NVIC_IABR0_ACTIVE8 0x00000100 2264 #define CPU_SCS_NVIC_IABR0_ACTIVE8_BITN 8 2265 #define CPU_SCS_NVIC_IABR0_ACTIVE8_M 0x00000100 2266 #define CPU_SCS_NVIC_IABR0_ACTIVE8_S 8 2267 2268 // Field: [7] ACTIVE7 2269 // 2270 // Reading 0 from this bit implies that interrupt line 7 is not active. Reading 2271 // 1 from this bit implies that the interrupt line 7 is active (See 2272 // EVENT:CPUIRQSEL7.EV for details). 2273 #define CPU_SCS_NVIC_IABR0_ACTIVE7 0x00000080 2274 #define CPU_SCS_NVIC_IABR0_ACTIVE7_BITN 7 2275 #define CPU_SCS_NVIC_IABR0_ACTIVE7_M 0x00000080 2276 #define CPU_SCS_NVIC_IABR0_ACTIVE7_S 7 2277 2278 // Field: [6] ACTIVE6 2279 // 2280 // Reading 0 from this bit implies that interrupt line 6 is not active. Reading 2281 // 1 from this bit implies that the interrupt line 6 is active (See 2282 // EVENT:CPUIRQSEL6.EV for details). 2283 #define CPU_SCS_NVIC_IABR0_ACTIVE6 0x00000040 2284 #define CPU_SCS_NVIC_IABR0_ACTIVE6_BITN 6 2285 #define CPU_SCS_NVIC_IABR0_ACTIVE6_M 0x00000040 2286 #define CPU_SCS_NVIC_IABR0_ACTIVE6_S 6 2287 2288 // Field: [5] ACTIVE5 2289 // 2290 // Reading 0 from this bit implies that interrupt line 5 is not active. Reading 2291 // 1 from this bit implies that the interrupt line 5 is active (See 2292 // EVENT:CPUIRQSEL5.EV for details). 2293 #define CPU_SCS_NVIC_IABR0_ACTIVE5 0x00000020 2294 #define CPU_SCS_NVIC_IABR0_ACTIVE5_BITN 5 2295 #define CPU_SCS_NVIC_IABR0_ACTIVE5_M 0x00000020 2296 #define CPU_SCS_NVIC_IABR0_ACTIVE5_S 5 2297 2298 // Field: [4] ACTIVE4 2299 // 2300 // Reading 0 from this bit implies that interrupt line 4 is not active. Reading 2301 // 1 from this bit implies that the interrupt line 4 is active (See 2302 // EVENT:CPUIRQSEL4.EV for details). 2303 #define CPU_SCS_NVIC_IABR0_ACTIVE4 0x00000010 2304 #define CPU_SCS_NVIC_IABR0_ACTIVE4_BITN 4 2305 #define CPU_SCS_NVIC_IABR0_ACTIVE4_M 0x00000010 2306 #define CPU_SCS_NVIC_IABR0_ACTIVE4_S 4 2307 2308 // Field: [3] ACTIVE3 2309 // 2310 // Reading 0 from this bit implies that interrupt line 3 is not active. Reading 2311 // 1 from this bit implies that the interrupt line 3 is active (See 2312 // EVENT:CPUIRQSEL3.EV for details). 2313 #define CPU_SCS_NVIC_IABR0_ACTIVE3 0x00000008 2314 #define CPU_SCS_NVIC_IABR0_ACTIVE3_BITN 3 2315 #define CPU_SCS_NVIC_IABR0_ACTIVE3_M 0x00000008 2316 #define CPU_SCS_NVIC_IABR0_ACTIVE3_S 3 2317 2318 // Field: [2] ACTIVE2 2319 // 2320 // Reading 0 from this bit implies that interrupt line 2 is not active. Reading 2321 // 1 from this bit implies that the interrupt line 2 is active (See 2322 // EVENT:CPUIRQSEL2.EV for details). 2323 #define CPU_SCS_NVIC_IABR0_ACTIVE2 0x00000004 2324 #define CPU_SCS_NVIC_IABR0_ACTIVE2_BITN 2 2325 #define CPU_SCS_NVIC_IABR0_ACTIVE2_M 0x00000004 2326 #define CPU_SCS_NVIC_IABR0_ACTIVE2_S 2 2327 2328 // Field: [1] ACTIVE1 2329 // 2330 // Reading 0 from this bit implies that interrupt line 1 is not active. Reading 2331 // 1 from this bit implies that the interrupt line 1 is active (See 2332 // EVENT:CPUIRQSEL1.EV for details). 2333 #define CPU_SCS_NVIC_IABR0_ACTIVE1 0x00000002 2334 #define CPU_SCS_NVIC_IABR0_ACTIVE1_BITN 1 2335 #define CPU_SCS_NVIC_IABR0_ACTIVE1_M 0x00000002 2336 #define CPU_SCS_NVIC_IABR0_ACTIVE1_S 1 2337 2338 // Field: [0] ACTIVE0 2339 // 2340 // Reading 0 from this bit implies that interrupt line 0 is not active. Reading 2341 // 1 from this bit implies that the interrupt line 0 is active (See 2342 // EVENT:CPUIRQSEL0.EV for details). 2343 #define CPU_SCS_NVIC_IABR0_ACTIVE0 0x00000001 2344 #define CPU_SCS_NVIC_IABR0_ACTIVE0_BITN 0 2345 #define CPU_SCS_NVIC_IABR0_ACTIVE0_M 0x00000001 2346 #define CPU_SCS_NVIC_IABR0_ACTIVE0_S 0 2347 2348 //***************************************************************************** 2349 // 2350 // Register: CPU_SCS_O_NVIC_IABR1 2351 // 2352 //***************************************************************************** 2353 // Field: [5] ACTIVE37 2354 // 2355 // Reading 0 from this bit implies that interrupt line 37 is not active. 2356 // Reading 1 from this bit implies that the interrupt line 37 is active (See 2357 // EVENT:CPUIRQSEL37.EV for details). 2358 #define CPU_SCS_NVIC_IABR1_ACTIVE37 0x00000020 2359 #define CPU_SCS_NVIC_IABR1_ACTIVE37_BITN 5 2360 #define CPU_SCS_NVIC_IABR1_ACTIVE37_M 0x00000020 2361 #define CPU_SCS_NVIC_IABR1_ACTIVE37_S 5 2362 2363 // Field: [4] ACTIVE36 2364 // 2365 // Reading 0 from this bit implies that interrupt line 36 is not active. 2366 // Reading 1 from this bit implies that the interrupt line 36 is active (See 2367 // EVENT:CPUIRQSEL36.EV for details). 2368 #define CPU_SCS_NVIC_IABR1_ACTIVE36 0x00000010 2369 #define CPU_SCS_NVIC_IABR1_ACTIVE36_BITN 4 2370 #define CPU_SCS_NVIC_IABR1_ACTIVE36_M 0x00000010 2371 #define CPU_SCS_NVIC_IABR1_ACTIVE36_S 4 2372 2373 // Field: [3] ACTIVE35 2374 // 2375 // Reading 0 from this bit implies that interrupt line 35 is not active. 2376 // Reading 1 from this bit implies that the interrupt line 35 is active (See 2377 // EVENT:CPUIRQSEL35.EV for details). 2378 #define CPU_SCS_NVIC_IABR1_ACTIVE35 0x00000008 2379 #define CPU_SCS_NVIC_IABR1_ACTIVE35_BITN 3 2380 #define CPU_SCS_NVIC_IABR1_ACTIVE35_M 0x00000008 2381 #define CPU_SCS_NVIC_IABR1_ACTIVE35_S 3 2382 2383 // Field: [2] ACTIVE34 2384 // 2385 // Reading 0 from this bit implies that interrupt line 34 is not active. 2386 // Reading 1 from this bit implies that the interrupt line 34 is active (See 2387 // EVENT:CPUIRQSEL34.EV for details). 2388 #define CPU_SCS_NVIC_IABR1_ACTIVE34 0x00000004 2389 #define CPU_SCS_NVIC_IABR1_ACTIVE34_BITN 2 2390 #define CPU_SCS_NVIC_IABR1_ACTIVE34_M 0x00000004 2391 #define CPU_SCS_NVIC_IABR1_ACTIVE34_S 2 2392 2393 // Field: [1] ACTIVE33 2394 // 2395 // Reading 0 from this bit implies that interrupt line 33 is not active. 2396 // Reading 1 from this bit implies that the interrupt line 33 is active (See 2397 // EVENT:CPUIRQSEL33.EV for details). 2398 #define CPU_SCS_NVIC_IABR1_ACTIVE33 0x00000002 2399 #define CPU_SCS_NVIC_IABR1_ACTIVE33_BITN 1 2400 #define CPU_SCS_NVIC_IABR1_ACTIVE33_M 0x00000002 2401 #define CPU_SCS_NVIC_IABR1_ACTIVE33_S 1 2402 2403 // Field: [0] ACTIVE32 2404 // 2405 // Reading 0 from this bit implies that interrupt line 32 is not active. 2406 // Reading 1 from this bit implies that the interrupt line 32 is active (See 2407 // EVENT:CPUIRQSEL32.EV for details). 2408 #define CPU_SCS_NVIC_IABR1_ACTIVE32 0x00000001 2409 #define CPU_SCS_NVIC_IABR1_ACTIVE32_BITN 0 2410 #define CPU_SCS_NVIC_IABR1_ACTIVE32_M 0x00000001 2411 #define CPU_SCS_NVIC_IABR1_ACTIVE32_S 0 2412 2413 //***************************************************************************** 2414 // 2415 // Register: CPU_SCS_O_NVIC_IPR0 2416 // 2417 //***************************************************************************** 2418 // Field: [31:24] PRI_3 2419 // 2420 // Priority of interrupt 3 (See EVENT:CPUIRQSEL3.EV for details). 2421 #define CPU_SCS_NVIC_IPR0_PRI_3_W 8 2422 #define CPU_SCS_NVIC_IPR0_PRI_3_M 0xFF000000 2423 #define CPU_SCS_NVIC_IPR0_PRI_3_S 24 2424 2425 // Field: [23:16] PRI_2 2426 // 2427 // Priority of interrupt 2 (See EVENT:CPUIRQSEL2.EV for details). 2428 #define CPU_SCS_NVIC_IPR0_PRI_2_W 8 2429 #define CPU_SCS_NVIC_IPR0_PRI_2_M 0x00FF0000 2430 #define CPU_SCS_NVIC_IPR0_PRI_2_S 16 2431 2432 // Field: [15:8] PRI_1 2433 // 2434 // Priority of interrupt 1 (See EVENT:CPUIRQSEL1.EV for details). 2435 #define CPU_SCS_NVIC_IPR0_PRI_1_W 8 2436 #define CPU_SCS_NVIC_IPR0_PRI_1_M 0x0000FF00 2437 #define CPU_SCS_NVIC_IPR0_PRI_1_S 8 2438 2439 // Field: [7:0] PRI_0 2440 // 2441 // Priority of interrupt 0 (See EVENT:CPUIRQSEL0.EV for details). 2442 #define CPU_SCS_NVIC_IPR0_PRI_0_W 8 2443 #define CPU_SCS_NVIC_IPR0_PRI_0_M 0x000000FF 2444 #define CPU_SCS_NVIC_IPR0_PRI_0_S 0 2445 2446 //***************************************************************************** 2447 // 2448 // Register: CPU_SCS_O_NVIC_IPR1 2449 // 2450 //***************************************************************************** 2451 // Field: [31:24] PRI_7 2452 // 2453 // Priority of interrupt 7 (See EVENT:CPUIRQSEL7.EV for details). 2454 #define CPU_SCS_NVIC_IPR1_PRI_7_W 8 2455 #define CPU_SCS_NVIC_IPR1_PRI_7_M 0xFF000000 2456 #define CPU_SCS_NVIC_IPR1_PRI_7_S 24 2457 2458 // Field: [23:16] PRI_6 2459 // 2460 // Priority of interrupt 6 (See EVENT:CPUIRQSEL6.EV for details). 2461 #define CPU_SCS_NVIC_IPR1_PRI_6_W 8 2462 #define CPU_SCS_NVIC_IPR1_PRI_6_M 0x00FF0000 2463 #define CPU_SCS_NVIC_IPR1_PRI_6_S 16 2464 2465 // Field: [15:8] PRI_5 2466 // 2467 // Priority of interrupt 5 (See EVENT:CPUIRQSEL5.EV for details). 2468 #define CPU_SCS_NVIC_IPR1_PRI_5_W 8 2469 #define CPU_SCS_NVIC_IPR1_PRI_5_M 0x0000FF00 2470 #define CPU_SCS_NVIC_IPR1_PRI_5_S 8 2471 2472 // Field: [7:0] PRI_4 2473 // 2474 // Priority of interrupt 4 (See EVENT:CPUIRQSEL4.EV for details). 2475 #define CPU_SCS_NVIC_IPR1_PRI_4_W 8 2476 #define CPU_SCS_NVIC_IPR1_PRI_4_M 0x000000FF 2477 #define CPU_SCS_NVIC_IPR1_PRI_4_S 0 2478 2479 //***************************************************************************** 2480 // 2481 // Register: CPU_SCS_O_NVIC_IPR2 2482 // 2483 //***************************************************************************** 2484 // Field: [31:24] PRI_11 2485 // 2486 // Priority of interrupt 11 (See EVENT:CPUIRQSEL11.EV for details). 2487 #define CPU_SCS_NVIC_IPR2_PRI_11_W 8 2488 #define CPU_SCS_NVIC_IPR2_PRI_11_M 0xFF000000 2489 #define CPU_SCS_NVIC_IPR2_PRI_11_S 24 2490 2491 // Field: [23:16] PRI_10 2492 // 2493 // Priority of interrupt 10 (See EVENT:CPUIRQSEL10.EV for details). 2494 #define CPU_SCS_NVIC_IPR2_PRI_10_W 8 2495 #define CPU_SCS_NVIC_IPR2_PRI_10_M 0x00FF0000 2496 #define CPU_SCS_NVIC_IPR2_PRI_10_S 16 2497 2498 // Field: [15:8] PRI_9 2499 // 2500 // Priority of interrupt 9 (See EVENT:CPUIRQSEL9.EV for details). 2501 #define CPU_SCS_NVIC_IPR2_PRI_9_W 8 2502 #define CPU_SCS_NVIC_IPR2_PRI_9_M 0x0000FF00 2503 #define CPU_SCS_NVIC_IPR2_PRI_9_S 8 2504 2505 // Field: [7:0] PRI_8 2506 // 2507 // Priority of interrupt 8 (See EVENT:CPUIRQSEL8.EV for details). 2508 #define CPU_SCS_NVIC_IPR2_PRI_8_W 8 2509 #define CPU_SCS_NVIC_IPR2_PRI_8_M 0x000000FF 2510 #define CPU_SCS_NVIC_IPR2_PRI_8_S 0 2511 2512 //***************************************************************************** 2513 // 2514 // Register: CPU_SCS_O_NVIC_IPR3 2515 // 2516 //***************************************************************************** 2517 // Field: [31:24] PRI_15 2518 // 2519 // Priority of interrupt 15 (See EVENT:CPUIRQSEL15.EV for details). 2520 #define CPU_SCS_NVIC_IPR3_PRI_15_W 8 2521 #define CPU_SCS_NVIC_IPR3_PRI_15_M 0xFF000000 2522 #define CPU_SCS_NVIC_IPR3_PRI_15_S 24 2523 2524 // Field: [23:16] PRI_14 2525 // 2526 // Priority of interrupt 14 (See EVENT:CPUIRQSEL14.EV for details). 2527 #define CPU_SCS_NVIC_IPR3_PRI_14_W 8 2528 #define CPU_SCS_NVIC_IPR3_PRI_14_M 0x00FF0000 2529 #define CPU_SCS_NVIC_IPR3_PRI_14_S 16 2530 2531 // Field: [15:8] PRI_13 2532 // 2533 // Priority of interrupt 13 (See EVENT:CPUIRQSEL13.EV for details). 2534 #define CPU_SCS_NVIC_IPR3_PRI_13_W 8 2535 #define CPU_SCS_NVIC_IPR3_PRI_13_M 0x0000FF00 2536 #define CPU_SCS_NVIC_IPR3_PRI_13_S 8 2537 2538 // Field: [7:0] PRI_12 2539 // 2540 // Priority of interrupt 12 (See EVENT:CPUIRQSEL12.EV for details). 2541 #define CPU_SCS_NVIC_IPR3_PRI_12_W 8 2542 #define CPU_SCS_NVIC_IPR3_PRI_12_M 0x000000FF 2543 #define CPU_SCS_NVIC_IPR3_PRI_12_S 0 2544 2545 //***************************************************************************** 2546 // 2547 // Register: CPU_SCS_O_NVIC_IPR4 2548 // 2549 //***************************************************************************** 2550 // Field: [31:24] PRI_19 2551 // 2552 // Priority of interrupt 19 (See EVENT:CPUIRQSEL19.EV for details). 2553 #define CPU_SCS_NVIC_IPR4_PRI_19_W 8 2554 #define CPU_SCS_NVIC_IPR4_PRI_19_M 0xFF000000 2555 #define CPU_SCS_NVIC_IPR4_PRI_19_S 24 2556 2557 // Field: [23:16] PRI_18 2558 // 2559 // Priority of interrupt 18 (See EVENT:CPUIRQSEL18.EV for details). 2560 #define CPU_SCS_NVIC_IPR4_PRI_18_W 8 2561 #define CPU_SCS_NVIC_IPR4_PRI_18_M 0x00FF0000 2562 #define CPU_SCS_NVIC_IPR4_PRI_18_S 16 2563 2564 // Field: [15:8] PRI_17 2565 // 2566 // Priority of interrupt 17 (See EVENT:CPUIRQSEL17.EV for details). 2567 #define CPU_SCS_NVIC_IPR4_PRI_17_W 8 2568 #define CPU_SCS_NVIC_IPR4_PRI_17_M 0x0000FF00 2569 #define CPU_SCS_NVIC_IPR4_PRI_17_S 8 2570 2571 // Field: [7:0] PRI_16 2572 // 2573 // Priority of interrupt 16 (See EVENT:CPUIRQSEL16.EV for details). 2574 #define CPU_SCS_NVIC_IPR4_PRI_16_W 8 2575 #define CPU_SCS_NVIC_IPR4_PRI_16_M 0x000000FF 2576 #define CPU_SCS_NVIC_IPR4_PRI_16_S 0 2577 2578 //***************************************************************************** 2579 // 2580 // Register: CPU_SCS_O_NVIC_IPR5 2581 // 2582 //***************************************************************************** 2583 // Field: [31:24] PRI_23 2584 // 2585 // Priority of interrupt 23 (See EVENT:CPUIRQSEL23.EV for details). 2586 #define CPU_SCS_NVIC_IPR5_PRI_23_W 8 2587 #define CPU_SCS_NVIC_IPR5_PRI_23_M 0xFF000000 2588 #define CPU_SCS_NVIC_IPR5_PRI_23_S 24 2589 2590 // Field: [23:16] PRI_22 2591 // 2592 // Priority of interrupt 22 (See EVENT:CPUIRQSEL22.EV for details). 2593 #define CPU_SCS_NVIC_IPR5_PRI_22_W 8 2594 #define CPU_SCS_NVIC_IPR5_PRI_22_M 0x00FF0000 2595 #define CPU_SCS_NVIC_IPR5_PRI_22_S 16 2596 2597 // Field: [15:8] PRI_21 2598 // 2599 // Priority of interrupt 21 (See EVENT:CPUIRQSEL21.EV for details). 2600 #define CPU_SCS_NVIC_IPR5_PRI_21_W 8 2601 #define CPU_SCS_NVIC_IPR5_PRI_21_M 0x0000FF00 2602 #define CPU_SCS_NVIC_IPR5_PRI_21_S 8 2603 2604 // Field: [7:0] PRI_20 2605 // 2606 // Priority of interrupt 20 (See EVENT:CPUIRQSEL20.EV for details). 2607 #define CPU_SCS_NVIC_IPR5_PRI_20_W 8 2608 #define CPU_SCS_NVIC_IPR5_PRI_20_M 0x000000FF 2609 #define CPU_SCS_NVIC_IPR5_PRI_20_S 0 2610 2611 //***************************************************************************** 2612 // 2613 // Register: CPU_SCS_O_NVIC_IPR6 2614 // 2615 //***************************************************************************** 2616 // Field: [31:24] PRI_27 2617 // 2618 // Priority of interrupt 27 (See EVENT:CPUIRQSEL27.EV for details). 2619 #define CPU_SCS_NVIC_IPR6_PRI_27_W 8 2620 #define CPU_SCS_NVIC_IPR6_PRI_27_M 0xFF000000 2621 #define CPU_SCS_NVIC_IPR6_PRI_27_S 24 2622 2623 // Field: [23:16] PRI_26 2624 // 2625 // Priority of interrupt 26 (See EVENT:CPUIRQSEL26.EV for details). 2626 #define CPU_SCS_NVIC_IPR6_PRI_26_W 8 2627 #define CPU_SCS_NVIC_IPR6_PRI_26_M 0x00FF0000 2628 #define CPU_SCS_NVIC_IPR6_PRI_26_S 16 2629 2630 // Field: [15:8] PRI_25 2631 // 2632 // Priority of interrupt 25 (See EVENT:CPUIRQSEL25.EV for details). 2633 #define CPU_SCS_NVIC_IPR6_PRI_25_W 8 2634 #define CPU_SCS_NVIC_IPR6_PRI_25_M 0x0000FF00 2635 #define CPU_SCS_NVIC_IPR6_PRI_25_S 8 2636 2637 // Field: [7:0] PRI_24 2638 // 2639 // Priority of interrupt 24 (See EVENT:CPUIRQSEL24.EV for details). 2640 #define CPU_SCS_NVIC_IPR6_PRI_24_W 8 2641 #define CPU_SCS_NVIC_IPR6_PRI_24_M 0x000000FF 2642 #define CPU_SCS_NVIC_IPR6_PRI_24_S 0 2643 2644 //***************************************************************************** 2645 // 2646 // Register: CPU_SCS_O_NVIC_IPR7 2647 // 2648 //***************************************************************************** 2649 // Field: [31:24] PRI_31 2650 // 2651 // Priority of interrupt 31 (See EVENT:CPUIRQSEL31.EV for details). 2652 #define CPU_SCS_NVIC_IPR7_PRI_31_W 8 2653 #define CPU_SCS_NVIC_IPR7_PRI_31_M 0xFF000000 2654 #define CPU_SCS_NVIC_IPR7_PRI_31_S 24 2655 2656 // Field: [23:16] PRI_30 2657 // 2658 // Priority of interrupt 30 (See EVENT:CPUIRQSEL30.EV for details). 2659 #define CPU_SCS_NVIC_IPR7_PRI_30_W 8 2660 #define CPU_SCS_NVIC_IPR7_PRI_30_M 0x00FF0000 2661 #define CPU_SCS_NVIC_IPR7_PRI_30_S 16 2662 2663 // Field: [15:8] PRI_29 2664 // 2665 // Priority of interrupt 29 (See EVENT:CPUIRQSEL29.EV for details). 2666 #define CPU_SCS_NVIC_IPR7_PRI_29_W 8 2667 #define CPU_SCS_NVIC_IPR7_PRI_29_M 0x0000FF00 2668 #define CPU_SCS_NVIC_IPR7_PRI_29_S 8 2669 2670 // Field: [7:0] PRI_28 2671 // 2672 // Priority of interrupt 28 (See EVENT:CPUIRQSEL28.EV for details). 2673 #define CPU_SCS_NVIC_IPR7_PRI_28_W 8 2674 #define CPU_SCS_NVIC_IPR7_PRI_28_M 0x000000FF 2675 #define CPU_SCS_NVIC_IPR7_PRI_28_S 0 2676 2677 //***************************************************************************** 2678 // 2679 // Register: CPU_SCS_O_NVIC_IPR8 2680 // 2681 //***************************************************************************** 2682 // Field: [31:24] PRI_35 2683 // 2684 // Priority of interrupt 35 (See EVENT:CPUIRQSEL35.EV for details). 2685 #define CPU_SCS_NVIC_IPR8_PRI_35_W 8 2686 #define CPU_SCS_NVIC_IPR8_PRI_35_M 0xFF000000 2687 #define CPU_SCS_NVIC_IPR8_PRI_35_S 24 2688 2689 // Field: [23:16] PRI_34 2690 // 2691 // Priority of interrupt 34 (See EVENT:CPUIRQSEL34.EV for details). 2692 #define CPU_SCS_NVIC_IPR8_PRI_34_W 8 2693 #define CPU_SCS_NVIC_IPR8_PRI_34_M 0x00FF0000 2694 #define CPU_SCS_NVIC_IPR8_PRI_34_S 16 2695 2696 // Field: [15:8] PRI_33 2697 // 2698 // Priority of interrupt 33 (See EVENT:CPUIRQSEL33.EV for details). 2699 #define CPU_SCS_NVIC_IPR8_PRI_33_W 8 2700 #define CPU_SCS_NVIC_IPR8_PRI_33_M 0x0000FF00 2701 #define CPU_SCS_NVIC_IPR8_PRI_33_S 8 2702 2703 // Field: [7:0] PRI_32 2704 // 2705 // Priority of interrupt 32 (See EVENT:CPUIRQSEL32.EV for details). 2706 #define CPU_SCS_NVIC_IPR8_PRI_32_W 8 2707 #define CPU_SCS_NVIC_IPR8_PRI_32_M 0x000000FF 2708 #define CPU_SCS_NVIC_IPR8_PRI_32_S 0 2709 2710 //***************************************************************************** 2711 // 2712 // Register: CPU_SCS_O_NVIC_IPR9 2713 // 2714 //***************************************************************************** 2715 // Field: [15:8] PRI_37 2716 // 2717 // Priority of interrupt 37 (See EVENT:CPUIRQSEL37.EV for details). 2718 #define CPU_SCS_NVIC_IPR9_PRI_37_W 8 2719 #define CPU_SCS_NVIC_IPR9_PRI_37_M 0x0000FF00 2720 #define CPU_SCS_NVIC_IPR9_PRI_37_S 8 2721 2722 // Field: [7:0] PRI_36 2723 // 2724 // Priority of interrupt 36 (See EVENT:CPUIRQSEL36.EV for details). 2725 #define CPU_SCS_NVIC_IPR9_PRI_36_W 8 2726 #define CPU_SCS_NVIC_IPR9_PRI_36_M 0x000000FF 2727 #define CPU_SCS_NVIC_IPR9_PRI_36_S 0 2728 2729 //***************************************************************************** 2730 // 2731 // Register: CPU_SCS_O_CPUID 2732 // 2733 //***************************************************************************** 2734 // Field: [31:24] IMPLEMENTER 2735 // 2736 // Implementor code. 2737 #define CPU_SCS_CPUID_IMPLEMENTER_W 8 2738 #define CPU_SCS_CPUID_IMPLEMENTER_M 0xFF000000 2739 #define CPU_SCS_CPUID_IMPLEMENTER_S 24 2740 2741 // Field: [23:20] VARIANT 2742 // 2743 // Implementation defined variant number. 2744 #define CPU_SCS_CPUID_VARIANT_W 4 2745 #define CPU_SCS_CPUID_VARIANT_M 0x00F00000 2746 #define CPU_SCS_CPUID_VARIANT_S 20 2747 2748 // Field: [19:16] CONSTANT 2749 // 2750 // Reads as 0xF 2751 #define CPU_SCS_CPUID_CONSTANT_W 4 2752 #define CPU_SCS_CPUID_CONSTANT_M 0x000F0000 2753 #define CPU_SCS_CPUID_CONSTANT_S 16 2754 2755 // Field: [15:4] PARTNO 2756 // 2757 // Number of processor within family. 2758 #define CPU_SCS_CPUID_PARTNO_W 12 2759 #define CPU_SCS_CPUID_PARTNO_M 0x0000FFF0 2760 #define CPU_SCS_CPUID_PARTNO_S 4 2761 2762 // Field: [3:0] REVISION 2763 // 2764 // Implementation defined revision number. 2765 #define CPU_SCS_CPUID_REVISION_W 4 2766 #define CPU_SCS_CPUID_REVISION_M 0x0000000F 2767 #define CPU_SCS_CPUID_REVISION_S 0 2768 2769 //***************************************************************************** 2770 // 2771 // Register: CPU_SCS_O_ICSR 2772 // 2773 //***************************************************************************** 2774 // Field: [31] NMIPENDSET 2775 // 2776 // Set pending NMI bit. Setting this bit pends and activates an NMI. Because 2777 // NMI is the highest-priority interrupt, it takes effect as soon as it 2778 // registers. 2779 // 2780 // 0: No action 2781 // 1: Set pending NMI 2782 #define CPU_SCS_ICSR_NMIPENDSET 0x80000000 2783 #define CPU_SCS_ICSR_NMIPENDSET_BITN 31 2784 #define CPU_SCS_ICSR_NMIPENDSET_M 0x80000000 2785 #define CPU_SCS_ICSR_NMIPENDSET_S 31 2786 2787 // Field: [28] PENDSVSET 2788 // 2789 // Set pending pendSV bit. 2790 // 2791 // 0: No action 2792 // 1: Set pending PendSV 2793 #define CPU_SCS_ICSR_PENDSVSET 0x10000000 2794 #define CPU_SCS_ICSR_PENDSVSET_BITN 28 2795 #define CPU_SCS_ICSR_PENDSVSET_M 0x10000000 2796 #define CPU_SCS_ICSR_PENDSVSET_S 28 2797 2798 // Field: [27] PENDSVCLR 2799 // 2800 // Clear pending pendSV bit 2801 // 2802 // 0: No action 2803 // 1: Clear pending pendSV 2804 #define CPU_SCS_ICSR_PENDSVCLR 0x08000000 2805 #define CPU_SCS_ICSR_PENDSVCLR_BITN 27 2806 #define CPU_SCS_ICSR_PENDSVCLR_M 0x08000000 2807 #define CPU_SCS_ICSR_PENDSVCLR_S 27 2808 2809 // Field: [26] PENDSTSET 2810 // 2811 // Set a pending SysTick bit. 2812 // 2813 // 0: No action 2814 // 1: Set pending SysTick 2815 #define CPU_SCS_ICSR_PENDSTSET 0x04000000 2816 #define CPU_SCS_ICSR_PENDSTSET_BITN 26 2817 #define CPU_SCS_ICSR_PENDSTSET_M 0x04000000 2818 #define CPU_SCS_ICSR_PENDSTSET_S 26 2819 2820 // Field: [25] PENDSTCLR 2821 // 2822 // Clear pending SysTick bit 2823 // 2824 // 0: No action 2825 // 1: Clear pending SysTick 2826 #define CPU_SCS_ICSR_PENDSTCLR 0x02000000 2827 #define CPU_SCS_ICSR_PENDSTCLR_BITN 25 2828 #define CPU_SCS_ICSR_PENDSTCLR_M 0x02000000 2829 #define CPU_SCS_ICSR_PENDSTCLR_S 25 2830 2831 // Field: [23] ISRPREEMPT 2832 // 2833 // This field can only be used at debug time. It indicates that a pending 2834 // interrupt is to be taken in the next running cycle. If DHCSR.C_MASKINTS= 0, 2835 // the interrupt is serviced. 2836 // 2837 // 0: A pending exception is not serviced. 2838 // 1: A pending exception is serviced on exit from the debug halt state 2839 #define CPU_SCS_ICSR_ISRPREEMPT 0x00800000 2840 #define CPU_SCS_ICSR_ISRPREEMPT_BITN 23 2841 #define CPU_SCS_ICSR_ISRPREEMPT_M 0x00800000 2842 #define CPU_SCS_ICSR_ISRPREEMPT_S 23 2843 2844 // Field: [22] ISRPENDING 2845 // 2846 // Interrupt pending flag. Excludes NMI and faults. 2847 // 2848 // 0x0: Interrupt not pending 2849 // 0x1: Interrupt pending 2850 #define CPU_SCS_ICSR_ISRPENDING 0x00400000 2851 #define CPU_SCS_ICSR_ISRPENDING_BITN 22 2852 #define CPU_SCS_ICSR_ISRPENDING_M 0x00400000 2853 #define CPU_SCS_ICSR_ISRPENDING_S 22 2854 2855 // Field: [17:12] VECTPENDING 2856 // 2857 // Pending ISR number field. This field contains the interrupt number of the 2858 // highest priority pending ISR. 2859 #define CPU_SCS_ICSR_VECTPENDING_W 6 2860 #define CPU_SCS_ICSR_VECTPENDING_M 0x0003F000 2861 #define CPU_SCS_ICSR_VECTPENDING_S 12 2862 2863 // Field: [11] RETTOBASE 2864 // 2865 // Indicates whether there are preempted active exceptions: 2866 // 2867 // 0: There are preempted active exceptions to execute 2868 // 1: There are no active exceptions, or the currently-executing exception is 2869 // the only active exception. 2870 #define CPU_SCS_ICSR_RETTOBASE 0x00000800 2871 #define CPU_SCS_ICSR_RETTOBASE_BITN 11 2872 #define CPU_SCS_ICSR_RETTOBASE_M 0x00000800 2873 #define CPU_SCS_ICSR_RETTOBASE_S 11 2874 2875 // Field: [8:0] VECTACTIVE 2876 // 2877 // Active ISR number field. Reset clears this field. 2878 #define CPU_SCS_ICSR_VECTACTIVE_W 9 2879 #define CPU_SCS_ICSR_VECTACTIVE_M 0x000001FF 2880 #define CPU_SCS_ICSR_VECTACTIVE_S 0 2881 2882 //***************************************************************************** 2883 // 2884 // Register: CPU_SCS_O_VTOR 2885 // 2886 //***************************************************************************** 2887 // Field: [29:7] TBLOFF 2888 // 2889 // Bits 29 down to 7 of the vector table base offset. 2890 #define CPU_SCS_VTOR_TBLOFF_W 23 2891 #define CPU_SCS_VTOR_TBLOFF_M 0x3FFFFF80 2892 #define CPU_SCS_VTOR_TBLOFF_S 7 2893 2894 //***************************************************************************** 2895 // 2896 // Register: CPU_SCS_O_AIRCR 2897 // 2898 //***************************************************************************** 2899 // Field: [31:16] VECTKEY 2900 // 2901 // Register key. Writing to this register (AIRCR) requires 0x05FA in VECTKEY. 2902 // Otherwise the write value is ignored. Read always returns 0xFA05. 2903 #define CPU_SCS_AIRCR_VECTKEY_W 16 2904 #define CPU_SCS_AIRCR_VECTKEY_M 0xFFFF0000 2905 #define CPU_SCS_AIRCR_VECTKEY_S 16 2906 2907 // Field: [15] ENDIANESS 2908 // 2909 // Data endianness bit 2910 // ENUMs: 2911 // BIG Big endian 2912 // LITTLE Little endian 2913 #define CPU_SCS_AIRCR_ENDIANESS 0x00008000 2914 #define CPU_SCS_AIRCR_ENDIANESS_BITN 15 2915 #define CPU_SCS_AIRCR_ENDIANESS_M 0x00008000 2916 #define CPU_SCS_AIRCR_ENDIANESS_S 15 2917 #define CPU_SCS_AIRCR_ENDIANESS_BIG 0x00008000 2918 #define CPU_SCS_AIRCR_ENDIANESS_LITTLE 0x00000000 2919 2920 // Field: [10:8] PRIGROUP 2921 // 2922 // Interrupt priority grouping field. This field is a binary point position 2923 // indicator for creating subpriorities for exceptions that share the same 2924 // pre-emption level. It divides the PRI_n field in the Interrupt Priority 2925 // Registers (NVIC_IPR0, NVIC_IPR1,..., and NVIC_IPR8) into a pre-emption 2926 // level and a subpriority level. The binary point is a left-of value. This 2927 // means that the PRIGROUP value represents a point starting at the left of the 2928 // Least Significant Bit (LSB). The lowest value might not be 0 depending on 2929 // the number of bits allocated for priorities, and implementation choices. 2930 #define CPU_SCS_AIRCR_PRIGROUP_W 3 2931 #define CPU_SCS_AIRCR_PRIGROUP_M 0x00000700 2932 #define CPU_SCS_AIRCR_PRIGROUP_S 8 2933 2934 // Field: [2] SYSRESETREQ 2935 // 2936 // Requests a warm reset. Setting this bit does not prevent Halting Debug from 2937 // running. 2938 #define CPU_SCS_AIRCR_SYSRESETREQ 0x00000004 2939 #define CPU_SCS_AIRCR_SYSRESETREQ_BITN 2 2940 #define CPU_SCS_AIRCR_SYSRESETREQ_M 0x00000004 2941 #define CPU_SCS_AIRCR_SYSRESETREQ_S 2 2942 2943 // Field: [1] VECTCLRACTIVE 2944 // 2945 // Clears all active state information for active NMI, fault, and interrupts. 2946 // It is the responsibility of the application to reinitialize the stack. This 2947 // bit is for returning to a known state during debug. The bit self-clears. 2948 // IPSR is not cleared by this operation. So, if used by an application, it 2949 // must only be used at the base level of activation, or within a system 2950 // handler whose active bit can be set. 2951 #define CPU_SCS_AIRCR_VECTCLRACTIVE 0x00000002 2952 #define CPU_SCS_AIRCR_VECTCLRACTIVE_BITN 1 2953 #define CPU_SCS_AIRCR_VECTCLRACTIVE_M 0x00000002 2954 #define CPU_SCS_AIRCR_VECTCLRACTIVE_S 1 2955 2956 // Field: [0] VECTRESET 2957 // 2958 // System Reset bit. Resets the system, with the exception of debug components. 2959 // This bit is reserved for debug use and can be written to 1 only when the 2960 // core is halted. The bit self-clears. Writing this bit to 1 while core is not 2961 // halted may result in unpredictable behavior. 2962 #define CPU_SCS_AIRCR_VECTRESET 0x00000001 2963 #define CPU_SCS_AIRCR_VECTRESET_BITN 0 2964 #define CPU_SCS_AIRCR_VECTRESET_M 0x00000001 2965 #define CPU_SCS_AIRCR_VECTRESET_S 0 2966 2967 //***************************************************************************** 2968 // 2969 // Register: CPU_SCS_O_SCR 2970 // 2971 //***************************************************************************** 2972 // Field: [4] SEVONPEND 2973 // 2974 // Send Event on Pending bit: 2975 // 2976 // 0: Only enabled interrupts or events can wakeup the processor, disabled 2977 // interrupts are excluded 2978 // 1: Enabled events and all interrupts, including disabled interrupts, can 2979 // wakeup the processor. 2980 // 2981 // When an event or interrupt enters pending state, the event signal wakes up 2982 // the processor from WFE. If 2983 // the processor is not waiting for an event, the event is registered and 2984 // affects the next WFE. 2985 // The processor also wakes up on execution of an SEV instruction. 2986 #define CPU_SCS_SCR_SEVONPEND 0x00000010 2987 #define CPU_SCS_SCR_SEVONPEND_BITN 4 2988 #define CPU_SCS_SCR_SEVONPEND_M 0x00000010 2989 #define CPU_SCS_SCR_SEVONPEND_S 4 2990 2991 // Field: [2] SLEEPDEEP 2992 // 2993 // Controls whether the processor uses sleep or deep sleep as its low power 2994 // mode 2995 // ENUMs: 2996 // DEEPSLEEP Deep sleep 2997 // SLEEP Sleep 2998 #define CPU_SCS_SCR_SLEEPDEEP 0x00000004 2999 #define CPU_SCS_SCR_SLEEPDEEP_BITN 2 3000 #define CPU_SCS_SCR_SLEEPDEEP_M 0x00000004 3001 #define CPU_SCS_SCR_SLEEPDEEP_S 2 3002 #define CPU_SCS_SCR_SLEEPDEEP_DEEPSLEEP 0x00000004 3003 #define CPU_SCS_SCR_SLEEPDEEP_SLEEP 0x00000000 3004 3005 // Field: [1] SLEEPONEXIT 3006 // 3007 // Sleep on exit when returning from Handler mode to Thread mode. Enables 3008 // interrupt driven applications to avoid returning to empty main application. 3009 // 3010 // 0: Do not sleep when returning to thread mode 3011 // 1: Sleep on ISR exit 3012 #define CPU_SCS_SCR_SLEEPONEXIT 0x00000002 3013 #define CPU_SCS_SCR_SLEEPONEXIT_BITN 1 3014 #define CPU_SCS_SCR_SLEEPONEXIT_M 0x00000002 3015 #define CPU_SCS_SCR_SLEEPONEXIT_S 1 3016 3017 //***************************************************************************** 3018 // 3019 // Register: CPU_SCS_O_CCR 3020 // 3021 //***************************************************************************** 3022 // Field: [9] STKALIGN 3023 // 3024 // Stack alignment bit. 3025 // 3026 // 0: Only 4-byte alignment is guaranteed for the SP used prior to the 3027 // exception on exception entry. 3028 // 1: On exception entry, the SP used prior to the exception is adjusted to be 3029 // 8-byte aligned and the context to restore it is saved. The SP is restored on 3030 // the associated exception return. 3031 #define CPU_SCS_CCR_STKALIGN 0x00000200 3032 #define CPU_SCS_CCR_STKALIGN_BITN 9 3033 #define CPU_SCS_CCR_STKALIGN_M 0x00000200 3034 #define CPU_SCS_CCR_STKALIGN_S 9 3035 3036 // Field: [8] BFHFNMIGN 3037 // 3038 // Enables handlers with priority -1 or -2 to ignore data BusFaults caused by 3039 // load and store instructions. This applies to the HardFault, NMI, and 3040 // FAULTMASK escalated handlers: 3041 // 3042 // 0: Data BusFaults caused by load and store instructions cause a lock-up 3043 // 1: Data BusFaults caused by load and store instructions are ignored. 3044 // 3045 // Set this bit to 1 only when the handler and its data are in absolutely safe 3046 // memory. The normal use 3047 // of this bit is to probe system devices and bridges to detect problems. 3048 #define CPU_SCS_CCR_BFHFNMIGN 0x00000100 3049 #define CPU_SCS_CCR_BFHFNMIGN_BITN 8 3050 #define CPU_SCS_CCR_BFHFNMIGN_M 0x00000100 3051 #define CPU_SCS_CCR_BFHFNMIGN_S 8 3052 3053 // Field: [4] DIV_0_TRP 3054 // 3055 // Enables faulting or halting when the processor executes an SDIV or UDIV 3056 // instruction with a divisor of 0: 3057 // 3058 // 0: Do not trap divide by 0. In this mode, a divide by zero returns a 3059 // quotient of 0. 3060 // 1: Trap divide by 0. The relevant Usage Fault Status Register bit is 3061 // CFSR.DIVBYZERO. 3062 #define CPU_SCS_CCR_DIV_0_TRP 0x00000010 3063 #define CPU_SCS_CCR_DIV_0_TRP_BITN 4 3064 #define CPU_SCS_CCR_DIV_0_TRP_M 0x00000010 3065 #define CPU_SCS_CCR_DIV_0_TRP_S 4 3066 3067 // Field: [3] UNALIGN_TRP 3068 // 3069 // Enables unaligned access traps: 3070 // 3071 // 0: Do not trap unaligned halfword and word accesses 3072 // 1: Trap unaligned halfword and word accesses. The relevant Usage Fault 3073 // Status Register bit is CFSR.UNALIGNED. 3074 // 3075 // If this bit is set to 1, an unaligned access generates a UsageFault. 3076 // Unaligned LDM, STM, LDRD, and STRD instructions always fault regardless of 3077 // the value in UNALIGN_TRP. 3078 #define CPU_SCS_CCR_UNALIGN_TRP 0x00000008 3079 #define CPU_SCS_CCR_UNALIGN_TRP_BITN 3 3080 #define CPU_SCS_CCR_UNALIGN_TRP_M 0x00000008 3081 #define CPU_SCS_CCR_UNALIGN_TRP_S 3 3082 3083 // Field: [1] USERSETMPEND 3084 // 3085 // Enables unprivileged software access to STIR: 3086 // 3087 // 0: User code is not allowed to write to the Software Trigger Interrupt 3088 // register (STIR). 3089 // 1: User code can write the Software Trigger Interrupt register (STIR) to 3090 // trigger (pend) a Main exception, which is associated with the Main stack 3091 // pointer. 3092 #define CPU_SCS_CCR_USERSETMPEND 0x00000002 3093 #define CPU_SCS_CCR_USERSETMPEND_BITN 1 3094 #define CPU_SCS_CCR_USERSETMPEND_M 0x00000002 3095 #define CPU_SCS_CCR_USERSETMPEND_S 1 3096 3097 // Field: [0] NONBASETHREDENA 3098 // 3099 // Indicates how the processor enters Thread mode: 3100 // 3101 // 0: Processor can enter Thread mode only when no exception is active. 3102 // 1: Processor can enter Thread mode from any level using the appropriate 3103 // return value (EXC_RETURN). 3104 // 3105 // Exception returns occur when one of the following instructions loads a value 3106 // of 0xFXXXXXXX into the PC while in Handler mode: 3107 // - POP/LDM which includes loading the PC. 3108 // - LDR with PC as a destination. 3109 // - BX with any register. 3110 // The value written to the PC is intercepted and is referred to as the 3111 // EXC_RETURN value. 3112 #define CPU_SCS_CCR_NONBASETHREDENA 0x00000001 3113 #define CPU_SCS_CCR_NONBASETHREDENA_BITN 0 3114 #define CPU_SCS_CCR_NONBASETHREDENA_M 0x00000001 3115 #define CPU_SCS_CCR_NONBASETHREDENA_S 0 3116 3117 //***************************************************************************** 3118 // 3119 // Register: CPU_SCS_O_SHPR1 3120 // 3121 //***************************************************************************** 3122 // Field: [23:16] PRI_6 3123 // 3124 // Priority of system handler 6. UsageFault 3125 #define CPU_SCS_SHPR1_PRI_6_W 8 3126 #define CPU_SCS_SHPR1_PRI_6_M 0x00FF0000 3127 #define CPU_SCS_SHPR1_PRI_6_S 16 3128 3129 // Field: [15:8] PRI_5 3130 // 3131 // Priority of system handler 5: BusFault 3132 #define CPU_SCS_SHPR1_PRI_5_W 8 3133 #define CPU_SCS_SHPR1_PRI_5_M 0x0000FF00 3134 #define CPU_SCS_SHPR1_PRI_5_S 8 3135 3136 // Field: [7:0] PRI_4 3137 // 3138 // Priority of system handler 4: MemManage 3139 #define CPU_SCS_SHPR1_PRI_4_W 8 3140 #define CPU_SCS_SHPR1_PRI_4_M 0x000000FF 3141 #define CPU_SCS_SHPR1_PRI_4_S 0 3142 3143 //***************************************************************************** 3144 // 3145 // Register: CPU_SCS_O_SHPR2 3146 // 3147 //***************************************************************************** 3148 // Field: [31:24] PRI_11 3149 // 3150 // Priority of system handler 11. SVCall 3151 #define CPU_SCS_SHPR2_PRI_11_W 8 3152 #define CPU_SCS_SHPR2_PRI_11_M 0xFF000000 3153 #define CPU_SCS_SHPR2_PRI_11_S 24 3154 3155 //***************************************************************************** 3156 // 3157 // Register: CPU_SCS_O_SHPR3 3158 // 3159 //***************************************************************************** 3160 // Field: [31:24] PRI_15 3161 // 3162 // Priority of system handler 15. SysTick exception 3163 #define CPU_SCS_SHPR3_PRI_15_W 8 3164 #define CPU_SCS_SHPR3_PRI_15_M 0xFF000000 3165 #define CPU_SCS_SHPR3_PRI_15_S 24 3166 3167 // Field: [23:16] PRI_14 3168 // 3169 // Priority of system handler 14. Pend SV 3170 #define CPU_SCS_SHPR3_PRI_14_W 8 3171 #define CPU_SCS_SHPR3_PRI_14_M 0x00FF0000 3172 #define CPU_SCS_SHPR3_PRI_14_S 16 3173 3174 // Field: [7:0] PRI_12 3175 // 3176 // Priority of system handler 12. Debug Monitor 3177 #define CPU_SCS_SHPR3_PRI_12_W 8 3178 #define CPU_SCS_SHPR3_PRI_12_M 0x000000FF 3179 #define CPU_SCS_SHPR3_PRI_12_S 0 3180 3181 //***************************************************************************** 3182 // 3183 // Register: CPU_SCS_O_SHCSR 3184 // 3185 //***************************************************************************** 3186 // Field: [18] USGFAULTENA 3187 // 3188 // Usage fault system handler enable 3189 // ENUMs: 3190 // EN Exception enabled 3191 // DIS Exception disabled 3192 #define CPU_SCS_SHCSR_USGFAULTENA 0x00040000 3193 #define CPU_SCS_SHCSR_USGFAULTENA_BITN 18 3194 #define CPU_SCS_SHCSR_USGFAULTENA_M 0x00040000 3195 #define CPU_SCS_SHCSR_USGFAULTENA_S 18 3196 #define CPU_SCS_SHCSR_USGFAULTENA_EN 0x00040000 3197 #define CPU_SCS_SHCSR_USGFAULTENA_DIS 0x00000000 3198 3199 // Field: [17] BUSFAULTENA 3200 // 3201 // Bus fault system handler enable 3202 // ENUMs: 3203 // EN Exception enabled 3204 // DIS Exception disabled 3205 #define CPU_SCS_SHCSR_BUSFAULTENA 0x00020000 3206 #define CPU_SCS_SHCSR_BUSFAULTENA_BITN 17 3207 #define CPU_SCS_SHCSR_BUSFAULTENA_M 0x00020000 3208 #define CPU_SCS_SHCSR_BUSFAULTENA_S 17 3209 #define CPU_SCS_SHCSR_BUSFAULTENA_EN 0x00020000 3210 #define CPU_SCS_SHCSR_BUSFAULTENA_DIS 0x00000000 3211 3212 // Field: [16] MEMFAULTENA 3213 // 3214 // MemManage fault system handler enable 3215 // ENUMs: 3216 // EN Exception enabled 3217 // DIS Exception disabled 3218 #define CPU_SCS_SHCSR_MEMFAULTENA 0x00010000 3219 #define CPU_SCS_SHCSR_MEMFAULTENA_BITN 16 3220 #define CPU_SCS_SHCSR_MEMFAULTENA_M 0x00010000 3221 #define CPU_SCS_SHCSR_MEMFAULTENA_S 16 3222 #define CPU_SCS_SHCSR_MEMFAULTENA_EN 0x00010000 3223 #define CPU_SCS_SHCSR_MEMFAULTENA_DIS 0x00000000 3224 3225 // Field: [15] SVCALLPENDED 3226 // 3227 // SVCall pending 3228 // ENUMs: 3229 // PENDING Exception is pending. 3230 // NOTPENDING Exception is not active 3231 #define CPU_SCS_SHCSR_SVCALLPENDED 0x00008000 3232 #define CPU_SCS_SHCSR_SVCALLPENDED_BITN 15 3233 #define CPU_SCS_SHCSR_SVCALLPENDED_M 0x00008000 3234 #define CPU_SCS_SHCSR_SVCALLPENDED_S 15 3235 #define CPU_SCS_SHCSR_SVCALLPENDED_PENDING 0x00008000 3236 #define CPU_SCS_SHCSR_SVCALLPENDED_NOTPENDING 0x00000000 3237 3238 // Field: [14] BUSFAULTPENDED 3239 // 3240 // BusFault pending 3241 // ENUMs: 3242 // PENDING Exception is pending. 3243 // NOTPENDING Exception is not active 3244 #define CPU_SCS_SHCSR_BUSFAULTPENDED 0x00004000 3245 #define CPU_SCS_SHCSR_BUSFAULTPENDED_BITN 14 3246 #define CPU_SCS_SHCSR_BUSFAULTPENDED_M 0x00004000 3247 #define CPU_SCS_SHCSR_BUSFAULTPENDED_S 14 3248 #define CPU_SCS_SHCSR_BUSFAULTPENDED_PENDING 0x00004000 3249 #define CPU_SCS_SHCSR_BUSFAULTPENDED_NOTPENDING 0x00000000 3250 3251 // Field: [13] MEMFAULTPENDED 3252 // 3253 // MemManage exception pending 3254 // ENUMs: 3255 // PENDING Exception is pending. 3256 // NOTPENDING Exception is not active 3257 #define CPU_SCS_SHCSR_MEMFAULTPENDED 0x00002000 3258 #define CPU_SCS_SHCSR_MEMFAULTPENDED_BITN 13 3259 #define CPU_SCS_SHCSR_MEMFAULTPENDED_M 0x00002000 3260 #define CPU_SCS_SHCSR_MEMFAULTPENDED_S 13 3261 #define CPU_SCS_SHCSR_MEMFAULTPENDED_PENDING 0x00002000 3262 #define CPU_SCS_SHCSR_MEMFAULTPENDED_NOTPENDING 0x00000000 3263 3264 // Field: [12] USGFAULTPENDED 3265 // 3266 // Usage fault pending 3267 // ENUMs: 3268 // PENDING Exception is pending. 3269 // NOTPENDING Exception is not active 3270 #define CPU_SCS_SHCSR_USGFAULTPENDED 0x00001000 3271 #define CPU_SCS_SHCSR_USGFAULTPENDED_BITN 12 3272 #define CPU_SCS_SHCSR_USGFAULTPENDED_M 0x00001000 3273 #define CPU_SCS_SHCSR_USGFAULTPENDED_S 12 3274 #define CPU_SCS_SHCSR_USGFAULTPENDED_PENDING 0x00001000 3275 #define CPU_SCS_SHCSR_USGFAULTPENDED_NOTPENDING 0x00000000 3276 3277 // Field: [11] SYSTICKACT 3278 // 3279 // SysTick active flag. 3280 // 3281 // 0x0: Not active 3282 // 0x1: Active 3283 // ENUMs: 3284 // ACTIVE Exception is active 3285 // NOTACTIVE Exception is not active 3286 #define CPU_SCS_SHCSR_SYSTICKACT 0x00000800 3287 #define CPU_SCS_SHCSR_SYSTICKACT_BITN 11 3288 #define CPU_SCS_SHCSR_SYSTICKACT_M 0x00000800 3289 #define CPU_SCS_SHCSR_SYSTICKACT_S 11 3290 #define CPU_SCS_SHCSR_SYSTICKACT_ACTIVE 0x00000800 3291 #define CPU_SCS_SHCSR_SYSTICKACT_NOTACTIVE 0x00000000 3292 3293 // Field: [10] PENDSVACT 3294 // 3295 // PendSV active 3296 // 3297 // 0x0: Not active 3298 // 0x1: Active 3299 #define CPU_SCS_SHCSR_PENDSVACT 0x00000400 3300 #define CPU_SCS_SHCSR_PENDSVACT_BITN 10 3301 #define CPU_SCS_SHCSR_PENDSVACT_M 0x00000400 3302 #define CPU_SCS_SHCSR_PENDSVACT_S 10 3303 3304 // Field: [8] MONITORACT 3305 // 3306 // Debug monitor active 3307 // ENUMs: 3308 // ACTIVE Exception is active 3309 // NOTACTIVE Exception is not active 3310 #define CPU_SCS_SHCSR_MONITORACT 0x00000100 3311 #define CPU_SCS_SHCSR_MONITORACT_BITN 8 3312 #define CPU_SCS_SHCSR_MONITORACT_M 0x00000100 3313 #define CPU_SCS_SHCSR_MONITORACT_S 8 3314 #define CPU_SCS_SHCSR_MONITORACT_ACTIVE 0x00000100 3315 #define CPU_SCS_SHCSR_MONITORACT_NOTACTIVE 0x00000000 3316 3317 // Field: [7] SVCALLACT 3318 // 3319 // SVCall active 3320 // ENUMs: 3321 // ACTIVE Exception is active 3322 // NOTACTIVE Exception is not active 3323 #define CPU_SCS_SHCSR_SVCALLACT 0x00000080 3324 #define CPU_SCS_SHCSR_SVCALLACT_BITN 7 3325 #define CPU_SCS_SHCSR_SVCALLACT_M 0x00000080 3326 #define CPU_SCS_SHCSR_SVCALLACT_S 7 3327 #define CPU_SCS_SHCSR_SVCALLACT_ACTIVE 0x00000080 3328 #define CPU_SCS_SHCSR_SVCALLACT_NOTACTIVE 0x00000000 3329 3330 // Field: [3] USGFAULTACT 3331 // 3332 // UsageFault exception active 3333 // ENUMs: 3334 // ACTIVE Exception is active 3335 // NOTACTIVE Exception is not active 3336 #define CPU_SCS_SHCSR_USGFAULTACT 0x00000008 3337 #define CPU_SCS_SHCSR_USGFAULTACT_BITN 3 3338 #define CPU_SCS_SHCSR_USGFAULTACT_M 0x00000008 3339 #define CPU_SCS_SHCSR_USGFAULTACT_S 3 3340 #define CPU_SCS_SHCSR_USGFAULTACT_ACTIVE 0x00000008 3341 #define CPU_SCS_SHCSR_USGFAULTACT_NOTACTIVE 0x00000000 3342 3343 // Field: [1] BUSFAULTACT 3344 // 3345 // BusFault exception active 3346 // ENUMs: 3347 // ACTIVE Exception is active 3348 // NOTACTIVE Exception is not active 3349 #define CPU_SCS_SHCSR_BUSFAULTACT 0x00000002 3350 #define CPU_SCS_SHCSR_BUSFAULTACT_BITN 1 3351 #define CPU_SCS_SHCSR_BUSFAULTACT_M 0x00000002 3352 #define CPU_SCS_SHCSR_BUSFAULTACT_S 1 3353 #define CPU_SCS_SHCSR_BUSFAULTACT_ACTIVE 0x00000002 3354 #define CPU_SCS_SHCSR_BUSFAULTACT_NOTACTIVE 0x00000000 3355 3356 // Field: [0] MEMFAULTACT 3357 // 3358 // MemManage exception active 3359 // ENUMs: 3360 // ACTIVE Exception is active 3361 // NOTACTIVE Exception is not active 3362 #define CPU_SCS_SHCSR_MEMFAULTACT 0x00000001 3363 #define CPU_SCS_SHCSR_MEMFAULTACT_BITN 0 3364 #define CPU_SCS_SHCSR_MEMFAULTACT_M 0x00000001 3365 #define CPU_SCS_SHCSR_MEMFAULTACT_S 0 3366 #define CPU_SCS_SHCSR_MEMFAULTACT_ACTIVE 0x00000001 3367 #define CPU_SCS_SHCSR_MEMFAULTACT_NOTACTIVE 0x00000000 3368 3369 //***************************************************************************** 3370 // 3371 // Register: CPU_SCS_O_CFSR 3372 // 3373 //***************************************************************************** 3374 // Field: [25] DIVBYZERO 3375 // 3376 // When CCR.DIV_0_TRP (see Configuration Control Register on page 8-26) is 3377 // enabled and an SDIV or UDIV instruction is used with a divisor of 0, this 3378 // fault occurs The instruction is executed and the return PC points to it. If 3379 // CCR.DIV_0_TRP is not set, then the divide returns a quotient of 0. 3380 #define CPU_SCS_CFSR_DIVBYZERO 0x02000000 3381 #define CPU_SCS_CFSR_DIVBYZERO_BITN 25 3382 #define CPU_SCS_CFSR_DIVBYZERO_M 0x02000000 3383 #define CPU_SCS_CFSR_DIVBYZERO_S 25 3384 3385 // Field: [24] UNALIGNED 3386 // 3387 // When CCR.UNALIGN_TRP is enabled, and there is an attempt to make an 3388 // unaligned memory access, then this fault occurs. Unaligned LDM/STM/LDRD/STRD 3389 // instructions always fault irrespective of the setting of CCR.UNALIGN_TRP. 3390 #define CPU_SCS_CFSR_UNALIGNED 0x01000000 3391 #define CPU_SCS_CFSR_UNALIGNED_BITN 24 3392 #define CPU_SCS_CFSR_UNALIGNED_M 0x01000000 3393 #define CPU_SCS_CFSR_UNALIGNED_S 24 3394 3395 // Field: [19] NOCP 3396 // 3397 // Attempt to use a coprocessor instruction. The processor does not support 3398 // coprocessor instructions. 3399 #define CPU_SCS_CFSR_NOCP 0x00080000 3400 #define CPU_SCS_CFSR_NOCP_BITN 19 3401 #define CPU_SCS_CFSR_NOCP_M 0x00080000 3402 #define CPU_SCS_CFSR_NOCP_S 19 3403 3404 // Field: [18] INVPC 3405 // 3406 // Attempt to load EXC_RETURN into PC illegally. Invalid instruction, invalid 3407 // context, invalid value. The return PC points to the instruction that tried 3408 // to set the PC. 3409 #define CPU_SCS_CFSR_INVPC 0x00040000 3410 #define CPU_SCS_CFSR_INVPC_BITN 18 3411 #define CPU_SCS_CFSR_INVPC_M 0x00040000 3412 #define CPU_SCS_CFSR_INVPC_S 18 3413 3414 // Field: [17] INVSTATE 3415 // 3416 // Indicates an attempt to execute in an invalid EPSR state (e.g. after a BX 3417 // type instruction has changed state). This includes state change after entry 3418 // to or return from exception, as well as from inter-working instructions. 3419 // Return PC points to faulting instruction, with the invalid state. 3420 #define CPU_SCS_CFSR_INVSTATE 0x00020000 3421 #define CPU_SCS_CFSR_INVSTATE_BITN 17 3422 #define CPU_SCS_CFSR_INVSTATE_M 0x00020000 3423 #define CPU_SCS_CFSR_INVSTATE_S 17 3424 3425 // Field: [16] UNDEFINSTR 3426 // 3427 // This bit is set when the processor attempts to execute an undefined 3428 // instruction. This is an instruction that the processor cannot decode. The 3429 // return PC points to the undefined instruction. 3430 #define CPU_SCS_CFSR_UNDEFINSTR 0x00010000 3431 #define CPU_SCS_CFSR_UNDEFINSTR_BITN 16 3432 #define CPU_SCS_CFSR_UNDEFINSTR_M 0x00010000 3433 #define CPU_SCS_CFSR_UNDEFINSTR_S 16 3434 3435 // Field: [15] BFARVALID 3436 // 3437 // This bit is set if the Bus Fault Address Register (BFAR) contains a valid 3438 // address. This is true after a bus fault where the address is known. Other 3439 // faults can clear this bit, such as a Mem Manage fault occurring later. If a 3440 // Bus fault occurs that is escalated to a Hard Fault because of priority, the 3441 // Hard Fault handler must clear this bit. This prevents problems if returning 3442 // to a stacked active Bus fault handler whose BFAR value has been overwritten. 3443 #define CPU_SCS_CFSR_BFARVALID 0x00008000 3444 #define CPU_SCS_CFSR_BFARVALID_BITN 15 3445 #define CPU_SCS_CFSR_BFARVALID_M 0x00008000 3446 #define CPU_SCS_CFSR_BFARVALID_S 15 3447 3448 // Field: [12] STKERR 3449 // 3450 // Stacking from exception has caused one or more bus faults. The SP is still 3451 // adjusted and the values in the context area on the stack might be incorrect. 3452 // BFAR is not written. 3453 #define CPU_SCS_CFSR_STKERR 0x00001000 3454 #define CPU_SCS_CFSR_STKERR_BITN 12 3455 #define CPU_SCS_CFSR_STKERR_M 0x00001000 3456 #define CPU_SCS_CFSR_STKERR_S 12 3457 3458 // Field: [11] UNSTKERR 3459 // 3460 // Unstack from exception return has caused one or more bus faults. This is 3461 // chained to the handler, so that the original return stack is still present. 3462 // SP is not adjusted from failing return and new save is not performed. BFAR 3463 // is not written. 3464 #define CPU_SCS_CFSR_UNSTKERR 0x00000800 3465 #define CPU_SCS_CFSR_UNSTKERR_BITN 11 3466 #define CPU_SCS_CFSR_UNSTKERR_M 0x00000800 3467 #define CPU_SCS_CFSR_UNSTKERR_S 11 3468 3469 // Field: [10] IMPRECISERR 3470 // 3471 // Imprecise data bus error. It is a BusFault, but the Return PC is not related 3472 // to the causing instruction. This is not a synchronous fault. So, if detected 3473 // when the priority of the current activation is higher than the Bus Fault, it 3474 // only pends. Bus fault activates when returning to a lower priority 3475 // activation. If a precise fault occurs before returning to a lower priority 3476 // exception, the handler detects both IMPRECISERR set and one of the precise 3477 // fault status bits set at the same time. BFAR is not written. 3478 #define CPU_SCS_CFSR_IMPRECISERR 0x00000400 3479 #define CPU_SCS_CFSR_IMPRECISERR_BITN 10 3480 #define CPU_SCS_CFSR_IMPRECISERR_M 0x00000400 3481 #define CPU_SCS_CFSR_IMPRECISERR_S 10 3482 3483 // Field: [9] PRECISERR 3484 // 3485 // Precise data bus error return. 3486 #define CPU_SCS_CFSR_PRECISERR 0x00000200 3487 #define CPU_SCS_CFSR_PRECISERR_BITN 9 3488 #define CPU_SCS_CFSR_PRECISERR_M 0x00000200 3489 #define CPU_SCS_CFSR_PRECISERR_S 9 3490 3491 // Field: [8] IBUSERR 3492 // 3493 // Instruction bus error flag. This flag is set by a prefetch error. The fault 3494 // stops on the instruction, so if the error occurs under a branch shadow, no 3495 // fault occurs. BFAR is not written. 3496 #define CPU_SCS_CFSR_IBUSERR 0x00000100 3497 #define CPU_SCS_CFSR_IBUSERR_BITN 8 3498 #define CPU_SCS_CFSR_IBUSERR_M 0x00000100 3499 #define CPU_SCS_CFSR_IBUSERR_S 8 3500 3501 // Field: [7] MMARVALID 3502 // 3503 // Memory Manage Address Register (MMFAR) address valid flag. A later-arriving 3504 // fault, such as a bus fault, can clear a memory manage fault.. If a MemManage 3505 // fault occurs that is escalated to a Hard Fault because of priority, the Hard 3506 // Fault handler must clear this bit. This prevents problems on return to a 3507 // stacked active MemManage handler whose MMFAR value has been overwritten. 3508 #define CPU_SCS_CFSR_MMARVALID 0x00000080 3509 #define CPU_SCS_CFSR_MMARVALID_BITN 7 3510 #define CPU_SCS_CFSR_MMARVALID_M 0x00000080 3511 #define CPU_SCS_CFSR_MMARVALID_S 7 3512 3513 // Field: [4] MSTKERR 3514 // 3515 // Stacking from exception has caused one or more access violations. The SP is 3516 // still adjusted and the values in the context area on the stack might be 3517 // incorrect. MMFAR is not written. 3518 #define CPU_SCS_CFSR_MSTKERR 0x00000010 3519 #define CPU_SCS_CFSR_MSTKERR_BITN 4 3520 #define CPU_SCS_CFSR_MSTKERR_M 0x00000010 3521 #define CPU_SCS_CFSR_MSTKERR_S 4 3522 3523 // Field: [3] MUNSTKERR 3524 // 3525 // Unstack from exception return has caused one or more access violations. This 3526 // is chained to the handler, so that the original return stack is still 3527 // present. SP is not adjusted from failing return and new save is not 3528 // performed. MMFAR is not written. 3529 #define CPU_SCS_CFSR_MUNSTKERR 0x00000008 3530 #define CPU_SCS_CFSR_MUNSTKERR_BITN 3 3531 #define CPU_SCS_CFSR_MUNSTKERR_M 0x00000008 3532 #define CPU_SCS_CFSR_MUNSTKERR_S 3 3533 3534 // Field: [1] DACCVIOL 3535 // 3536 // Data access violation flag. Attempting to load or store at a location that 3537 // does not permit the operation sets this flag. The return PC points to the 3538 // faulting instruction. This error loads MMFAR with the address of the 3539 // attempted access. 3540 #define CPU_SCS_CFSR_DACCVIOL 0x00000002 3541 #define CPU_SCS_CFSR_DACCVIOL_BITN 1 3542 #define CPU_SCS_CFSR_DACCVIOL_M 0x00000002 3543 #define CPU_SCS_CFSR_DACCVIOL_S 1 3544 3545 // Field: [0] IACCVIOL 3546 // 3547 // Instruction access violation flag. Attempting to fetch an instruction from a 3548 // location that does not permit execution sets this flag. This occurs on any 3549 // access to an XN region, even when the MPU is disabled or not present. The 3550 // return PC points to the faulting instruction. MMFAR is not written. 3551 #define CPU_SCS_CFSR_IACCVIOL 0x00000001 3552 #define CPU_SCS_CFSR_IACCVIOL_BITN 0 3553 #define CPU_SCS_CFSR_IACCVIOL_M 0x00000001 3554 #define CPU_SCS_CFSR_IACCVIOL_S 0 3555 3556 //***************************************************************************** 3557 // 3558 // Register: CPU_SCS_O_HFSR 3559 // 3560 //***************************************************************************** 3561 // Field: [31] DEBUGEVT 3562 // 3563 // This bit is set if there is a fault related to debug. This is only possible 3564 // when halting debug is not enabled. For monitor enabled debug, it only 3565 // happens for BKPT when the current priority is higher than the monitor. When 3566 // both halting and monitor debug are disabled, it only happens for debug 3567 // events that are not ignored (minimally, BKPT). The Debug Fault Status 3568 // Register is updated. 3569 #define CPU_SCS_HFSR_DEBUGEVT 0x80000000 3570 #define CPU_SCS_HFSR_DEBUGEVT_BITN 31 3571 #define CPU_SCS_HFSR_DEBUGEVT_M 0x80000000 3572 #define CPU_SCS_HFSR_DEBUGEVT_S 31 3573 3574 // Field: [30] FORCED 3575 // 3576 // Hard Fault activated because a Configurable Fault was received and cannot 3577 // activate because of priority or because the Configurable Fault is disabled. 3578 // The Hard Fault handler then has to read the other fault status registers to 3579 // determine cause. 3580 #define CPU_SCS_HFSR_FORCED 0x40000000 3581 #define CPU_SCS_HFSR_FORCED_BITN 30 3582 #define CPU_SCS_HFSR_FORCED_M 0x40000000 3583 #define CPU_SCS_HFSR_FORCED_S 30 3584 3585 // Field: [1] VECTTBL 3586 // 3587 // This bit is set if there is a fault because of vector table read on 3588 // exception processing (Bus Fault). This case is always a Hard Fault. The 3589 // return PC points to the pre-empted instruction. 3590 #define CPU_SCS_HFSR_VECTTBL 0x00000002 3591 #define CPU_SCS_HFSR_VECTTBL_BITN 1 3592 #define CPU_SCS_HFSR_VECTTBL_M 0x00000002 3593 #define CPU_SCS_HFSR_VECTTBL_S 1 3594 3595 //***************************************************************************** 3596 // 3597 // Register: CPU_SCS_O_DFSR 3598 // 3599 //***************************************************************************** 3600 // Field: [4] EXTERNAL 3601 // 3602 // External debug request flag. The processor stops on next instruction 3603 // boundary. 3604 // 3605 // 0x0: External debug request signal not asserted 3606 // 0x1: External debug request signal asserted 3607 #define CPU_SCS_DFSR_EXTERNAL 0x00000010 3608 #define CPU_SCS_DFSR_EXTERNAL_BITN 4 3609 #define CPU_SCS_DFSR_EXTERNAL_M 0x00000010 3610 #define CPU_SCS_DFSR_EXTERNAL_S 4 3611 3612 // Field: [3] VCATCH 3613 // 3614 // Vector catch flag. When this flag is set, a flag in one of the local fault 3615 // status registers is also set to indicate the type of fault. 3616 // 3617 // 0x0: No vector catch occurred 3618 // 0x1: Vector catch occurred 3619 #define CPU_SCS_DFSR_VCATCH 0x00000008 3620 #define CPU_SCS_DFSR_VCATCH_BITN 3 3621 #define CPU_SCS_DFSR_VCATCH_M 0x00000008 3622 #define CPU_SCS_DFSR_VCATCH_S 3 3623 3624 // Field: [2] DWTTRAP 3625 // 3626 // Data Watchpoint and Trace (DWT) flag. The processor stops at the current 3627 // instruction or at the next instruction. 3628 // 3629 // 0x0: No DWT match 3630 // 0x1: DWT match 3631 #define CPU_SCS_DFSR_DWTTRAP 0x00000004 3632 #define CPU_SCS_DFSR_DWTTRAP_BITN 2 3633 #define CPU_SCS_DFSR_DWTTRAP_M 0x00000004 3634 #define CPU_SCS_DFSR_DWTTRAP_S 2 3635 3636 // Field: [1] BKPT 3637 // 3638 // BKPT flag. The BKPT flag is set by a BKPT instruction in flash patch code, 3639 // and also by normal code. Return PC points to breakpoint containing 3640 // instruction. 3641 // 3642 // 0x0: No BKPT instruction execution 3643 // 0x1: BKPT instruction execution 3644 #define CPU_SCS_DFSR_BKPT 0x00000002 3645 #define CPU_SCS_DFSR_BKPT_BITN 1 3646 #define CPU_SCS_DFSR_BKPT_M 0x00000002 3647 #define CPU_SCS_DFSR_BKPT_S 1 3648 3649 // Field: [0] HALTED 3650 // 3651 // Halt request flag. The processor is halted on the next instruction. 3652 // 3653 // 0x0: No halt request 3654 // 0x1: Halt requested by NVIC, including step 3655 #define CPU_SCS_DFSR_HALTED 0x00000001 3656 #define CPU_SCS_DFSR_HALTED_BITN 0 3657 #define CPU_SCS_DFSR_HALTED_M 0x00000001 3658 #define CPU_SCS_DFSR_HALTED_S 0 3659 3660 //***************************************************************************** 3661 // 3662 // Register: CPU_SCS_O_MMFAR 3663 // 3664 //***************************************************************************** 3665 // Field: [31:0] ADDRESS 3666 // 3667 // Mem Manage fault address field. 3668 // This field is the data address of a faulted load or store attempt. When an 3669 // unaligned access faults, the address is the actual address that faulted. 3670 // Because an access can be split into multiple parts, each aligned, this 3671 // address can be any offset in the range of the requested size. Flags 3672 // CFSR.IACCVIOL, CFSR.DACCVIOL ,CFSR.MUNSTKERR and CFSR.MSTKERR in combination 3673 // with CFSR.MMARVALIDindicate the cause of the fault. 3674 #define CPU_SCS_MMFAR_ADDRESS_W 32 3675 #define CPU_SCS_MMFAR_ADDRESS_M 0xFFFFFFFF 3676 #define CPU_SCS_MMFAR_ADDRESS_S 0 3677 3678 //***************************************************************************** 3679 // 3680 // Register: CPU_SCS_O_BFAR 3681 // 3682 //***************************************************************************** 3683 // Field: [31:0] ADDRESS 3684 // 3685 // Bus fault address field. This field is the data address of a faulted load or 3686 // store attempt. When an unaligned access faults, the address is the address 3687 // requested by the instruction, even if that is not the address that faulted. 3688 // Flags CFSR.IBUSERR, CFSR.PRECISERR, CFSR.IMPRECISERR, CFSR.UNSTKERR and 3689 // CFSR.STKERR in combination with CFSR.BFARVALID indicate the cause of the 3690 // fault. 3691 #define CPU_SCS_BFAR_ADDRESS_W 32 3692 #define CPU_SCS_BFAR_ADDRESS_M 0xFFFFFFFF 3693 #define CPU_SCS_BFAR_ADDRESS_S 0 3694 3695 //***************************************************************************** 3696 // 3697 // Register: CPU_SCS_O_AFSR 3698 // 3699 //***************************************************************************** 3700 // Field: [31:0] IMPDEF 3701 // 3702 // Implementation defined. The bits map directly onto the signal assignment to 3703 // the auxiliary fault inputs. Tied to 0 3704 #define CPU_SCS_AFSR_IMPDEF_W 32 3705 #define CPU_SCS_AFSR_IMPDEF_M 0xFFFFFFFF 3706 #define CPU_SCS_AFSR_IMPDEF_S 0 3707 3708 //***************************************************************************** 3709 // 3710 // Register: CPU_SCS_O_ID_PFR0 3711 // 3712 //***************************************************************************** 3713 // Field: [7:4] STATE1 3714 // 3715 // State1 (T-bit == 1) 3716 // 3717 // 0x0: N/A 3718 // 0x1: N/A 3719 // 0x2: Thumb-2 encoding with the 16-bit basic instructions plus 32-bit 3720 // Buncond/BL but no other 32-bit basic instructions (Note non-basic 32-bit 3721 // instructions can be added using the appropriate instruction attribute, but 3722 // other 32-bit basic instructions cannot.) 3723 // 0x3: Thumb-2 encoding with all Thumb-2 basic instructions 3724 #define CPU_SCS_ID_PFR0_STATE1_W 4 3725 #define CPU_SCS_ID_PFR0_STATE1_M 0x000000F0 3726 #define CPU_SCS_ID_PFR0_STATE1_S 4 3727 3728 // Field: [3:0] STATE0 3729 // 3730 // State0 (T-bit == 0) 3731 // 3732 // 0x0: No ARM encoding 3733 // 0x1: N/A 3734 #define CPU_SCS_ID_PFR0_STATE0_W 4 3735 #define CPU_SCS_ID_PFR0_STATE0_M 0x0000000F 3736 #define CPU_SCS_ID_PFR0_STATE0_S 0 3737 3738 //***************************************************************************** 3739 // 3740 // Register: CPU_SCS_O_ID_PFR1 3741 // 3742 //***************************************************************************** 3743 // Field: [11:8] MICROCONTROLLER_PROGRAMMERS_MODEL 3744 // 3745 // Microcontroller programmer's model 3746 // 3747 // 0x0: Not supported 3748 // 0x2: Two-stack support 3749 #define CPU_SCS_ID_PFR1_MICROCONTROLLER_PROGRAMMERS_MODEL_W 4 3750 #define CPU_SCS_ID_PFR1_MICROCONTROLLER_PROGRAMMERS_MODEL_M 0x00000F00 3751 #define CPU_SCS_ID_PFR1_MICROCONTROLLER_PROGRAMMERS_MODEL_S 8 3752 3753 //***************************************************************************** 3754 // 3755 // Register: CPU_SCS_O_ID_DFR0 3756 // 3757 //***************************************************************************** 3758 // Field: [23:20] MICROCONTROLLER_DEBUG_MODEL 3759 // 3760 // Microcontroller Debug Model - memory mapped 3761 // 3762 // 0x0: Not supported 3763 // 0x1: Microcontroller debug v1 (ITMv1 and DWTv1) 3764 #define CPU_SCS_ID_DFR0_MICROCONTROLLER_DEBUG_MODEL_W 4 3765 #define CPU_SCS_ID_DFR0_MICROCONTROLLER_DEBUG_MODEL_M 0x00F00000 3766 #define CPU_SCS_ID_DFR0_MICROCONTROLLER_DEBUG_MODEL_S 20 3767 3768 //***************************************************************************** 3769 // 3770 // Register: CPU_SCS_O_ID_AFR0 3771 // 3772 //***************************************************************************** 3773 //***************************************************************************** 3774 // 3775 // Register: CPU_SCS_O_ID_MMFR0 3776 // 3777 //***************************************************************************** 3778 //***************************************************************************** 3779 // 3780 // Register: CPU_SCS_O_ID_MMFR1 3781 // 3782 //***************************************************************************** 3783 //***************************************************************************** 3784 // 3785 // Register: CPU_SCS_O_ID_MMFR2 3786 // 3787 //***************************************************************************** 3788 // Field: [24] WAIT_FOR_INTERRUPT_STALLING 3789 // 3790 // wait for interrupt stalling 3791 // 3792 // 0x0: Not supported 3793 // 0x1: Wait for interrupt supported 3794 #define CPU_SCS_ID_MMFR2_WAIT_FOR_INTERRUPT_STALLING 0x01000000 3795 #define CPU_SCS_ID_MMFR2_WAIT_FOR_INTERRUPT_STALLING_BITN 24 3796 #define CPU_SCS_ID_MMFR2_WAIT_FOR_INTERRUPT_STALLING_M 0x01000000 3797 #define CPU_SCS_ID_MMFR2_WAIT_FOR_INTERRUPT_STALLING_S 24 3798 3799 //***************************************************************************** 3800 // 3801 // Register: CPU_SCS_O_ID_MMFR3 3802 // 3803 //***************************************************************************** 3804 //***************************************************************************** 3805 // 3806 // Register: CPU_SCS_O_ID_ISAR0 3807 // 3808 //***************************************************************************** 3809 //***************************************************************************** 3810 // 3811 // Register: CPU_SCS_O_ID_ISAR1 3812 // 3813 //***************************************************************************** 3814 //***************************************************************************** 3815 // 3816 // Register: CPU_SCS_O_ID_ISAR2 3817 // 3818 //***************************************************************************** 3819 //***************************************************************************** 3820 // 3821 // Register: CPU_SCS_O_ID_ISAR3 3822 // 3823 //***************************************************************************** 3824 //***************************************************************************** 3825 // 3826 // Register: CPU_SCS_O_ID_ISAR4 3827 // 3828 //***************************************************************************** 3829 //***************************************************************************** 3830 // 3831 // Register: CPU_SCS_O_CPACR 3832 // 3833 //***************************************************************************** 3834 //***************************************************************************** 3835 // 3836 // Register: CPU_SCS_O_MPU_TYPE 3837 // 3838 //***************************************************************************** 3839 // Field: [23:16] IREGION 3840 // 3841 // The processor core uses only a unified MPU, this field always reads 0x0. 3842 #define CPU_SCS_MPU_TYPE_IREGION_W 8 3843 #define CPU_SCS_MPU_TYPE_IREGION_M 0x00FF0000 3844 #define CPU_SCS_MPU_TYPE_IREGION_S 16 3845 3846 // Field: [15:8] DREGION 3847 // 3848 // Number of supported MPU regions field. This field reads 0x08 indicating 3849 // eight MPU regions. 3850 #define CPU_SCS_MPU_TYPE_DREGION_W 8 3851 #define CPU_SCS_MPU_TYPE_DREGION_M 0x0000FF00 3852 #define CPU_SCS_MPU_TYPE_DREGION_S 8 3853 3854 // Field: [0] SEPARATE 3855 // 3856 // The processor core uses only a unified MPU, thus this field is always 0. 3857 #define CPU_SCS_MPU_TYPE_SEPARATE 0x00000001 3858 #define CPU_SCS_MPU_TYPE_SEPARATE_BITN 0 3859 #define CPU_SCS_MPU_TYPE_SEPARATE_M 0x00000001 3860 #define CPU_SCS_MPU_TYPE_SEPARATE_S 0 3861 3862 //***************************************************************************** 3863 // 3864 // Register: CPU_SCS_O_MPU_CTRL 3865 // 3866 //***************************************************************************** 3867 // Field: [2] PRIVDEFENA 3868 // 3869 // This bit enables the default memory map for privileged access, as a 3870 // background region, when the MPU is enabled. The background region acts as if 3871 // it was region number 1 before any settable regions. Any region that is set 3872 // up overlays this default map, and overrides it. If this bit is not set, the 3873 // default memory map is disabled, and memory not covered by a region faults. 3874 // This applies to memory type, Execute Never (XN), cache and shareable rules. 3875 // However, this only applies to privileged mode (fetch and data access). User 3876 // mode code faults unless a region has been set up for its code and data. When 3877 // the MPU is disabled, the default map acts on both privileged and user mode 3878 // code. XN and SO rules always apply to the system partition whether this 3879 // enable is set or not. If the MPU is disabled, this bit is ignored. 3880 #define CPU_SCS_MPU_CTRL_PRIVDEFENA 0x00000004 3881 #define CPU_SCS_MPU_CTRL_PRIVDEFENA_BITN 2 3882 #define CPU_SCS_MPU_CTRL_PRIVDEFENA_M 0x00000004 3883 #define CPU_SCS_MPU_CTRL_PRIVDEFENA_S 2 3884 3885 // Field: [1] HFNMIENA 3886 // 3887 // This bit enables the MPU when in Hard Fault, NMI, and FAULTMASK escalated 3888 // handlers. If this bit and ENABLE are set, the MPU is enabled when in these 3889 // handlers. If this bit is not set, the MPU is disabled when in these 3890 // handlers, regardless of the value of ENABLE bit. If this bit is set and 3891 // ENABLE is not set, behavior is unpredictable. 3892 #define CPU_SCS_MPU_CTRL_HFNMIENA 0x00000002 3893 #define CPU_SCS_MPU_CTRL_HFNMIENA_BITN 1 3894 #define CPU_SCS_MPU_CTRL_HFNMIENA_M 0x00000002 3895 #define CPU_SCS_MPU_CTRL_HFNMIENA_S 1 3896 3897 // Field: [0] ENABLE 3898 // 3899 // Enable MPU 3900 // 3901 // 0: MPU disabled 3902 // 1: MPU enabled 3903 #define CPU_SCS_MPU_CTRL_ENABLE 0x00000001 3904 #define CPU_SCS_MPU_CTRL_ENABLE_BITN 0 3905 #define CPU_SCS_MPU_CTRL_ENABLE_M 0x00000001 3906 #define CPU_SCS_MPU_CTRL_ENABLE_S 0 3907 3908 //***************************************************************************** 3909 // 3910 // Register: CPU_SCS_O_MPU_RNR 3911 // 3912 //***************************************************************************** 3913 // Field: [7:0] REGION 3914 // 3915 // Region select field. 3916 // This field selects the region to operate on when using the MPU_RASR and 3917 // MPU_RBAR. It must be written first except when the address MPU_RBAR.VALID 3918 // and MPU_RBAR.REGION fields are written, which overwrites this. 3919 #define CPU_SCS_MPU_RNR_REGION_W 8 3920 #define CPU_SCS_MPU_RNR_REGION_M 0x000000FF 3921 #define CPU_SCS_MPU_RNR_REGION_S 0 3922 3923 //***************************************************************************** 3924 // 3925 // Register: CPU_SCS_O_MPU_RBAR 3926 // 3927 //***************************************************************************** 3928 // Field: [31:5] ADDR 3929 // 3930 // Region base address field. 3931 // The position of the LSB depends on the region size, so that the base address 3932 // is aligned according to an even multiple of size. The power of 2 size 3933 // specified by the SZENABLE field of the MPU Region Attribute and Size 3934 // Register defines how many bits of base address are used. 3935 #define CPU_SCS_MPU_RBAR_ADDR_W 27 3936 #define CPU_SCS_MPU_RBAR_ADDR_M 0xFFFFFFE0 3937 #define CPU_SCS_MPU_RBAR_ADDR_S 5 3938 3939 // Field: [4] VALID 3940 // 3941 // MPU region number valid: 3942 // 0: MPU_RNR remains unchanged and is interpreted. 3943 // 1: MPU_RNR is overwritten by REGION. 3944 #define CPU_SCS_MPU_RBAR_VALID 0x00000010 3945 #define CPU_SCS_MPU_RBAR_VALID_BITN 4 3946 #define CPU_SCS_MPU_RBAR_VALID_M 0x00000010 3947 #define CPU_SCS_MPU_RBAR_VALID_S 4 3948 3949 // Field: [3:0] REGION 3950 // 3951 // MPU region override field 3952 #define CPU_SCS_MPU_RBAR_REGION_W 4 3953 #define CPU_SCS_MPU_RBAR_REGION_M 0x0000000F 3954 #define CPU_SCS_MPU_RBAR_REGION_S 0 3955 3956 //***************************************************************************** 3957 // 3958 // Register: CPU_SCS_O_MPU_RASR 3959 // 3960 //***************************************************************************** 3961 // Field: [28] XN 3962 // 3963 // Instruction access disable: 3964 // 0: Enable instruction fetches 3965 // 1: Disable instruction fetches 3966 #define CPU_SCS_MPU_RASR_XN 0x10000000 3967 #define CPU_SCS_MPU_RASR_XN_BITN 28 3968 #define CPU_SCS_MPU_RASR_XN_M 0x10000000 3969 #define CPU_SCS_MPU_RASR_XN_S 28 3970 3971 // Field: [26:24] AP 3972 // 3973 // Data access permission: 3974 // 0x0: Priviliged permissions: No access. User permissions: No access. 3975 // 0x1: Priviliged permissions: Read-write. User permissions: No access. 3976 // 0x2: Priviliged permissions: Read-write. User permissions: Read-only. 3977 // 0x3: Priviliged permissions: Read-write. User permissions: Read-write. 3978 // 0x4: Reserved 3979 // 0x5: Priviliged permissions: Read-only. User permissions: No access. 3980 // 0x6: Priviliged permissions: Read-only. User permissions: Read-only. 3981 // 0x7: Priviliged permissions: Read-only. User permissions: Read-only. 3982 #define CPU_SCS_MPU_RASR_AP_W 3 3983 #define CPU_SCS_MPU_RASR_AP_M 0x07000000 3984 #define CPU_SCS_MPU_RASR_AP_S 24 3985 3986 // Field: [21:19] TEX 3987 // 3988 // Type extension 3989 #define CPU_SCS_MPU_RASR_TEX_W 3 3990 #define CPU_SCS_MPU_RASR_TEX_M 0x00380000 3991 #define CPU_SCS_MPU_RASR_TEX_S 19 3992 3993 // Field: [18] S 3994 // 3995 // Shareable bit: 3996 // 0: Not shareable 3997 // 1: Shareable 3998 #define CPU_SCS_MPU_RASR_S 0x00040000 3999 #define CPU_SCS_MPU_RASR_S_BITN 18 4000 #define CPU_SCS_MPU_RASR_S_M 0x00040000 4001 #define CPU_SCS_MPU_RASR_S_S 18 4002 4003 // Field: [17] C 4004 // 4005 // Cacheable bit: 4006 // 0: Not cacheable 4007 // 1: Cacheable 4008 #define CPU_SCS_MPU_RASR_C 0x00020000 4009 #define CPU_SCS_MPU_RASR_C_BITN 17 4010 #define CPU_SCS_MPU_RASR_C_M 0x00020000 4011 #define CPU_SCS_MPU_RASR_C_S 17 4012 4013 // Field: [16] B 4014 // 4015 // Bufferable bit: 4016 // 0: Not bufferable 4017 // 1: Bufferable 4018 #define CPU_SCS_MPU_RASR_B 0x00010000 4019 #define CPU_SCS_MPU_RASR_B_BITN 16 4020 #define CPU_SCS_MPU_RASR_B_M 0x00010000 4021 #define CPU_SCS_MPU_RASR_B_S 16 4022 4023 // Field: [15:8] SRD 4024 // 4025 // Sub-Region Disable field: 4026 // Setting a bit in this field disables the corresponding sub-region. Regions 4027 // are split into eight equal-sized sub-regions. Sub-regions are not supported 4028 // for region sizes of 128 bytes and less. 4029 #define CPU_SCS_MPU_RASR_SRD_W 8 4030 #define CPU_SCS_MPU_RASR_SRD_M 0x0000FF00 4031 #define CPU_SCS_MPU_RASR_SRD_S 8 4032 4033 // Field: [5:1] SIZE 4034 // 4035 // MPU Protection Region Size Field: 4036 // 0x04: 32B 4037 // 0x05: 64B 4038 // 0x06: 128B 4039 // 0x07: 256B 4040 // 0x08: 512B 4041 // 0x09: 1KB 4042 // 0x0A: 2KB 4043 // 0x0B: 4KB 4044 // 0x0C: 8KB 4045 // 0x0D: 16KB 4046 // 0x0E: 32KB 4047 // 0x0F: 64KB 4048 // 0x10: 128KB 4049 // 0x11: 256KB 4050 // 0x12: 512KB 4051 // 0x13: 1MB 4052 // 0x14: 2MB 4053 // 0x15: 4MB 4054 // 0x16: 8MB 4055 // 0x17: 16MB 4056 // 0x18: 32MB 4057 // 0x19: 64MB 4058 // 0x1A: 128MB 4059 // 0x1B: 256MB 4060 // 0x1C: 512MB 4061 // 0x1D: 1GB 4062 // 0x1E: 2GB 4063 // 0x1F: 4GB 4064 #define CPU_SCS_MPU_RASR_SIZE_W 5 4065 #define CPU_SCS_MPU_RASR_SIZE_M 0x0000003E 4066 #define CPU_SCS_MPU_RASR_SIZE_S 1 4067 4068 // Field: [0] ENABLE 4069 // 4070 // Region enable bit: 4071 // 0: Disable region 4072 // 1: Enable region 4073 #define CPU_SCS_MPU_RASR_ENABLE 0x00000001 4074 #define CPU_SCS_MPU_RASR_ENABLE_BITN 0 4075 #define CPU_SCS_MPU_RASR_ENABLE_M 0x00000001 4076 #define CPU_SCS_MPU_RASR_ENABLE_S 0 4077 4078 //***************************************************************************** 4079 // 4080 // Register: CPU_SCS_O_MPU_RBAR_A1 4081 // 4082 //***************************************************************************** 4083 // Field: [31:0] MPU_RBAR_A1 4084 // 4085 // Alias for MPU_RBAR 4086 #define CPU_SCS_MPU_RBAR_A1_MPU_RBAR_A1_W 32 4087 #define CPU_SCS_MPU_RBAR_A1_MPU_RBAR_A1_M 0xFFFFFFFF 4088 #define CPU_SCS_MPU_RBAR_A1_MPU_RBAR_A1_S 0 4089 4090 //***************************************************************************** 4091 // 4092 // Register: CPU_SCS_O_MPU_RASR_A1 4093 // 4094 //***************************************************************************** 4095 // Field: [31:0] MPU_RASR_A1 4096 // 4097 // Alias for MPU_RASR 4098 #define CPU_SCS_MPU_RASR_A1_MPU_RASR_A1_W 32 4099 #define CPU_SCS_MPU_RASR_A1_MPU_RASR_A1_M 0xFFFFFFFF 4100 #define CPU_SCS_MPU_RASR_A1_MPU_RASR_A1_S 0 4101 4102 //***************************************************************************** 4103 // 4104 // Register: CPU_SCS_O_MPU_RBAR_A2 4105 // 4106 //***************************************************************************** 4107 // Field: [31:0] MPU_RBAR_A2 4108 // 4109 // Alias for MPU_RBAR 4110 #define CPU_SCS_MPU_RBAR_A2_MPU_RBAR_A2_W 32 4111 #define CPU_SCS_MPU_RBAR_A2_MPU_RBAR_A2_M 0xFFFFFFFF 4112 #define CPU_SCS_MPU_RBAR_A2_MPU_RBAR_A2_S 0 4113 4114 //***************************************************************************** 4115 // 4116 // Register: CPU_SCS_O_MPU_RASR_A2 4117 // 4118 //***************************************************************************** 4119 // Field: [31:0] MPU_RASR_A2 4120 // 4121 // Alias for MPU_RASR 4122 #define CPU_SCS_MPU_RASR_A2_MPU_RASR_A2_W 32 4123 #define CPU_SCS_MPU_RASR_A2_MPU_RASR_A2_M 0xFFFFFFFF 4124 #define CPU_SCS_MPU_RASR_A2_MPU_RASR_A2_S 0 4125 4126 //***************************************************************************** 4127 // 4128 // Register: CPU_SCS_O_MPU_RBAR_A3 4129 // 4130 //***************************************************************************** 4131 // Field: [31:0] MPU_RBAR_A3 4132 // 4133 // Alias for MPU_RBAR 4134 #define CPU_SCS_MPU_RBAR_A3_MPU_RBAR_A3_W 32 4135 #define CPU_SCS_MPU_RBAR_A3_MPU_RBAR_A3_M 0xFFFFFFFF 4136 #define CPU_SCS_MPU_RBAR_A3_MPU_RBAR_A3_S 0 4137 4138 //***************************************************************************** 4139 // 4140 // Register: CPU_SCS_O_MPU_RASR_A3 4141 // 4142 //***************************************************************************** 4143 // Field: [31:0] MPU_RASR_A3 4144 // 4145 // Alias for MPU_RASR 4146 #define CPU_SCS_MPU_RASR_A3_MPU_RASR_A3_W 32 4147 #define CPU_SCS_MPU_RASR_A3_MPU_RASR_A3_M 0xFFFFFFFF 4148 #define CPU_SCS_MPU_RASR_A3_MPU_RASR_A3_S 0 4149 4150 //***************************************************************************** 4151 // 4152 // Register: CPU_SCS_O_DHCSR 4153 // 4154 //***************************************************************************** 4155 // Field: [25] S_RESET_ST 4156 // 4157 // Indicates that the core has been reset, or is now being reset, since the 4158 // last time this bit was read. This a sticky bit that clears on read. So, 4159 // reading twice and getting 1 then 0 means it was reset in the past. Reading 4160 // twice and getting 1 both times means that it is being reset now (held in 4161 // reset still). 4162 // When writing to this register, 0 must be written this bit-field, otherwise 4163 // the write operation is ignored and no bits are written into the register. 4164 #define CPU_SCS_DHCSR_S_RESET_ST 0x02000000 4165 #define CPU_SCS_DHCSR_S_RESET_ST_BITN 25 4166 #define CPU_SCS_DHCSR_S_RESET_ST_M 0x02000000 4167 #define CPU_SCS_DHCSR_S_RESET_ST_S 25 4168 4169 // Field: [24] S_RETIRE_ST 4170 // 4171 // Indicates that an instruction has completed since last read. This is a 4172 // sticky bit that clears on read. This determines if the core is stalled on a 4173 // load/store or fetch. 4174 // When writing to this register, 0 must be written this bit-field, otherwise 4175 // the write operation is ignored and no bits are written into the register. 4176 #define CPU_SCS_DHCSR_S_RETIRE_ST 0x01000000 4177 #define CPU_SCS_DHCSR_S_RETIRE_ST_BITN 24 4178 #define CPU_SCS_DHCSR_S_RETIRE_ST_M 0x01000000 4179 #define CPU_SCS_DHCSR_S_RETIRE_ST_S 24 4180 4181 // Field: [19] S_LOCKUP 4182 // 4183 // Reads as one if the core is running (not halted) and a lockup condition is 4184 // present. 4185 // When writing to this register, 1 must be written this bit-field, otherwise 4186 // the write operation is ignored and no bits are written into the register. 4187 #define CPU_SCS_DHCSR_S_LOCKUP 0x00080000 4188 #define CPU_SCS_DHCSR_S_LOCKUP_BITN 19 4189 #define CPU_SCS_DHCSR_S_LOCKUP_M 0x00080000 4190 #define CPU_SCS_DHCSR_S_LOCKUP_S 19 4191 4192 // Field: [18] S_SLEEP 4193 // 4194 // Indicates that the core is sleeping (WFI, WFE, or **SLEEP-ON-EXIT**). Must 4195 // use C_HALT to gain control or wait for interrupt to wake-up. 4196 // When writing to this register, 1 must be written this bit-field, otherwise 4197 // the write operation is ignored and no bits are written into the register. 4198 #define CPU_SCS_DHCSR_S_SLEEP 0x00040000 4199 #define CPU_SCS_DHCSR_S_SLEEP_BITN 18 4200 #define CPU_SCS_DHCSR_S_SLEEP_M 0x00040000 4201 #define CPU_SCS_DHCSR_S_SLEEP_S 18 4202 4203 // Field: [17] S_HALT 4204 // 4205 // The core is in debug state when this bit is set. 4206 // When writing to this register, 1 must be written this bit-field, otherwise 4207 // the write operation is ignored and no bits are written into the register. 4208 #define CPU_SCS_DHCSR_S_HALT 0x00020000 4209 #define CPU_SCS_DHCSR_S_HALT_BITN 17 4210 #define CPU_SCS_DHCSR_S_HALT_M 0x00020000 4211 #define CPU_SCS_DHCSR_S_HALT_S 17 4212 4213 // Field: [16] S_REGRDY 4214 // 4215 // Register Read/Write on the Debug Core Register Selector register is 4216 // available. Last transfer is complete. 4217 // When writing to this register, 1 must be written this bit-field, otherwise 4218 // the write operation is ignored and no bits are written into the register. 4219 #define CPU_SCS_DHCSR_S_REGRDY 0x00010000 4220 #define CPU_SCS_DHCSR_S_REGRDY_BITN 16 4221 #define CPU_SCS_DHCSR_S_REGRDY_M 0x00010000 4222 #define CPU_SCS_DHCSR_S_REGRDY_S 16 4223 4224 // Field: [5] C_SNAPSTALL 4225 // 4226 // If the core is stalled on a load/store operation the stall ceases and the 4227 // instruction is forced to complete. This enables Halting debug to gain 4228 // control of the core. It can only be set if: C_DEBUGEN = 1 and C_HALT = 1. 4229 // The core reads S_RETIRE_ST as 0. This indicates that no instruction has 4230 // advanced. This prevents misuse. The bus state is Unpredictable when this is 4231 // used. S_RETIRE_ST can detect core stalls on load/store operations. 4232 #define CPU_SCS_DHCSR_C_SNAPSTALL 0x00000020 4233 #define CPU_SCS_DHCSR_C_SNAPSTALL_BITN 5 4234 #define CPU_SCS_DHCSR_C_SNAPSTALL_M 0x00000020 4235 #define CPU_SCS_DHCSR_C_SNAPSTALL_S 5 4236 4237 // Field: [3] C_MASKINTS 4238 // 4239 // Mask interrupts when stepping or running in halted debug. This masking does 4240 // not affect NMI, fault exceptions and SVC caused by execution of the 4241 // instructions. This bit must only be modified when the processor is halted 4242 // (S_HALT == 1). C_MASKINTS must be set or cleared before halt is released 4243 // (i.e., the writes to set or clear C_MASKINTS and to set or clear C_HALT must 4244 // be separate). Modifying C_MASKINTS while the system is running with halting 4245 // debug support enabled (C_DEBUGEN = 1, S_HALT = 0) may cause unpredictable 4246 // behavior. 4247 #define CPU_SCS_DHCSR_C_MASKINTS 0x00000008 4248 #define CPU_SCS_DHCSR_C_MASKINTS_BITN 3 4249 #define CPU_SCS_DHCSR_C_MASKINTS_M 0x00000008 4250 #define CPU_SCS_DHCSR_C_MASKINTS_S 3 4251 4252 // Field: [2] C_STEP 4253 // 4254 // Steps the core in halted debug. When C_DEBUGEN = 0, this bit has no effect. 4255 // Must only be modified when the processor is halted (S_HALT == 1). 4256 // Modifying C_STEP while the system is running with halting debug support 4257 // enabled (C_DEBUGEN = 1, S_HALT = 0) may cause unpredictable behavior. 4258 #define CPU_SCS_DHCSR_C_STEP 0x00000004 4259 #define CPU_SCS_DHCSR_C_STEP_BITN 2 4260 #define CPU_SCS_DHCSR_C_STEP_M 0x00000004 4261 #define CPU_SCS_DHCSR_C_STEP_S 2 4262 4263 // Field: [1] C_HALT 4264 // 4265 // Halts the core. This bit is set automatically when the core Halts. For 4266 // example Breakpoint. This bit clears on core reset. 4267 #define CPU_SCS_DHCSR_C_HALT 0x00000002 4268 #define CPU_SCS_DHCSR_C_HALT_BITN 1 4269 #define CPU_SCS_DHCSR_C_HALT_M 0x00000002 4270 #define CPU_SCS_DHCSR_C_HALT_S 1 4271 4272 // Field: [0] C_DEBUGEN 4273 // 4274 // Enables debug. This can only be written by AHB-AP and not by the core. It is 4275 // ignored when written by the core, which cannot set or clear it. The core 4276 // must write a 1 to it when writing C_HALT to halt itself. 4277 // The values of C_HALT, C_STEP and C_MASKINTS are ignored by hardware when 4278 // C_DEBUGEN = 0. The read values for C_HALT, C_STEP and C_MASKINTS fields will 4279 // be unknown to software when C_DEBUGEN = 0. 4280 #define CPU_SCS_DHCSR_C_DEBUGEN 0x00000001 4281 #define CPU_SCS_DHCSR_C_DEBUGEN_BITN 0 4282 #define CPU_SCS_DHCSR_C_DEBUGEN_M 0x00000001 4283 #define CPU_SCS_DHCSR_C_DEBUGEN_S 0 4284 4285 //***************************************************************************** 4286 // 4287 // Register: CPU_SCS_O_DCRSR 4288 // 4289 //***************************************************************************** 4290 // Field: [16] REGWNR 4291 // 4292 // 1: Write 4293 // 0: Read 4294 #define CPU_SCS_DCRSR_REGWNR 0x00010000 4295 #define CPU_SCS_DCRSR_REGWNR_BITN 16 4296 #define CPU_SCS_DCRSR_REGWNR_M 0x00010000 4297 #define CPU_SCS_DCRSR_REGWNR_S 16 4298 4299 // Field: [4:0] REGSEL 4300 // 4301 // Register select 4302 // 4303 // 0x00: R0 4304 // 0x01: R1 4305 // 0x02: R2 4306 // 0x03: R3 4307 // 0x04: R4 4308 // 0x05: R5 4309 // 0x06: R6 4310 // 0x07: R7 4311 // 0x08: R8 4312 // 0x09: R9 4313 // 0x0A: R10 4314 // 0x0B: R11 4315 // 0x0C: R12 4316 // 0x0D: Current SP 4317 // 0x0E: LR 4318 // 0x0F: DebugReturnAddress 4319 // 0x10: XPSR/flags, execution state information, and exception number 4320 // 0x11: MSP (Main SP) 4321 // 0x12: PSP (Process SP) 4322 // 0x14: CONTROL<<24 | FAULTMASK<<16 | BASEPRI<<8 | PRIMASK 4323 #define CPU_SCS_DCRSR_REGSEL_W 5 4324 #define CPU_SCS_DCRSR_REGSEL_M 0x0000001F 4325 #define CPU_SCS_DCRSR_REGSEL_S 0 4326 4327 //***************************************************************************** 4328 // 4329 // Register: CPU_SCS_O_DCRDR 4330 // 4331 //***************************************************************************** 4332 // Field: [31:0] DCRDR 4333 // 4334 // This register holds data for reading and writing registers to and from the 4335 // processor. This is the data value written to the register selected by DCRSR. 4336 // When the processor receives a request from DCRSR, this register is read or 4337 // written by the processor using a normal load-store unit operation. If core 4338 // register transfers are not being performed, software-based debug monitors 4339 // can use this register for communication in non-halting debug. This enables 4340 // flags and bits to acknowledge state and indicate if commands have been 4341 // accepted to, replied to, or accepted and replied to. 4342 #define CPU_SCS_DCRDR_DCRDR_W 32 4343 #define CPU_SCS_DCRDR_DCRDR_M 0xFFFFFFFF 4344 #define CPU_SCS_DCRDR_DCRDR_S 0 4345 4346 //***************************************************************************** 4347 // 4348 // Register: CPU_SCS_O_DEMCR 4349 // 4350 //***************************************************************************** 4351 // Field: [24] TRCENA 4352 // 4353 // This bit must be set to 1 to enable use of the trace and debug blocks: DWT, 4354 // ITM, ETM and TPIU. This enables control of power usage unless tracing is 4355 // required. The application can enable this, for ITM use, or use by a 4356 // debugger. 4357 #define CPU_SCS_DEMCR_TRCENA 0x01000000 4358 #define CPU_SCS_DEMCR_TRCENA_BITN 24 4359 #define CPU_SCS_DEMCR_TRCENA_M 0x01000000 4360 #define CPU_SCS_DEMCR_TRCENA_S 24 4361 4362 // Field: [19] MON_REQ 4363 // 4364 // This enables the monitor to identify how it wakes up. This bit clears on a 4365 // Core Reset. 4366 // 4367 // 0x0: Woken up by debug exception. 4368 // 0x1: Woken up by MON_PEND 4369 #define CPU_SCS_DEMCR_MON_REQ 0x00080000 4370 #define CPU_SCS_DEMCR_MON_REQ_BITN 19 4371 #define CPU_SCS_DEMCR_MON_REQ_M 0x00080000 4372 #define CPU_SCS_DEMCR_MON_REQ_S 19 4373 4374 // Field: [18] MON_STEP 4375 // 4376 // When MON_EN = 1, this steps the core. When MON_EN = 0, this bit is ignored. 4377 // This is the equivalent to DHCSR.C_STEP. Interrupts are only stepped 4378 // according to the priority of the monitor and settings of PRIMASK, FAULTMASK, 4379 // or BASEPRI. 4380 #define CPU_SCS_DEMCR_MON_STEP 0x00040000 4381 #define CPU_SCS_DEMCR_MON_STEP_BITN 18 4382 #define CPU_SCS_DEMCR_MON_STEP_M 0x00040000 4383 #define CPU_SCS_DEMCR_MON_STEP_S 18 4384 4385 // Field: [17] MON_PEND 4386 // 4387 // Pend the monitor to activate when priority permits. This can wake up the 4388 // monitor through the AHB-AP port. It is the equivalent to DHCSR.C_HALT for 4389 // Monitor debug. This register does not reset on a system reset. It is only 4390 // reset by a power-on reset. Software in the reset handler or later, or by the 4391 // DAP must enable the debug monitor. 4392 #define CPU_SCS_DEMCR_MON_PEND 0x00020000 4393 #define CPU_SCS_DEMCR_MON_PEND_BITN 17 4394 #define CPU_SCS_DEMCR_MON_PEND_M 0x00020000 4395 #define CPU_SCS_DEMCR_MON_PEND_S 17 4396 4397 // Field: [16] MON_EN 4398 // 4399 // Enable the debug monitor. 4400 // When enabled, the System handler priority register controls its priority 4401 // level. If disabled, then all debug events go to Hard fault. DHCSR.C_DEBUGEN 4402 // overrides this bit. Vector catching is semi-synchronous. When a matching 4403 // event is seen, a Halt is requested. Because the processor can only halt on 4404 // an instruction boundary, it must wait until the next instruction boundary. 4405 // As a result, it stops on the first instruction of the exception handler. 4406 // However, two special cases exist when a vector catch has triggered: 1. If a 4407 // fault is taken during vectoring, vector read or stack push error, the halt 4408 // occurs on the corresponding fault handler, for the vector error or stack 4409 // push. 2. If a late arriving interrupt comes in during vectoring, it is not 4410 // taken. That is, an implementation that supports the late arrival 4411 // optimization must suppress it in this case. 4412 #define CPU_SCS_DEMCR_MON_EN 0x00010000 4413 #define CPU_SCS_DEMCR_MON_EN_BITN 16 4414 #define CPU_SCS_DEMCR_MON_EN_M 0x00010000 4415 #define CPU_SCS_DEMCR_MON_EN_S 16 4416 4417 // Field: [10] VC_HARDERR 4418 // 4419 // Debug trap on Hard Fault. Ignored when DHCSR.C_DEBUGEN is cleared. 4420 #define CPU_SCS_DEMCR_VC_HARDERR 0x00000400 4421 #define CPU_SCS_DEMCR_VC_HARDERR_BITN 10 4422 #define CPU_SCS_DEMCR_VC_HARDERR_M 0x00000400 4423 #define CPU_SCS_DEMCR_VC_HARDERR_S 10 4424 4425 // Field: [9] VC_INTERR 4426 // 4427 // Debug trap on a fault occurring during an exception entry or return 4428 // sequence. Ignored when DHCSR.C_DEBUGEN is cleared. 4429 #define CPU_SCS_DEMCR_VC_INTERR 0x00000200 4430 #define CPU_SCS_DEMCR_VC_INTERR_BITN 9 4431 #define CPU_SCS_DEMCR_VC_INTERR_M 0x00000200 4432 #define CPU_SCS_DEMCR_VC_INTERR_S 9 4433 4434 // Field: [8] VC_BUSERR 4435 // 4436 // Debug Trap on normal Bus error. Ignored when DHCSR.C_DEBUGEN is cleared. 4437 #define CPU_SCS_DEMCR_VC_BUSERR 0x00000100 4438 #define CPU_SCS_DEMCR_VC_BUSERR_BITN 8 4439 #define CPU_SCS_DEMCR_VC_BUSERR_M 0x00000100 4440 #define CPU_SCS_DEMCR_VC_BUSERR_S 8 4441 4442 // Field: [7] VC_STATERR 4443 // 4444 // Debug trap on Usage Fault state errors. Ignored when DHCSR.C_DEBUGEN is 4445 // cleared. 4446 #define CPU_SCS_DEMCR_VC_STATERR 0x00000080 4447 #define CPU_SCS_DEMCR_VC_STATERR_BITN 7 4448 #define CPU_SCS_DEMCR_VC_STATERR_M 0x00000080 4449 #define CPU_SCS_DEMCR_VC_STATERR_S 7 4450 4451 // Field: [6] VC_CHKERR 4452 // 4453 // Debug trap on Usage Fault enabled checking errors. Ignored when 4454 // DHCSR.C_DEBUGEN is cleared. 4455 #define CPU_SCS_DEMCR_VC_CHKERR 0x00000040 4456 #define CPU_SCS_DEMCR_VC_CHKERR_BITN 6 4457 #define CPU_SCS_DEMCR_VC_CHKERR_M 0x00000040 4458 #define CPU_SCS_DEMCR_VC_CHKERR_S 6 4459 4460 // Field: [5] VC_NOCPERR 4461 // 4462 // Debug trap on a UsageFault access to a Coprocessor. Ignored when 4463 // DHCSR.C_DEBUGEN is cleared. 4464 #define CPU_SCS_DEMCR_VC_NOCPERR 0x00000020 4465 #define CPU_SCS_DEMCR_VC_NOCPERR_BITN 5 4466 #define CPU_SCS_DEMCR_VC_NOCPERR_M 0x00000020 4467 #define CPU_SCS_DEMCR_VC_NOCPERR_S 5 4468 4469 // Field: [4] VC_MMERR 4470 // 4471 // Debug trap on Memory Management faults. Ignored when DHCSR.C_DEBUGEN is 4472 // cleared. 4473 #define CPU_SCS_DEMCR_VC_MMERR 0x00000010 4474 #define CPU_SCS_DEMCR_VC_MMERR_BITN 4 4475 #define CPU_SCS_DEMCR_VC_MMERR_M 0x00000010 4476 #define CPU_SCS_DEMCR_VC_MMERR_S 4 4477 4478 // Field: [0] VC_CORERESET 4479 // 4480 // Reset Vector Catch. Halt running system if Core reset occurs. Ignored when 4481 // DHCSR.C_DEBUGEN is cleared. 4482 #define CPU_SCS_DEMCR_VC_CORERESET 0x00000001 4483 #define CPU_SCS_DEMCR_VC_CORERESET_BITN 0 4484 #define CPU_SCS_DEMCR_VC_CORERESET_M 0x00000001 4485 #define CPU_SCS_DEMCR_VC_CORERESET_S 0 4486 4487 //***************************************************************************** 4488 // 4489 // Register: CPU_SCS_O_STIR 4490 // 4491 //***************************************************************************** 4492 // Field: [8:0] INTID 4493 // 4494 // Interrupt ID field. Writing a value to this bit-field is the same as 4495 // manually pending an interrupt by setting the corresponding interrupt bit in 4496 // an Interrupt Set Pending Register in NVIC_ISPR0 or NVIC_ISPR1. 4497 #define CPU_SCS_STIR_INTID_W 9 4498 #define CPU_SCS_STIR_INTID_M 0x000001FF 4499 #define CPU_SCS_STIR_INTID_S 0 4500 4501 //***************************************************************************** 4502 // 4503 // Register: CPU_SCS_O_FPCCR 4504 // 4505 //***************************************************************************** 4506 // Field: [31] ASPEN 4507 // 4508 // Automatic State Preservation enable. 4509 // When this bit is set is will cause bit [2] of the Special CONTROL register 4510 // to be set (FPCA) on execution of a floating point instruction which results 4511 // in the floating point state automatically being preserved on exception 4512 // entry. 4513 #define CPU_SCS_FPCCR_ASPEN 0x80000000 4514 #define CPU_SCS_FPCCR_ASPEN_BITN 31 4515 #define CPU_SCS_FPCCR_ASPEN_M 0x80000000 4516 #define CPU_SCS_FPCCR_ASPEN_S 31 4517 4518 // Field: [30] LSPEN 4519 // 4520 // Lazy State Preservation enable. 4521 // Lazy state preservation is when the processor performs a context save, space 4522 // on the stack is reserved for the floating point state but it is not stacked 4523 // until the new context performs a floating point operation. 4524 // 0: Disable automatic lazy state preservation for floating-point context. 4525 // 1: Enable automatic lazy state preservation for floating-point context. 4526 #define CPU_SCS_FPCCR_LSPEN 0x40000000 4527 #define CPU_SCS_FPCCR_LSPEN_BITN 30 4528 #define CPU_SCS_FPCCR_LSPEN_M 0x40000000 4529 #define CPU_SCS_FPCCR_LSPEN_S 30 4530 4531 // Field: [8] MONRDY 4532 // 4533 // Indicates whether the the software executing when the processor allocated 4534 // the FP stack frame was able to set the DebugMonitor exception to pending. 4535 // 0: DebugMonitor is disabled or priority did not permit setting 4536 // DEMCR.MON_PEND when the floating-point stack frame was allocated. 4537 // 1: DebugMonitor is enabled and priority permits setting DEMCR.MON_PEND when 4538 // the floating-point stack frame was allocated. 4539 #define CPU_SCS_FPCCR_MONRDY 0x00000100 4540 #define CPU_SCS_FPCCR_MONRDY_BITN 8 4541 #define CPU_SCS_FPCCR_MONRDY_M 0x00000100 4542 #define CPU_SCS_FPCCR_MONRDY_S 8 4543 4544 // Field: [6] BFRDY 4545 // 4546 // Indicates whether the software executing when the processor allocated the FP 4547 // stack frame was able to set the BusFault exception to pending. 4548 // 0: BusFault is disabled or priority did not permit setting the BusFault 4549 // handler to the pending state when the floating-point stack frame was 4550 // allocated. 4551 // 1: BusFault is enabled and priority permitted setting the BusFault handler 4552 // to the pending state when the floating-point stack frame was allocated. 4553 #define CPU_SCS_FPCCR_BFRDY 0x00000040 4554 #define CPU_SCS_FPCCR_BFRDY_BITN 6 4555 #define CPU_SCS_FPCCR_BFRDY_M 0x00000040 4556 #define CPU_SCS_FPCCR_BFRDY_S 6 4557 4558 // Field: [5] MMRDY 4559 // 4560 // Indicates whether the software executing when the processor allocated the FP 4561 // stack frame was able to set the MemManage exception to pending. 4562 // 0: MemManage is disabled or priority did not permit setting the MemManage 4563 // handler to the pending state when the floating-point stack frame was 4564 // allocated. 4565 // 1: MemManage is enabled and priority permitted setting the MemManage handler 4566 // to the pending state when the floating-point stack frame was allocated. 4567 #define CPU_SCS_FPCCR_MMRDY 0x00000020 4568 #define CPU_SCS_FPCCR_MMRDY_BITN 5 4569 #define CPU_SCS_FPCCR_MMRDY_M 0x00000020 4570 #define CPU_SCS_FPCCR_MMRDY_S 5 4571 4572 // Field: [4] HFRDY 4573 // 4574 // Indicates whether the software executing when the processor allocated the FP 4575 // stack frame was able to set the HardFault exception to pending. 4576 // 0: Priority did not permit setting the HardFault handler to the pending 4577 // state when the floating-point stack frame was allocated. 4578 // 1: Priority permitted setting the HardFault handler to the pending state 4579 // when the floating-point stack frame was allocated. 4580 #define CPU_SCS_FPCCR_HFRDY 0x00000010 4581 #define CPU_SCS_FPCCR_HFRDY_BITN 4 4582 #define CPU_SCS_FPCCR_HFRDY_M 0x00000010 4583 #define CPU_SCS_FPCCR_HFRDY_S 4 4584 4585 // Field: [3] THREAD 4586 // 4587 // Indicates the processor mode was Thread when it allocated the FP stack 4588 // frame. 4589 // 0: Mode was not Thread Mode when the floating-point stack frame was 4590 // allocated. 4591 // 1: Mode was Thread Mode when the floating-point stack frame was allocated. 4592 #define CPU_SCS_FPCCR_THREAD 0x00000008 4593 #define CPU_SCS_FPCCR_THREAD_BITN 3 4594 #define CPU_SCS_FPCCR_THREAD_M 0x00000008 4595 #define CPU_SCS_FPCCR_THREAD_S 3 4596 4597 // Field: [1] USER 4598 // 4599 // Indicates the privilege level of the software executing was User 4600 // (Unpriviledged) when the processor allocated the FP stack frame: 4601 // 0: Privilege level was not user when the floating-point stack frame was 4602 // allocated. 4603 // 1: Privilege level was user when the floating-point stack frame was 4604 // allocated. 4605 #define CPU_SCS_FPCCR_USER 0x00000002 4606 #define CPU_SCS_FPCCR_USER_BITN 1 4607 #define CPU_SCS_FPCCR_USER_M 0x00000002 4608 #define CPU_SCS_FPCCR_USER_S 1 4609 4610 // Field: [0] LSPACT 4611 // 4612 // Indicates whether Lazy preservation of the FP state is active: 4613 // 0: Lazy state preservation is not active. 4614 // 1: Lazy state preservation is active. floating-point stack frame has been 4615 // allocated but saving state to it has been deferred. 4616 #define CPU_SCS_FPCCR_LSPACT 0x00000001 4617 #define CPU_SCS_FPCCR_LSPACT_BITN 0 4618 #define CPU_SCS_FPCCR_LSPACT_M 0x00000001 4619 #define CPU_SCS_FPCCR_LSPACT_S 0 4620 4621 //***************************************************************************** 4622 // 4623 // Register: CPU_SCS_O_FPCAR 4624 // 4625 //***************************************************************************** 4626 // Field: [31:2] ADDRESS 4627 // 4628 // Holds the (double-word-aligned) location of the unpopulated floating-point 4629 // register space allocated on an exception stack frame. 4630 #define CPU_SCS_FPCAR_ADDRESS_W 30 4631 #define CPU_SCS_FPCAR_ADDRESS_M 0xFFFFFFFC 4632 #define CPU_SCS_FPCAR_ADDRESS_S 2 4633 4634 //***************************************************************************** 4635 // 4636 // Register: CPU_SCS_O_FPDSCR 4637 // 4638 //***************************************************************************** 4639 // Field: [26] AHP 4640 // 4641 // Default value for Alternative Half Precision bit. (If this bit is set to 1 4642 // then Alternative half-precision format is selected). 4643 #define CPU_SCS_FPDSCR_AHP 0x04000000 4644 #define CPU_SCS_FPDSCR_AHP_BITN 26 4645 #define CPU_SCS_FPDSCR_AHP_M 0x04000000 4646 #define CPU_SCS_FPDSCR_AHP_S 26 4647 4648 // Field: [25] DN 4649 // 4650 // Default value for Default NaN mode bit. (If this bit is set to 1 then any 4651 // operation involving one or more NaNs returns the Default NaN). 4652 #define CPU_SCS_FPDSCR_DN 0x02000000 4653 #define CPU_SCS_FPDSCR_DN_BITN 25 4654 #define CPU_SCS_FPDSCR_DN_M 0x02000000 4655 #define CPU_SCS_FPDSCR_DN_S 25 4656 4657 // Field: [24] FZ 4658 // 4659 // Default value for Flush-to-Zero mode bit. (If this bit is set to 1 then 4660 // Flush-to-zero mode is enabled). 4661 #define CPU_SCS_FPDSCR_FZ 0x01000000 4662 #define CPU_SCS_FPDSCR_FZ_BITN 24 4663 #define CPU_SCS_FPDSCR_FZ_M 0x01000000 4664 #define CPU_SCS_FPDSCR_FZ_S 24 4665 4666 // Field: [23:22] RMODE 4667 // 4668 // Default value for Rounding Mode control field. (The encoding for this field 4669 // is: 4670 // 0b00 Round to Nearest (RN) mode 4671 // 0b01 Round towards Plus Infinity (RP) mode 4672 // 0b10 Round towards Minus Infinity (RM) mode 4673 // 0b11 Round towards Zero (RZ) mode. 4674 // The specified rounding mode is used by almost all floating-point 4675 // instructions). 4676 #define CPU_SCS_FPDSCR_RMODE_W 2 4677 #define CPU_SCS_FPDSCR_RMODE_M 0x00C00000 4678 #define CPU_SCS_FPDSCR_RMODE_S 22 4679 4680 //***************************************************************************** 4681 // 4682 // Register: CPU_SCS_O_MVFR0 4683 // 4684 //***************************************************************************** 4685 // Field: [31:28] FP_ROUNDING_MODES 4686 // 4687 // Indicates the rounding modes supported by the FP floating-point hardware. 4688 // The value of this field is: 0b0001 - all rounding modes supported. 4689 #define CPU_SCS_MVFR0_FP_ROUNDING_MODES_W 4 4690 #define CPU_SCS_MVFR0_FP_ROUNDING_MODES_M 0xF0000000 4691 #define CPU_SCS_MVFR0_FP_ROUNDING_MODES_S 28 4692 4693 // Field: [27:24] SHORT_VECTORS 4694 // 4695 // Indicates the hardware support for FP short vectors. The value of this field 4696 // is: 0b0000 - not supported. 4697 #define CPU_SCS_MVFR0_SHORT_VECTORS_W 4 4698 #define CPU_SCS_MVFR0_SHORT_VECTORS_M 0x0F000000 4699 #define CPU_SCS_MVFR0_SHORT_VECTORS_S 24 4700 4701 // Field: [23:20] SQUARE_ROOT 4702 // 4703 // Indicates the hardware support for FP square root operations. The value of 4704 // this field is: 0b0001 - supported. 4705 #define CPU_SCS_MVFR0_SQUARE_ROOT_W 4 4706 #define CPU_SCS_MVFR0_SQUARE_ROOT_M 0x00F00000 4707 #define CPU_SCS_MVFR0_SQUARE_ROOT_S 20 4708 4709 // Field: [19:16] DIVIDE 4710 // 4711 // Indicates the hardware support for FP divide operations. The value of this 4712 // field is: 0b0001 - supported. 4713 #define CPU_SCS_MVFR0_DIVIDE_W 4 4714 #define CPU_SCS_MVFR0_DIVIDE_M 0x000F0000 4715 #define CPU_SCS_MVFR0_DIVIDE_S 16 4716 4717 // Field: [15:12] FP_EXCEPTION_TRAPPING 4718 // 4719 // Indicates whether the FP hardware implementation supports exception 4720 // trapping. The value of this field is: 0b0000 - not supported. 4721 #define CPU_SCS_MVFR0_FP_EXCEPTION_TRAPPING_W 4 4722 #define CPU_SCS_MVFR0_FP_EXCEPTION_TRAPPING_M 0x0000F000 4723 #define CPU_SCS_MVFR0_FP_EXCEPTION_TRAPPING_S 12 4724 4725 // Field: [11:8] DOUBLE_PRECISION 4726 // 4727 // Indicates the hardware support for FP double-precision operations. The value 4728 // of this field is: 0b0000 - not supported. 4729 #define CPU_SCS_MVFR0_DOUBLE_PRECISION_W 4 4730 #define CPU_SCS_MVFR0_DOUBLE_PRECISION_M 0x00000F00 4731 #define CPU_SCS_MVFR0_DOUBLE_PRECISION_S 8 4732 4733 // Field: [7:4] SINGLE_PRECISION 4734 // 4735 // Indicates the hardware support for FP single-precision operations. The value 4736 // of this field is: 0b0010 - supported. 4737 #define CPU_SCS_MVFR0_SINGLE_PRECISION_W 4 4738 #define CPU_SCS_MVFR0_SINGLE_PRECISION_M 0x000000F0 4739 #define CPU_SCS_MVFR0_SINGLE_PRECISION_S 4 4740 4741 // Field: [3:0] A_SIMD 4742 // 4743 // Indicates the size of the FP register bank. The value of this field is: 4744 // 0b0001 - supported, 16 x 64-bit registers. 4745 #define CPU_SCS_MVFR0_A_SIMD_W 4 4746 #define CPU_SCS_MVFR0_A_SIMD_M 0x0000000F 4747 #define CPU_SCS_MVFR0_A_SIMD_S 0 4748 4749 //***************************************************************************** 4750 // 4751 // Register: CPU_SCS_O_MVFR1 4752 // 4753 //***************************************************************************** 4754 // Field: [31:28] FP_FUSED_MAC 4755 // 4756 // Indicates whether the FP supports fused multiply accumulate operations. The 4757 // value of this field is: 0b0001 - supported. 4758 #define CPU_SCS_MVFR1_FP_FUSED_MAC_W 4 4759 #define CPU_SCS_MVFR1_FP_FUSED_MAC_M 0xF0000000 4760 #define CPU_SCS_MVFR1_FP_FUSED_MAC_S 28 4761 4762 // Field: [27:24] FP_HPFP 4763 // 4764 // Indicates whether the FP supports half-precision floating-point conversion 4765 // operations. The value of this field is: 0b0001 - supported. 4766 #define CPU_SCS_MVFR1_FP_HPFP_W 4 4767 #define CPU_SCS_MVFR1_FP_HPFP_M 0x0F000000 4768 #define CPU_SCS_MVFR1_FP_HPFP_S 24 4769 4770 // Field: [7:4] D_NAN_MODE 4771 // 4772 // Indicates whether the FP hardware implementation supports only the Default 4773 // NaN mode. The value of this field is: 0b0001 - hardware supports propagation 4774 // of NaN values. 4775 #define CPU_SCS_MVFR1_D_NAN_MODE_W 4 4776 #define CPU_SCS_MVFR1_D_NAN_MODE_M 0x000000F0 4777 #define CPU_SCS_MVFR1_D_NAN_MODE_S 4 4778 4779 // Field: [3:0] FTZ_MODE 4780 // 4781 // Indicates whether the FP hardware implementation supports only the 4782 // Flush-to-Zero mode of operation. The value of this field is: 0b0001 - 4783 // hardware supports full denormalized number arithmetic. 4784 #define CPU_SCS_MVFR1_FTZ_MODE_W 4 4785 #define CPU_SCS_MVFR1_FTZ_MODE_M 0x0000000F 4786 #define CPU_SCS_MVFR1_FTZ_MODE_S 0 4787 4788 4789 #endif // __CPU_SCS__ 4790