25#if defined ( __ICCARM__ )
26 #pragma system_include
27#elif defined (__clang__)
28 #pragma clang system_header
29#elif defined ( __GNUC__ )
30 #pragma GCC diagnostic ignored "-Wpedantic"
33#ifndef __CORE_CM23_H_GENERIC
34#define __CORE_CM23_H_GENERIC
68#define __CM23_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN)
69#define __CM23_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB)
70#define __CM23_CMSIS_VERSION ((__CM23_CMSIS_VERSION_MAIN << 16U) | \
71 __CM23_CMSIS_VERSION_SUB )
73#define __CORTEX_M (23U)
80#if defined ( __CC_ARM )
81 #if defined __TARGET_FPU_VFP
82 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
85#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
87 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
90#elif defined ( __GNUC__ )
91 #if defined (__VFP_FP__) && !defined(__SOFTFP__)
92 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
95#elif defined ( __ICCARM__ )
96 #if defined __ARMVFP__
97 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
100#elif defined ( __TI_ARM__ )
101 #if defined __TI_VFP_SUPPORT__
102 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
105#elif defined ( __TASKING__ )
106 #if defined __FPU_VFP__
107 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
110#elif defined ( __CSMC__ )
111 #if ( __CSMC__ & 0x400U)
112 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
126#ifndef __CMSIS_GENERIC
128#ifndef __CORE_CM23_H_DEPENDANT
129#define __CORE_CM23_H_DEPENDANT
136#if defined __CHECK_DEVICE_DEFINES
138 #define __CM23_REV 0x0000U
139 #warning "__CM23_REV not defined in device header file; using default!"
142 #ifndef __FPU_PRESENT
143 #define __FPU_PRESENT 0U
144 #warning "__FPU_PRESENT not defined in device header file; using default!"
147 #ifndef __MPU_PRESENT
148 #define __MPU_PRESENT 0U
149 #warning "__MPU_PRESENT not defined in device header file; using default!"
152 #ifndef __SAUREGION_PRESENT
153 #define __SAUREGION_PRESENT 0U
154 #warning "__SAUREGION_PRESENT not defined in device header file; using default!"
157 #ifndef __VTOR_PRESENT
158 #define __VTOR_PRESENT 0U
159 #warning "__VTOR_PRESENT not defined in device header file; using default!"
162 #ifndef __NVIC_PRIO_BITS
163 #define __NVIC_PRIO_BITS 2U
164 #warning "__NVIC_PRIO_BITS not defined in device header file; using default!"
167 #ifndef __Vendor_SysTickConfig
168 #define __Vendor_SysTickConfig 0U
169 #warning "__Vendor_SysTickConfig not defined in device header file; using default!"
172 #ifndef __ETM_PRESENT
173 #define __ETM_PRESENT 0U
174 #warning "__ETM_PRESENT not defined in device header file; using default!"
177 #ifndef __MTB_PRESENT
178 #define __MTB_PRESENT 0U
179 #warning "__MTB_PRESENT not defined in device header file; using default!"
195 #define __I volatile const
201#define __IM volatile const
203#define __IOM volatile
249#define APSR_N_Pos 31U
250#define APSR_N_Msk (1UL << APSR_N_Pos)
252#define APSR_Z_Pos 30U
253#define APSR_Z_Msk (1UL << APSR_Z_Pos)
255#define APSR_C_Pos 29U
256#define APSR_C_Msk (1UL << APSR_C_Pos)
258#define APSR_V_Pos 28U
259#define APSR_V_Msk (1UL << APSR_V_Pos)
276#define IPSR_ISR_Pos 0U
277#define IPSR_ISR_Msk (0x1FFUL )
300#define xPSR_N_Pos 31U
301#define xPSR_N_Msk (1UL << xPSR_N_Pos)
303#define xPSR_Z_Pos 30U
304#define xPSR_Z_Msk (1UL << xPSR_Z_Pos)
306#define xPSR_C_Pos 29U
307#define xPSR_C_Msk (1UL << xPSR_C_Pos)
309#define xPSR_V_Pos 28U
310#define xPSR_V_Msk (1UL << xPSR_V_Pos)
312#define xPSR_T_Pos 24U
313#define xPSR_T_Msk (1UL << xPSR_T_Pos)
315#define xPSR_ISR_Pos 0U
316#define xPSR_ISR_Msk (0x1FFUL )
334#define CONTROL_SPSEL_Pos 1U
335#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos)
337#define CONTROL_nPRIV_Pos 0U
338#define CONTROL_nPRIV_Msk (1UL )
355 __IOM uint32_t ISER[16U];
356 uint32_t RESERVED0[16U];
357 __IOM uint32_t ICER[16U];
358 uint32_t RSERVED1[16U];
359 __IOM uint32_t ISPR[16U];
360 uint32_t RESERVED2[16U];
361 __IOM uint32_t ICPR[16U];
362 uint32_t RESERVED3[16U];
363 __IOM uint32_t IABR[16U];
364 uint32_t RESERVED4[16U];
365 __IOM uint32_t ITNS[16U];
366 uint32_t RESERVED5[16U];
367 __IOM uint32_t IPR[124U];
387#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U)
392 __IOM uint32_t AIRCR;
396 __IOM uint32_t SHPR[2U];
397 __IOM uint32_t SHCSR;
401#define SCB_CPUID_IMPLEMENTER_Pos 24U
402#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos)
404#define SCB_CPUID_VARIANT_Pos 20U
405#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos)
407#define SCB_CPUID_ARCHITECTURE_Pos 16U
408#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos)
410#define SCB_CPUID_PARTNO_Pos 4U
411#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos)
413#define SCB_CPUID_REVISION_Pos 0U
414#define SCB_CPUID_REVISION_Msk (0xFUL )
417#define SCB_ICSR_PENDNMISET_Pos 31U
418#define SCB_ICSR_PENDNMISET_Msk (1UL << SCB_ICSR_PENDNMISET_Pos)
420#define SCB_ICSR_NMIPENDSET_Pos SCB_ICSR_PENDNMISET_Pos
421#define SCB_ICSR_NMIPENDSET_Msk SCB_ICSR_PENDNMISET_Msk
423#define SCB_ICSR_PENDNMICLR_Pos 30U
424#define SCB_ICSR_PENDNMICLR_Msk (1UL << SCB_ICSR_PENDNMICLR_Pos)
426#define SCB_ICSR_PENDSVSET_Pos 28U
427#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos)
429#define SCB_ICSR_PENDSVCLR_Pos 27U
430#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos)
432#define SCB_ICSR_PENDSTSET_Pos 26U
433#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos)
435#define SCB_ICSR_PENDSTCLR_Pos 25U
436#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos)
438#define SCB_ICSR_STTNS_Pos 24U
439#define SCB_ICSR_STTNS_Msk (1UL << SCB_ICSR_STTNS_Pos)
441#define SCB_ICSR_ISRPREEMPT_Pos 23U
442#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos)
444#define SCB_ICSR_ISRPENDING_Pos 22U
445#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos)
447#define SCB_ICSR_VECTPENDING_Pos 12U
448#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos)
450#define SCB_ICSR_RETTOBASE_Pos 11U
451#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos)
453#define SCB_ICSR_VECTACTIVE_Pos 0U
454#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL )
456#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U)
458#define SCB_VTOR_TBLOFF_Pos 7U
459#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos)
463#define SCB_AIRCR_VECTKEY_Pos 16U
464#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos)
466#define SCB_AIRCR_VECTKEYSTAT_Pos 16U
467#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos)
469#define SCB_AIRCR_ENDIANESS_Pos 15U
470#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos)
472#define SCB_AIRCR_PRIS_Pos 14U
473#define SCB_AIRCR_PRIS_Msk (1UL << SCB_AIRCR_PRIS_Pos)
475#define SCB_AIRCR_BFHFNMINS_Pos 13U
476#define SCB_AIRCR_BFHFNMINS_Msk (1UL << SCB_AIRCR_BFHFNMINS_Pos)
478#define SCB_AIRCR_SYSRESETREQS_Pos 3U
479#define SCB_AIRCR_SYSRESETREQS_Msk (1UL << SCB_AIRCR_SYSRESETREQS_Pos)
481#define SCB_AIRCR_SYSRESETREQ_Pos 2U
482#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos)
484#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U
485#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos)
488#define SCB_SCR_SEVONPEND_Pos 4U
489#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos)
491#define SCB_SCR_SLEEPDEEPS_Pos 3U
492#define SCB_SCR_SLEEPDEEPS_Msk (1UL << SCB_SCR_SLEEPDEEPS_Pos)
494#define SCB_SCR_SLEEPDEEP_Pos 2U
495#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos)
497#define SCB_SCR_SLEEPONEXIT_Pos 1U
498#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos)
501#define SCB_CCR_BP_Pos 18U
502#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos)
504#define SCB_CCR_IC_Pos 17U
505#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos)
507#define SCB_CCR_DC_Pos 16U
508#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos)
510#define SCB_CCR_STKOFHFNMIGN_Pos 10U
511#define SCB_CCR_STKOFHFNMIGN_Msk (1UL << SCB_CCR_STKOFHFNMIGN_Pos)
513#define SCB_CCR_BFHFNMIGN_Pos 8U
514#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos)
516#define SCB_CCR_DIV_0_TRP_Pos 4U
517#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos)
519#define SCB_CCR_UNALIGN_TRP_Pos 3U
520#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos)
522#define SCB_CCR_USERSETMPEND_Pos 1U
523#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos)
526#define SCB_SHCSR_HARDFAULTPENDED_Pos 21U
527#define SCB_SHCSR_HARDFAULTPENDED_Msk (1UL << SCB_SHCSR_HARDFAULTPENDED_Pos)
529#define SCB_SHCSR_SVCALLPENDED_Pos 15U
530#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos)
532#define SCB_SHCSR_SYSTICKACT_Pos 11U
533#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos)
535#define SCB_SHCSR_PENDSVACT_Pos 10U
536#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos)
538#define SCB_SHCSR_SVCALLACT_Pos 7U
539#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos)
541#define SCB_SHCSR_NMIACT_Pos 5U
542#define SCB_SHCSR_NMIACT_Msk (1UL << SCB_SHCSR_NMIACT_Pos)
544#define SCB_SHCSR_HARDFAULTACT_Pos 2U
545#define SCB_SHCSR_HARDFAULTACT_Msk (1UL << SCB_SHCSR_HARDFAULTACT_Pos)
569#define SysTick_CTRL_COUNTFLAG_Pos 16U
570#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos)
572#define SysTick_CTRL_CLKSOURCE_Pos 2U
573#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos)
575#define SysTick_CTRL_TICKINT_Pos 1U
576#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos)
578#define SysTick_CTRL_ENABLE_Pos 0U
579#define SysTick_CTRL_ENABLE_Msk (1UL )
582#define SysTick_LOAD_RELOAD_Pos 0U
583#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL )
586#define SysTick_VAL_CURRENT_Pos 0U
587#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL )
590#define SysTick_CALIB_NOREF_Pos 31U
591#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos)
593#define SysTick_CALIB_SKEW_Pos 30U
594#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos)
596#define SysTick_CALIB_TENMS_Pos 0U
597#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL )
615 uint32_t RESERVED0[6U];
617 __IOM uint32_t COMP0;
618 uint32_t RESERVED1[1U];
619 __IOM uint32_t FUNCTION0;
620 uint32_t RESERVED2[1U];
622 uint32_t RESERVED3[1U];
623 __IOM uint32_t FUNCTION1;
624 uint32_t RESERVED4[1U];
626 uint32_t RESERVED5[1U];
627 __IOM uint32_t FUNCTION2;
628 uint32_t RESERVED6[1U];
629 __IOM uint32_t COMP3;
630 uint32_t RESERVED7[1U];
631 __IOM uint32_t FUNCTION3;
632 uint32_t RESERVED8[1U];
633 __IOM uint32_t COMP4;
634 uint32_t RESERVED9[1U];
635 __IOM uint32_t FUNCTION4;
636 uint32_t RESERVED10[1U];
637 __IOM uint32_t COMP5;
638 uint32_t RESERVED11[1U];
639 __IOM uint32_t FUNCTION5;
640 uint32_t RESERVED12[1U];
641 __IOM uint32_t COMP6;
642 uint32_t RESERVED13[1U];
643 __IOM uint32_t FUNCTION6;
644 uint32_t RESERVED14[1U];
645 __IOM uint32_t COMP7;
646 uint32_t RESERVED15[1U];
647 __IOM uint32_t FUNCTION7;
648 uint32_t RESERVED16[1U];
649 __IOM uint32_t COMP8;
650 uint32_t RESERVED17[1U];
651 __IOM uint32_t FUNCTION8;
652 uint32_t RESERVED18[1U];
653 __IOM uint32_t COMP9;
654 uint32_t RESERVED19[1U];
655 __IOM uint32_t FUNCTION9;
656 uint32_t RESERVED20[1U];
657 __IOM uint32_t COMP10;
658 uint32_t RESERVED21[1U];
659 __IOM uint32_t FUNCTION10;
660 uint32_t RESERVED22[1U];
661 __IOM uint32_t COMP11;
662 uint32_t RESERVED23[1U];
663 __IOM uint32_t FUNCTION11;
664 uint32_t RESERVED24[1U];
666 uint32_t RESERVED25[1U];
667 __IOM uint32_t FUNCTION12;
668 uint32_t RESERVED26[1U];
669 __IOM uint32_t COMP13;
670 uint32_t RESERVED27[1U];
671 __IOM uint32_t FUNCTION13;
672 uint32_t RESERVED28[1U];
673 __IOM uint32_t COMP14;
674 uint32_t RESERVED29[1U];
675 __IOM uint32_t FUNCTION14;
676 uint32_t RESERVED30[1U];
677 __IOM uint32_t COMP15;
678 uint32_t RESERVED31[1U];
679 __IOM uint32_t FUNCTION15;
683#define DWT_CTRL_NUMCOMP_Pos 28U
684#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos)
686#define DWT_CTRL_NOTRCPKT_Pos 27U
687#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos)
689#define DWT_CTRL_NOEXTTRIG_Pos 26U
690#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos)
692#define DWT_CTRL_NOCYCCNT_Pos 25U
693#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos)
695#define DWT_CTRL_NOPRFCNT_Pos 24U
696#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos)
699#define DWT_FUNCTION_ID_Pos 27U
700#define DWT_FUNCTION_ID_Msk (0x1FUL << DWT_FUNCTION_ID_Pos)
702#define DWT_FUNCTION_MATCHED_Pos 24U
703#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos)
705#define DWT_FUNCTION_DATAVSIZE_Pos 10U
706#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos)
708#define DWT_FUNCTION_ACTION_Pos 4U
709#define DWT_FUNCTION_ACTION_Msk (0x3UL << DWT_FUNCTION_ACTION_Pos)
711#define DWT_FUNCTION_MATCH_Pos 0U
712#define DWT_FUNCTION_MATCH_Msk (0xFUL )
730 __IOM uint32_t CSPSR;
731 uint32_t RESERVED0[2U];
733 uint32_t RESERVED1[55U];
735 uint32_t RESERVED2[131U];
739 uint32_t RESERVED3[759U];
756#define TPI_ACPR_PRESCALER_Pos 0U
757#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL )
760#define TPI_SPPR_TXMODE_Pos 0U
761#define TPI_SPPR_TXMODE_Msk (0x3UL )
764#define TPI_FFSR_FtNonStop_Pos 3U
765#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos)
767#define TPI_FFSR_TCPresent_Pos 2U
768#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos)
770#define TPI_FFSR_FtStopped_Pos 1U
771#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos)
773#define TPI_FFSR_FlInProg_Pos 0U
774#define TPI_FFSR_FlInProg_Msk (0x1UL )
777#define TPI_FFCR_TrigIn_Pos 8U
778#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos)
780#define TPI_FFCR_FOnMan_Pos 6U
781#define TPI_FFCR_FOnMan_Msk (0x1UL << TPI_FFCR_FOnMan_Pos)
783#define TPI_FFCR_EnFCont_Pos 1U
784#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos)
787#define TPI_TRIGGER_TRIGGER_Pos 0U
788#define TPI_TRIGGER_TRIGGER_Msk (0x1UL )
791#define TPI_ITFTTD0_ATB_IF2_ATVALID_Pos 29U
792#define TPI_ITFTTD0_ATB_IF2_ATVALID_Msk (0x3UL << TPI_ITFTTD0_ATB_IF2_ATVALID_Pos)
794#define TPI_ITFTTD0_ATB_IF2_bytecount_Pos 27U
795#define TPI_ITFTTD0_ATB_IF2_bytecount_Msk (0x3UL << TPI_ITFTTD0_ATB_IF2_bytecount_Pos)
797#define TPI_ITFTTD0_ATB_IF1_ATVALID_Pos 26U
798#define TPI_ITFTTD0_ATB_IF1_ATVALID_Msk (0x3UL << TPI_ITFTTD0_ATB_IF1_ATVALID_Pos)
800#define TPI_ITFTTD0_ATB_IF1_bytecount_Pos 24U
801#define TPI_ITFTTD0_ATB_IF1_bytecount_Msk (0x3UL << TPI_ITFTTD0_ATB_IF1_bytecount_Pos)
803#define TPI_ITFTTD0_ATB_IF1_data2_Pos 16U
804#define TPI_ITFTTD0_ATB_IF1_data2_Msk (0xFFUL << TPI_ITFTTD0_ATB_IF1_data1_Pos)
806#define TPI_ITFTTD0_ATB_IF1_data1_Pos 8U
807#define TPI_ITFTTD0_ATB_IF1_data1_Msk (0xFFUL << TPI_ITFTTD0_ATB_IF1_data1_Pos)
809#define TPI_ITFTTD0_ATB_IF1_data0_Pos 0U
810#define TPI_ITFTTD0_ATB_IF1_data0_Msk (0xFFUL )
813#define TPI_ITATBCTR2_AFVALID2S_Pos 1U
814#define TPI_ITATBCTR2_AFVALID2S_Msk (0x1UL << TPI_ITATBCTR2_AFVALID2S_Pos)
816#define TPI_ITATBCTR2_AFVALID1S_Pos 1U
817#define TPI_ITATBCTR2_AFVALID1S_Msk (0x1UL << TPI_ITATBCTR2_AFVALID1S_Pos)
819#define TPI_ITATBCTR2_ATREADY2S_Pos 0U
820#define TPI_ITATBCTR2_ATREADY2S_Msk (0x1UL )
822#define TPI_ITATBCTR2_ATREADY1S_Pos 0U
823#define TPI_ITATBCTR2_ATREADY1S_Msk (0x1UL )
826#define TPI_ITFTTD1_ATB_IF2_ATVALID_Pos 29U
827#define TPI_ITFTTD1_ATB_IF2_ATVALID_Msk (0x3UL << TPI_ITFTTD1_ATB_IF2_ATVALID_Pos)
829#define TPI_ITFTTD1_ATB_IF2_bytecount_Pos 27U
830#define TPI_ITFTTD1_ATB_IF2_bytecount_Msk (0x3UL << TPI_ITFTTD1_ATB_IF2_bytecount_Pos)
832#define TPI_ITFTTD1_ATB_IF1_ATVALID_Pos 26U
833#define TPI_ITFTTD1_ATB_IF1_ATVALID_Msk (0x3UL << TPI_ITFTTD1_ATB_IF1_ATVALID_Pos)
835#define TPI_ITFTTD1_ATB_IF1_bytecount_Pos 24U
836#define TPI_ITFTTD1_ATB_IF1_bytecount_Msk (0x3UL << TPI_ITFTTD1_ATB_IF1_bytecount_Pos)
838#define TPI_ITFTTD1_ATB_IF2_data2_Pos 16U
839#define TPI_ITFTTD1_ATB_IF2_data2_Msk (0xFFUL << TPI_ITFTTD1_ATB_IF2_data1_Pos)
841#define TPI_ITFTTD1_ATB_IF2_data1_Pos 8U
842#define TPI_ITFTTD1_ATB_IF2_data1_Msk (0xFFUL << TPI_ITFTTD1_ATB_IF2_data1_Pos)
844#define TPI_ITFTTD1_ATB_IF2_data0_Pos 0U
845#define TPI_ITFTTD1_ATB_IF2_data0_Msk (0xFFUL )
848#define TPI_ITATBCTR0_AFVALID2S_Pos 1U
849#define TPI_ITATBCTR0_AFVALID2S_Msk (0x1UL << TPI_ITATBCTR0_AFVALID2S_Pos)
851#define TPI_ITATBCTR0_AFVALID1S_Pos 1U
852#define TPI_ITATBCTR0_AFVALID1S_Msk (0x1UL << TPI_ITATBCTR0_AFVALID1S_Pos)
854#define TPI_ITATBCTR0_ATREADY2S_Pos 0U
855#define TPI_ITATBCTR0_ATREADY2S_Msk (0x1UL )
857#define TPI_ITATBCTR0_ATREADY1S_Pos 0U
858#define TPI_ITATBCTR0_ATREADY1S_Msk (0x1UL )
861#define TPI_ITCTRL_Mode_Pos 0U
862#define TPI_ITCTRL_Mode_Msk (0x3UL )
865#define TPI_DEVID_NRZVALID_Pos 11U
866#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos)
868#define TPI_DEVID_MANCVALID_Pos 10U
869#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos)
871#define TPI_DEVID_PTINVALID_Pos 9U
872#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos)
874#define TPI_DEVID_FIFOSZ_Pos 6U
875#define TPI_DEVID_FIFOSZ_Msk (0x7UL << TPI_DEVID_FIFOSZ_Pos)
877#define TPI_DEVID_NrTraceInput_Pos 0U
878#define TPI_DEVID_NrTraceInput_Msk (0x3FUL )
881#define TPI_DEVTYPE_SubType_Pos 4U
882#define TPI_DEVTYPE_SubType_Msk (0xFUL )
884#define TPI_DEVTYPE_MajorType_Pos 0U
885#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos)
890#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
908 uint32_t RESERVED0[7U];
918#define MPU_TYPE_RALIASES 1U
921#define MPU_TYPE_IREGION_Pos 16U
922#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos)
924#define MPU_TYPE_DREGION_Pos 8U
925#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos)
927#define MPU_TYPE_SEPARATE_Pos 0U
928#define MPU_TYPE_SEPARATE_Msk (1UL )
931#define MPU_CTRL_PRIVDEFENA_Pos 2U
932#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos)
934#define MPU_CTRL_HFNMIENA_Pos 1U
935#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos)
937#define MPU_CTRL_ENABLE_Pos 0U
938#define MPU_CTRL_ENABLE_Msk (1UL )
941#define MPU_RNR_REGION_Pos 0U
942#define MPU_RNR_REGION_Msk (0xFFUL )
945#define MPU_RBAR_BASE_Pos 5U
946#define MPU_RBAR_BASE_Msk (0x7FFFFFFUL << MPU_RBAR_BASE_Pos)
948#define MPU_RBAR_SH_Pos 3U
949#define MPU_RBAR_SH_Msk (0x3UL << MPU_RBAR_SH_Pos)
951#define MPU_RBAR_AP_Pos 1U
952#define MPU_RBAR_AP_Msk (0x3UL << MPU_RBAR_AP_Pos)
954#define MPU_RBAR_XN_Pos 0U
955#define MPU_RBAR_XN_Msk (01UL )
958#define MPU_RLAR_LIMIT_Pos 5U
959#define MPU_RLAR_LIMIT_Msk (0x7FFFFFFUL << MPU_RLAR_LIMIT_Pos)
961#define MPU_RLAR_AttrIndx_Pos 1U
962#define MPU_RLAR_AttrIndx_Msk (0x7UL << MPU_RLAR_AttrIndx_Pos)
964#define MPU_RLAR_EN_Pos 0U
965#define MPU_RLAR_EN_Msk (1UL )
968#define MPU_MAIR0_Attr3_Pos 24U
969#define MPU_MAIR0_Attr3_Msk (0xFFUL << MPU_MAIR0_Attr3_Pos)
971#define MPU_MAIR0_Attr2_Pos 16U
972#define MPU_MAIR0_Attr2_Msk (0xFFUL << MPU_MAIR0_Attr2_Pos)
974#define MPU_MAIR0_Attr1_Pos 8U
975#define MPU_MAIR0_Attr1_Msk (0xFFUL << MPU_MAIR0_Attr1_Pos)
977#define MPU_MAIR0_Attr0_Pos 0U
978#define MPU_MAIR0_Attr0_Msk (0xFFUL )
981#define MPU_MAIR1_Attr7_Pos 24U
982#define MPU_MAIR1_Attr7_Msk (0xFFUL << MPU_MAIR1_Attr7_Pos)
984#define MPU_MAIR1_Attr6_Pos 16U
985#define MPU_MAIR1_Attr6_Msk (0xFFUL << MPU_MAIR1_Attr6_Pos)
987#define MPU_MAIR1_Attr5_Pos 8U
988#define MPU_MAIR1_Attr5_Msk (0xFFUL << MPU_MAIR1_Attr5_Pos)
990#define MPU_MAIR1_Attr4_Pos 0U
991#define MPU_MAIR1_Attr4_Msk (0xFFUL )
997#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
1010 __IOM uint32_t CTRL;
1012#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U)
1014 __IOM uint32_t RBAR;
1015 __IOM uint32_t RLAR;
1020#define SAU_CTRL_ALLNS_Pos 1U
1021#define SAU_CTRL_ALLNS_Msk (1UL << SAU_CTRL_ALLNS_Pos)
1023#define SAU_CTRL_ENABLE_Pos 0U
1024#define SAU_CTRL_ENABLE_Msk (1UL )
1027#define SAU_TYPE_SREGION_Pos 0U
1028#define SAU_TYPE_SREGION_Msk (0xFFUL )
1030#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U)
1032#define SAU_RNR_REGION_Pos 0U
1033#define SAU_RNR_REGION_Msk (0xFFUL )
1036#define SAU_RBAR_BADDR_Pos 5U
1037#define SAU_RBAR_BADDR_Msk (0x7FFFFFFUL << SAU_RBAR_BADDR_Pos)
1040#define SAU_RLAR_LADDR_Pos 5U
1041#define SAU_RLAR_LADDR_Msk (0x7FFFFFFUL << SAU_RLAR_LADDR_Pos)
1043#define SAU_RLAR_NSC_Pos 1U
1044#define SAU_RLAR_NSC_Msk (1UL << SAU_RLAR_NSC_Pos)
1046#define SAU_RLAR_ENABLE_Pos 0U
1047#define SAU_RLAR_ENABLE_Msk (1UL )
1068 __IOM uint32_t DHCSR;
1069 __OM uint32_t DCRSR;
1070 __IOM uint32_t DCRDR;
1071 __IOM uint32_t DEMCR;
1072 uint32_t RESERVED0[1U];
1073 __IOM uint32_t DAUTHCTRL;
1074 __IOM uint32_t DSCSR;
1078#define CoreDebug_DHCSR_DBGKEY_Pos 16U
1079#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos)
1081#define CoreDebug_DHCSR_S_RESTART_ST_Pos 26U
1082#define CoreDebug_DHCSR_S_RESTART_ST_Msk (1UL << CoreDebug_DHCSR_S_RESTART_ST_Pos)
1084#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U
1085#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos)
1087#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U
1088#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos)
1090#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U
1091#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos)
1093#define CoreDebug_DHCSR_S_SLEEP_Pos 18U
1094#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos)
1096#define CoreDebug_DHCSR_S_HALT_Pos 17U
1097#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos)
1099#define CoreDebug_DHCSR_S_REGRDY_Pos 16U
1100#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos)
1102#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U
1103#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos)
1105#define CoreDebug_DHCSR_C_STEP_Pos 2U
1106#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos)
1108#define CoreDebug_DHCSR_C_HALT_Pos 1U
1109#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos)
1111#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U
1112#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL )
1115#define CoreDebug_DCRSR_REGWnR_Pos 16U
1116#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos)
1118#define CoreDebug_DCRSR_REGSEL_Pos 0U
1119#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL )
1122#define CoreDebug_DEMCR_DWTENA_Pos 24U
1123#define CoreDebug_DEMCR_DWTENA_Msk (1UL << CoreDebug_DEMCR_DWTENA_Pos)
1125#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U
1126#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos)
1128#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U
1129#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL )
1132#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos 3U
1133#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos)
1135#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos 2U
1136#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Msk (1UL << CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos)
1138#define CoreDebug_DAUTHCTRL_INTSPIDEN_Pos 1U
1139#define CoreDebug_DAUTHCTRL_INTSPIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPIDEN_Pos)
1141#define CoreDebug_DAUTHCTRL_SPIDENSEL_Pos 0U
1142#define CoreDebug_DAUTHCTRL_SPIDENSEL_Msk (1UL )
1145#define CoreDebug_DSCSR_CDS_Pos 16U
1146#define CoreDebug_DSCSR_CDS_Msk (1UL << CoreDebug_DSCSR_CDS_Pos)
1148#define CoreDebug_DSCSR_SBRSEL_Pos 1U
1149#define CoreDebug_DSCSR_SBRSEL_Msk (1UL << CoreDebug_DSCSR_SBRSEL_Pos)
1151#define CoreDebug_DSCSR_SBRSELEN_Pos 0U
1152#define CoreDebug_DSCSR_SBRSELEN_Msk (1UL )
1169 __IOM uint32_t DHCSR;
1170 __OM uint32_t DCRSR;
1171 __IOM uint32_t DCRDR;
1172 __IOM uint32_t DEMCR;
1173 uint32_t RESERVED0[1U];
1174 __IOM uint32_t DAUTHCTRL;
1175 __IOM uint32_t DSCSR;
1179#define DCB_DHCSR_DBGKEY_Pos 16U
1180#define DCB_DHCSR_DBGKEY_Msk (0xFFFFUL << DCB_DHCSR_DBGKEY_Pos)
1182#define DCB_DHCSR_S_RESTART_ST_Pos 26U
1183#define DCB_DHCSR_S_RESTART_ST_Msk (0x1UL << DCB_DHCSR_S_RESTART_ST_Pos)
1185#define DCB_DHCSR_S_RESET_ST_Pos 25U
1186#define DCB_DHCSR_S_RESET_ST_Msk (0x1UL << DCB_DHCSR_S_RESET_ST_Pos)
1188#define DCB_DHCSR_S_RETIRE_ST_Pos 24U
1189#define DCB_DHCSR_S_RETIRE_ST_Msk (0x1UL << DCB_DHCSR_S_RETIRE_ST_Pos)
1191#define DCB_DHCSR_S_SDE_Pos 20U
1192#define DCB_DHCSR_S_SDE_Msk (0x1UL << DCB_DHCSR_S_SDE_Pos)
1194#define DCB_DHCSR_S_LOCKUP_Pos 19U
1195#define DCB_DHCSR_S_LOCKUP_Msk (0x1UL << DCB_DHCSR_S_LOCKUP_Pos)
1197#define DCB_DHCSR_S_SLEEP_Pos 18U
1198#define DCB_DHCSR_S_SLEEP_Msk (0x1UL << DCB_DHCSR_S_SLEEP_Pos)
1200#define DCB_DHCSR_S_HALT_Pos 17U
1201#define DCB_DHCSR_S_HALT_Msk (0x1UL << DCB_DHCSR_S_HALT_Pos)
1203#define DCB_DHCSR_S_REGRDY_Pos 16U
1204#define DCB_DHCSR_S_REGRDY_Msk (0x1UL << DCB_DHCSR_S_REGRDY_Pos)
1206#define DCB_DHCSR_C_MASKINTS_Pos 3U
1207#define DCB_DHCSR_C_MASKINTS_Msk (0x1UL << DCB_DHCSR_C_MASKINTS_Pos)
1209#define DCB_DHCSR_C_STEP_Pos 2U
1210#define DCB_DHCSR_C_STEP_Msk (0x1UL << DCB_DHCSR_C_STEP_Pos)
1212#define DCB_DHCSR_C_HALT_Pos 1U
1213#define DCB_DHCSR_C_HALT_Msk (0x1UL << DCB_DHCSR_C_HALT_Pos)
1215#define DCB_DHCSR_C_DEBUGEN_Pos 0U
1216#define DCB_DHCSR_C_DEBUGEN_Msk (0x1UL )
1219#define DCB_DCRSR_REGWnR_Pos 16U
1220#define DCB_DCRSR_REGWnR_Msk (0x1UL << DCB_DCRSR_REGWnR_Pos)
1222#define DCB_DCRSR_REGSEL_Pos 0U
1223#define DCB_DCRSR_REGSEL_Msk (0x7FUL )
1226#define DCB_DCRDR_DBGTMP_Pos 0U
1227#define DCB_DCRDR_DBGTMP_Msk (0xFFFFFFFFUL )
1230#define DCB_DEMCR_TRCENA_Pos 24U
1231#define DCB_DEMCR_TRCENA_Msk (0x1UL << DCB_DEMCR_TRCENA_Pos)
1233#define DCB_DEMCR_VC_HARDERR_Pos 10U
1234#define DCB_DEMCR_VC_HARDERR_Msk (0x1UL << DCB_DEMCR_VC_HARDERR_Pos)
1236#define DCB_DEMCR_VC_CORERESET_Pos 0U
1237#define DCB_DEMCR_VC_CORERESET_Msk (0x1UL )
1240#define DCB_DAUTHCTRL_INTSPNIDEN_Pos 3U
1241#define DCB_DAUTHCTRL_INTSPNIDEN_Msk (0x1UL << DCB_DAUTHCTRL_INTSPNIDEN_Pos)
1243#define DCB_DAUTHCTRL_SPNIDENSEL_Pos 2U
1244#define DCB_DAUTHCTRL_SPNIDENSEL_Msk (0x1UL << DCB_DAUTHCTRL_SPNIDENSEL_Pos)
1246#define DCB_DAUTHCTRL_INTSPIDEN_Pos 1U
1247#define DCB_DAUTHCTRL_INTSPIDEN_Msk (0x1UL << DCB_DAUTHCTRL_INTSPIDEN_Pos)
1249#define DCB_DAUTHCTRL_SPIDENSEL_Pos 0U
1250#define DCB_DAUTHCTRL_SPIDENSEL_Msk (0x1UL )
1253#define DCB_DSCSR_CDSKEY_Pos 17U
1254#define DCB_DSCSR_CDSKEY_Msk (0x1UL << DCB_DSCSR_CDSKEY_Pos)
1256#define DCB_DSCSR_CDS_Pos 16U
1257#define DCB_DSCSR_CDS_Msk (0x1UL << DCB_DSCSR_CDS_Pos)
1259#define DCB_DSCSR_SBRSEL_Pos 1U
1260#define DCB_DSCSR_SBRSEL_Msk (0x1UL << DCB_DSCSR_SBRSEL_Pos)
1262#define DCB_DSCSR_SBRSELEN_Pos 0U
1263#define DCB_DSCSR_SBRSELEN_Msk (0x1UL )
1283 __IM uint32_t DAUTHSTATUS;
1284 __IM uint32_t DDEVARCH;
1285 __IM uint32_t DDEVTYPE;
1289#define DIB_DLAR_KEY_Pos 0U
1290#define DIB_DLAR_KEY_Msk (0xFFFFFFFFUL )
1293#define DIB_DLSR_nTT_Pos 2U
1294#define DIB_DLSR_nTT_Msk (0x1UL << DIB_DLSR_nTT_Pos )
1296#define DIB_DLSR_SLK_Pos 1U
1297#define DIB_DLSR_SLK_Msk (0x1UL << DIB_DLSR_SLK_Pos )
1299#define DIB_DLSR_SLI_Pos 0U
1300#define DIB_DLSR_SLI_Msk (0x1UL )
1303#define DIB_DAUTHSTATUS_SNID_Pos 6U
1304#define DIB_DAUTHSTATUS_SNID_Msk (0x3UL << DIB_DAUTHSTATUS_SNID_Pos )
1306#define DIB_DAUTHSTATUS_SID_Pos 4U
1307#define DIB_DAUTHSTATUS_SID_Msk (0x3UL << DIB_DAUTHSTATUS_SID_Pos )
1309#define DIB_DAUTHSTATUS_NSNID_Pos 2U
1310#define DIB_DAUTHSTATUS_NSNID_Msk (0x3UL << DIB_DAUTHSTATUS_NSNID_Pos )
1312#define DIB_DAUTHSTATUS_NSID_Pos 0U
1313#define DIB_DAUTHSTATUS_NSID_Msk (0x3UL )
1316#define DIB_DDEVARCH_ARCHITECT_Pos 21U
1317#define DIB_DDEVARCH_ARCHITECT_Msk (0x7FFUL << DIB_DDEVARCH_ARCHITECT_Pos )
1319#define DIB_DDEVARCH_PRESENT_Pos 20U
1320#define DIB_DDEVARCH_PRESENT_Msk (0x1FUL << DIB_DDEVARCH_PRESENT_Pos )
1322#define DIB_DDEVARCH_REVISION_Pos 16U
1323#define DIB_DDEVARCH_REVISION_Msk (0xFUL << DIB_DDEVARCH_REVISION_Pos )
1325#define DIB_DDEVARCH_ARCHVER_Pos 12U
1326#define DIB_DDEVARCH_ARCHVER_Msk (0xFUL << DIB_DDEVARCH_ARCHVER_Pos )
1328#define DIB_DDEVARCH_ARCHPART_Pos 0U
1329#define DIB_DDEVARCH_ARCHPART_Msk (0xFFFUL )
1332#define DIB_DDEVTYPE_SUB_Pos 4U
1333#define DIB_DDEVTYPE_SUB_Msk (0xFUL << DIB_DDEVTYPE_SUB_Pos )
1335#define DIB_DDEVTYPE_MAJOR_Pos 0U
1336#define DIB_DDEVTYPE_MAJOR_Msk (0xFUL )
1355#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk)
1363#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos)
1376 #define SCS_BASE (0xE000E000UL)
1377 #define DWT_BASE (0xE0001000UL)
1378 #define TPI_BASE (0xE0040000UL)
1379 #define CoreDebug_BASE (0xE000EDF0UL)
1380 #define DCB_BASE (0xE000EDF0UL)
1381 #define DIB_BASE (0xE000EFB0UL)
1382 #define SysTick_BASE (SCS_BASE + 0x0010UL)
1383 #define NVIC_BASE (SCS_BASE + 0x0100UL)
1384 #define SCB_BASE (SCS_BASE + 0x0D00UL)
1387 #define SCB ((SCB_Type *) SCB_BASE )
1388 #define SysTick ((SysTick_Type *) SysTick_BASE )
1389 #define NVIC ((NVIC_Type *) NVIC_BASE )
1390 #define DWT ((DWT_Type *) DWT_BASE )
1391 #define TPI ((TPI_Type *) TPI_BASE )
1392 #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE )
1393 #define DCB ((DCB_Type *) DCB_BASE )
1394 #define DIB ((DIB_Type *) DIB_BASE )
1396 #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
1397 #define MPU_BASE (SCS_BASE + 0x0D90UL)
1398 #define MPU ((MPU_Type *) MPU_BASE )
1401 #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
1402 #define SAU_BASE (SCS_BASE + 0x0DD0UL)
1403 #define SAU ((SAU_Type *) SAU_BASE )
1406#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
1407 #define SCS_BASE_NS (0xE002E000UL)
1408 #define CoreDebug_BASE_NS (0xE002EDF0UL)
1409 #define DCB_BASE_NS (0xE002EDF0UL)
1410 #define DIB_BASE_NS (0xE002EFB0UL)
1411 #define SysTick_BASE_NS (SCS_BASE_NS + 0x0010UL)
1412 #define NVIC_BASE_NS (SCS_BASE_NS + 0x0100UL)
1413 #define SCB_BASE_NS (SCS_BASE_NS + 0x0D00UL)
1415 #define SCB_NS ((SCB_Type *) SCB_BASE_NS )
1416 #define SysTick_NS ((SysTick_Type *) SysTick_BASE_NS )
1417 #define NVIC_NS ((NVIC_Type *) NVIC_BASE_NS )
1418 #define CoreDebug_NS ((CoreDebug_Type *) CoreDebug_BASE_NS)
1419 #define DCB_NS ((DCB_Type *) DCB_BASE_NS )
1420 #define DIB_NS ((DIB_Type *) DIB_BASE_NS )
1422 #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
1423 #define MPU_BASE_NS (SCS_BASE_NS + 0x0D90UL)
1424 #define MPU_NS ((MPU_Type *) MPU_BASE_NS )
1454#ifdef CMSIS_NVIC_VIRTUAL
1455 #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE
1456 #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h"
1458 #include CMSIS_NVIC_VIRTUAL_HEADER_FILE
1462 #define NVIC_EnableIRQ __NVIC_EnableIRQ
1463 #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ
1464 #define NVIC_DisableIRQ __NVIC_DisableIRQ
1465 #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ
1466 #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ
1467 #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ
1468 #define NVIC_GetActive __NVIC_GetActive
1469 #define NVIC_SetPriority __NVIC_SetPriority
1470 #define NVIC_GetPriority __NVIC_GetPriority
1471 #define NVIC_SystemReset __NVIC_SystemReset
1474#ifdef CMSIS_VECTAB_VIRTUAL
1475 #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE
1476 #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h"
1478 #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE
1480 #define NVIC_SetVector __NVIC_SetVector
1481 #define NVIC_GetVector __NVIC_GetVector
1484#define NVIC_USER_IRQ_OFFSET 16
1490#define FNC_RETURN (0xFEFFFFFFUL)
1493#define EXC_RETURN_PREFIX (0xFF000000UL)
1494#define EXC_RETURN_S (0x00000040UL)
1495#define EXC_RETURN_DCRS (0x00000020UL)
1496#define EXC_RETURN_FTYPE (0x00000010UL)
1497#define EXC_RETURN_MODE (0x00000008UL)
1498#define EXC_RETURN_SPSEL (0x00000004UL)
1499#define EXC_RETURN_ES (0x00000001UL)
1502#if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
1503#define EXC_INTEGRITY_SIGNATURE (0xFEFA125AUL)
1505#define EXC_INTEGRITY_SIGNATURE (0xFEFA125BUL)
1511#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL)
1512#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) )
1513#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) )
1515#define __NVIC_SetPriorityGrouping(X) (void)(X)
1516#define __NVIC_GetPriorityGrouping() (0U)
1526 if ((int32_t)(IRQn) >= 0)
1529 NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
1545 if ((int32_t)(IRQn) >= 0)
1547 return((uint32_t)(((
NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
1564 if ((int32_t)(IRQn) >= 0)
1566 NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
1583 if ((int32_t)(IRQn) >= 0)
1585 return((uint32_t)(((
NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
1602 if ((int32_t)(IRQn) >= 0)
1604 NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
1617 if ((int32_t)(IRQn) >= 0)
1619 NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
1634 if ((int32_t)(IRQn) >= 0)
1636 return((uint32_t)(((
NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
1645#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
1656 if ((int32_t)(IRQn) >= 0)
1658 return((uint32_t)(((
NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
1677 if ((int32_t)(IRQn) >= 0)
1679 NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] |= ((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)));
1680 return((uint32_t)(((
NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
1699 if ((int32_t)(IRQn) >= 0)
1701 NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] &= ~((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)));
1702 return((uint32_t)(((
NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
1723 if ((int32_t)(IRQn) >= 0)
1748 if ((int32_t)(IRQn) >= 0)
1772 uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL);
1773 uint32_t PreemptPriorityBits;
1774 uint32_t SubPriorityBits;
1777 SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(
__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(
__NVIC_PRIO_BITS));
1780 ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) |
1781 ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL)))
1799 uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL);
1800 uint32_t PreemptPriorityBits;
1801 uint32_t SubPriorityBits;
1804 SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(
__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(
__NVIC_PRIO_BITS));
1806 *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL);
1807 *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL);
1823#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U)
1824 uint32_t *vectors = (uint32_t *)
SCB->VTOR;
1826 uint32_t *vectors = (uint32_t *)0x0U;
1843#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U)
1844 uint32_t *vectors = (uint32_t *)
SCB->VTOR;
1846 uint32_t *vectors = (uint32_t *)0x0U;
1870#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
1879 if ((int32_t)(IRQn) >= 0)
1881 NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
1896 if ((int32_t)(IRQn) >= 0)
1898 return((uint32_t)(((NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
1915 if ((int32_t)(IRQn) >= 0)
1917 NVIC_NS->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
1932 if ((int32_t)(IRQn) >= 0)
1934 return((uint32_t)(((NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
1951 if ((int32_t)(IRQn) >= 0)
1953 NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
1966 if ((int32_t)(IRQn) >= 0)
1968 NVIC_NS->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
1983 if ((int32_t)(IRQn) >= 0)
1985 return((uint32_t)(((NVIC_NS->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2005 if ((int32_t)(IRQn) >= 0)
2029 if ((int32_t)(IRQn) >= 0)
2044#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
2084#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
2092 SAU->CTRL |= (SAU_CTRL_ENABLE_Msk);
2103 SAU->CTRL &= ~(SAU_CTRL_ENABLE_Msk);
2144 return (
DCB->DAUTHCTRL);
2148#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
2158 DCB_NS->DAUTHCTRL =
value;
2171 return (DCB_NS->DAUTHCTRL);
2196 return (
DIB->DAUTHSTATUS);
2200#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
2208 return (DIB_NS->DAUTHSTATUS);
2225#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U)
2245 SysTick->LOAD = (uint32_t)(ticks - 1UL);
2254#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
2274 SysTick_NS->LOAD = (uint32_t)(ticks - 1UL);
2276 SysTick_NS->VAL = 0UL;
#define __COMPILER_BARRIER()
CMSIS compiler generic header file.
CMSIS Core(M) Version definitions.
#define SysTick_CTRL_ENABLE_Msk
SysTick CTRL: ENABLE Mask.
#define DCB
DCB configuration struct.
#define SysTick_LOAD_RELOAD_Msk
SysTick LOAD: RELOAD 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 DIB
DIB configuration struct.
#define SCB_AIRCR_SYSRESETREQ_Msk
SCB AIRCR: SYSRESETREQ Mask.
#define NVIC
NVIC configuration struct.
#define SysTick
SysTick configuration struct.
#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 uint32_t DIB_GetAuthStatus(void)
Get Debug Authentication Status Register.
__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 void DCB_SetAuthCtrl(uint32_t value)
Set Debug Authentication Control Register.
__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.
__STATIC_INLINE uint32_t DCB_GetAuthCtrl(void)
Get Debug Authentication Control Register.
__IOM uint32_t CLAIMCLR
Offset: 0xFA4 (R/W) Claim tag clear.
uint32_t Z
bit: 30 Zero condition code flag
uint32_t Z
bit: 30 Zero condition code flag
uint32_t _reserved1
bit: 2..31 Reserved
uint32_t _reserved0
bit: 9..23 Reserved
uint32_t N
bit: 31 Negative condition code flag
uint32_t C
bit: 29 Carry condition code flag
__IM uint32_t ITFTTD0
Offset: 0xEEC (R/ ) Integration Test FIFO Test Data 0 Register.
__IM uint32_t TRIGGER
Offset: 0xEE8 (R/ ) TRIGGER Register.
uint32_t T
bit: 24 Thumb bit (read 0)
uint32_t _reserved1
bit: 25..27 Reserved
uint32_t SPSEL
bit: 1 Stack-pointer select
uint32_t C
bit: 29 Carry condition code flag
uint32_t N
bit: 31 Negative condition code flag
__IOM uint32_t MAIR0
Offset: 0x030 (R/W) MPU Memory Attribute Indirection Register 0.
__IOM uint32_t ITCTRL
Offset: 0xF00 (R/W) Integration Mode Control.
__IM uint32_t ITATBCTR0
Offset: 0xEF8 (R/ ) Integration Test ATB Control Register 0.
__IM uint32_t ITFTTD1
Offset: 0xEFC (R/ ) Integration Test FIFO Test Data 1 Register.
uint32_t V
bit: 28 Overflow condition code flag
__IM uint32_t DEVID
Offset: 0xFC8 (R/ ) Device Configuration Register.
uint32_t _reserved0
bit: 0..27 Reserved
uint32_t V
bit: 28 Overflow condition code flag
uint32_t nPRIV
bit: 0 Execution privilege in Thread mode
__IOM uint32_t CLAIMSET
Offset: 0xFA0 (R/W) Claim tag set.
uint32_t _reserved0
bit: 9..31 Reserved
__IOM uint32_t MAIR1
Offset: 0x034 (R/W) MPU Memory Attribute Indirection Register 1.
__IOM uint32_t ITATBCTR2
Offset: 0xEF0 (R/W) Integration Test ATB Control Register 2.
__IM uint32_t DEVTYPE
Offset: 0xFCC (R/ ) Device Type 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 Debug Control Block Registers (DCB).
Structure type to access the Debug Identification Block Registers (DIB).
Structure type to access the Data Watchpoint and Trace Register (DWT).
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 Timer (SysTick).
Structure type to access the Trace Port Interface Register (TPI).
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).