The System Control Space (SCS) is a memory-mapped 4KB address space that provides 32-bit registers for configuration, status reporting and control.
More...
The System Control Space (SCS) is a memory-mapped 4KB address space that provides 32-bit registers for configuration, status reporting and control.
The SCS registers divide into the following groups:
- system control and identification
- the CPUID processor identification space
- system configuration and status
- fault reporting
- a system timer, SysTick
- a Nested Vectored Interrupt Controller (NVIC)
- a Protected Memory System Architecture (PMSA)
- system debug.
Most portions of the SCS are covered by their own header files, eg systick.h, dwt.h, scb.h, itm.h, fpb.h
◆ SCS_DCRSR_REGSEL_MASK
#define SCS_DCRSR_REGSEL_MASK 0x0000001F |
◆ SCS_DCRSR_REGSEL_MSP
#define SCS_DCRSR_REGSEL_MSP 0x00000011 |
◆ SCS_DCRSR_REGSEL_PSP
#define SCS_DCRSR_REGSEL_PSP 0x00000012 |
◆ SCS_DCRSR_REGSEL_XPSR
#define SCS_DCRSR_REGSEL_XPSR 0x00000010 |
◆ SCS_DEMCR_MON_REQ
#define SCS_DEMCR_MON_REQ (1 << 19) |
◆ SCS_DEMCR_MON_STEP
#define SCS_DEMCR_MON_STEP (1 << 18) |
◆ SCS_DEMCR_TRCENA
#define SCS_DEMCR_TRCENA (1 << 24) |
◆ SCS_DEMCR_VC_BUSERR
#define SCS_DEMCR_VC_BUSERR (1 << 8) |
◆ SCS_DEMCR_VC_CHKERR
#define SCS_DEMCR_VC_CHKERR (1 << 6) |
◆ SCS_DEMCR_VC_CORERESET
#define SCS_DEMCR_VC_CORERESET (1 << 0) |
◆ SCS_DEMCR_VC_HARDERR
#define SCS_DEMCR_VC_HARDERR (1 << 10) |
◆ SCS_DEMCR_VC_INTERR
#define SCS_DEMCR_VC_INTERR (1 << 9) |
◆ SCS_DEMCR_VC_MMERR
#define SCS_DEMCR_VC_MMERR (1 << 4) |
◆ SCS_DEMCR_VC_MON_EN
#define SCS_DEMCR_VC_MON_EN (1 << 16) |
◆ SCS_DEMCR_VC_MON_PEND
#define SCS_DEMCR_VC_MON_PEND (1 << 17) |
◆ SCS_DEMCR_VC_NOCPERR
#define SCS_DEMCR_VC_NOCPERR (1 << 5) |
◆ SCS_DEMCR_VC_STATERR
#define SCS_DEMCR_VC_STATERR (1 << 7) |
◆ SCS_DHCSR_C_DEBUGEN
#define SCS_DHCSR_C_DEBUGEN 0x00000001 |
◆ SCS_DHCSR_C_HALT
#define SCS_DHCSR_C_HALT 0x00000002 |
◆ SCS_DHCSR_C_MASKINTS
#define SCS_DHCSR_C_MASKINTS 0x00000008 |
◆ SCS_DHCSR_C_SNAPSTALL
#define SCS_DHCSR_C_SNAPSTALL 0x00000020 |
◆ SCS_DHCSR_C_STEP
#define SCS_DHCSR_C_STEP 0x00000004 |
◆ SCS_DHCSR_DBGKEY
#define SCS_DHCSR_DBGKEY 0xA05F0000 |
◆ SCS_DHCSR_S_HALT
#define SCS_DHCSR_S_HALT 0x00020000 |
◆ SCS_DHCSR_S_LOCKUP
#define SCS_DHCSR_S_LOCKUP 0x00080000 |
◆ SCS_DHCSR_S_REGRDY
#define SCS_DHCSR_S_REGRDY 0x00010000 |
◆ SCS_DHCSR_S_RESET_ST
#define SCS_DHCSR_S_RESET_ST 0x02000000 |
◆ SCS_DHCSR_S_RETIRE_ST
#define SCS_DHCSR_S_RETIRE_ST 0x01000000 |
◆ SCS_DHCSR_S_SLEEP
#define SCS_DHCSR_S_SLEEP 0x00040000 |
◆ SCS_DWT_LAR
#define SCS_DWT_LAR MMIO32(SCS_DWT_BASE + 0xFB0) |
◆ SCS_DWT_LSR
#define SCS_DWT_LSR MMIO32(SCS_DWT_BASE + 0xFB4) |