123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529 |
- /**
- * \file IfxStm_regdef.h
- * \brief
- * \copyright Copyright (c) 2014 Infineon Technologies AG. All rights reserved.
- *
- * Version: TC23XADAS_UM_V1.0P1.R0
- * Specification: tc23xadas_um_sfrs_MCSFR.xml (Revision: UM_V1.0p1)
- * MAY BE CHANGED BY USER [yes/no]: No
- *
- * IMPORTANT NOTICE
- *
- * Infineon Technologies AG (Infineon) is supplying this file for use
- * exclusively with Infineon's microcontroller products. This file can be freely
- * distributed within development tools that are supporting such microcontroller
- * products.
- *
- * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
- * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
- * INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL,
- * OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
- *
- * \defgroup IfxLld_Stm Stm
- * \ingroup IfxLld
- *
- * \defgroup IfxLld_Stm_Bitfields Bitfields
- * \ingroup IfxLld_Stm
- *
- * \defgroup IfxLld_Stm_union Union
- * \ingroup IfxLld_Stm
- *
- * \defgroup IfxLld_Stm_struct Struct
- * \ingroup IfxLld_Stm
- *
- */
- #ifndef IFXSTM_REGDEF_H
- #define IFXSTM_REGDEF_H 1
- /******************************************************************************/
- #include "Ifx_TypesReg.h"
- /******************************************************************************/
- /** \addtogroup IfxLld_Stm_Bitfields
- * \{ */
- /** \\brief Access Enable Register 0 */
- typedef struct _Ifx_STM_ACCEN0_Bits
- {
- unsigned int EN0:1; /**< \brief [0:0] Access Enable for Master TAG ID 0 (rw) */
- unsigned int EN1:1; /**< \brief [1:1] Access Enable for Master TAG ID 1 (rw) */
- unsigned int EN2:1; /**< \brief [2:2] Access Enable for Master TAG ID 2 (rw) */
- unsigned int EN3:1; /**< \brief [3:3] Access Enable for Master TAG ID 3 (rw) */
- unsigned int EN4:1; /**< \brief [4:4] Access Enable for Master TAG ID 4 (rw) */
- unsigned int EN5:1; /**< \brief [5:5] Access Enable for Master TAG ID 5 (rw) */
- unsigned int EN6:1; /**< \brief [6:6] Access Enable for Master TAG ID 6 (rw) */
- unsigned int EN7:1; /**< \brief [7:7] Access Enable for Master TAG ID 7 (rw) */
- unsigned int EN8:1; /**< \brief [8:8] Access Enable for Master TAG ID 8 (rw) */
- unsigned int EN9:1; /**< \brief [9:9] Access Enable for Master TAG ID 9 (rw) */
- unsigned int EN10:1; /**< \brief [10:10] Access Enable for Master TAG ID 10 (rw) */
- unsigned int EN11:1; /**< \brief [11:11] Access Enable for Master TAG ID 11 (rw) */
- unsigned int EN12:1; /**< \brief [12:12] Access Enable for Master TAG ID 12 (rw) */
- unsigned int EN13:1; /**< \brief [13:13] Access Enable for Master TAG ID 13 (rw) */
- unsigned int EN14:1; /**< \brief [14:14] Access Enable for Master TAG ID 14 (rw) */
- unsigned int EN15:1; /**< \brief [15:15] Access Enable for Master TAG ID 15 (rw) */
- unsigned int EN16:1; /**< \brief [16:16] Access Enable for Master TAG ID 16 (rw) */
- unsigned int EN17:1; /**< \brief [17:17] Access Enable for Master TAG ID 17 (rw) */
- unsigned int EN18:1; /**< \brief [18:18] Access Enable for Master TAG ID 18 (rw) */
- unsigned int EN19:1; /**< \brief [19:19] Access Enable for Master TAG ID 19 (rw) */
- unsigned int EN20:1; /**< \brief [20:20] Access Enable for Master TAG ID 20 (rw) */
- unsigned int EN21:1; /**< \brief [21:21] Access Enable for Master TAG ID 21 (rw) */
- unsigned int EN22:1; /**< \brief [22:22] Access Enable for Master TAG ID 22 (rw) */
- unsigned int EN23:1; /**< \brief [23:23] Access Enable for Master TAG ID 23 (rw) */
- unsigned int EN24:1; /**< \brief [24:24] Access Enable for Master TAG ID 24 (rw) */
- unsigned int EN25:1; /**< \brief [25:25] Access Enable for Master TAG ID 25 (rw) */
- unsigned int EN26:1; /**< \brief [26:26] Access Enable for Master TAG ID 26 (rw) */
- unsigned int EN27:1; /**< \brief [27:27] Access Enable for Master TAG ID 27 (rw) */
- unsigned int EN28:1; /**< \brief [28:28] Access Enable for Master TAG ID 28 (rw) */
- unsigned int EN29:1; /**< \brief [29:29] Access Enable for Master TAG ID 29 (rw) */
- unsigned int EN30:1; /**< \brief [30:30] Access Enable for Master TAG ID 30 (rw) */
- unsigned int EN31:1; /**< \brief [31:31] Access Enable for Master TAG ID 31 (rw) */
- } Ifx_STM_ACCEN0_Bits;
- /** \\brief Access Enable Register 1 */
- typedef struct _Ifx_STM_ACCEN1_Bits
- {
- unsigned int reserved_0:32; /**< \brief \internal Reserved */
- } Ifx_STM_ACCEN1_Bits;
- /** \\brief Timer Capture Register */
- typedef struct _Ifx_STM_CAP_Bits
- {
- unsigned int STMCAP63_32:32; /**< \brief [31:0] Captured System Timer Bits [63:32] (rh) */
- } Ifx_STM_CAP_Bits;
- /** \\brief Timer Capture Register Second View */
- typedef struct _Ifx_STM_CAPSV_Bits
- {
- unsigned int STMCAP63_32:32; /**< \brief [31:0] Captured System Timer Bits [63:32] (rh) */
- } Ifx_STM_CAPSV_Bits;
- /** \\brief Clock Control Register */
- typedef struct _Ifx_STM_CLC_Bits
- {
- unsigned int DISR:1; /**< \brief [0:0] Module Disable Request Bit (rw) */
- unsigned int DISS:1; /**< \brief [1:1] Module Disable Status Bit (r) */
- unsigned int reserved_2:1; /**< \brief \internal Reserved */
- unsigned int EDIS:1; /**< \brief [3:3] Sleep Mode Enable Control (rw) */
- unsigned int reserved_4:28; /**< \brief \internal Reserved */
- } Ifx_STM_CLC_Bits;
- /** \\brief Compare Match Control Register */
- typedef struct _Ifx_STM_CMCON_Bits
- {
- unsigned int MSIZE0:5; /**< \brief [4:0] Compare Register Size for CMP0 (rw) */
- unsigned int reserved_5:3; /**< \brief \internal Reserved */
- unsigned int MSTART0:5; /**< \brief [12:8] Start Bit Location for CMP0 (rw) */
- unsigned int reserved_13:3; /**< \brief \internal Reserved */
- unsigned int MSIZE1:5; /**< \brief [20:16] Compare Register Size for CMP1 (rw) */
- unsigned int reserved_21:3; /**< \brief \internal Reserved */
- unsigned int MSTART1:5; /**< \brief [28:24] Start Bit Location for CMP1 (rw) */
- unsigned int reserved_29:3; /**< \brief \internal Reserved */
- } Ifx_STM_CMCON_Bits;
- /** \\brief Compare Register */
- typedef struct _Ifx_STM_CMP_Bits
- {
- unsigned int CMPVAL:32; /**< \brief [31:0] Compare Value of Compare Register x (rw) */
- } Ifx_STM_CMP_Bits;
- /** \\brief Interrupt Control Register */
- typedef struct _Ifx_STM_ICR_Bits
- {
- unsigned int CMP0EN:1; /**< \brief [0:0] Compare Register CMP0 Interrupt Enable Control (rw) */
- unsigned int CMP0IR:1; /**< \brief [1:1] Compare Register CMP0 Interrupt Request Flag (rh) */
- unsigned int CMP0OS:1; /**< \brief [2:2] Compare Register CMP0 Interrupt Output Selection (rw) */
- unsigned int reserved_3:1; /**< \brief \internal Reserved */
- unsigned int CMP1EN:1; /**< \brief [4:4] Compare Register CMP1 Interrupt Enable Control (rw) */
- unsigned int CMP1IR:1; /**< \brief [5:5] Compare Register CMP1 Interrupt Request Flag (rh) */
- unsigned int CMP1OS:1; /**< \brief [6:6] Compare Register CMP1 Interrupt Output Selection (rw) */
- unsigned int reserved_7:25; /**< \brief \internal Reserved */
- } Ifx_STM_ICR_Bits;
- /** \\brief Module Identification Register */
- typedef struct _Ifx_STM_ID_Bits
- {
- unsigned int MODREV:8; /**< \brief [7:0] Module Revision Number (r) */
- unsigned int MODTYPE:8; /**< \brief [15:8] Module Type (r) */
- unsigned int MODNUMBER:16; /**< \brief [31:16] Module Number Value (r) */
- } Ifx_STM_ID_Bits;
- /** \\brief Interrupt Set/Clear Register */
- typedef struct _Ifx_STM_ISCR_Bits
- {
- unsigned int CMP0IRR:1; /**< \brief [0:0] Reset Compare Register CMP0 Interrupt Flag (w) */
- unsigned int CMP0IRS:1; /**< \brief [1:1] Set Compare Register CMP0 Interrupt Flag (w) */
- unsigned int CMP1IRR:1; /**< \brief [2:2] Reset Compare Register CMP1 Interrupt Flag (w) */
- unsigned int CMP1IRS:1; /**< \brief [3:3] Set Compare Register CMP1 Interrupt Flag (w) */
- unsigned int reserved_4:28; /**< \brief \internal Reserved */
- } Ifx_STM_ISCR_Bits;
- /** \\brief Kernel Reset Register 0 */
- typedef struct _Ifx_STM_KRST0_Bits
- {
- unsigned int RST:1; /**< \brief [0:0] Kernel Reset (rwh) */
- unsigned int RSTSTAT:1; /**< \brief [1:1] Kernel Reset Status (rw) */
- unsigned int reserved_2:30; /**< \brief \internal Reserved */
- } Ifx_STM_KRST0_Bits;
- /** \\brief Kernel Reset Register 1 */
- typedef struct _Ifx_STM_KRST1_Bits
- {
- unsigned int RST:1; /**< \brief [0:0] Kernel Reset (rwh) */
- unsigned int reserved_1:31; /**< \brief \internal Reserved */
- } Ifx_STM_KRST1_Bits;
- /** \\brief Kernel Reset Status Clear Register */
- typedef struct _Ifx_STM_KRSTCLR_Bits
- {
- unsigned int CLR:1; /**< \brief [0:0] Kernel Reset Status Clear (w) */
- unsigned int reserved_1:31; /**< \brief \internal Reserved */
- } Ifx_STM_KRSTCLR_Bits;
- /** \\brief OCDS Control and Status */
- typedef struct _Ifx_STM_OCS_Bits
- {
- unsigned int reserved_0:24; /**< \brief \internal Reserved */
- unsigned int SUS:4; /**< \brief [27:24] OCDS Suspend Control (rw) */
- unsigned int SUS_P:1; /**< \brief [28:28] SUS Write Protection (w) */
- unsigned int SUSSTA:1; /**< \brief [29:29] Suspend State (rh) */
- unsigned int reserved_30:2; /**< \brief \internal Reserved */
- } Ifx_STM_OCS_Bits;
- /** \\brief Timer Register 0 */
- typedef struct _Ifx_STM_TIM0_Bits
- {
- unsigned int STM31_0:32; /**< \brief [31:0] System Timer Bits [31:0] (r) */
- } Ifx_STM_TIM0_Bits;
- /** \\brief Timer Register 0 Second View */
- typedef struct _Ifx_STM_TIM0SV_Bits
- {
- unsigned int STM31_0:32; /**< \brief [31:0] System Timer Bits [31:0] (r) */
- } Ifx_STM_TIM0SV_Bits;
- /** \\brief Timer Register 1 */
- typedef struct _Ifx_STM_TIM1_Bits
- {
- unsigned int STM35_4:32; /**< \brief [31:0] System Timer Bits [35:4] (r) */
- } Ifx_STM_TIM1_Bits;
- /** \\brief Timer Register 2 */
- typedef struct _Ifx_STM_TIM2_Bits
- {
- unsigned int STM39_8:32; /**< \brief [31:0] System Timer Bits [39:8] (r) */
- } Ifx_STM_TIM2_Bits;
- /** \\brief Timer Register 3 */
- typedef struct _Ifx_STM_TIM3_Bits
- {
- unsigned int STM43_12:32; /**< \brief [31:0] System Timer Bits [43:12] (r) */
- } Ifx_STM_TIM3_Bits;
- /** \\brief Timer Register 4 */
- typedef struct _Ifx_STM_TIM4_Bits
- {
- unsigned int STM47_16:32; /**< \brief [31:0] System Timer Bits [47:16] (r) */
- } Ifx_STM_TIM4_Bits;
- /** \\brief Timer Register 5 */
- typedef struct _Ifx_STM_TIM5_Bits
- {
- unsigned int STM51_20:32; /**< \brief [31:0] System Timer Bits [51:20] (r) */
- } Ifx_STM_TIM5_Bits;
- /** \\brief Timer Register 6 */
- typedef struct _Ifx_STM_TIM6_Bits
- {
- unsigned int STM63_32:32; /**< \brief [31:0] System Timer Bits [63:32] (r) */
- } Ifx_STM_TIM6_Bits;
- /** \} */
- /******************************************************************************/
- /******************************************************************************/
- /** \addtogroup IfxLld_Stm_union
- * \{ */
- /** \\brief Access Enable Register 0 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_ACCEN0_Bits B;
- } Ifx_STM_ACCEN0;
- /** \\brief Access Enable Register 1 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_ACCEN1_Bits B;
- } Ifx_STM_ACCEN1;
- /** \\brief Timer Capture Register */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_CAP_Bits B;
- } Ifx_STM_CAP;
- /** \\brief Timer Capture Register Second View */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_CAPSV_Bits B;
- } Ifx_STM_CAPSV;
- /** \\brief Clock Control Register */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_CLC_Bits B;
- } Ifx_STM_CLC;
- /** \\brief Compare Match Control Register */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_CMCON_Bits B;
- } Ifx_STM_CMCON;
- /** \\brief Compare Register */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_CMP_Bits B;
- } Ifx_STM_CMP;
- /** \\brief Interrupt Control Register */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_ICR_Bits B;
- } Ifx_STM_ICR;
- /** \\brief Module Identification Register */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_ID_Bits B;
- } Ifx_STM_ID;
- /** \\brief Interrupt Set/Clear Register */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_ISCR_Bits B;
- } Ifx_STM_ISCR;
- /** \\brief Kernel Reset Register 0 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_KRST0_Bits B;
- } Ifx_STM_KRST0;
- /** \\brief Kernel Reset Register 1 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_KRST1_Bits B;
- } Ifx_STM_KRST1;
- /** \\brief Kernel Reset Status Clear Register */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_KRSTCLR_Bits B;
- } Ifx_STM_KRSTCLR;
- /** \\brief OCDS Control and Status */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_OCS_Bits B;
- } Ifx_STM_OCS;
- /** \\brief Timer Register 0 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_TIM0_Bits B;
- } Ifx_STM_TIM0;
- /** \\brief Timer Register 0 Second View */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_TIM0SV_Bits B;
- } Ifx_STM_TIM0SV;
- /** \\brief Timer Register 1 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_TIM1_Bits B;
- } Ifx_STM_TIM1;
- /** \\brief Timer Register 2 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_TIM2_Bits B;
- } Ifx_STM_TIM2;
- /** \\brief Timer Register 3 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_TIM3_Bits B;
- } Ifx_STM_TIM3;
- /** \\brief Timer Register 4 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_TIM4_Bits B;
- } Ifx_STM_TIM4;
- /** \\brief Timer Register 5 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_TIM5_Bits B;
- } Ifx_STM_TIM5;
- /** \\brief Timer Register 6 */
- typedef union
- {
- /** \brief Unsigned access */
- unsigned int U;
- /** \brief Signed access */
- signed int I;
- /** \brief Bitfield access */
- Ifx_STM_TIM6_Bits B;
- } Ifx_STM_TIM6;
- /** \} */
- /******************************************************************************/
- /******************************************************************************/
- /** \addtogroup IfxLld_Stm_struct
- * \{ */
- /******************************************************************************/
- /** \name Object L0
- * \{ */
- /** \\brief STM object */
- typedef volatile struct _Ifx_STM
- {
- Ifx_STM_CLC CLC; /**< \brief 0, Clock Control Register */
- unsigned char reserved_4[4]; /**< \brief 4, \internal Reserved */
- Ifx_STM_ID ID; /**< \brief 8, Module Identification Register */
- unsigned char reserved_C[4]; /**< \brief C, \internal Reserved */
- Ifx_STM_TIM0 TIM0; /**< \brief 10, Timer Register 0 */
- Ifx_STM_TIM1 TIM1; /**< \brief 14, Timer Register 1 */
- Ifx_STM_TIM2 TIM2; /**< \brief 18, Timer Register 2 */
- Ifx_STM_TIM3 TIM3; /**< \brief 1C, Timer Register 3 */
- Ifx_STM_TIM4 TIM4; /**< \brief 20, Timer Register 4 */
- Ifx_STM_TIM5 TIM5; /**< \brief 24, Timer Register 5 */
- Ifx_STM_TIM6 TIM6; /**< \brief 28, Timer Register 6 */
- Ifx_STM_CAP CAP; /**< \brief 2C, Timer Capture Register */
- Ifx_STM_CMP CMP[2]; /**< \brief 30, Compare Register */
- Ifx_STM_CMCON CMCON; /**< \brief 38, Compare Match Control Register */
- Ifx_STM_ICR ICR; /**< \brief 3C, Interrupt Control Register */
- Ifx_STM_ISCR ISCR; /**< \brief 40, Interrupt Set/Clear Register */
- unsigned char reserved_44[12]; /**< \brief 44, \internal Reserved */
- Ifx_STM_TIM0SV TIM0SV; /**< \brief 50, Timer Register 0 Second View */
- Ifx_STM_CAPSV CAPSV; /**< \brief 54, Timer Capture Register Second View */
- unsigned char reserved_58[144]; /**< \brief 58, \internal Reserved */
- Ifx_STM_OCS OCS; /**< \brief E8, OCDS Control and Status */
- Ifx_STM_KRSTCLR KRSTCLR; /**< \brief EC, Kernel Reset Status Clear Register */
- Ifx_STM_KRST1 KRST1; /**< \brief F0, Kernel Reset Register 1 */
- Ifx_STM_KRST0 KRST0; /**< \brief F4, Kernel Reset Register 0 */
- Ifx_STM_ACCEN1 ACCEN1; /**< \brief F8, Access Enable Register 1 */
- Ifx_STM_ACCEN0 ACCEN0; /**< \brief FC, Access Enable Register 0 */
- } Ifx_STM;
- /** \} */
- /******************************************************************************/
- /** \} */
- /******************************************************************************/
- /******************************************************************************/
- #endif /* IFXSTM_REGDEF_H */
|