Home | History | Annotate | Download | only in cmsis

Lines Matching refs:ITM

874     \defgroup CMSIS_ITM     Instrumentation Trace Macrocell (ITM)
875 \brief Type definitions for the Instrumentation Trace Macrocell (ITM)
879 /** \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM).
885 __O uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */
886 __O uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */
887 __O uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */
888 } PORT [32]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */
890 __IO uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */
892 __IO uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */
894 __IO uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */
896 __O uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */
897 __I uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */
898 __IO uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */
900 __O uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */
901 __I uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */
903 __I uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */
904 __I uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */
905 __I uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */
906 __I uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */
907 __I uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */
908 __I uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */
909 __I uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */
910 __I uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */
911 __I uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */
912 __I uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */
913 __I uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */
914 __I uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */
917 /* ITM Trace Privilege Register Definitions */
918 #define ITM_TPR_PRIVMASK_Pos 0 /*!< ITM TPR: PRIVMASK Position */
919 #define ITM_TPR_PRIVMASK_Msk (0xFUL << ITM_TPR_PRIVMASK_Pos) /*!< ITM TPR: PRIVMASK Mask */
921 /* ITM Trace Control Register Definitions */
922 #define ITM_TCR_BUSY_Pos 23 /*!< ITM TCR: BUSY Position */
923 #define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */
925 #define ITM_TCR_TraceBusID_Pos 16 /*!< ITM TCR: ATBID Position */
926 #define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos) /*!< ITM TCR: ATBID Mask */
928 #define ITM_TCR_GTSFREQ_Pos 10 /*!< ITM TCR: Global timestamp frequency Position */
929 #define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */
931 #define ITM_TCR_TSPrescale_Pos 8 /*!< ITM TCR: TSPrescale Position */
932 #define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos) /*!< ITM TCR: TSPrescale Mask */
934 #define ITM_TCR_SWOENA_Pos 4 /*!< ITM TCR: SWOENA Position */
935 #define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */
937 #define ITM_TCR_DWTENA_Pos 3 /*!< ITM TCR: DWTENA Position */
938 #define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */
940 #define ITM_TCR_SYNCENA_Pos 2 /*!< ITM TCR: SYNCENA Position */
941 #define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */
943 #define ITM_TCR_TSENA_Pos 1 /*!< ITM TCR: TSENA Position */
944 #define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */
946 #define ITM_TCR_ITMENA_Pos 0 /*!< ITM TCR: ITM Enable bit Position */
947 #define ITM_TCR_ITMENA_Msk (1UL << ITM_TCR_ITMENA_Pos) /*!< ITM TCR: ITM Enable bit Mask */
949 /* ITM Integration Write Register Definitions */
950 #define ITM_IWR_ATVALIDM_Pos 0 /*!< ITM IWR: ATVALIDM Position */
951 #define ITM_IWR_ATVALIDM_Msk (1UL << ITM_IWR_ATVALIDM_Pos) /*!< ITM IWR: ATVALIDM Mask */
953 /* ITM Integration Read Register Definitions */
954 #define ITM_IRR_ATREADYM_Pos 0 /*!< ITM IRR: ATREADYM Position */
955 #define ITM_IRR_ATREADYM_Msk (1UL << ITM_IRR_ATREADYM_Pos) /*!< ITM IRR: ATREADYM Mask */
957 /* ITM Integration Mode Control Register Definitions */
958 #define ITM_IMCR_INTEGRATION_Pos 0 /*!< ITM IMCR: INTEGRATION Position */
959 #define ITM_IMCR_INTEGRATION_Msk (1UL << ITM_IMCR_INTEGRATION_Pos) /*!< ITM IMCR: INTEGRATION Mask */
961 /* ITM Lock Status Register Definitions */
962 #define ITM_LSR_ByteAcc_Pos 2 /*!< ITM LSR: ByteAcc Position */
963 #define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */
965 #define ITM_LSR_Access_Pos 1 /*!< ITM LSR: Access Position */
966 #define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */
968 #define ITM_LSR_Present_Pos 0 /*!< ITM LSR: Present Position */
969 #define ITM_LSR_Present_Msk (1UL << ITM_LSR_Present_Pos) /*!< ITM LSR: Present Mask */
1148 __I uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */
1216 /* TPI Integration ITM Data Register Definitions (FIFO1) */
1588 #define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */
1600 #define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */
2144 \defgroup CMSIS_core_DebugFunctions ITM Functions
2145 \brief Functions that access the ITM debug interface.
2153 /** \brief ITM Send Character
2155 The function transmits a character via the ITM channel 0, and
2165 if ((ITM->TCR & ITM_TCR_ITMENA_Msk) && /* ITM enabled */
2166 (ITM->TER & (1UL << 0) ) ) /* ITM Port #0 enabled */
2168 while (ITM->PORT[0].u32 == 0);
2169 ITM->PORT[0].u8 = (uint8_t) ch;
2175 /** \brief ITM Receive Character
2194 /** \brief ITM Check Character