25#if defined ( __ICCARM__ )
26 #pragma system_include
27#elif defined (__clang__)
28 #pragma clang system_header
31#ifndef __CORE_CM7_H_GENERIC
32#define __CORE_CM7_H_GENERIC
66#define __CM7_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN)
67#define __CM7_CMSIS_VERSION_SUB ( __CM_CMSIS_VERSION_SUB)
68#define __CM7_CMSIS_VERSION ((__CM7_CMSIS_VERSION_MAIN << 16U) | \
69 __CM7_CMSIS_VERSION_SUB )
71#define __CORTEX_M (7U)
76#if defined ( __CC_ARM )
77 #if defined __TARGET_FPU_VFP
78 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
81 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
88#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
90 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
93 #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
100#elif defined ( __GNUC__ )
101 #if defined (__VFP_FP__) && !defined(__SOFTFP__)
102 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
103 #define __FPU_USED 1U
105 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
106 #define __FPU_USED 0U
109 #define __FPU_USED 0U
112#elif defined ( __ICCARM__ )
113 #if defined __ARMVFP__
114 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
115 #define __FPU_USED 1U
117 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
118 #define __FPU_USED 0U
121 #define __FPU_USED 0U
124#elif defined ( __TI_ARM__ )
125 #if defined __TI_VFP_SUPPORT__
126 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
127 #define __FPU_USED 1U
129 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
130 #define __FPU_USED 0U
133 #define __FPU_USED 0U
136#elif defined ( __TASKING__ )
137 #if defined __FPU_VFP__
138 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
139 #define __FPU_USED 1U
141 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
142 #define __FPU_USED 0U
145 #define __FPU_USED 0U
148#elif defined ( __CSMC__ )
149 #if ( __CSMC__ & 0x400U)
150 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
151 #define __FPU_USED 1U
153 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
154 #define __FPU_USED 0U
157 #define __FPU_USED 0U
171#ifndef __CMSIS_GENERIC
173#ifndef __CORE_CM7_H_DEPENDANT
174#define __CORE_CM7_H_DEPENDANT
181#if defined __CHECK_DEVICE_DEFINES
183 #define __CM7_REV 0x0000U
184 #warning "__CM7_REV not defined in device header file; using default!"
187 #ifndef __FPU_PRESENT
188 #define __FPU_PRESENT 0U
189 #warning "__FPU_PRESENT not defined in device header file; using default!"
192 #ifndef __MPU_PRESENT
193 #define __MPU_PRESENT 0U
194 #warning "__MPU_PRESENT not defined in device header file; using default!"
197 #ifndef __ICACHE_PRESENT
198 #define __ICACHE_PRESENT 0U
199 #warning "__ICACHE_PRESENT not defined in device header file; using default!"
202 #ifndef __DCACHE_PRESENT
203 #define __DCACHE_PRESENT 0U
204 #warning "__DCACHE_PRESENT not defined in device header file; using default!"
207 #ifndef __DTCM_PRESENT
208 #define __DTCM_PRESENT 0U
209 #warning "__DTCM_PRESENT not defined in device header file; using default!"
212 #ifndef __VTOR_PRESENT
213 #define __VTOR_PRESENT 1U
214 #warning "__VTOR_PRESENT not defined in device header file; using default!"
217 #ifndef __NVIC_PRIO_BITS
218 #define __NVIC_PRIO_BITS 3U
219 #warning "__NVIC_PRIO_BITS not defined in device header file; using default!"
222 #ifndef __Vendor_SysTickConfig
223 #define __Vendor_SysTickConfig 0U
224 #warning "__Vendor_SysTickConfig not defined in device header file; using default!"
239 #define __I volatile const
245#define __IM volatile const
247#define __IOM volatile
296#define APSR_N_Pos 31U
297#define APSR_N_Msk (1UL << APSR_N_Pos)
299#define APSR_Z_Pos 30U
300#define APSR_Z_Msk (1UL << APSR_Z_Pos)
302#define APSR_C_Pos 29U
303#define APSR_C_Msk (1UL << APSR_C_Pos)
305#define APSR_V_Pos 28U
306#define APSR_V_Msk (1UL << APSR_V_Pos)
308#define APSR_Q_Pos 27U
309#define APSR_Q_Msk (1UL << APSR_Q_Pos)
311#define APSR_GE_Pos 16U
312#define APSR_GE_Msk (0xFUL << APSR_GE_Pos)
329#define IPSR_ISR_Pos 0U
330#define IPSR_ISR_Msk (0x1FFUL )
357#define xPSR_N_Pos 31U
358#define xPSR_N_Msk (1UL << xPSR_N_Pos)
360#define xPSR_Z_Pos 30U
361#define xPSR_Z_Msk (1UL << xPSR_Z_Pos)
363#define xPSR_C_Pos 29U
364#define xPSR_C_Msk (1UL << xPSR_C_Pos)
366#define xPSR_V_Pos 28U
367#define xPSR_V_Msk (1UL << xPSR_V_Pos)
369#define xPSR_Q_Pos 27U
370#define xPSR_Q_Msk (1UL << xPSR_Q_Pos)
372#define xPSR_ICI_IT_2_Pos 25U
373#define xPSR_ICI_IT_2_Msk (3UL << xPSR_ICI_IT_2_Pos)
375#define xPSR_T_Pos 24U
376#define xPSR_T_Msk (1UL << xPSR_T_Pos)
378#define xPSR_GE_Pos 16U
379#define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos)
381#define xPSR_ICI_IT_1_Pos 10U
382#define xPSR_ICI_IT_1_Msk (0x3FUL << xPSR_ICI_IT_1_Pos)
384#define xPSR_ISR_Pos 0U
385#define xPSR_ISR_Msk (0x1FFUL )
404#define CONTROL_FPCA_Pos 2U
405#define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos)
407#define CONTROL_SPSEL_Pos 1U
408#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos)
410#define CONTROL_nPRIV_Pos 0U
411#define CONTROL_nPRIV_Msk (1UL )
428 __IOM uint32_t ISER[8U];
429 uint32_t RESERVED0[24U];
430 __IOM uint32_t ICER[8U];
431 uint32_t RESERVED1[24U];
432 __IOM uint32_t ISPR[8U];
433 uint32_t RESERVED2[24U];
434 __IOM uint32_t ICPR[8U];
435 uint32_t RESERVED3[24U];
436 __IOM uint32_t IABR[8U];
437 uint32_t RESERVED4[56U];
438 __IOM uint8_t IP[240U];
439 uint32_t RESERVED5[644U];
444#define NVIC_STIR_INTID_Pos 0U
445#define NVIC_STIR_INTID_Msk (0x1FFUL )
465 __IOM uint32_t AIRCR;
468 __IOM uint8_t SHPR[12U];
469 __IOM uint32_t SHCSR;
473 __IOM uint32_t MMFAR;
476 __IM uint32_t ID_PFR[2U];
477 __IM uint32_t ID_DFR;
478 __IM uint32_t ID_AFR;
516#define SCB_CPUID_IMPLEMENTER_Pos 24U
517#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos)
519#define SCB_CPUID_VARIANT_Pos 20U
520#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos)
522#define SCB_CPUID_ARCHITECTURE_Pos 16U
523#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos)
525#define SCB_CPUID_PARTNO_Pos 4U
526#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos)
528#define SCB_CPUID_REVISION_Pos 0U
529#define SCB_CPUID_REVISION_Msk (0xFUL )
532#define SCB_ICSR_NMIPENDSET_Pos 31U
533#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos)
535#define SCB_ICSR_PENDSVSET_Pos 28U
536#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos)
538#define SCB_ICSR_PENDSVCLR_Pos 27U
539#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos)
541#define SCB_ICSR_PENDSTSET_Pos 26U
542#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos)
544#define SCB_ICSR_PENDSTCLR_Pos 25U
545#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos)
547#define SCB_ICSR_ISRPREEMPT_Pos 23U
548#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos)
550#define SCB_ICSR_ISRPENDING_Pos 22U
551#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos)
553#define SCB_ICSR_VECTPENDING_Pos 12U
554#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos)
556#define SCB_ICSR_RETTOBASE_Pos 11U
557#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos)
559#define SCB_ICSR_VECTACTIVE_Pos 0U
560#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL )
563#define SCB_VTOR_TBLOFF_Pos 7U
564#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos)
567#define SCB_AIRCR_VECTKEY_Pos 16U
568#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos)
570#define SCB_AIRCR_VECTKEYSTAT_Pos 16U
571#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos)
573#define SCB_AIRCR_ENDIANESS_Pos 15U
574#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos)
576#define SCB_AIRCR_PRIGROUP_Pos 8U
577#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos)
579#define SCB_AIRCR_SYSRESETREQ_Pos 2U
580#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos)
582#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U
583#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos)
585#define SCB_AIRCR_VECTRESET_Pos 0U
586#define SCB_AIRCR_VECTRESET_Msk (1UL )
589#define SCB_SCR_SEVONPEND_Pos 4U
590#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos)
592#define SCB_SCR_SLEEPDEEP_Pos 2U
593#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos)
595#define SCB_SCR_SLEEPONEXIT_Pos 1U
596#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos)
599#define SCB_CCR_BP_Pos 18U
600#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos)
602#define SCB_CCR_IC_Pos 17U
603#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos)
605#define SCB_CCR_DC_Pos 16U
606#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos)
608#define SCB_CCR_STKALIGN_Pos 9U
609#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos)
611#define SCB_CCR_BFHFNMIGN_Pos 8U
612#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos)
614#define SCB_CCR_DIV_0_TRP_Pos 4U
615#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos)
617#define SCB_CCR_UNALIGN_TRP_Pos 3U
618#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos)
620#define SCB_CCR_USERSETMPEND_Pos 1U
621#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos)
623#define SCB_CCR_NONBASETHRDENA_Pos 0U
624#define SCB_CCR_NONBASETHRDENA_Msk (1UL )
627#define SCB_SHCSR_USGFAULTENA_Pos 18U
628#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos)
630#define SCB_SHCSR_BUSFAULTENA_Pos 17U
631#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos)
633#define SCB_SHCSR_MEMFAULTENA_Pos 16U
634#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos)
636#define SCB_SHCSR_SVCALLPENDED_Pos 15U
637#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos)
639#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U
640#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos)
642#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U
643#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos)
645#define SCB_SHCSR_USGFAULTPENDED_Pos 12U
646#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos)
648#define SCB_SHCSR_SYSTICKACT_Pos 11U
649#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos)
651#define SCB_SHCSR_PENDSVACT_Pos 10U
652#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos)
654#define SCB_SHCSR_MONITORACT_Pos 8U
655#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos)
657#define SCB_SHCSR_SVCALLACT_Pos 7U
658#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos)
660#define SCB_SHCSR_USGFAULTACT_Pos 3U
661#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos)
663#define SCB_SHCSR_BUSFAULTACT_Pos 1U
664#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos)
666#define SCB_SHCSR_MEMFAULTACT_Pos 0U
667#define SCB_SHCSR_MEMFAULTACT_Msk (1UL )
670#define SCB_CFSR_USGFAULTSR_Pos 16U
671#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos)
673#define SCB_CFSR_BUSFAULTSR_Pos 8U
674#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos)
676#define SCB_CFSR_MEMFAULTSR_Pos 0U
677#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL )
680#define SCB_CFSR_MMARVALID_Pos (SCB_CFSR_MEMFAULTSR_Pos + 7U)
681#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos)
683#define SCB_CFSR_MLSPERR_Pos (SCB_CFSR_MEMFAULTSR_Pos + 5U)
684#define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos)
686#define SCB_CFSR_MSTKERR_Pos (SCB_CFSR_MEMFAULTSR_Pos + 4U)
687#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos)
689#define SCB_CFSR_MUNSTKERR_Pos (SCB_CFSR_MEMFAULTSR_Pos + 3U)
690#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos)
692#define SCB_CFSR_DACCVIOL_Pos (SCB_CFSR_MEMFAULTSR_Pos + 1U)
693#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos)
695#define SCB_CFSR_IACCVIOL_Pos (SCB_CFSR_MEMFAULTSR_Pos + 0U)
696#define SCB_CFSR_IACCVIOL_Msk (1UL )
699#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U)
700#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos)
702#define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U)
703#define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos)
705#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U)
706#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos)
708#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U)
709#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos)
711#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U)
712#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos)
714#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U)
715#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos)
717#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U)
718#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos)
721#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U)
722#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos)
724#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U)
725#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos)
727#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U)
728#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos)
730#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U)
731#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos)
733#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U)
734#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos)
736#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U)
737#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos)
740#define SCB_HFSR_DEBUGEVT_Pos 31U
741#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos)
743#define SCB_HFSR_FORCED_Pos 30U
744#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos)
746#define SCB_HFSR_VECTTBL_Pos 1U
747#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos)
750#define SCB_DFSR_EXTERNAL_Pos 4U
751#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos)
753#define SCB_DFSR_VCATCH_Pos 3U
754#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos)
756#define SCB_DFSR_DWTTRAP_Pos 2U
757#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos)
759#define SCB_DFSR_BKPT_Pos 1U
760#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos)
762#define SCB_DFSR_HALTED_Pos 0U
763#define SCB_DFSR_HALTED_Msk (1UL )
766#define SCB_CLIDR_LOUU_Pos 27U
767#define SCB_CLIDR_LOUU_Msk (7UL << SCB_CLIDR_LOUU_Pos)
769#define SCB_CLIDR_LOC_Pos 24U
770#define SCB_CLIDR_LOC_Msk (7UL << SCB_CLIDR_LOC_Pos)
773#define SCB_CTR_FORMAT_Pos 29U
774#define SCB_CTR_FORMAT_Msk (7UL << SCB_CTR_FORMAT_Pos)
776#define SCB_CTR_CWG_Pos 24U
777#define SCB_CTR_CWG_Msk (0xFUL << SCB_CTR_CWG_Pos)
779#define SCB_CTR_ERG_Pos 20U
780#define SCB_CTR_ERG_Msk (0xFUL << SCB_CTR_ERG_Pos)
782#define SCB_CTR_DMINLINE_Pos 16U
783#define SCB_CTR_DMINLINE_Msk (0xFUL << SCB_CTR_DMINLINE_Pos)
785#define SCB_CTR_IMINLINE_Pos 0U
786#define SCB_CTR_IMINLINE_Msk (0xFUL )
789#define SCB_CCSIDR_WT_Pos 31U
790#define SCB_CCSIDR_WT_Msk (1UL << SCB_CCSIDR_WT_Pos)
792#define SCB_CCSIDR_WB_Pos 30U
793#define SCB_CCSIDR_WB_Msk (1UL << SCB_CCSIDR_WB_Pos)
795#define SCB_CCSIDR_RA_Pos 29U
796#define SCB_CCSIDR_RA_Msk (1UL << SCB_CCSIDR_RA_Pos)
798#define SCB_CCSIDR_WA_Pos 28U
799#define SCB_CCSIDR_WA_Msk (1UL << SCB_CCSIDR_WA_Pos)
801#define SCB_CCSIDR_NUMSETS_Pos 13U
802#define SCB_CCSIDR_NUMSETS_Msk (0x7FFFUL << SCB_CCSIDR_NUMSETS_Pos)
804#define SCB_CCSIDR_ASSOCIATIVITY_Pos 3U
805#define SCB_CCSIDR_ASSOCIATIVITY_Msk (0x3FFUL << SCB_CCSIDR_ASSOCIATIVITY_Pos)
807#define SCB_CCSIDR_LINESIZE_Pos 0U
808#define SCB_CCSIDR_LINESIZE_Msk (7UL )
811#define SCB_CSSELR_LEVEL_Pos 1U
812#define SCB_CSSELR_LEVEL_Msk (7UL << SCB_CSSELR_LEVEL_Pos)
814#define SCB_CSSELR_IND_Pos 0U
815#define SCB_CSSELR_IND_Msk (1UL )
818#define SCB_STIR_INTID_Pos 0U
819#define SCB_STIR_INTID_Msk (0x1FFUL )
822#define SCB_DCISW_WAY_Pos 30U
823#define SCB_DCISW_WAY_Msk (3UL << SCB_DCISW_WAY_Pos)
825#define SCB_DCISW_SET_Pos 5U
826#define SCB_DCISW_SET_Msk (0x1FFUL << SCB_DCISW_SET_Pos)
829#define SCB_DCCSW_WAY_Pos 30U
830#define SCB_DCCSW_WAY_Msk (3UL << SCB_DCCSW_WAY_Pos)
832#define SCB_DCCSW_SET_Pos 5U
833#define SCB_DCCSW_SET_Msk (0x1FFUL << SCB_DCCSW_SET_Pos)
836#define SCB_DCCISW_WAY_Pos 30U
837#define SCB_DCCISW_WAY_Msk (3UL << SCB_DCCISW_WAY_Pos)
839#define SCB_DCCISW_SET_Pos 5U
840#define SCB_DCCISW_SET_Msk (0x1FFUL << SCB_DCCISW_SET_Pos)
843#define SCB_ITCMCR_SZ_Pos 3U
844#define SCB_ITCMCR_SZ_Msk (0xFUL << SCB_ITCMCR_SZ_Pos)
846#define SCB_ITCMCR_RETEN_Pos 2U
847#define SCB_ITCMCR_RETEN_Msk (1UL << SCB_ITCMCR_RETEN_Pos)
849#define SCB_ITCMCR_RMW_Pos 1U
850#define SCB_ITCMCR_RMW_Msk (1UL << SCB_ITCMCR_RMW_Pos)
852#define SCB_ITCMCR_EN_Pos 0U
853#define SCB_ITCMCR_EN_Msk (1UL )
856#define SCB_DTCMCR_SZ_Pos 3U
857#define SCB_DTCMCR_SZ_Msk (0xFUL << SCB_DTCMCR_SZ_Pos)
859#define SCB_DTCMCR_RETEN_Pos 2U
860#define SCB_DTCMCR_RETEN_Msk (1UL << SCB_DTCMCR_RETEN_Pos)
862#define SCB_DTCMCR_RMW_Pos 1U
863#define SCB_DTCMCR_RMW_Msk (1UL << SCB_DTCMCR_RMW_Pos)
865#define SCB_DTCMCR_EN_Pos 0U
866#define SCB_DTCMCR_EN_Msk (1UL )
869#define SCB_AHBPCR_SZ_Pos 1U
870#define SCB_AHBPCR_SZ_Msk (7UL << SCB_AHBPCR_SZ_Pos)
872#define SCB_AHBPCR_EN_Pos 0U
873#define SCB_AHBPCR_EN_Msk (1UL )
876#define SCB_CACR_FORCEWT_Pos 2U
877#define SCB_CACR_FORCEWT_Msk (1UL << SCB_CACR_FORCEWT_Pos)
879#define SCB_CACR_ECCEN_Pos 1U
880#define SCB_CACR_ECCEN_Msk (1UL << SCB_CACR_ECCEN_Pos)
882#define SCB_CACR_ECCDIS_Pos 1U
883#define SCB_CACR_ECCDIS_Msk (1UL << SCB_CACR_ECCDIS_Pos)
885#define SCB_CACR_SIWT_Pos 0U
886#define SCB_CACR_SIWT_Msk (1UL )
889#define SCB_AHBSCR_INITCOUNT_Pos 11U
890#define SCB_AHBSCR_INITCOUNT_Msk (0x1FUL << SCB_AHBSCR_INITCOUNT_Pos)
892#define SCB_AHBSCR_TPRI_Pos 2U
893#define SCB_AHBSCR_TPRI_Msk (0x1FFUL << SCB_AHBSCR_TPRI_Pos)
895#define SCB_AHBSCR_CTL_Pos 0U
896#define SCB_AHBSCR_CTL_Msk (3UL )
899#define SCB_ABFSR_AXIMTYPE_Pos 8U
900#define SCB_ABFSR_AXIMTYPE_Msk (3UL << SCB_ABFSR_AXIMTYPE_Pos)
902#define SCB_ABFSR_EPPB_Pos 4U
903#define SCB_ABFSR_EPPB_Msk (1UL << SCB_ABFSR_EPPB_Pos)
905#define SCB_ABFSR_AXIM_Pos 3U
906#define SCB_ABFSR_AXIM_Msk (1UL << SCB_ABFSR_AXIM_Pos)
908#define SCB_ABFSR_AHBP_Pos 2U
909#define SCB_ABFSR_AHBP_Msk (1UL << SCB_ABFSR_AHBP_Pos)
911#define SCB_ABFSR_DTCM_Pos 1U
912#define SCB_ABFSR_DTCM_Msk (1UL << SCB_ABFSR_DTCM_Pos)
914#define SCB_ABFSR_ITCM_Pos 0U
915#define SCB_ABFSR_ITCM_Msk (1UL )
932 uint32_t RESERVED0[1U];
934 __IOM uint32_t ACTLR;
938#define SCnSCB_ICTR_INTLINESNUM_Pos 0U
939#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL )
942#define SCnSCB_ACTLR_DISDYNADD_Pos 26U
943#define SCnSCB_ACTLR_DISDYNADD_Msk (1UL << SCnSCB_ACTLR_DISDYNADD_Pos)
945#define SCnSCB_ACTLR_DISISSCH1_Pos 21U
946#define SCnSCB_ACTLR_DISISSCH1_Msk (0x1FUL << SCnSCB_ACTLR_DISISSCH1_Pos)
948#define SCnSCB_ACTLR_DISDI_Pos 16U
949#define SCnSCB_ACTLR_DISDI_Msk (0x1FUL << SCnSCB_ACTLR_DISDI_Pos)
951#define SCnSCB_ACTLR_DISCRITAXIRUR_Pos 15U
952#define SCnSCB_ACTLR_DISCRITAXIRUR_Msk (1UL << SCnSCB_ACTLR_DISCRITAXIRUR_Pos)
954#define SCnSCB_ACTLR_DISBTACALLOC_Pos 14U
955#define SCnSCB_ACTLR_DISBTACALLOC_Msk (1UL << SCnSCB_ACTLR_DISBTACALLOC_Pos)
957#define SCnSCB_ACTLR_DISBTACREAD_Pos 13U
958#define SCnSCB_ACTLR_DISBTACREAD_Msk (1UL << SCnSCB_ACTLR_DISBTACREAD_Pos)
960#define SCnSCB_ACTLR_DISITMATBFLUSH_Pos 12U
961#define SCnSCB_ACTLR_DISITMATBFLUSH_Msk (1UL << SCnSCB_ACTLR_DISITMATBFLUSH_Pos)
963#define SCnSCB_ACTLR_DISRAMODE_Pos 11U
964#define SCnSCB_ACTLR_DISRAMODE_Msk (1UL << SCnSCB_ACTLR_DISRAMODE_Pos)
966#define SCnSCB_ACTLR_FPEXCODIS_Pos 10U
967#define SCnSCB_ACTLR_FPEXCODIS_Msk (1UL << SCnSCB_ACTLR_FPEXCODIS_Pos)
969#define SCnSCB_ACTLR_DISFOLD_Pos 2U
970#define SCnSCB_ACTLR_DISFOLD_Msk (1UL << SCnSCB_ACTLR_DISFOLD_Pos)
972#define SCnSCB_ACTLR_DISMCYCINT_Pos 0U
973#define SCnSCB_ACTLR_DISMCYCINT_Msk (1UL )
997#define SysTick_CTRL_COUNTFLAG_Pos 16U
998#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos)
1000#define SysTick_CTRL_CLKSOURCE_Pos 2U
1001#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos)
1003#define SysTick_CTRL_TICKINT_Pos 1U
1004#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos)
1006#define SysTick_CTRL_ENABLE_Pos 0U
1007#define SysTick_CTRL_ENABLE_Msk (1UL )
1010#define SysTick_LOAD_RELOAD_Pos 0U
1011#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL )
1014#define SysTick_VAL_CURRENT_Pos 0U
1015#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL )
1018#define SysTick_CALIB_NOREF_Pos 31U
1019#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos)
1021#define SysTick_CALIB_SKEW_Pos 30U
1022#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos)
1024#define SysTick_CALIB_TENMS_Pos 0U
1025#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL )
1048 uint32_t RESERVED0[864U];
1050 uint32_t RESERVED1[15U];
1052 uint32_t RESERVED2[15U];
1054 uint32_t RESERVED3[32U];
1055 uint32_t RESERVED4[43U];
1058 uint32_t RESERVED5[6U];
1074#define ITM_TPR_PRIVMASK_Pos 0U
1075#define ITM_TPR_PRIVMASK_Msk (0xFFFFFFFFUL )
1078#define ITM_TCR_BUSY_Pos 23U
1079#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos)
1081#define ITM_TCR_TraceBusID_Pos 16U
1082#define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos)
1084#define ITM_TCR_GTSFREQ_Pos 10U
1085#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos)
1087#define ITM_TCR_TSPrescale_Pos 8U
1088#define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos)
1090#define ITM_TCR_SWOENA_Pos 4U
1091#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos)
1093#define ITM_TCR_DWTENA_Pos 3U
1094#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos)
1096#define ITM_TCR_SYNCENA_Pos 2U
1097#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos)
1099#define ITM_TCR_TSENA_Pos 1U
1100#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos)
1102#define ITM_TCR_ITMENA_Pos 0U
1103#define ITM_TCR_ITMENA_Msk (1UL )
1106#define ITM_LSR_ByteAcc_Pos 2U
1107#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos)
1109#define ITM_LSR_Access_Pos 1U
1110#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos)
1112#define ITM_LSR_Present_Pos 0U
1113#define ITM_LSR_Present_Msk (1UL )
1130 __IOM uint32_t CTRL;
1131 __IOM uint32_t CYCCNT;
1132 __IOM uint32_t CPICNT;
1133 __IOM uint32_t EXCCNT;
1134 __IOM uint32_t SLEEPCNT;
1135 __IOM uint32_t LSUCNT;
1136 __IOM uint32_t FOLDCNT;
1138 __IOM uint32_t COMP0;
1139 __IOM uint32_t MASK0;
1140 __IOM uint32_t FUNCTION0;
1141 uint32_t RESERVED0[1U];
1143 __IOM uint32_t MASK1;
1144 __IOM uint32_t FUNCTION1;
1145 uint32_t RESERVED1[1U];
1147 __IOM uint32_t MASK2;
1148 __IOM uint32_t FUNCTION2;
1149 uint32_t RESERVED2[1U];
1150 __IOM uint32_t COMP3;
1151 __IOM uint32_t MASK3;
1152 __IOM uint32_t FUNCTION3;
1153 uint32_t RESERVED3[981U];
1159#define DWT_CTRL_NUMCOMP_Pos 28U
1160#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos)
1162#define DWT_CTRL_NOTRCPKT_Pos 27U
1163#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos)
1165#define DWT_CTRL_NOEXTTRIG_Pos 26U
1166#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos)
1168#define DWT_CTRL_NOCYCCNT_Pos 25U
1169#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos)
1171#define DWT_CTRL_NOPRFCNT_Pos 24U
1172#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos)
1174#define DWT_CTRL_CYCEVTENA_Pos 22U
1175#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos)
1177#define DWT_CTRL_FOLDEVTENA_Pos 21U
1178#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos)
1180#define DWT_CTRL_LSUEVTENA_Pos 20U
1181#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos)
1183#define DWT_CTRL_SLEEPEVTENA_Pos 19U
1184#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos)
1186#define DWT_CTRL_EXCEVTENA_Pos 18U
1187#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos)
1189#define DWT_CTRL_CPIEVTENA_Pos 17U
1190#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos)
1192#define DWT_CTRL_EXCTRCENA_Pos 16U
1193#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos)
1195#define DWT_CTRL_PCSAMPLENA_Pos 12U
1196#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos)
1198#define DWT_CTRL_SYNCTAP_Pos 10U
1199#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos)
1201#define DWT_CTRL_CYCTAP_Pos 9U
1202#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos)
1204#define DWT_CTRL_POSTINIT_Pos 5U
1205#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos)
1207#define DWT_CTRL_POSTPRESET_Pos 1U
1208#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos)
1210#define DWT_CTRL_CYCCNTENA_Pos 0U
1211#define DWT_CTRL_CYCCNTENA_Msk (0x1UL )
1214#define DWT_CPICNT_CPICNT_Pos 0U
1215#define DWT_CPICNT_CPICNT_Msk (0xFFUL )
1218#define DWT_EXCCNT_EXCCNT_Pos 0U
1219#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL )
1222#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U
1223#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL )
1226#define DWT_LSUCNT_LSUCNT_Pos 0U
1227#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL )
1230#define DWT_FOLDCNT_FOLDCNT_Pos 0U
1231#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL )
1234#define DWT_MASK_MASK_Pos 0U
1235#define DWT_MASK_MASK_Msk (0x1FUL )
1238#define DWT_FUNCTION_MATCHED_Pos 24U
1239#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos)
1241#define DWT_FUNCTION_DATAVADDR1_Pos 16U
1242#define DWT_FUNCTION_DATAVADDR1_Msk (0xFUL << DWT_FUNCTION_DATAVADDR1_Pos)
1244#define DWT_FUNCTION_DATAVADDR0_Pos 12U
1245#define DWT_FUNCTION_DATAVADDR0_Msk (0xFUL << DWT_FUNCTION_DATAVADDR0_Pos)
1247#define DWT_FUNCTION_DATAVSIZE_Pos 10U
1248#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos)
1250#define DWT_FUNCTION_LNK1ENA_Pos 9U
1251#define DWT_FUNCTION_LNK1ENA_Msk (0x1UL << DWT_FUNCTION_LNK1ENA_Pos)
1253#define DWT_FUNCTION_DATAVMATCH_Pos 8U
1254#define DWT_FUNCTION_DATAVMATCH_Msk (0x1UL << DWT_FUNCTION_DATAVMATCH_Pos)
1256#define DWT_FUNCTION_CYCMATCH_Pos 7U
1257#define DWT_FUNCTION_CYCMATCH_Msk (0x1UL << DWT_FUNCTION_CYCMATCH_Pos)
1259#define DWT_FUNCTION_EMITRANGE_Pos 5U
1260#define DWT_FUNCTION_EMITRANGE_Msk (0x1UL << DWT_FUNCTION_EMITRANGE_Pos)
1262#define DWT_FUNCTION_FUNCTION_Pos 0U
1263#define DWT_FUNCTION_FUNCTION_Msk (0xFUL )
1280 __IM uint32_t SSPSR;
1281 __IOM uint32_t CSPSR;
1282 uint32_t RESERVED0[2U];
1283 __IOM uint32_t ACPR;
1284 uint32_t RESERVED1[55U];
1285 __IOM uint32_t SPPR;
1286 uint32_t RESERVED2[131U];
1288 __IOM uint32_t FFCR;
1290 uint32_t RESERVED3[759U];
1291 __IM uint32_t TRIGGER;
1292 __IM uint32_t FIFO0;
1293 __IM uint32_t ITATBCTR2;
1294 uint32_t RESERVED4[1U];
1295 __IM uint32_t ITATBCTR0;
1296 __IM uint32_t FIFO1;
1297 __IOM uint32_t ITCTRL;
1298 uint32_t RESERVED5[39U];
1299 __IOM uint32_t CLAIMSET;
1300 __IOM uint32_t CLAIMCLR;
1301 uint32_t RESERVED7[8U];
1302 __IM uint32_t DEVID;
1303 __IM uint32_t DEVTYPE;
1307#define TPI_ACPR_PRESCALER_Pos 0U
1308#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL )
1311#define TPI_SPPR_TXMODE_Pos 0U
1312#define TPI_SPPR_TXMODE_Msk (0x3UL )
1315#define TPI_FFSR_FtNonStop_Pos 3U
1316#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos)
1318#define TPI_FFSR_TCPresent_Pos 2U
1319#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos)
1321#define TPI_FFSR_FtStopped_Pos 1U
1322#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos)
1324#define TPI_FFSR_FlInProg_Pos 0U
1325#define TPI_FFSR_FlInProg_Msk (0x1UL )
1328#define TPI_FFCR_TrigIn_Pos 8U
1329#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos)
1331#define TPI_FFCR_EnFCont_Pos 1U
1332#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos)
1335#define TPI_TRIGGER_TRIGGER_Pos 0U
1336#define TPI_TRIGGER_TRIGGER_Msk (0x1UL )
1339#define TPI_FIFO0_ITM_ATVALID_Pos 29U
1340#define TPI_FIFO0_ITM_ATVALID_Msk (0x1UL << TPI_FIFO0_ITM_ATVALID_Pos)
1342#define TPI_FIFO0_ITM_bytecount_Pos 27U
1343#define TPI_FIFO0_ITM_bytecount_Msk (0x3UL << TPI_FIFO0_ITM_bytecount_Pos)
1345#define TPI_FIFO0_ETM_ATVALID_Pos 26U
1346#define TPI_FIFO0_ETM_ATVALID_Msk (0x1UL << TPI_FIFO0_ETM_ATVALID_Pos)
1348#define TPI_FIFO0_ETM_bytecount_Pos 24U
1349#define TPI_FIFO0_ETM_bytecount_Msk (0x3UL << TPI_FIFO0_ETM_bytecount_Pos)
1351#define TPI_FIFO0_ETM2_Pos 16U
1352#define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos)
1354#define TPI_FIFO0_ETM1_Pos 8U
1355#define TPI_FIFO0_ETM1_Msk (0xFFUL << TPI_FIFO0_ETM1_Pos)
1357#define TPI_FIFO0_ETM0_Pos 0U
1358#define TPI_FIFO0_ETM0_Msk (0xFFUL )
1361#define TPI_ITATBCTR2_ATREADY2_Pos 0U
1362#define TPI_ITATBCTR2_ATREADY2_Msk (0x1UL )
1364#define TPI_ITATBCTR2_ATREADY1_Pos 0U
1365#define TPI_ITATBCTR2_ATREADY1_Msk (0x1UL )
1368#define TPI_FIFO1_ITM_ATVALID_Pos 29U
1369#define TPI_FIFO1_ITM_ATVALID_Msk (0x1UL << TPI_FIFO1_ITM_ATVALID_Pos)
1371#define TPI_FIFO1_ITM_bytecount_Pos 27U
1372#define TPI_FIFO1_ITM_bytecount_Msk (0x3UL << TPI_FIFO1_ITM_bytecount_Pos)
1374#define TPI_FIFO1_ETM_ATVALID_Pos 26U
1375#define TPI_FIFO1_ETM_ATVALID_Msk (0x1UL << TPI_FIFO1_ETM_ATVALID_Pos)
1377#define TPI_FIFO1_ETM_bytecount_Pos 24U
1378#define TPI_FIFO1_ETM_bytecount_Msk (0x3UL << TPI_FIFO1_ETM_bytecount_Pos)
1380#define TPI_FIFO1_ITM2_Pos 16U
1381#define TPI_FIFO1_ITM2_Msk (0xFFUL << TPI_FIFO1_ITM2_Pos)
1383#define TPI_FIFO1_ITM1_Pos 8U
1384#define TPI_FIFO1_ITM1_Msk (0xFFUL << TPI_FIFO1_ITM1_Pos)
1386#define TPI_FIFO1_ITM0_Pos 0U
1387#define TPI_FIFO1_ITM0_Msk (0xFFUL )
1390#define TPI_ITATBCTR0_ATREADY2_Pos 0U
1391#define TPI_ITATBCTR0_ATREADY2_Msk (0x1UL )
1393#define TPI_ITATBCTR0_ATREADY1_Pos 0U
1394#define TPI_ITATBCTR0_ATREADY1_Msk (0x1UL )
1397#define TPI_ITCTRL_Mode_Pos 0U
1398#define TPI_ITCTRL_Mode_Msk (0x3UL )
1401#define TPI_DEVID_NRZVALID_Pos 11U
1402#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos)
1404#define TPI_DEVID_MANCVALID_Pos 10U
1405#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos)
1407#define TPI_DEVID_PTINVALID_Pos 9U
1408#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos)
1410#define TPI_DEVID_MinBufSz_Pos 6U
1411#define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos)
1413#define TPI_DEVID_AsynClkIn_Pos 5U
1414#define TPI_DEVID_AsynClkIn_Msk (0x1UL << TPI_DEVID_AsynClkIn_Pos)
1416#define TPI_DEVID_NrTraceInput_Pos 0U
1417#define TPI_DEVID_NrTraceInput_Msk (0x1FUL )
1420#define TPI_DEVTYPE_SubType_Pos 4U
1421#define TPI_DEVTYPE_SubType_Msk (0xFUL )
1423#define TPI_DEVTYPE_MajorType_Pos 0U
1424#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos)
1429#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
1443 __IOM uint32_t CTRL;
1445 __IOM uint32_t RBAR;
1446 __IOM uint32_t RASR;
1447 __IOM uint32_t RBAR_A1;
1448 __IOM uint32_t RASR_A1;
1449 __IOM uint32_t RBAR_A2;
1450 __IOM uint32_t RASR_A2;
1451 __IOM uint32_t RBAR_A3;
1452 __IOM uint32_t RASR_A3;
1455#define MPU_TYPE_RALIASES 4U
1458#define MPU_TYPE_IREGION_Pos 16U
1459#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos)
1461#define MPU_TYPE_DREGION_Pos 8U
1462#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos)
1464#define MPU_TYPE_SEPARATE_Pos 0U
1465#define MPU_TYPE_SEPARATE_Msk (1UL )
1468#define MPU_CTRL_PRIVDEFENA_Pos 2U
1469#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos)
1471#define MPU_CTRL_HFNMIENA_Pos 1U
1472#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos)
1474#define MPU_CTRL_ENABLE_Pos 0U
1475#define MPU_CTRL_ENABLE_Msk (1UL )
1478#define MPU_RNR_REGION_Pos 0U
1479#define MPU_RNR_REGION_Msk (0xFFUL )
1482#define MPU_RBAR_ADDR_Pos 5U
1483#define MPU_RBAR_ADDR_Msk (0x7FFFFFFUL << MPU_RBAR_ADDR_Pos)
1485#define MPU_RBAR_VALID_Pos 4U
1486#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos)
1488#define MPU_RBAR_REGION_Pos 0U
1489#define MPU_RBAR_REGION_Msk (0xFUL )
1492#define MPU_RASR_ATTRS_Pos 16U
1493#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos)
1495#define MPU_RASR_XN_Pos 28U
1496#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos)
1498#define MPU_RASR_AP_Pos 24U
1499#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos)
1501#define MPU_RASR_TEX_Pos 19U
1502#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos)
1504#define MPU_RASR_S_Pos 18U
1505#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos)
1507#define MPU_RASR_C_Pos 17U
1508#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos)
1510#define MPU_RASR_B_Pos 16U
1511#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos)
1513#define MPU_RASR_SRD_Pos 8U
1514#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos)
1516#define MPU_RASR_SIZE_Pos 1U
1517#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos)
1519#define MPU_RASR_ENABLE_Pos 0U
1520#define MPU_RASR_ENABLE_Msk (1UL )
1538 uint32_t RESERVED0[1U];
1539 __IOM uint32_t FPCCR;
1540 __IOM uint32_t FPCAR;
1541 __IOM uint32_t FPDSCR;
1542 __IM uint32_t MVFR0;
1543 __IM uint32_t MVFR1;
1544 __IM uint32_t MVFR2;
1548#define FPU_FPCCR_ASPEN_Pos 31U
1549#define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos)
1551#define FPU_FPCCR_LSPEN_Pos 30U
1552#define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos)
1554#define FPU_FPCCR_MONRDY_Pos 8U
1555#define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos)
1557#define FPU_FPCCR_BFRDY_Pos 6U
1558#define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos)
1560#define FPU_FPCCR_MMRDY_Pos 5U
1561#define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos)
1563#define FPU_FPCCR_HFRDY_Pos 4U
1564#define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos)
1566#define FPU_FPCCR_THREAD_Pos 3U
1567#define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos)
1569#define FPU_FPCCR_USER_Pos 1U
1570#define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos)
1572#define FPU_FPCCR_LSPACT_Pos 0U
1573#define FPU_FPCCR_LSPACT_Msk (1UL )
1576#define FPU_FPCAR_ADDRESS_Pos 3U
1577#define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos)
1580#define FPU_FPDSCR_AHP_Pos 26U
1581#define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos)
1583#define FPU_FPDSCR_DN_Pos 25U
1584#define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos)
1586#define FPU_FPDSCR_FZ_Pos 24U
1587#define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos)
1589#define FPU_FPDSCR_RMode_Pos 22U
1590#define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos)
1593#define FPU_MVFR0_FP_rounding_modes_Pos 28U
1594#define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos)
1596#define FPU_MVFR0_Short_vectors_Pos 24U
1597#define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos)
1599#define FPU_MVFR0_Square_root_Pos 20U
1600#define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos)
1602#define FPU_MVFR0_Divide_Pos 16U
1603#define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos)
1605#define FPU_MVFR0_FP_excep_trapping_Pos 12U
1606#define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos)
1608#define FPU_MVFR0_Double_precision_Pos 8U
1609#define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos)
1611#define FPU_MVFR0_Single_precision_Pos 4U
1612#define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos)
1614#define FPU_MVFR0_A_SIMD_registers_Pos 0U
1615#define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL )
1618#define FPU_MVFR1_FP_fused_MAC_Pos 28U
1619#define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos)
1621#define FPU_MVFR1_FP_HPFP_Pos 24U
1622#define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos)
1624#define FPU_MVFR1_D_NaN_mode_Pos 4U
1625#define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos)
1627#define FPU_MVFR1_FtZ_mode_Pos 0U
1628#define FPU_MVFR1_FtZ_mode_Msk (0xFUL )
1632#define FPU_MVFR2_VFP_Misc_Pos 4U
1633#define FPU_MVFR2_VFP_Misc_Msk (0xFUL << FPU_MVFR2_VFP_Misc_Pos)
1650 __IOM uint32_t DHCSR;
1651 __OM uint32_t DCRSR;
1652 __IOM uint32_t DCRDR;
1653 __IOM uint32_t DEMCR;
1657#define CoreDebug_DHCSR_DBGKEY_Pos 16U
1658#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos)
1660#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U
1661#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos)
1663#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U
1664#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos)
1666#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U
1667#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos)
1669#define CoreDebug_DHCSR_S_SLEEP_Pos 18U
1670#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos)
1672#define CoreDebug_DHCSR_S_HALT_Pos 17U
1673#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos)
1675#define CoreDebug_DHCSR_S_REGRDY_Pos 16U
1676#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos)
1678#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U
1679#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos)
1681#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U
1682#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos)
1684#define CoreDebug_DHCSR_C_STEP_Pos 2U
1685#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos)
1687#define CoreDebug_DHCSR_C_HALT_Pos 1U
1688#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos)
1690#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U
1691#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL )
1694#define CoreDebug_DCRSR_REGWnR_Pos 16U
1695#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos)
1697#define CoreDebug_DCRSR_REGSEL_Pos 0U
1698#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL )
1701#define CoreDebug_DEMCR_TRCENA_Pos 24U
1702#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos)
1704#define CoreDebug_DEMCR_MON_REQ_Pos 19U
1705#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos)
1707#define CoreDebug_DEMCR_MON_STEP_Pos 18U
1708#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos)
1710#define CoreDebug_DEMCR_MON_PEND_Pos 17U
1711#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos)
1713#define CoreDebug_DEMCR_MON_EN_Pos 16U
1714#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos)
1716#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U
1717#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos)
1719#define CoreDebug_DEMCR_VC_INTERR_Pos 9U
1720#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos)
1722#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U
1723#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos)
1725#define CoreDebug_DEMCR_VC_STATERR_Pos 7U
1726#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos)
1728#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U
1729#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos)
1731#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U
1732#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos)
1734#define CoreDebug_DEMCR_VC_MMERR_Pos 4U
1735#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos)
1737#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U
1738#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL )
1756#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk)
1764#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos)
1777#define SCS_BASE (0xE000E000UL)
1778#define ITM_BASE (0xE0000000UL)
1779#define DWT_BASE (0xE0001000UL)
1780#define TPI_BASE (0xE0040000UL)
1781#define CoreDebug_BASE (0xE000EDF0UL)
1782#define SysTick_BASE (SCS_BASE + 0x0010UL)
1783#define NVIC_BASE (SCS_BASE + 0x0100UL)
1784#define SCB_BASE (SCS_BASE + 0x0D00UL)
1786#define SCnSCB ((SCnSCB_Type *) SCS_BASE )
1787#define SCB ((SCB_Type *) SCB_BASE )
1788#define SysTick ((SysTick_Type *) SysTick_BASE )
1789#define NVIC ((NVIC_Type *) NVIC_BASE )
1790#define ITM ((ITM_Type *) ITM_BASE )
1791#define DWT ((DWT_Type *) DWT_BASE )
1792#define TPI ((TPI_Type *) TPI_BASE )
1793#define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE)
1795#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
1796 #define MPU_BASE (SCS_BASE + 0x0D90UL)
1797 #define MPU ((MPU_Type *) MPU_BASE )
1800#define FPU_BASE (SCS_BASE + 0x0F30UL)
1801#define FPU ((FPU_Type *) FPU_BASE )
1829#ifdef CMSIS_NVIC_VIRTUAL
1830 #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE
1831 #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h"
1833 #include CMSIS_NVIC_VIRTUAL_HEADER_FILE
1835 #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping
1836 #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping
1837 #define NVIC_EnableIRQ __NVIC_EnableIRQ
1838 #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ
1839 #define NVIC_DisableIRQ __NVIC_DisableIRQ
1840 #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ
1841 #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ
1842 #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ
1843 #define NVIC_GetActive __NVIC_GetActive
1844 #define NVIC_SetPriority __NVIC_SetPriority
1845 #define NVIC_GetPriority __NVIC_GetPriority
1846 #define NVIC_SystemReset __NVIC_SystemReset
1849#ifdef CMSIS_VECTAB_VIRTUAL
1850 #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE
1851 #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h"
1853 #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE
1855 #define NVIC_SetVector __NVIC_SetVector
1856 #define NVIC_GetVector __NVIC_GetVector
1859#define NVIC_USER_IRQ_OFFSET 16
1863#define EXC_RETURN_HANDLER (0xFFFFFFF1UL)
1864#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL)
1865#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL)
1866#define EXC_RETURN_HANDLER_FPU (0xFFFFFFE1UL)
1867#define EXC_RETURN_THREAD_MSP_FPU (0xFFFFFFE9UL)
1868#define EXC_RETURN_THREAD_PSP_FPU (0xFFFFFFEDUL)
1883 uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL);
1885 reg_value =
SCB->AIRCR;
1887 reg_value = (reg_value |
1890 SCB->AIRCR = reg_value;
1913 if ((int32_t)(IRQn) >= 0)
1916 NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
1932 if ((int32_t)(IRQn) >= 0)
1934 return((uint32_t)(((
NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
1951 if ((int32_t)(IRQn) >= 0)
1953 NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
1970 if ((int32_t)(IRQn) >= 0)
1972 return((uint32_t)(((
NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
1989 if ((int32_t)(IRQn) >= 0)
1991 NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
2004 if ((int32_t)(IRQn) >= 0)
2006 NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
2021 if ((int32_t)(IRQn) >= 0)
2023 return((uint32_t)(((
NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2043 if ((int32_t)(IRQn) >= 0)
2045 NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U -
__NVIC_PRIO_BITS)) & (uint32_t)0xFFUL);
2049 SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U -
__NVIC_PRIO_BITS)) & (uint32_t)0xFFUL);
2066 if ((int32_t)(IRQn) >= 0)
2090 uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL);
2091 uint32_t PreemptPriorityBits;
2092 uint32_t SubPriorityBits;
2095 SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(
__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(
__NVIC_PRIO_BITS));
2098 ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) |
2099 ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL)))
2117 uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL);
2118 uint32_t PreemptPriorityBits;
2119 uint32_t SubPriorityBits;
2122 SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(
__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(
__NVIC_PRIO_BITS));
2124 *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL);
2125 *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL);
2140 uint32_t *vectors = (uint32_t *)
SCB->VTOR;
2156 uint32_t *vectors = (uint32_t *)
SCB->VTOR;
2185#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
2232#if ((defined (__ICACHE_PRESENT) && (__ICACHE_PRESENT == 1U)) || \
2233 (defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U)))
2246#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U)
2266 SysTick->LOAD = (uint32_t)(ticks - 1UL);
2290#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U)
2304 ((
ITM->TER & 1UL ) != 0UL) )
2306 while (
ITM->PORT[0U].u32 == 0UL)
2310 ITM->PORT[0U].u8 = (uint8_t)
ch;
#define __COMPILER_BARRIER()
CMSIS compiler generic header file.
CMSIS Core(M) Version definitions.
#define SysTick_CTRL_ENABLE_Msk
SysTick CTRL: ENABLE Mask.
#define SysTick_LOAD_RELOAD_Msk
SysTick LOAD: RELOAD Mask.
#define FPU_MVFR0_Double_precision_Msk
MVFR0: Double-precision bits Mask.
#define ITM_TCR_ITMENA_Msk
ITM TCR: ITM Enable bit Mask.
#define SCB_AIRCR_PRIGROUP_Msk
SCB AIRCR: PRIGROUP Mask.
#define SCB_AIRCR_VECTKEY_Msk
SCB AIRCR: VECTKEY Mask.
#define FPU_MVFR0_Single_precision_Msk
MVFR0: Single-precision bits Mask.
#define SysTick_CTRL_TICKINT_Msk
SysTick CTRL: TICKINT Mask.
#define SysTick_CTRL_CLKSOURCE_Msk
SysTick CTRL: CLKSOURCE Mask.
#define SCB_AIRCR_VECTKEY_Pos
SCB AIRCR: VECTKEY Position.
#define SCB
SCB configuration struct.
#define SCB_AIRCR_SYSRESETREQ_Msk
SCB AIRCR: SYSRESETREQ Mask.
#define ITM
ITM configuration struct.
#define NVIC
NVIC configuration struct.
#define SCB_AIRCR_PRIGROUP_Pos
SCB AIRCR: PRIGROUP Position.
#define SysTick
SysTick configuration struct.
#define __NVIC_SetPriorityGrouping(X)
#define __NVIC_GetPriorityGrouping()
Get Priority Grouping.
#define __DSB()
Data Synchronization Barrier.
#define __ISB()
Instruction Synchronization Barrier.
#define __NOP
No Operation.
__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void)
System Reset.
__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector)
Set Interrupt Vector.
__STATIC_INLINE void NVIC_DecodePriority(uint32_t Priority, uint32_t PriorityGroup, uint32_t *const pPreemptPriority, uint32_t *const pSubPriority)
Decode Priority.
__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn)
Get Interrupt Vector.
__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority)
Set Interrupt Priority.
__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn)
Clear Pending Interrupt.
__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn)
Get Pending Interrupt.
__STATIC_INLINE uint32_t SCB_GetFPUType(void)
get FPU type
__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn)
Enable Interrupt.
#define NVIC_USER_IRQ_OFFSET
__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn)
Get Active Interrupt.
__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn)
Set Pending Interrupt.
__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn)
Get Interrupt Enable status.
__STATIC_INLINE uint32_t NVIC_EncodePriority(uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority)
Encode Priority.
__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn)
Disable Interrupt.
__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks)
System Tick Configuration.
__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn)
Get Interrupt Priority.
__OM uint32_t DCCMVAC
Offset: 0x268 ( /W) D-Cache Clean by MVA to PoC.
__IOM uint32_t AHBPCR
Offset: 0x298 (R/W) AHBP Control Register.
volatile int32_t ITM_RxBuffer
External variable to receive characters.
uint32_t _reserved0
bit: 0..15 Reserved
__OM uint32_t DCISW
Offset: 0x260 ( /W) D-Cache Invalidate by Set-way.
__IM uint32_t MVFR2
Offset: 0x248 (R/ ) Media and VFP Feature Register 2.
__IOM uint32_t DTCMCR
Offset: 0x294 (R/W) Data Tightly-Coupled Memory Control Registers.
uint32_t GE
bit: 16..19 Greater than or Equal flags
__OM uint8_t u8
Offset: 0x000 ( /W) ITM Stimulus Port 8-bit.
__OM uint32_t u32
Offset: 0x000 ( /W) ITM Stimulus Port 32-bit.
uint32_t Q
bit: 27 Saturation condition flag
uint32_t _reserved1
bit: 20..26 Reserved
__IOM uint32_t ABFSR
Offset: 0x2A8 (R/W) Auxiliary Bus Fault Status Register.
uint32_t SPSEL
bit: 1 Stack to be used
__IM uint32_t LSR
Offset: 0xFB4 (R ) Lock Status Register.
__OM uint32_t LAR
Offset: 0xFB0 ( W) Lock Access Register.
__OM uint32_t DCIMVAC
Offset: 0x25C ( /W) D-Cache Invalidate by MVA to PoC.
__OM uint32_t DCCIMVAC
Offset: 0x270 ( /W) D-Cache Clean and Invalidate by MVA to PoC.
__IOM uint32_t CACR
Offset: 0x29C (R/W) L1 Cache Control Register.
uint32_t C
bit: 29 Carry condition code flag
__OM uint32_t ICIALLU
Offset: 0x250 ( /W) I-Cache Invalidate All to PoU.
__IM uint32_t ID_ISAR[6U]
Offset: 0x060 (R/ ) Instruction Set Attributes Register.
__OM uint32_t ICIMVAU
Offset: 0x258 ( /W) I-Cache Invalidate by MVA to PoU.
__OM uint16_t u16
Offset: 0x000 ( /W) ITM Stimulus Port 16-bit.
uint32_t Z
bit: 30 Zero condition code flag
uint32_t Q
bit: 27 Saturation condition flag
__IM uint32_t MVFR1
Offset: 0x244 (R/ ) Media and VFP Feature Register 1.
__IM uint32_t ID_MFR[4U]
Offset: 0x050 (R/ ) Memory Model Feature Register.
__IM uint32_t MVFR0
Offset: 0x240 (R/ ) Media and VFP Feature Register 0.
uint32_t FPCA
bit: 2 FP extension active flag
uint32_t C
bit: 29 Carry condition code flag
uint32_t _reserved0
bit: 3..31 Reserved
uint32_t _reserved0
bit: 9 Reserved
__IOM uint32_t AHBSCR
Offset: 0x2A0 (R/W) AHB Slave Control Register.
uint32_t ICI_IT_2
bit: 25..26 ICI/IT part 2
uint32_t N
bit: 31 Negative condition code flag
uint32_t N
bit: 31 Negative condition code flag
uint32_t V
bit: 28 Overflow condition code flag
uint32_t Z
bit: 30 Zero condition code flag
#define ITM_RXBUFFER_EMPTY
Value identifying ITM_RxBuffer is ready for next character.
uint32_t T
bit: 24 Thumb bit
__OM uint32_t DCCMVAU
Offset: 0x264 ( /W) D-Cache Clean by MVA to PoU.
__OM uint32_t BPIALL
Offset: 0x278 ( /W) Branch Predictor Invalidate All.
__OM uint32_t DCCSW
Offset: 0x26C ( /W) D-Cache Clean by Set-way.
uint32_t nPRIV
bit: 0 Execution privilege in Thread mode
__IOM uint32_t ITCMCR
Offset: 0x290 (R/W) Instruction Tightly-Coupled Memory Control Register.
__STATIC_INLINE int32_t ITM_ReceiveChar(void)
ITM Receive Character.
__IOM uint32_t CPACR
Offset: 0x088 (R/W) Coprocessor Access Control Register.
__STATIC_INLINE uint32_t ITM_SendChar(uint32_t ch)
ITM Send Character.
uint32_t _reserved1
bit: 20..23 Reserved
__IOM uint32_t CSSELR
Offset: 0x084 (R/W) Cache Size Selection Register.
__OM uint32_t STIR
Offset: 0x200 ( /W) Software Triggered Interrupt Register.
__IM uint32_t CLIDR
Offset: 0x078 (R/ ) Cache Level ID register.
uint32_t V
bit: 28 Overflow condition code flag
__STATIC_INLINE int32_t ITM_CheckChar(void)
ITM Check Character.
uint32_t _reserved0
bit: 9..31 Reserved
uint32_t GE
bit: 16..19 Greater than or Equal flags
__IM uint32_t CTR
Offset: 0x07C (R/ ) Cache Type register.
__OM uint32_t DCCISW
Offset: 0x274 ( /W) D-Cache Clean and Invalidate by Set-way.
uint32_t ICI_IT_1
bit: 10..15 ICI/IT part 1
__IM uint32_t CCSIDR
Offset: 0x080 (R/ ) Cache Size ID Register.
#define __NVIC_PRIO_BITS
CM7 uses 4 Bits for the Priority Levels.
IRQn_Type
STM32H7XX Interrupt Number Definition, according to the selected device in Library_configuration_sect...
@ SysTick_IRQn
15 Cortex-M System Tick Interrupt
*brief create JSON pointer *sa reference_tokens const string_t const string_t & b
Structure type to access the Core Debug Register (CoreDebug).
Structure type to access the Data Watchpoint and Trace Register (DWT).
Structure type to access the Floating Point Unit (FPU).
Structure type to access the Instrumentation Trace Macrocell Register (ITM).
Structure type to access the Memory Protection Unit (MPU).
Structure type to access the Nested Vectored Interrupt Controller (NVIC).
Structure type to access the System Control Block (SCB).
Structure type to access the System Control and ID Register not in the SCB.
Structure type to access the System Timer (SysTick).
Structure type to access the Trace Port Interface Register (TPI).
static std::string ch(int ain, const std::string &kind, const std::string &extra="", const std::string &board="lj")
Union type to access the Application Program Status Register (APSR).
Union type to access the Control Registers (CONTROL).
Union type to access the Interrupt Program Status Register (IPSR).
Union type to access the Special-Purpose Program Status Registers (xPSR).