mbed library sources. Supersedes mbed-src. Edited target satm32f446 for user USART3 pins
Fork of mbed-dev by
Diff: targets/TARGET_TOSHIBA/TARGET_TMPM46B/device/TMPM46B.h
- Revision:
- 184:08ed48f1de7f
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/targets/TARGET_TOSHIBA/TARGET_TMPM46B/device/TMPM46B.h Thu Apr 19 17:12:19 2018 +0100 @@ -0,0 +1,2838 @@ +/** + ******************************************************************************* + * @file TMPM46B.h + * @brief CMSIS Cortex-M4 Core Peripheral Access Layer Header File for the + * TOSHIBA 'TMPM46B' Device Series + * @version V2.0.2.4 + * @date 2015/03/13 + * + * DO NOT USE THIS SOFTWARE WITHOUT THE SOFTWARE LICENSE AGREEMENT. + * + * (C)Copyright TOSHIBA ELECTRONIC DEVICES & STORAGE CORPORATION 2017 All rights reserved + ******************************************************************************* + */ + +/** @addtogroup TOSHIBA_TX04_MICROCONTROLLER + * @{ + */ + +/** @addtogroup TMPM46B + * @{ + */ + +#ifndef __TMPM46B_H__ +#define __TMPM46B_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +/** @addtogroup Configuration_of_CMSIS + * @{ + */ + +/** Interrupt Number Definition */ +typedef enum IRQn +{ +/****** Cortex-M4 Processor Exceptions Numbers ***************************************************************/ + NonMaskableInt_IRQn = -14, /*!< 2 Non Maskable Interrupt */ + HardFault_IRQn = -13, /*!< 3 Cortex-M4 Hard Fault Interrupt */ + MemoryManagement_IRQn = -12, /*!< 4 Cortex-M4 Memory Management Interrupt */ + BusFault_IRQn = -11, /*!< 5 Cortex-M4 Bus Fault Interrupt */ + UsageFault_IRQn = -10, /*!< 6 Cortex-M4 Usage Fault Interrupt */ + SVCall_IRQn = -5, /*!< 11 Cortex-M4 SV Call Interrupt */ + DebugMonitor_IRQn = -4, /*!< 12 Cortex-M4 Debug Monitor Interrupt */ + PendSV_IRQn = -2, /*!< 14 Cortex-M4 Pend SV Interrupt */ + SysTick_IRQn = -1, /*!< 15 Cortex-M4 System Tick Interrupt */ + +/****** TMPM46B Specific Interrupt Numbers *******************************************************************/ + INT0_IRQn = 0, /*!< Interrupt pin 0 */ + INT1_IRQn = 1, /*!< Interrupt pin 1 */ + INT2_IRQn = 2, /*!< Interrupt pin 2 */ + INT3_IRQn = 3, /*!< Interrupt pin 3 */ + INT4_IRQn = 4, /*!< Interrupt pin 4 */ + INT5_IRQn = 5, /*!< Interrupt pin 5 */ + INT6_IRQn = 6, /*!< Interrupt pin 6 */ + INT7_IRQn = 7, /*!< Interrupt pin 7 */ + INT8_IRQn = 8, /*!< Interrupt pin 8 */ + INT9_IRQn = 9, /*!< Interrupt pin 9 */ + INTA_IRQn = 10, /*!< Interrupt pin A */ + INTB_IRQn = 11, /*!< Interrupt pin B */ + INTC_IRQn = 12, /*!< Interrupt pin C */ + INTD_IRQn = 13, /*!< Interrupt pin D */ + INTE_IRQn = 14, /*!< Interrupt pin E */ + INTF_IRQn = 15, /*!< Interrupt pin F */ + INTRX0_IRQn = 16, /*!< Serial0 reception interrupt */ + INTTX0_IRQn = 17, /*!< Serial0 transmission interrupt */ + INTRX1_IRQn = 18, /*!< Serial1 reception interrupt */ + INTTX1_IRQn = 19, /*!< Serial1 transmission interrupt */ + INTRX2_IRQn = 20, /*!< Serial2 reception interrupt */ + INTTX2_IRQn = 21, /*!< Serial2 transmission interrupt */ + INTRX3_IRQn = 22, /*!< Serial3 reception interrupt */ + INTTX3_IRQn = 23, /*!< Serial3 transmission interrupt */ + INTUART0_IRQn = 24, /*!< Full UART0 transmission and reception interrupt */ + INTUART1_IRQn = 25, /*!< Full UART1 transmission and reception interrupt */ + INTI2C0_IRQn = 26, /*!< I2C0 transmission and reception interrupt */ + INTI2C1_IRQn = 27, /*!< I2C1 transmission and reception interrupt */ + INTI2C2_IRQn = 28, /*!< I2C2 transmission and reception interrupt */ + INTSSP0_IRQn = 29, /*!< SSP(SPI) Serial interface 0 interrupt */ + INTSSP1_IRQn = 30, /*!< SSP(SPI) Serial interface 1 interrupt */ + INTSSP2_IRQn = 31, /*!< SSP(SPI) Serial interface 2 interrupt */ + INTADHP_IRQn = 32, /*!< High Priority AD conversion interrupt */ + INTADM0_IRQn = 33, /*!< AD conversion monitor interrupt 0 */ + INTADM1_IRQn = 34, /*!< AD conversion monitor interrupt 1 */ + INTAD_IRQn = 35, /*!< AD conversion interrupt */ + INTAES_IRQn = 36, /*!< AES completion interrupt */ + INTSHA_IRQn = 37, /*!< SHA completion interrupt */ + INTMLA_IRQn = 38, /*!< MLA completion interrupt */ + INTESG_IRQn = 39, /*!< ESG completion interrupt */ + INTSNFCSEQ_IRQn = 40, /*!< SNFC command sequence end interrupt */ + INTSNFCPRTAE_IRQn = 41, /*!< SNFC page lead RAM transfer end interrupt */ + INTSNFCPRTCE_IRQn = 42, /*!< SNFC decode data RAM transmission end interrupt */ + INTSNFCFAIL_IRQn = 43, /*!< SNFC decode fail interrupt */ + INTMTEMG0_IRQn = 47, /*!< MPT0 EMG interrupt */ + INTMTPTB00_IRQn = 48, /*!< MPT0 compare match0/overflow,IGBT cycle interrupt */ + INTMTPTB01_IRQn = 49, /*!< MPT0 compare match1/overflow,IGBT cycle interrupt */ + INTMTCAP00_IRQn = 50, /*!< MPT0 input capture0 interrupt */ + INTMTCAP01_IRQn = 51, /*!< MPT0 input capture1 interrupt */ + INTMTEMG1_IRQn = 52, /*!< MPT1 EMG interrupt */ + INTMTPTB10_IRQn = 53, /*!< MPT1 compare match0/overflow,IGBT cycle interrupt */ + INTMTPTB11_IRQn = 54, /*!< MPT1 compare match1/overflow,IGBT cycle interrupt */ + INTMTCAP10_IRQn = 55, /*!< MPT1 input capture0 interrupt */ + INTMTCAP11_IRQn = 56, /*!< MPT1 input capture1 interrupt */ + INTMTEMG2_IRQn = 57, /*!< MPT2 EMG interrupt */ + INTMTPTB20_IRQn = 58, /*!< MPT2 compare match0/overflow,IGBT cycle interrupt */ + INTMTTTB21_IRQn = 59, /*!< MPT2 compare match1/overflow,IGBT cycle interrupt */ + INTMTCAP20_IRQn = 60, /*!< MPT2 input capture0 interrupt */ + INTMTCAP21_IRQn = 61, /*!< MPT2 input capture1 interrupt */ + INTMTEMG3_IRQn = 62, /*!< MPT3 EMG interrupt */ + INTMTPTB30_IRQn = 63, /*!< MPT3 compare match0/overflow,IGBT cycle interrupt */ + INTMTTTB31_IRQn = 64, /*!< MPT3 compare match1/overflow,IGBT cycle interrupt */ + INTMTCAP30_IRQn = 65, /*!< MPT3 input capture0 interrupt */ + INTMTCAP31_IRQn = 66, /*!< MPT3 input capture1 interrupt */ + INTTB0_IRQn = 67, /*!< TMRB0 compare match detection interrupt */ + INTCAP00_IRQn = 68, /*!< TMRB0 input capture 0 interrupt */ + INTCAP01_IRQn = 69, /*!< TMRB0 input capture 1 interrupt */ + INTTB1_IRQn = 70, /*!< TMRB1 compare match detection interrupt */ + INTCAP10_IRQn = 71, /*!< TMRB1 input capture 0 interrupt */ + INTCAP11_IRQn = 72, /*!< TMRB1 input capture 1 interrupt */ + INTTB2_IRQn = 73, /*!< TMRB2 compare match detection interrupt */ + INTCAP20_IRQn = 74, /*!< TMRB2 input capture 0 interrupt */ + INTCAP21_IRQn = 75, /*!< TMRB2 input capture 1 interrupt */ + INTTB3_IRQn = 76, /*!< TMRB3 compare match detection interrupt */ + INTCAP30_IRQn = 77, /*!< TMRB3 input capture 0 interrupt */ + INTCAP31_IRQn = 78, /*!< TMRB3 input capture 1 interrupt */ + INTTB4_IRQn = 79, /*!< TMRB4 compare match detection interrupt */ + INTCAP40_IRQn = 80, /*!< TMRB4 input capture 0 interrupt */ + INTCAP41_IRQn = 81, /*!< TMRB4 input capture 1 interrupt */ + INTTB5_IRQn = 82, /*!< TMRB5 compare match detection interrupt */ + INTCAP50_IRQn = 83, /*!< TMRB5 input capture 0 interrupt */ + INTCAP51_IRQn = 84, /*!< TMRB5 input capture 1 interrupt */ + INTTB6_IRQn = 85, /*!< TMRB6 compare match detection interrupt */ + INTCAP60_IRQn = 86, /*!< TMRB6 input capture 0 interrupt */ + INTCAP61_IRQn = 87, /*!< TMRB6 input capture 1 interrupt */ + INTTB7_IRQn = 88, /*!< TMRB7 compare match detection interrupt */ + INTCAP70_IRQn = 89, /*!< TMRB7 input capture 0 interrupt */ + INTCAP71_IRQn = 90, /*!< TMRB7 input capture 1 interrupt */ + INTRTC_IRQn = 91, /*!< Real time clock interrupt */ + INTDMAA_IRQn = 92, /*!< DMAC unitA transmission completion interrupt(ch4-31) */ + INTDMAB_IRQn = 93, /*!< DMAC unitB transmission completion interrupt(ch24-31) */ + INTDMAC_IRQn = 94, /*!< DMAC unitC transmission completion interrupt(ch12-31) */ + INTDMACTC8_IRQn = 95, /*!< DMAC unitC transmission completion interrupt(ch8) */ + INTDMACTC9_IRQn = 96, /*!< DMAC unitC transmission completion interrupt(ch9) */ + INTDMACTC10_IRQn = 97, /*!< DMAC unitC transmission completion interrupt(ch10) */ + INTDMACTC11_IRQn = 98, /*!< DMAC unitC transmission completion interrupt(ch11) */ + INTDMAAERR_IRQn = 99, /*!< DMAC transmission error interrupt(unitA) */ + INTDMABERR_IRQn = 100, /*!< DMAC transmission error interrupt(unitB) */ + INTDMACERR_IRQn = 101, /*!< DMAC transmission error interrupt(unitC) */ + INTFLRDY_IRQn = 102 /*!< Flash Ready interrupt */ +} IRQn_Type; + +/** Processor and Core Peripheral Section */ + +/* Configuration of the Cortex-M4 Processor and Core Peripherals */ +#define __CM4_REV 0x0001 /*!< Cortex-M4 Core Revision */ +#define __MPU_PRESENT 0 /*!< MPU present or not */ +#define __NVIC_PRIO_BITS 3 /*!< Number of Bits used for Priority Levels */ +#define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */ +#define __FPU_PRESENT 1 /*!< FPU present or not */ + +/** @} */ /* End of group Configuration_of_CMSIS */ + +#include "core_cm4.h" /* Cortex-M4 processor and core peripherals */ +#include "system_TMPM46B.h" /* TMPM46B System */ + +/** @addtogroup Device_Peripheral_registers + * @{ + */ + +/** Device Specific Peripheral registers structures */ + +/** + * @brief Synchronous Serial Port + */ +typedef struct +{ + __IO uint32_t CR0; /*!< SSP Control Register 0 */ + __IO uint32_t CR1; /*!< SSP Control Register 1 */ + __IO uint32_t DR; /*!< SSP Data Register */ + __I uint32_t SR; /*!< SSP Status Register */ + __IO uint32_t CPSR; /*!< SSP Clock Prescaler Register */ + __IO uint32_t IMSC; /*!< SSP Interrupt Mask Set and Clear Register */ + __I uint32_t RIS; /*!< SSP Raw Interrupt Status Register */ + __I uint32_t MIS; /*!< SSP Masked Interrupt Status Register */ + __O uint32_t ICR; /*!< SSP Interrupt Clear Register */ + __IO uint32_t DMACR; /*!< SSP DMA Control Register */ +} TSB_SSP_TypeDef; + +#if defined ( __CC_ARM ) /* RealView Compiler */ +#pragma anon_unions +#elif (defined (__ICCARM__)) /* ICC Compiler */ +#pragma language=extended +#endif + +/** + * @brief UART + */ +typedef struct +{ + __IO uint32_t DR; /*!< Data Register */ +union { + __I uint32_t RSR; /*!< Receive Status Register */ + __O uint32_t ECR; /*!< Error Clear Register */ + }; + uint32_t RESERVED0[4]; + __I uint32_t FR; /*!< Flag Register */ + uint32_t RESERVED1; + __IO uint32_t ILPR; /*!< UART IrDA lowPower count register */ + __IO uint32_t IBRD; /*!< Integer Baud Rate Register */ + __IO uint32_t FBRD; /*!< Fractional Baud Rate Register */ + __IO uint32_t LCR_H; /*!< Line Control Register */ + __IO uint32_t CR; /*!< Control Register */ + __IO uint32_t IFLS; /*!< Interrupt FIFO Level Selection Register */ + __IO uint32_t IMSC; /*!< Interrupt Mask Set/Clear Register */ + __I uint32_t RIS; /*!< Raw Interrupt Status Register */ + __I uint32_t MIS; /*!< Masked Interrupt Status Register */ + __O uint32_t ICR; /*!< Interrupt Clear Register */ + __IO uint32_t DMACR; /*!< DMA Control Register */ +} TSB_UART_TypeDef; + +/** + * @brief DMA Controller + */ +typedef struct +{ + __I uint32_t STATUS; /*!< DMA Status Register */ + __O uint32_t CFG; /*!< DMA Configuration Register */ + __IO uint32_t CTRLBASEPTR; /*!< DMA Control Data Base Pointer Register */ + __I uint32_t ALTCTRLBASEPTR; /*!< DMA Channel Alternate Control Data Base Pointer Register*/ + uint32_t RESERVED0; + __O uint32_t CHNLSWREQUEST; /*!< DMA Channel Software Request Register */ + __IO uint32_t CHNLUSEBURSTSET; /*!< DMA Channel Useburst Set Register */ + __O uint32_t CHNLUSEBURSTCLR; /*!< DMA Channel Useburst Clear Register */ + __IO uint32_t CHNLREQMASKSET; /*!< DMA Channel Request Mask Set Register */ + __O uint32_t CHNLREQMASKCLR; /*!< DMA Channel Request Mask Clear Register */ + __IO uint32_t CHNLENABLESET; /*!< DMA Channel Enable Set Register */ + __O uint32_t CHNLENABLECLR; /*!< DMA Channel Enable Clear Register */ + __IO uint32_t CHNLPRIALTSET; /*!< DMA Channel Primary-Alternate Set Register */ + __O uint32_t CHNLPRIALTCLR; /*!< DMA Channel Primary-Alternate Clear Register */ + __IO uint32_t CHNLPRIORITYSET; /*!< DMA Channel Priority Set Register */ + __O uint32_t CHNLPRIORITYCLR; /*!< DMA Channel Priority Clear Register */ + uint32_t RESERVED1[3]; + __IO uint32_t ERRCLR; /*!< DMA Bus Error Clear Register */ +} TSB_DMA_TypeDef; + +/** + * @brief 12bit A/D Converter + */ +typedef struct +{ + __IO uint32_t CLK; /*!< Conversion Clock Setting Register */ + __O uint32_t MOD0; /*!< Mode Control Register0 */ + __IO uint32_t MOD1; /*!< Mode Control Register1 */ + __IO uint32_t MOD2; /*!< Mode Control Register2 */ + __IO uint32_t MOD3; /*!< Mode Control Register3 */ + __IO uint32_t MOD4; /*!< Mode Control Register4 */ + __I uint32_t MOD5; /*!< Mode Control Register5 */ + __O uint32_t MOD6; /*!< Mode Control Register6 */ + uint32_t RESERVED0; + __IO uint32_t CMPCR0; /*!< Monitoring Interrupt Control Register0 */ + __IO uint32_t CMPCR1; /*!< Monitoring Interrupt Control Register1 */ + __IO uint32_t CMP0; /*!< Conversion Result Compare Register0 */ + __IO uint32_t CMP1; /*!< Conversion Result Compare Register1 */ + __I uint32_t REG00; /*!< Conversion Result Store Register0 */ + __I uint32_t REG01; /*!< Conversion Result Store Register1 */ + __I uint32_t REG02; /*!< Conversion Result Store Register2 */ + __I uint32_t REG03; /*!< Conversion Result Store Register3 */ + __I uint32_t REG04; /*!< Conversion Result Store Register4 */ + __I uint32_t REG05; /*!< Conversion Result Store Register5 */ + __I uint32_t REG06; /*!< Conversion Result Store Register6 */ + __I uint32_t REG07; /*!< Conversion Result Store Register7 */ + uint32_t RESERVED1[8]; + __I uint32_t REGSP; /*!< Highest Priority Conversion Result Store Register*/ +} TSB_AD_TypeDef; + +/** + * @brief External Bus Interface(EXB) + */ +typedef struct +{ + __IO uint32_t MOD; /*!< External Bus Mode Control Register */ + uint32_t RESERVED0[3]; + __IO uint32_t AS0; /*!< External Bus Base Address and CS Space setting Register 0*/ + __IO uint32_t AS1; /*!< External Bus Base Address and CS Space setting Register 1 */ + __IO uint32_t AS2; /*!< External Bus Base Address and CS Space setting Register 2*/ + __IO uint32_t AS3; /*!< External Bus Base Address and CS Space setting Register 3*/ + uint32_t RESERVED1[8]; + __IO uint32_t CS0; /*!< Chip Select and Wait Controller Register 0 */ + __IO uint32_t CS1; /*!< Chip Select and Wait Controller Register 1 */ + __IO uint32_t CS2; /*!< Chip Select and Wait Controller Register 2 */ + __IO uint32_t CS3; /*!< Chip Select and Wait Controller Register 3 */ +} TSB_EXB_TypeDef; + +/** + * @brief SNFC (SLC NAND Flash Controller) + */ +typedef struct +{ + __IO uint32_t ENC; /*!< SNFC Enable Control Register */ + __IO uint32_t ECCMOD; /*!< SNFC Ecc Mode Register */ + __IO uint32_t IE; /*!< SNFC Interrupt Enable Register */ + uint32_t RESERVED0; + __IO uint32_t PS; /*!< SNFC Page Size Register */ + __IO uint32_t PRCS; /*!< SNFC Page Read Column Status Register */ + __IO uint32_t S; /*!< SNFC Sector Register */ + __IO uint32_t SS; /*!< SNFC Sector Status Register */ + __IO uint32_t DIC; /*!< SNFC Decode Input Count Register */ + __IO uint32_t DOC; /*!< SNFC Decode Output Count Register */ + __IO uint32_t EIC; /*!< SNFC Encode Input Count Register */ + uint32_t RESERVED1; + __IO uint32_t A1; /*!< SNFC Address Register 1 */ + __IO uint32_t A2; /*!< SNFC Address Register 2 */ + __IO uint32_t W; /*!< SNFC Write Register */ + __IO uint32_t BIC; /*!< SNFC Bus Interface Control Register */ + __IO uint32_t CS1; /*!< SNFC Command Sequence Register 1 */ + __IO uint32_t CS2; /*!< SNFC Command Sequence Register 2 */ + __IO uint32_t CS3; /*!< SNFC Command Sequence Register 3 */ + __IO uint32_t CS4; /*!< SNFC Command Sequence Register 4 */ + __IO uint32_t CSE; /*!< SNFC Command Sequence Enable Register */ + uint32_t RESERVED2[43]; + __I uint32_t PRDB; /*!< SNFC Page Read Buffer Registerer */ + __I uint32_t IR1; /*!< SNFC Id Read Register 1 */ + __I uint32_t IR2; /*!< SNFC Id Read Register 2 */ + uint32_t RESERVED3; + __I uint32_t EP1; /*!< SNFC Ecc Parity Register 1 */ + __I uint32_t EP2; /*!< SNFC Ecc Parity Register 2 */ + __I uint32_t EP3; /*!< SNFC Ecc Parity Register 3 */ + __I uint32_t EP4; /*!< SNFC Ecc Parity Register 4 */ + __I uint32_t EC; /*!< SNFC Ecc Crc Register */ + uint32_t RESERVED4[183]; + __IO uint32_t EWRB; /*!< SNFC Ecc Write Buffer Register */ + uint32_t RESERVED5[255]; + __I uint32_t CDRB; /*!< SNFC Correction Data Read Buffer Register */ + __I uint32_t EOC; /*!< SNFC Ecc Output Control Register */ + __I uint32_t EBS; /*!< SNFC Ecc Busy Status Register */ + uint32_t RESERVED6[5]; + __I uint32_t EES; /*!< SNFC Ecc Error Status Register */ + uint32_t RESERVED7[7]; + __I uint32_t EDS1; /*!< SNFC Ecc Decode State Register 1 */ + __I uint32_t EDS2; /*!< SNFC Ecc Decode State Register 2 */ + __I uint32_t EDS3; /*!< SNFC Ecc Decode State Register 3 */ + __I uint32_t EDS4; /*!< SNFC Ecc Decode State Register 4 */ + __I uint32_t EDS5; /*!< SNFC Ecc Decode State Register 5 */ + __I uint32_t EDS6; /*!< SNFC Ecc Decode State Register 6 */ + __I uint32_t EDS7; /*!< SNFC Ecc Decode State Register 7 */ + __I uint32_t EDS8; /*!< SNFC Ecc Decode State Register 8 */ + uint32_t RESERVED8[8]; + __I uint32_t S1EE1PI; /*!< SNFC Sector 1 Ecc Error 1 Positional Information Register*/ + __I uint32_t S1EE2PI; /*!< SNFC Sector 1 Ecc Error 2 Positional Information Register*/ + __I uint32_t S1EE3PI; /*!< SNFC Sector 1 Ecc Error 3 Positional Information Register*/ + __I uint32_t S1EE4PI; /*!< SNFC Sector 1 Ecc Error 4 Positional Information Register*/ + __I uint32_t S2EE1PI; /*!< SNFC Sector 2 Ecc Error 1 Positional Information Register*/ + __I uint32_t S2EE2PI; /*!< SNFC Sector 2 Ecc Error 2 Positional Information Register*/ + __I uint32_t S2EE3PI; /*!< SNFC Sector 2 Ecc Error 3 Positional Information Register*/ + __I uint32_t S2EE4PI; /*!< SNFC Sector 2 Ecc Error 4 Positional Information Register*/ + __I uint32_t S3EE1PI; /*!< SNFC Sector 3 Ecc Error 1 Positional Information Register*/ + __I uint32_t S3EE2PI; /*!< SNFC Sector 3 Ecc Error 2 Positional Information Register*/ + __I uint32_t S3EE3PI; /*!< SNFC Sector 3 Ecc Error 3 Positional Information Register*/ + __I uint32_t S3EE4PI; /*!< SNFC Sector 3 Ecc Error 4 Positional Information Register*/ + __I uint32_t S4EE1PI; /*!< SNFC Sector 4 Ecc Error 1 Positional Information Register*/ + __I uint32_t S4EE2PI; /*!< SNFC Sector 4 Ecc Error 2 Positional Information Register*/ + __I uint32_t S4EE3PI; /*!< SNFC Sector 4 Ecc Error 3 Positional Information Register*/ + __I uint32_t S4EE4PI; /*!< SNFC Sector 4 Ecc Error 4 Positional Information Register*/ + __I uint32_t S5EE1PI; /*!< SNFC Sector 5 Ecc Error 1 Positional Information Register*/ + __I uint32_t S5EE2PI; /*!< SNFC Sector 5 Ecc Error 2 Positional Information Register*/ + __I uint32_t S5EE3PI; /*!< SNFC Sector 5 Ecc Error 3 Positional Information Register*/ + __I uint32_t S5EE4PI; /*!< SNFC Sector 5 Ecc Error 4 Positional Information Register*/ + __I uint32_t S6EE1PI; /*!< SNFC Sector 6 Ecc Error 1 Positional Information Register*/ + __I uint32_t S6EE2PI; /*!< SNFC Sector 6 Ecc Error 2 Positional Information Register*/ + __I uint32_t S6EE3PI; /*!< SNFC Sector 6 Ecc Error 3 Positional Information Register*/ + __I uint32_t S6EE4PI; /*!< SNFC Sector 6 Ecc Error 4 Positional Information Register*/ + __I uint32_t S7EE1PI; /*!< SNFC Sector 7 Ecc Error 1 Positional Information Register*/ + __I uint32_t S7EE2PI; /*!< SNFC Sector 7 Ecc Error 2 Positional Information Register*/ + __I uint32_t S7EE3PI; /*!< SNFC Sector 7 Ecc Error 3 Positional Information Register*/ + __I uint32_t S7EE4PI; /*!< SNFC Sector 7 Ecc Error 4 Positional Information Register*/ + __I uint32_t S8EE1PI; /*!< SNFC Sector 8 Ecc Error 1 Positional Information Register*/ + __I uint32_t S8EE2PI; /*!< SNFC Sector 8 Ecc Error 2 Positional Information Register*/ + __I uint32_t S8EE3PI; /*!< SNFC Sector 8 Ecc Error 3 Positional Information Register*/ + __I uint32_t S8EE4PI; /*!< SNFC Sector 8 Ecc Error 4 Positional Information Register*/ +} TSB_SNFC_TypeDef; + +/** + * @brief DMA Interrupt Flag + */ +typedef struct +{ + __I uint32_t FLGA; /*!< DMA Flag Register A */ + __I uint32_t FLGB; /*!< DMA Flag Register B */ + __I uint32_t FLGC; /*!< DMA Flag Register C */ +} TSB_DMAIF_TypeDef; + +/** + * @brief ADC infterface Register + */ +typedef struct +{ + uint32_t RESERVED0[4]; + __IO uint32_t TRGSEL; /*!< Trigger Selection Register */ +} TSB_ADILV_TypeDef; + +/** + * @brief I2C Bus Interface (I2C) + */ +typedef struct +{ + __IO uint32_t CR1; /*!< I2C Control Register 1 */ + __IO uint32_t DBR; /*!< Data Buffer Register */ + __IO uint32_t AR; /*!< Bus address Register */ +union { + __O uint32_t CR2; /*!< Control Register 1 */ + __I uint32_t SR; /*!< Status Register */ + }; + __IO uint32_t PRS; /*!< Prescaler clcok setting Register */ + __IO uint32_t IE; /*!< Interrupt Enable Register */ + __IO uint32_t IR; /*!< Interrupt Register */ +} TSB_I2C_TypeDef; + +/** + * @brief Advanced Encryption Standard (AES) + */ +typedef struct +{ + __O uint32_t DT; /*!< Plaintext/encrypted text data Register */ + __IO uint32_t KEY7; /*!< Input Key Data Register (bit 31 - 0) */ + __IO uint32_t KEY6; /*!< Input Key Data Register (bit 63 - 32) */ + __IO uint32_t KEY5; /*!< Input Key Data Register (bit 95 - 64) */ + __IO uint32_t KEY4; /*!< Input Key Data Register (bit 127 - 96) */ + __IO uint32_t KEY3; /*!< Input Key Data Register (bit 159 - 128) */ + __IO uint32_t KEY2; /*!< Input Key Data Register (bit 191 - 160) */ + __IO uint32_t KEY1; /*!< Input Key Data Register (bit 223 - 192) */ + __IO uint32_t KEY0; /*!< Input Key Data Register (bit 255 - 224) */ + __IO uint32_t CNT3; /*!< Counter Initial Value Register (bit 31 - 0) */ + __IO uint32_t CNT2; /*!< Counter Initial Value Register (bit 63 - 32) */ + __IO uint32_t CNT1; /*!< Counter Initial Value Register (bit 95 - 64) */ + __IO uint32_t CNT0; /*!< Counter Initial Value Register (bit 127 - 96)*/ + __IO uint32_t IV3; /*!< Initial Vector Register (bit 31 - 0) */ + __IO uint32_t IV2; /*!< Initial Vector Register (bit 63 - 32) */ + __IO uint32_t IV1; /*!< Initial Vector Register (bit 95 - 64) */ + __IO uint32_t IV0; /*!< Initial Vector Register (bit 127 - 96) */ + __I uint32_t ODT; /*!< Calculation Result Store Register */ + __I uint32_t RKEY7; /*!< Output Key Store Register (bit 31 - 0) */ + __I uint32_t RKEY6; /*!< Output Key Store Register (bit 63 - 32) */ + __I uint32_t RKEY5; /*!< Output Key Store Register (bit 95 - 64) */ + __I uint32_t RKEY4; /*!< Output Key Store Register (bit 127 - 96) */ + __I uint32_t RKEY3; /*!< Output Key Store Register (bit 159 - 128) */ + __I uint32_t RKEY2; /*!< Output Key Store Register (bit 191 - 160) */ + __I uint32_t RKEY1; /*!< Output Key Store Register (bit 223 - 192) */ + __I uint32_t RKEY0; /*!< Output Key Store Register (bit 255 - 224) */ + __O uint32_t CLR; /*!< FIFO Clear Register */ + __IO uint32_t MOD; /*!< Mode Setting Register */ + __I uint32_t STATUS; /*!< Status Register */ +} TSB_AES_TypeDef; + +/** + * @brief Secure Hash Algorithm Processor (SHA) + */ +typedef struct +{ + __O uint32_t START; /*!< Process Start Register */ + __IO uint32_t CR; /*!< Control Register */ + __IO uint32_t DMAEN; /*!< DMA Enable Register */ + __IO uint32_t MSGLEN0; /*!< Whole Message Length Register (bit 31 - 0) */ + __IO uint32_t MSGLEN1; /*!< Whole Message Length Register (bit 60 - 32) */ + __IO uint32_t REMAIN0; /*!< Unhandled Message Length Register (bit 31 - 0)*/ + __IO uint32_t REMAIN1; /*!< Unhandled Message Length Register (bit 60 - 32)*/ + __IO uint32_t MSG00; /*!< Message Register (bit 31 - 0) */ + __IO uint32_t MSG01; /*!< Message Register (bit 63 - 32) */ + __IO uint32_t MSG02; /*!< Message Register (bit 95 - 64) */ + __IO uint32_t MSG03; /*!< Message Register (bit 127 - 96) */ + __IO uint32_t MSG04; /*!< Message Register (bit 159 - 128) */ + __IO uint32_t MSG05; /*!< Message Register (bit 191 - 160) */ + __IO uint32_t MSG06; /*!< Message Register (bit 223 - 192) */ + __IO uint32_t MSG07; /*!< Message Register (bit 255 - 224) */ + __IO uint32_t MSG08; /*!< Message Register (bit 287 - 256) */ + __IO uint32_t MSG09; /*!< Message Register (bit 319 - 288) */ + __IO uint32_t MSG10; /*!< Message Register (bit 351 - 320) */ + __IO uint32_t MSG11; /*!< Message Register (bit 383 - 352) */ + __IO uint32_t MSG12; /*!< Message Register (bit 415 - 384) */ + __IO uint32_t MSG13; /*!< Message Register (bit 447 - 416) */ + __IO uint32_t MSG14; /*!< Message Register (bit 479 - 448) */ + __IO uint32_t MSG15; /*!< Message Register (bit 511 - 480) */ + __IO uint32_t INIT0; /*!< Hash Initial Value Register (bit 31 - 0) */ + __IO uint32_t INIT1; /*!< Hash Initial Value Register (bit 63 - 32) */ + __IO uint32_t INIT2; /*!< Hash Initial Value Register (bit 95 - 64) */ + __IO uint32_t INIT3; /*!< Hash Initial Value Register (bit 127 - 96) */ + __IO uint32_t INIT4; /*!< Hash Initial Value Register (bit 159 - 128) */ + __IO uint32_t INIT5; /*!< Hash Initial Value Register (bit 191 - 160) */ + __IO uint32_t INIT6; /*!< Hash Initial Value Register (bit 223 - 192) */ + __IO uint32_t INIT7; /*!< Hash Initial Value Register (bit 255 - 224) */ + __I uint32_t RESULT0; /*!< Calculation Result Register (bit 31 - 0) */ + __I uint32_t RESULT1; /*!< Calculation Result Register (bit 63 - 32) */ + __I uint32_t RESULT2; /*!< Calculation Result Register (bit 95 - 64) */ + __I uint32_t RESULT3; /*!< Calculation Result Register (bit 127 - 96) */ + __I uint32_t RESULT4; /*!< Calculation Result Register (bit 159 - 128) */ + __I uint32_t RESULT5; /*!< Calculation Result Register (bit 191 - 160) */ + __I uint32_t RESULT6; /*!< Calculation Result Register (bit 223 - 192) */ + __I uint32_t RESULT7; /*!< Calculation Result Register (bit 255 - 224) */ + __I uint32_t STATUS; /*!< Status Register */ +} TSB_SHA_TypeDef; + +/** + * @brief Entropy Seed Generator (ESG) + */ +typedef struct +{ + __O uint32_t CR; /*!< Control Register */ + __I uint32_t ST; /*!< Status Register */ + __IO uint32_t OUTCR; /*!< Output Control Register */ + __IO uint32_t INT; /*!< Interrupt Status Register */ + __I uint32_t BLK00; /*!< Entropy Seed Store Block 00 */ + __I uint32_t BLK01; /*!< Entropy Seed Store Block 01 */ + __I uint32_t BLK02; /*!< Entropy Seed Store Block 02 */ + __I uint32_t BLK03; /*!< Entropy Seed Store Block 03 */ + __I uint32_t BLK04; /*!< Entropy Seed Store Block 04 */ + __I uint32_t BLK05; /*!< Entropy Seed Store Block 05 */ + __I uint32_t BLK06; /*!< Entropy Seed Store Block 06 */ + __I uint32_t BLK07; /*!< Entropy Seed Store Block 07 */ + __I uint32_t BLK08; /*!< Entropy Seed Store Block 08 */ + __I uint32_t BLK09; /*!< Entropy Seed Store Block 09 */ + __I uint32_t BLK10; /*!< Entropy Seed Store Block 10 */ + __I uint32_t BLK11; /*!< Entropy Seed Store Block 11 */ + __I uint32_t BLK12; /*!< Entropy Seed Store Block 12 */ + __I uint32_t BLK13; /*!< Entropy Seed Store Block 13 */ + __I uint32_t BLK14; /*!< Entropy Seed Store Block 14 */ + __I uint32_t BLK15; /*!< Entropy Seed Store Block 15 */ +} TSB_ESG_TypeDef; + +/** + * @brief Soft Reset + */ +typedef struct +{ + __IO uint32_t PROTECT; /*!< Soft reset protect Register */ + __IO uint32_t IPRST; /*!< Soft reset Register */ +} TSB_SRST_TypeDef; + +/** + * @brief Multiple Length Arithmetic Coprocessor (MLA) + */ +typedef struct +{ + __IO uint32_t CR; /*!< Control Register */ + __IO uint32_t ST; /*!< Status Register */ + uint32_t RESERVED0; + __IO uint32_t PARA; /*!< Montgomery Parameter Register */ + __IO uint32_t BLK1_0; /*!< General-purpose Register Block 1 (bit 31 - 0)*/ + __IO uint32_t BLK1_1; /*!< General-purpose Register Block 1 (bit 63 - 32)*/ + __IO uint32_t BLK1_2; /*!< General-purpose Register Block 1 (bit 95 - 64)*/ + __IO uint32_t BLK1_3; /*!< General-purpose Register Block 1 (bit 127 - 96)*/ + __IO uint32_t BLK1_4; /*!< General-purpose Register Block 1 (bit 159 - 128)*/ + __IO uint32_t BLK1_5; /*!< General-purpose Register Block 1 (bit 191 - 160)*/ + __IO uint32_t BLK1_6; /*!< General-purpose Register Block 1 (bit 223 - 192)*/ + __IO uint32_t BLK1_7; /*!< General-purpose Register Block 1 (bit 255 - 224)*/ + __IO uint32_t BLK2_0; /*!< General-purpose Register Block 2 (bit 31 - 0)*/ + __IO uint32_t BLK2_1; /*!< General-purpose Register Block 2 (bit 63 - 32)*/ + __IO uint32_t BLK2_2; /*!< General-purpose Register Block 2 (bit 95 - 64)*/ + __IO uint32_t BLK2_3; /*!< General-purpose Register Block 2 (bit 127 - 96)*/ + __IO uint32_t BLK2_4; /*!< General-purpose Register Block 2 (bit 159 - 128)*/ + __IO uint32_t BLK2_5; /*!< General-purpose Register Block 2 (bit 191 - 160)*/ + __IO uint32_t BLK2_6; /*!< General-purpose Register Block 2 (bit 223 - 192)*/ + __IO uint32_t BLK2_7; /*!< General-purpose Register Block 2 (bit 255 - 224)*/ + __IO uint32_t BLK3_0; /*!< General-purpose Register Block 3 (bit 31 - 0)*/ + __IO uint32_t BLK3_1; /*!< General-purpose Register Block 3 (bit 63 - 32)*/ + __IO uint32_t BLK3_2; /*!< General-purpose Register Block 3 (bit 95 - 64)*/ + __IO uint32_t BLK3_3; /*!< General-purpose Register Block 3 (bit 127 - 96)*/ + __IO uint32_t BLK3_4; /*!< General-purpose Register Block 3 (bit 159 - 128)*/ + __IO uint32_t BLK3_5; /*!< General-purpose Register Block 3 (bit 191 - 160)*/ + __IO uint32_t BLK3_6; /*!< General-purpose Register Block 3 (bit 223 - 192)*/ + __IO uint32_t BLK3_7; /*!< General-purpose Register Block 3 (bit 255 - 224)*/ + __IO uint32_t BLK4_0; /*!< General-purpose Register Block 4 (bit 31 - 0)*/ + __IO uint32_t BLK4_1; /*!< General-purpose Register Block 4 (bit 63 - 32)*/ + __IO uint32_t BLK4_2; /*!< General-purpose Register Block 4 (bit 95 - 64)*/ + __IO uint32_t BLK4_3; /*!< General-purpose Register Block 4 (bit 127 - 96)*/ + __IO uint32_t BLK4_4; /*!< General-purpose Register Block 4 (bit 159 - 128)*/ + __IO uint32_t BLK4_5; /*!< General-purpose Register Block 4 (bit 191 - 160)*/ + __IO uint32_t BLK4_6; /*!< General-purpose Register Block 4 (bit 223 - 192)*/ + __IO uint32_t BLK4_7; /*!< General-purpose Register Block 4 (bit 255 - 224)*/ + __IO uint32_t BLK5_0; /*!< General-purpose Register Block 5 (bit 31 - 0)*/ + __IO uint32_t BLK5_1; /*!< General-purpose Register Block 5 (bit 63 - 32)*/ + __IO uint32_t BLK5_2; /*!< General-purpose Register Block 5 (bit 95 - 64)*/ + __IO uint32_t BLK5_3; /*!< General-purpose Register Block 5 (bit 127 - 96)*/ + __IO uint32_t BLK5_4; /*!< General-purpose Register Block 5 (bit 159 - 128)*/ + __IO uint32_t BLK5_5; /*!< General-purpose Register Block 5 (bit 191 - 160)*/ + __IO uint32_t BLK5_6; /*!< General-purpose Register Block 5 (bit 223 - 192)*/ + __IO uint32_t BLK5_7; /*!< General-purpose Register Block 5 (bit 255 - 224)*/ + __IO uint32_t BLK6_0; /*!< General-purpose Register Block 6 (bit 31 - 0)*/ + __IO uint32_t BLK6_1; /*!< General-purpose Register Block 6 (bit 63 - 32)*/ + __IO uint32_t BLK6_2; /*!< General-purpose Register Block 6 (bit 95 - 64)*/ + __IO uint32_t BLK6_3; /*!< General-purpose Register Block 6 (bit 127 - 96)*/ + __IO uint32_t BLK6_4; /*!< General-purpose Register Block 6 (bit 159 - 128)*/ + __IO uint32_t BLK6_5; /*!< General-purpose Register Block 6 (bit 191 - 160)*/ + __IO uint32_t BLK6_6; /*!< General-purpose Register Block 6 (bit 223 - 192)*/ + __IO uint32_t BLK6_7; /*!< General-purpose Register Block 6 (bit 255 - 224)*/ + __IO uint32_t BLK7_0; /*!< General-purpose Register Block 7 (bit 31 - 0)*/ + __IO uint32_t BLK7_1; /*!< General-purpose Register Block 7 (bit 63 - 32)*/ + __IO uint32_t BLK7_2; /*!< General-purpose Register Block 7 (bit 95 - 64)*/ + __IO uint32_t BLK7_3; /*!< General-purpose Register Block 7 (bit 127 - 96)*/ + __IO uint32_t BLK7_4; /*!< General-purpose Register Block 7 (bit 159 - 128)*/ + __IO uint32_t BLK7_5; /*!< General-purpose Register Block 7 (bit 191 - 160)*/ + __IO uint32_t BLK7_6; /*!< General-purpose Register Block 7 (bit 223 - 192)*/ + __IO uint32_t BLK7_7; /*!< General-purpose Register Block 7 (bit 255 - 224)*/ + __IO uint32_t BLK8_0; /*!< General-purpose Register Block 8 (bit 31 - 0)*/ + __IO uint32_t BLK8_1; /*!< General-purpose Register Block 8 (bit 63 - 32)*/ + __IO uint32_t BLK8_2; /*!< General-purpose Register Block 8 (bit 95 - 64)*/ + __IO uint32_t BLK8_3; /*!< General-purpose Register Block 8 (bit 127 - 96)*/ + __IO uint32_t BLK8_4; /*!< General-purpose Register Block 8 (bit 159 - 128)*/ + __IO uint32_t BLK8_5; /*!< General-purpose Register Block 8 (bit 191 - 160)*/ + __IO uint32_t BLK8_6; /*!< General-purpose Register Block 8 (bit 223 - 192)*/ + __IO uint32_t BLK8_7; /*!< General-purpose Register Block 8 (bit 255 - 224)*/ + __IO uint32_t BLK9_0; /*!< General-purpose Register Block 9 (bit 31 - 0)*/ + __IO uint32_t BLK9_1; /*!< General-purpose Register Block 9 (bit 63 - 32)*/ + __IO uint32_t BLK9_2; /*!< General-purpose Register Block 9 (bit 95 - 64)*/ + __IO uint32_t BLK9_3; /*!< General-purpose Register Block 9 (bit 127 - 96)*/ + __IO uint32_t BLK9_4; /*!< General-purpose Register Block 9 (bit 159 - 128)*/ + __IO uint32_t BLK9_5; /*!< General-purpose Register Block 9 (bit 191 - 160)*/ + __IO uint32_t BLK9_6; /*!< General-purpose Register Block 9 (bit 223 - 192)*/ + __IO uint32_t BLK9_7; /*!< General-purpose Register Block 9 (bit 255 - 224)*/ + __IO uint32_t BLK10_0; /*!< General-purpose Register Block 10 (bit 31 - 0)*/ + __IO uint32_t BLK10_1; /*!< General-purpose Register Block 10 (bit 63 - 32)*/ + __IO uint32_t BLK10_2; /*!< General-purpose Register Block 10 (bit 95 - 64)*/ + __IO uint32_t BLK10_3; /*!< General-purpose Register Block 10 (bit 127 - 96)*/ + __IO uint32_t BLK10_4; /*!< General-purpose Register Block 10 (bit 159 - 128)*/ + __IO uint32_t BLK10_5; /*!< General-purpose Register Block 10 (bit 191 - 160)*/ + __IO uint32_t BLK10_6; /*!< General-purpose Register Block 10 (bit 223 - 192)*/ + __IO uint32_t BLK10_7; /*!< General-purpose Register Block 10 (bit 255 - 224)*/ + __IO uint32_t BLK11_0; /*!< General-purpose Register Block 11 (bit 31 - 0)*/ + __IO uint32_t BLK11_1; /*!< General-purpose Register Block 11 (bit 63 - 32)*/ + __IO uint32_t BLK11_2; /*!< General-purpose Register Block 11 (bit 95 - 64)*/ + __IO uint32_t BLK11_3; /*!< General-purpose Register Block 11 (bit 127 - 96)*/ + __IO uint32_t BLK11_4; /*!< General-purpose Register Block 11 (bit 159 - 128)*/ + __IO uint32_t BLK11_5; /*!< General-purpose Register Block 11 (bit 191 - 160)*/ + __IO uint32_t BLK11_6; /*!< General-purpose Register Block 11 (bit 223 - 192)*/ + __IO uint32_t BLK11_7; /*!< General-purpose Register Block 11 (bit 255 - 224)*/ + __IO uint32_t BLK12_0; /*!< General-purpose Register Block 12 (bit 31 - 0)*/ + __IO uint32_t BLK12_1; /*!< General-purpose Register Block 12 (bit 63 - 32)*/ + __IO uint32_t BLK12_2; /*!< General-purpose Register Block 12 (bit 95 - 64)*/ + __IO uint32_t BLK12_3; /*!< General-purpose Register Block 12 (bit 127 - 96)*/ + __IO uint32_t BLK12_4; /*!< General-purpose Register Block 12 (bit 159 - 128)*/ + __IO uint32_t BLK12_5; /*!< General-purpose Register Block 12 (bit 191 - 160)*/ + __IO uint32_t BLK12_6; /*!< General-purpose Register Block 12 (bit 223 - 192)*/ + __IO uint32_t BLK12_7; /*!< General-purpose Register Block 12 (bit 255 - 224)*/ + __IO uint32_t BLK13_0; /*!< General-purpose Register Block 13 (bit 31 - 0)*/ + __IO uint32_t BLK13_1; /*!< General-purpose Register Block 13 (bit 63 - 32)*/ + __IO uint32_t BLK13_2; /*!< General-purpose Register Block 13 (bit 95 - 64)*/ + __IO uint32_t BLK13_3; /*!< General-purpose Register Block 13 (bit 127 - 96)*/ + __IO uint32_t BLK13_4; /*!< General-purpose Register Block 13 (bit 159 - 128)*/ + __IO uint32_t BLK13_5; /*!< General-purpose Register Block 13 (bit 191 - 160)*/ + __IO uint32_t BLK13_6; /*!< General-purpose Register Block 13 (bit 223 - 192)*/ + __IO uint32_t BLK13_7; /*!< General-purpose Register Block 13 (bit 255 - 224)*/ + __IO uint32_t BLK14_0; /*!< General-purpose Register Block 14 (bit 31 - 0)*/ + __IO uint32_t BLK14_1; /*!< General-purpose Register Block 14 (bit 63 - 32)*/ + __IO uint32_t BLK14_2; /*!< General-purpose Register Block 14 (bit 95 - 64)*/ + __IO uint32_t BLK14_3; /*!< General-purpose Register Block 14 (bit 127 - 96)*/ + __IO uint32_t BLK14_4; /*!< General-purpose Register Block 14 (bit 159 - 128)*/ + __IO uint32_t BLK14_5; /*!< General-purpose Register Block 14 (bit 191 - 160)*/ + __IO uint32_t BLK14_6; /*!< General-purpose Register Block 14 (bit 223 - 192)*/ + __IO uint32_t BLK14_7; /*!< General-purpose Register Block 14 (bit 255 - 224)*/ + __IO uint32_t BLK15_0; /*!< General-purpose Register Block 15 (bit 31 - 0)*/ + __IO uint32_t BLK15_1; /*!< General-purpose Register Block 15 (bit 63 - 32)*/ + __IO uint32_t BLK15_2; /*!< General-purpose Register Block 15 (bit 95 - 64)*/ + __IO uint32_t BLK15_3; /*!< General-purpose Register Block 15 (bit 127 - 96)*/ + __IO uint32_t BLK15_4; /*!< General-purpose Register Block 15 (bit 159 - 128)*/ + __IO uint32_t BLK15_5; /*!< General-purpose Register Block 15 (bit 191 - 160)*/ + __IO uint32_t BLK15_6; /*!< General-purpose Register Block 15 (bit 223 - 192)*/ + __IO uint32_t BLK15_7; /*!< General-purpose Register Block 15 (bit 255 - 224)*/ + __IO uint32_t BLK16_0; /*!< General-purpose Register Block 16 (bit 31 - 0)*/ + __IO uint32_t BLK16_1; /*!< General-purpose Register Block 16 (bit 63 - 32)*/ + __IO uint32_t BLK16_2; /*!< General-purpose Register Block 16 (bit 95 - 64)*/ + __IO uint32_t BLK16_3; /*!< General-purpose Register Block 16 (bit 127 - 96)*/ + __IO uint32_t BLK16_4; /*!< General-purpose Register Block 16 (bit 159 - 128)*/ + __IO uint32_t BLK16_5; /*!< General-purpose Register Block 16 (bit 191 - 160)*/ + __IO uint32_t BLK16_6; /*!< General-purpose Register Block 16 (bit 223 - 192)*/ + __IO uint32_t BLK16_7; /*!< General-purpose Register Block 16 (bit 255 - 224)*/ + __IO uint32_t BLK17_0; /*!< General-purpose Register Block 17 (bit 31 - 0)*/ + __IO uint32_t BLK17_1; /*!< General-purpose Register Block 17 (bit 63 - 32)*/ + __IO uint32_t BLK17_2; /*!< General-purpose Register Block 17 (bit 95 - 64)*/ + __IO uint32_t BLK17_3; /*!< General-purpose Register Block 17 (bit 127 - 96)*/ + __IO uint32_t BLK17_4; /*!< General-purpose Register Block 17 (bit 159 - 128)*/ + __IO uint32_t BLK17_5; /*!< General-purpose Register Block 17 (bit 191 - 160)*/ + __IO uint32_t BLK17_6; /*!< General-purpose Register Block 17 (bit 223 - 192)*/ + __IO uint32_t BLK17_7; /*!< General-purpose Register Block 17 (bit 255 - 224)*/ + __IO uint32_t BLK18_0; /*!< General-purpose Register Block 18 (bit 31 - 0)*/ + __IO uint32_t BLK18_1; /*!< General-purpose Register Block 18 (bit 63 - 32)*/ + __IO uint32_t BLK18_2; /*!< General-purpose Register Block 18 (bit 95 - 64)*/ + __IO uint32_t BLK18_3; /*!< General-purpose Register Block 18 (bit 127 - 96)*/ + __IO uint32_t BLK18_4; /*!< General-purpose Register Block 18 (bit 159 - 128)*/ + __IO uint32_t BLK18_5; /*!< General-purpose Register Block 18 (bit 191 - 160)*/ + __IO uint32_t BLK18_6; /*!< General-purpose Register Block 18 (bit 223 - 192)*/ + __IO uint32_t BLK18_7; /*!< General-purpose Register Block 18 (bit 255 - 224)*/ + __IO uint32_t BLK19_0; /*!< General-purpose Register Block 19 (bit 31 - 0)*/ + __IO uint32_t BLK19_1; /*!< General-purpose Register Block 19 (bit 63 - 32)*/ + __IO uint32_t BLK19_2; /*!< General-purpose Register Block 19 (bit 95 - 64)*/ + __IO uint32_t BLK19_3; /*!< General-purpose Register Block 19 (bit 127 - 96)*/ + __IO uint32_t BLK19_4; /*!< General-purpose Register Block 19 (bit 159 - 128)*/ + __IO uint32_t BLK19_5; /*!< General-purpose Register Block 19 (bit 191 - 160)*/ + __IO uint32_t BLK19_6; /*!< General-purpose Register Block 19 (bit 223 - 192)*/ + __IO uint32_t BLK19_7; /*!< General-purpose Register Block 19 (bit 255 - 224)*/ + __IO uint32_t BLK20_0; /*!< General-purpose Register Block 20 (bit 31 - 0)*/ + __IO uint32_t BLK20_1; /*!< General-purpose Register Block 20 (bit 63 - 32)*/ + __IO uint32_t BLK20_2; /*!< General-purpose Register Block 20 (bit 95 - 64)*/ + __IO uint32_t BLK20_3; /*!< General-purpose Register Block 20 (bit 127 - 96)*/ + __IO uint32_t BLK20_4; /*!< General-purpose Register Block 20 (bit 159 - 128)*/ + __IO uint32_t BLK20_5; /*!< General-purpose Register Block 20 (bit 191 - 160)*/ + __IO uint32_t BLK20_6; /*!< General-purpose Register Block 20 (bit 223 - 192)*/ + __IO uint32_t BLK20_7; /*!< General-purpose Register Block 20 (bit 255 - 224)*/ + __IO uint32_t BLK21_0; /*!< General-purpose Register Block 21 (bit 31 - 0)*/ + __IO uint32_t BLK21_1; /*!< General-purpose Register Block 21 (bit 63 - 32)*/ + __IO uint32_t BLK21_2; /*!< General-purpose Register Block 21 (bit 95 - 64)*/ + __IO uint32_t BLK21_3; /*!< General-purpose Register Block 21 (bit 127 - 96)*/ + __IO uint32_t BLK21_4; /*!< General-purpose Register Block 21 (bit 159 - 128)*/ + __IO uint32_t BLK21_5; /*!< General-purpose Register Block 21 (bit 191 - 160)*/ + __IO uint32_t BLK21_6; /*!< General-purpose Register Block 21 (bit 223 - 192)*/ + __IO uint32_t BLK21_7; /*!< General-purpose Register Block 21 (bit 255 - 224)*/ + __IO uint32_t BLK22_0; /*!< General-purpose Register Block 22 (bit 31 - 0)*/ + __IO uint32_t BLK22_1; /*!< General-purpose Register Block 22 (bit 63 - 32)*/ + __IO uint32_t BLK22_2; /*!< General-purpose Register Block 22 (bit 95 - 64)*/ + __IO uint32_t BLK22_3; /*!< General-purpose Register Block 22 (bit 127 - 96)*/ + __IO uint32_t BLK22_4; /*!< General-purpose Register Block 22 (bit 159 - 128)*/ + __IO uint32_t BLK22_5; /*!< General-purpose Register Block 22 (bit 191 - 160)*/ + __IO uint32_t BLK22_6; /*!< General-purpose Register Block 22 (bit 223 - 192)*/ + __IO uint32_t BLK22_7; /*!< General-purpose Register Block 22 (bit 255 - 224)*/ + __IO uint32_t BLK23_0; /*!< General-purpose Register Block 23 (bit 31 - 0)*/ + __IO uint32_t BLK23_1; /*!< General-purpose Register Block 23 (bit 63 - 32)*/ + __IO uint32_t BLK23_2; /*!< General-purpose Register Block 23 (bit 95 - 64)*/ + __IO uint32_t BLK23_3; /*!< General-purpose Register Block 23 (bit 127 - 96)*/ + __IO uint32_t BLK23_4; /*!< General-purpose Register Block 23 (bit 159 - 128)*/ + __IO uint32_t BLK23_5; /*!< General-purpose Register Block 23 (bit 191 - 160)*/ + __IO uint32_t BLK23_6; /*!< General-purpose Register Block 23 (bit 223 - 192)*/ + __IO uint32_t BLK23_7; /*!< General-purpose Register Block 23 (bit 255 - 224)*/ + __IO uint32_t BLK24_0; /*!< General-purpose Register Block 24 (bit 31 - 0)*/ + __IO uint32_t BLK24_1; /*!< General-purpose Register Block 24 (bit 63 - 32)*/ + __IO uint32_t BLK24_2; /*!< General-purpose Register Block 24 (bit 95 - 64)*/ + __IO uint32_t BLK24_3; /*!< General-purpose Register Block 24 (bit 127 - 96)*/ + __IO uint32_t BLK24_4; /*!< General-purpose Register Block 24 (bit 159 - 128)*/ + __IO uint32_t BLK24_5; /*!< General-purpose Register Block 24 (bit 191 - 160)*/ + __IO uint32_t BLK24_6; /*!< General-purpose Register Block 24 (bit 223 - 192)*/ + __IO uint32_t BLK24_7; /*!< General-purpose Register Block 24 (bit 255 - 224)*/ + __IO uint32_t BLK25_0; /*!< General-purpose Register Block 25 (bit 31 - 0)*/ + __IO uint32_t BLK25_1; /*!< General-purpose Register Block 25 (bit 63 - 32)*/ + __IO uint32_t BLK25_2; /*!< General-purpose Register Block 25 (bit 95 - 64)*/ + __IO uint32_t BLK25_3; /*!< General-purpose Register Block 25 (bit 127 - 96)*/ + __IO uint32_t BLK25_4; /*!< General-purpose Register Block 25 (bit 159 - 128)*/ + __IO uint32_t BLK25_5; /*!< General-purpose Register Block 25 (bit 191 - 160)*/ + __IO uint32_t BLK25_6; /*!< General-purpose Register Block 25 (bit 223 - 192)*/ + __IO uint32_t BLK25_7; /*!< General-purpose Register Block 25 (bit 255 - 224)*/ + __IO uint32_t BLK26_0; /*!< General-purpose Register Block 26 (bit 31 - 0)*/ + __IO uint32_t BLK26_1; /*!< General-purpose Register Block 26 (bit 63 - 32)*/ + __IO uint32_t BLK26_2; /*!< General-purpose Register Block 26 (bit 95 - 64)*/ + __IO uint32_t BLK26_3; /*!< General-purpose Register Block 26 (bit 127 - 96)*/ + __IO uint32_t BLK26_4; /*!< General-purpose Register Block 26 (bit 159 - 128)*/ + __IO uint32_t BLK26_5; /*!< General-purpose Register Block 26 (bit 191 - 160)*/ + __IO uint32_t BLK26_6; /*!< General-purpose Register Block 26 (bit 223 - 192)*/ + __IO uint32_t BLK26_7; /*!< General-purpose Register Block 26 (bit 255 - 224)*/ + __IO uint32_t BLK27_0; /*!< General-purpose Register Block 27 (bit 31 - 0)*/ + __IO uint32_t BLK27_1; /*!< General-purpose Register Block 27 (bit 63 - 32)*/ + __IO uint32_t BLK27_2; /*!< General-purpose Register Block 27 (bit 95 - 64)*/ + __IO uint32_t BLK27_3; /*!< General-purpose Register Block 27 (bit 127 - 96)*/ + __IO uint32_t BLK27_4; /*!< General-purpose Register Block 27 (bit 159 - 128)*/ + __IO uint32_t BLK27_5; /*!< General-purpose Register Block 27 (bit 191 - 160)*/ + __IO uint32_t BLK27_6; /*!< General-purpose Register Block 27 (bit 223 - 192)*/ + __IO uint32_t BLK27_7; /*!< General-purpose Register Block 27 (bit 255 - 224)*/ + __IO uint32_t BLK28_0; /*!< General-purpose Register Block 28 (bit 31 - 0)*/ + __IO uint32_t BLK28_1; /*!< General-purpose Register Block 28 (bit 63 - 32)*/ + __IO uint32_t BLK28_2; /*!< General-purpose Register Block 28 (bit 95 - 64)*/ + __IO uint32_t BLK28_3; /*!< General-purpose Register Block 28 (bit 127 - 96)*/ + __IO uint32_t BLK28_4; /*!< General-purpose Register Block 28 (bit 159 - 128)*/ + __IO uint32_t BLK28_5; /*!< General-purpose Register Block 28 (bit 191 - 160)*/ + __IO uint32_t BLK28_6; /*!< General-purpose Register Block 28 (bit 223 - 192)*/ + __IO uint32_t BLK28_7; /*!< General-purpose Register Block 28 (bit 255 - 224)*/ + __IO uint32_t BLK29_0; /*!< General-purpose Register Block 29 (bit 31 - 0)*/ + __IO uint32_t BLK29_1; /*!< General-purpose Register Block 29 (bit 63 - 32)*/ + __IO uint32_t BLK29_2; /*!< General-purpose Register Block 29 (bit 95 - 64)*/ + __IO uint32_t BLK29_3; /*!< General-purpose Register Block 29 (bit 127 - 96)*/ + __IO uint32_t BLK29_4; /*!< General-purpose Register Block 29 (bit 159 - 128)*/ + __IO uint32_t BLK29_5; /*!< General-purpose Register Block 29 (bit 191 - 160)*/ + __IO uint32_t BLK29_6; /*!< General-purpose Register Block 29 (bit 223 - 192)*/ + __IO uint32_t BLK29_7; /*!< General-purpose Register Block 29 (bit 255 - 224)*/ + __IO uint32_t BLK30_0; /*!< General-purpose Register Block 30 (bit 31 - 0)*/ + __IO uint32_t BLK30_1; /*!< General-purpose Register Block 30 (bit 63 - 32)*/ + __IO uint32_t BLK30_2; /*!< General-purpose Register Block 30 (bit 95 - 64)*/ + __IO uint32_t BLK30_3; /*!< General-purpose Register Block 30 (bit 127 - 96)*/ + __IO uint32_t BLK30_4; /*!< General-purpose Register Block 30 (bit 159 - 128)*/ + __IO uint32_t BLK30_5; /*!< General-purpose Register Block 30 (bit 191 - 160)*/ + __IO uint32_t BLK30_6; /*!< General-purpose Register Block 30 (bit 223 - 192)*/ + __IO uint32_t BLK30_7; /*!< General-purpose Register Block 30 (bit 255 - 224)*/ + __IO uint32_t BLK31_0; /*!< General-purpose Register Block 31 (bit 31 - 0)*/ + __IO uint32_t BLK31_1; /*!< General-purpose Register Block 31 (bit 63 - 32)*/ + __IO uint32_t BLK31_2; /*!< General-purpose Register Block 31 (bit 95 - 64)*/ + __IO uint32_t BLK31_3; /*!< General-purpose Register Block 31 (bit 127 - 96)*/ + __IO uint32_t BLK31_4; /*!< General-purpose Register Block 31 (bit 159 - 128)*/ + __IO uint32_t BLK31_5; /*!< General-purpose Register Block 31 (bit 191 - 160)*/ + __IO uint32_t BLK31_6; /*!< General-purpose Register Block 31 (bit 223 - 192)*/ + __IO uint32_t BLK31_7; /*!< General-purpose Register Block 31 (bit 255 - 224)*/ + uint32_t RESERVED1[260]; + __IO uint32_t BLK0_0; /*!< General-purpose Register Block 0 (bit 31 - 0)*/ + __IO uint32_t BLK0_1; /*!< General-purpose Register Block 0 (bit 63 - 32)*/ + __IO uint32_t BLK0_2; /*!< General-purpose Register Block 0 (bit 95 - 64)*/ + __IO uint32_t BLK0_3; /*!< General-purpose Register Block 0 (bit 127 - 96)*/ + __IO uint32_t BLK0_4; /*!< General-purpose Register Block 0 (bit 159 - 128)*/ + __IO uint32_t BLK0_5; /*!< General-purpose Register Block 0 (bit 191 - 160)*/ + __IO uint32_t BLK0_6; /*!< General-purpose Register Block 0 (bit 223 - 192)*/ + __IO uint32_t BLK0_7; /*!< General-purpose Register Block 0 (bit 255 - 224)*/ +} TSB_MLA_TypeDef; + +/** + * @brief Port A + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port A Data Register */ + __IO uint32_t CR; /*!< Port A Output Control Register */ + __IO uint32_t FR1; /*!< Port A Function Register 1 */ + __IO uint32_t FR2; /*!< Port A Function Register 2 */ + __IO uint32_t FR3; /*!< Port A Function Register 3 */ + __IO uint32_t FR4; /*!< Port A Function Register 4 */ + __IO uint32_t FR5; /*!< Port A Function Register 5 */ + uint32_t RESERVED0[3]; + __IO uint32_t OD; /*!< Port A Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port A Pull-up Control Register */ + __IO uint32_t PDN; /*!< Port A Pull-down Control Register */ + uint32_t RESERVED1; + __IO uint32_t IE; /*!< Port A Input Control Register */ +} TSB_PA_TypeDef; + +/** + * @brief Port B + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port B Data Register */ + __IO uint32_t CR; /*!< Port B Output Control Register */ + __IO uint32_t FR1; /*!< Port B Function Register 1 */ + __IO uint32_t FR2; /*!< Port B Function Register 2 */ + __IO uint32_t FR3; /*!< Port B Function Register 3 */ + __IO uint32_t FR4; /*!< Port B Function Register 4 */ + __IO uint32_t FR5; /*!< Port B Function Register 5 */ + uint32_t RESERVED0[3]; + __IO uint32_t OD; /*!< Port B Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port B Pull-up Control Register */ + uint32_t RESERVED1[2]; + __IO uint32_t IE; /*!< Port B Input Control Register */ +} TSB_PB_TypeDef; + +/** + * @brief Port C + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port C Data Register */ + __IO uint32_t CR; /*!< Port C Output Control Register */ + __IO uint32_t FR1; /*!< Port C Function Register 1 */ + __IO uint32_t FR2; /*!< Port C Function Register 2 */ + uint32_t RESERVED0[6]; + __IO uint32_t OD; /*!< Port C Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port C Pull-up Control Register */ + uint32_t RESERVED1[2]; + __IO uint32_t IE; /*!< Port C Input Control Register */ +} TSB_PC_TypeDef; + +/** + * @brief Port D + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port D Data Register */ + __IO uint32_t CR; /*!< Port D Output Control Register */ + __IO uint32_t FR1; /*!< Port D Function Register 1 */ + uint32_t RESERVED0[7]; + __IO uint32_t OD; /*!< Port D Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port D Pull-up Control Register */ + uint32_t RESERVED1[2]; + __IO uint32_t IE; /*!< Port D Input Control Register */ +} TSB_PD_TypeDef; + +/** + * @brief Port E + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port E Data Register */ + __IO uint32_t CR; /*!< Port E Output Control Register */ + __IO uint32_t FR1; /*!< Port E Function Register 1 */ + uint32_t RESERVED0; + __IO uint32_t FR3; /*!< Port E Function Register 3 */ + __IO uint32_t FR4; /*!< Port E Function Register 4 */ + __IO uint32_t FR5; /*!< Port E Function Register 5 */ + uint32_t RESERVED1[3]; + __IO uint32_t OD; /*!< Port E Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port E Pull-up Control Register */ + uint32_t RESERVED2[2]; + __IO uint32_t IE; /*!< Port E Input Control Register */ +} TSB_PE_TypeDef; + +/** + * @brief Port F + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port F Data Register */ + __IO uint32_t CR; /*!< Port F Output Control Register */ + __IO uint32_t FR1; /*!< Port F Function Register 1 */ + uint32_t RESERVED0; + __IO uint32_t FR3; /*!< Port F Function Register 3 */ + __IO uint32_t FR4; /*!< Port F Function Register 4 */ + __IO uint32_t FR5; /*!< Port F Function Register 5 */ + uint32_t RESERVED1[3]; + __IO uint32_t OD; /*!< Port F Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port E Pull-up Control Register */ + uint32_t RESERVED2[2]; + __IO uint32_t IE; /*!< Port F Input Control Register */ +} TSB_PF_TypeDef; + +/** + * @brief Port G + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port G Data Register */ + __IO uint32_t CR; /*!< Port G Output Control Register */ + __IO uint32_t FR1; /*!< Port G Function Register 1 */ + uint32_t RESERVED0; + __IO uint32_t FR3; /*!< Port G Function Register 3 */ + __IO uint32_t FR4; /*!< Port G Function Register 4 */ + __IO uint32_t FR5; /*!< Port G Function Register 5 */ + uint32_t RESERVED1[3]; + __IO uint32_t OD; /*!< Port G Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port G Pull-up Control Register */ + uint32_t RESERVED2[2]; + __IO uint32_t IE; /*!< Port G Input Control Register */ +} TSB_PG_TypeDef; + +/** + * @brief Port H + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port H Data Register */ + __IO uint32_t CR; /*!< Port H Output Control Register */ + __IO uint32_t FR1; /*!< Port H Function Register 1 */ + __IO uint32_t FR2; /*!< Port H Function Register 2 */ + __IO uint32_t FR3; /*!< Port H Function Register 3 */ + __IO uint32_t FR4; /*!< Port H Function Register 4 */ + uint32_t RESERVED0[4]; + __IO uint32_t OD; /*!< Port H Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port H Pull-up Control Register */ + uint32_t RESERVED1[2]; + __IO uint32_t IE; /*!< Port H Input Control Register */ +} TSB_PH_TypeDef; + +/** + * @brief Port J + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port J Data Register */ + __IO uint32_t CR; /*!< Port J Output Control Register */ + __IO uint32_t FR1; /*!< Port J Function Register 1 */ + __IO uint32_t FR2; /*!< Port J Function Register 2 */ + __IO uint32_t FR3; /*!< Port J Function Register 3 */ + uint32_t RESERVED0[5]; + __IO uint32_t OD; /*!< Port J Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port J Pull-up Control Register */ + uint32_t RESERVED1[2]; + __IO uint32_t IE; /*!< Port J Input Control Register */ +} TSB_PJ_TypeDef; + +/** + * @brief Port K + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port K Data Register */ + __IO uint32_t CR; /*!< Port K Output Control Register */ + uint32_t RESERVED0; + __IO uint32_t FR2; /*!< Port K Function Register 2 */ + __IO uint32_t FR3; /*!< Port K Function Register 3 */ + __IO uint32_t FR4; /*!< Port K Function Register 4 */ + uint32_t RESERVED1[4]; + __IO uint32_t OD; /*!< Port K Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port K Pull-up Control Register */ + uint32_t RESERVED2[2]; + __IO uint32_t IE; /*!< Port K Input Control Register */ +} TSB_PK_TypeDef; + +/** + * @brief Port L + */ +typedef struct +{ + __IO uint32_t DATA; /*!< Port L Data Register */ + __IO uint32_t CR; /*!< Port L Output Control Register */ + uint32_t RESERVED0[2]; + __IO uint32_t FR3; /*!< Port L Function Register 3 */ + __IO uint32_t FR4; /*!< Port L Function Register 4 */ + __IO uint32_t FR5; /*!< Port L Function Register 5 */ + __IO uint32_t FR6; /*!< Port L Function Register 6 */ + uint32_t RESERVED1[2]; + __IO uint32_t OD; /*!< Port L Open Drain Control Register */ + __IO uint32_t PUP; /*!< Port L Pull-up Control Register */ + uint32_t RESERVED2[2]; + __IO uint32_t IE; /*!< Port L Input Control Register */ +} TSB_PL_TypeDef; + +/** + * @brief 16-bit Timer/Event Counter (TB) + */ +typedef struct +{ + __IO uint32_t EN; /*!< TB Enable Register */ + __IO uint32_t RUN; /*!< TB RUN Register */ + __IO uint32_t CR; /*!< TB Control Register */ + __IO uint32_t MOD; /*!< TB Mode Register */ + __IO uint32_t FFCR; /*!< TB Flip-Flop Control Register */ + __I uint32_t ST; /*!< TB Status Register */ + __IO uint32_t IM; /*!< TB Interrupt Mask Register */ + __I uint32_t UC; /*!< TB Up-counter Capture Register */ + __IO uint32_t RG0; /*!< TB RG0 Timer Register */ + __IO uint32_t RG1; /*!< TB RG1 Timer Register */ + __I uint32_t CP0; /*!< TB CP0 Capture Register */ + __I uint32_t CP1; /*!< TB CP1 Capture Register */ +} TSB_TB_TypeDef; + +/** + * @brief 16-bit Multi-Purpose Timer (MPT-TMR/IGBT) + */ +typedef struct +{ + __IO uint32_t EN; /*!< MPT Enable Register */ + __IO uint32_t RUN; /*!< MPT RUN Register */ + __IO uint32_t TBCR; /*!< MPT Control Register */ + __IO uint32_t TBMOD; /*!< MPT Mode Register */ + __IO uint32_t TBFFCR; /*!< MPT Flip-Flop Control Register */ + __I uint32_t TBST; /*!< MPT Status Register */ + __IO uint32_t TBIM; /*!< MPT Interrupt Mask Register */ + __I uint32_t TBUC; /*!< MPT Read Capture Register */ + __IO uint32_t RG0; /*!< MPT RG0 Timer Register */ + __IO uint32_t RG1; /*!< MPT RG1 Timer Register */ + __I uint32_t CP0; /*!< MPT CP0 Capture Register */ + __I uint32_t CP1; /*!< MPT CP1 Capture Register */ + __IO uint32_t IGCR; /*!< IGBT Control Register */ + __O uint32_t IGRESTA; /*!< IGBT Timer Restart Register */ + __I uint32_t IGST; /*!< IGBT Timer Status Register */ + __IO uint32_t IGICR; /*!< IGBT Input Control Register */ + __IO uint32_t IGOCR; /*!< IGBT Output Control Register */ + __IO uint32_t IGRG2; /*!< IGBT RG2 Timer Register */ + __IO uint32_t IGRG3; /*!< IGBT RG3 Timer Register */ + __IO uint32_t IGRG4; /*!< IGBT RG4 Timer Register */ + __IO uint32_t IGEMGCR; /*!< IGBT EMG Control Register */ + __I uint32_t IGEMGST; /*!< IGBT EMG Status Register */ + __IO uint32_t IGTRG; /*!< IGBT Trigger Status Register */ +} TSB_MT_TypeDef; + +/** + * @brief Real Time Clock (RTC) + */ +typedef struct +{ + __IO uint8_t SECR; /*!< RTC Sec setting register */ + __IO uint8_t MINR; /*!< RTC Min settging register */ + __IO uint8_t HOURR; /*!< RTC Hour setting register */ + uint8_t RESERVED0; + __IO uint8_t DAYR; /*!< RTC Day setting register */ + __IO uint8_t DATER; /*!< RTC Date setting register */ + __IO uint8_t MONTHR; /*!< RTC Month settging register PAGE0 */ + __IO uint8_t YEARR; /*!< RTC Year setting register PAGE0 */ + __IO uint8_t PAGER; /*!< RTC Page register */ + uint8_t RESERVED1[3]; + __IO uint8_t RESTR; /*!< RTC Reset register */ + uint8_t RESERVED2; + __IO uint8_t PROTECT; /*!< RTC protect register */ + __IO uint8_t ADJCTL; /*!< RTC clock adjust control register */ + __IO uint16_t ADJDAT; /*!< RTC clock adjust data register */ +} TSB_RTC_TypeDef; + +/** + * @brief Serial Channel (SC) + */ +typedef struct +{ + __IO uint32_t EN; /*!< SC Enable Register */ + __IO uint32_t BUF; /*!< SC Buffer Register */ + __IO uint32_t CR; /*!< SC Control Register */ + __IO uint32_t MOD0; /*!< SC Mode Control Register 0 */ + __IO uint32_t BRCR; /*!< SC Baud Rate Generator Control Register */ + __IO uint32_t BRADD; /*!< SC Baud Rate Generator Control Register 2 */ + __IO uint32_t MOD1; /*!< SC Mode Control Register 1 */ + __IO uint32_t MOD2; /*!< SC Mode Control Register 2 */ + __IO uint32_t RFC; /*!< SC RX FIFO Configuration Register */ + __IO uint32_t TFC; /*!< SC TX FIFO Configuration Register */ + __I uint32_t RST; /*!< SC RX FIFO Status Register */ + __I uint32_t TST; /*!< SC TX FIFO Status Register */ + __IO uint32_t FCNF; /*!< SC FIFO Configuration Register */ +} TSB_SC_TypeDef; + +/** + * @brief Watchdog Timer (WD) + */ +typedef struct +{ + __IO uint32_t MOD; /*!< WD Mode Register */ + __O uint32_t CR; /*!< WD Control Register */ + __I uint32_t FLG; /*!< Flag Register */ +} TSB_WD_TypeDef; + +/** + * @brief Clock Generator (CG) + */ +typedef struct +{ + __IO uint32_t SYSCR; /*!< System Control Register */ + __IO uint32_t OSCCR; /*!< Oscillation Control Register */ + __IO uint32_t STBYCR; /*!< Standby Control Register */ + __IO uint32_t PLLSEL; /*!< PLL Selection Register */ + uint32_t RESERVED0[4]; + __IO uint32_t FSYSMSKA; /*!< fclk Supply Stop Register A */ + __IO uint32_t FSYSMSKB; /*!< fclk Supply Stop Register B */ + uint32_t RESERVED1[5]; + __IO uint32_t PROTECT; /*!< Protect Register */ + __IO uint32_t IMCGA; /*!< CG Interrupt Mode Control Register A */ + __IO uint32_t IMCGB; /*!< CG Interrupt Mode Control Register B */ + uint32_t RESERVED2[6]; + __O uint32_t ICRCG; /*!< CG Interrupt Request Clear Register */ + __IO uint32_t RSTFLG; /*!< Reset Flag Register */ + __I uint32_t NMIFLG; /*!< NMI Flag Register */ +} TSB_CG_TypeDef; + +/** + * @brief Low voltage detecter + */ +typedef struct +{ + uint32_t RESERVED0; + __IO uint32_t CR1; /*!< LVD detection control register 1 */ +} TSB_LVD_TypeDef; + +/** + * @brief Flash Control (FC) + */ +typedef struct +{ + uint32_t RESERVED0[4]; + __IO uint32_t SECBIT; /*!< Security Bit Register */ + uint32_t RESERVED1[3]; + __I uint32_t PSR0; /*!< Protect Status Register 0 */ + uint32_t RESERVED2[3]; + __I uint32_t PSR1; /*!< Protect Status Register 1 */ + uint32_t RESERVED3[51]; + __I uint32_t SR; /*!< Status Register */ + __I uint32_t SWPSR; /*!< Swap Status Register */ + uint32_t RESERVED4[14]; + __IO uint32_t AREASEL; /*!< Area Selection Register */ + uint32_t RESERVED5; + __IO uint32_t CR; /*!< Control Register */ + __IO uint32_t STSCLR; /*!< Status Clear Register */ + __IO uint32_t WCLKCR; /*!< WCLK Configuration Register */ + __IO uint32_t PROGCR; /*!< Program Counter Configuration Register */ + __IO uint32_t ERASECR; /*!< Erase Counter Configuration Register */ +} TSB_FC_TypeDef; + + +/* Memory map */ +#define FLASH_BASE (0x00000000UL) +#define RAM_BASE (0x20000000UL) +#define PERI_BASE (0x40000000UL) + + +#define TSB_SSP0_BASE (PERI_BASE + 0x0040000UL) +#define TSB_SSP1_BASE (PERI_BASE + 0x0041000UL) +#define TSB_SSP2_BASE (PERI_BASE + 0x0042000UL) +#define TSB_UART0_BASE (PERI_BASE + 0x0048000UL) +#define TSB_UART1_BASE (PERI_BASE + 0x0049000UL) +#define TSB_DMAA_BASE (PERI_BASE + 0x004C000UL) +#define TSB_DMAB_BASE (PERI_BASE + 0x004D000UL) +#define TSB_DMAC_BASE (PERI_BASE + 0x004E000UL) +#define TSB_AD_BASE (PERI_BASE + 0x0050000UL) +#define TSB_EXB_BASE (PERI_BASE + 0x005C000UL) +#define TSB_SNFC_BASE (PERI_BASE + 0x005C400UL) +#define TSB_DMAIF_BASE (PERI_BASE + 0x005F000UL) +#define TSB_ADILV_BASE (PERI_BASE + 0x0066000UL) +#define TSB_I2C0_BASE (PERI_BASE + 0x00A0000UL) +#define TSB_I2C1_BASE (PERI_BASE + 0x00A1000UL) +#define TSB_I2C2_BASE (PERI_BASE + 0x00A2000UL) +#define TSB_AES_BASE (PERI_BASE + 0x00B8200UL) +#define TSB_SHA_BASE (PERI_BASE + 0x00B8300UL) +#define TSB_ESG_BASE (PERI_BASE + 0x00B8400UL) +#define TSB_SRST_BASE (PERI_BASE + 0x00B8500UL) +#define TSB_MLA_BASE (PERI_BASE + 0x00B9000UL) +#define TSB_PA_BASE (PERI_BASE + 0x00C0000UL) +#define TSB_PB_BASE (PERI_BASE + 0x00C0100UL) +#define TSB_PC_BASE (PERI_BASE + 0x00C0200UL) +#define TSB_PD_BASE (PERI_BASE + 0x00C0300UL) +#define TSB_PE_BASE (PERI_BASE + 0x00C0400UL) +#define TSB_PF_BASE (PERI_BASE + 0x00C0500UL) +#define TSB_PG_BASE (PERI_BASE + 0x00C0600UL) +#define TSB_PH_BASE (PERI_BASE + 0x00C0700UL) +#define TSB_PJ_BASE (PERI_BASE + 0x00C0800UL) +#define TSB_PK_BASE (PERI_BASE + 0x00C0900UL) +#define TSB_PL_BASE (PERI_BASE + 0x00C0A00UL) +#define TSB_TB0_BASE (PERI_BASE + 0x00C4000UL) +#define TSB_TB1_BASE (PERI_BASE + 0x00C4100UL) +#define TSB_TB2_BASE (PERI_BASE + 0x00C4200UL) +#define TSB_TB3_BASE (PERI_BASE + 0x00C4300UL) +#define TSB_TB4_BASE (PERI_BASE + 0x00C4400UL) +#define TSB_TB5_BASE (PERI_BASE + 0x00C4500UL) +#define TSB_TB6_BASE (PERI_BASE + 0x00C4600UL) +#define TSB_TB7_BASE (PERI_BASE + 0x00C4700UL) +#define TSB_MT0_BASE (PERI_BASE + 0x00C7000UL) +#define TSB_MT1_BASE (PERI_BASE + 0x00C7100UL) +#define TSB_MT2_BASE (PERI_BASE + 0x00C7200UL) +#define TSB_MT3_BASE (PERI_BASE + 0x00C7300UL) +#define TSB_RTC_BASE (PERI_BASE + 0x00CC000UL) +#define TSB_SC0_BASE (PERI_BASE + 0x00E1000UL) +#define TSB_SC1_BASE (PERI_BASE + 0x00E1100UL) +#define TSB_SC2_BASE (PERI_BASE + 0x00E1200UL) +#define TSB_SC3_BASE (PERI_BASE + 0x00E1300UL) +#define TSB_WD_BASE (PERI_BASE + 0x00F2000UL) +#define TSB_CG_BASE (PERI_BASE + 0x00F3000UL) +#define TSB_LVD_BASE (PERI_BASE + 0x00F4000UL) +#define TSB_FC_BASE (PERI_BASE + 0x1DFF0000UL) + + +/* Peripheral declaration */ +#define TSB_SSP0 (( TSB_SSP_TypeDef *) TSB_SSP0_BASE) +#define TSB_SSP1 (( TSB_SSP_TypeDef *) TSB_SSP1_BASE) +#define TSB_SSP2 (( TSB_SSP_TypeDef *) TSB_SSP2_BASE) +#define TSB_UART0 (( TSB_UART_TypeDef *) TSB_UART0_BASE) +#define TSB_UART1 (( TSB_UART_TypeDef *) TSB_UART1_BASE) +#define TSB_DMAA (( TSB_DMA_TypeDef *) TSB_DMAA_BASE) +#define TSB_DMAB (( TSB_DMA_TypeDef *) TSB_DMAB_BASE) +#define TSB_DMAC (( TSB_DMA_TypeDef *) TSB_DMAC_BASE) +#define TSB_AD (( TSB_AD_TypeDef *) TSB_AD_BASE) +#define TSB_EXB (( TSB_EXB_TypeDef *) TSB_EXB_BASE) +#define TSB_SNFC (( TSB_SNFC_TypeDef *) TSB_SNFC_BASE) +#define TSB_DMAIF (( TSB_DMAIF_TypeDef *) TSB_DMAIF_BASE) +#define TSB_ADILV (( TSB_ADILV_TypeDef *) TSB_ADILV_BASE) +#define TSB_I2C0 (( TSB_I2C_TypeDef *) TSB_I2C0_BASE) +#define TSB_I2C1 (( TSB_I2C_TypeDef *) TSB_I2C1_BASE) +#define TSB_I2C2 (( TSB_I2C_TypeDef *) TSB_I2C2_BASE) +#define TSB_AES (( TSB_AES_TypeDef *) TSB_AES_BASE) +#define TSB_SHA (( TSB_SHA_TypeDef *) TSB_SHA_BASE) +#define TSB_ESG (( TSB_ESG_TypeDef *) TSB_ESG_BASE) +#define TSB_SRST (( TSB_SRST_TypeDef *) TSB_SRST_BASE) +#define TSB_MLA (( TSB_MLA_TypeDef *) TSB_MLA_BASE) +#define TSB_PA (( TSB_PA_TypeDef *) TSB_PA_BASE) +#define TSB_PB (( TSB_PB_TypeDef *) TSB_PB_BASE) +#define TSB_PC (( TSB_PC_TypeDef *) TSB_PC_BASE) +#define TSB_PD (( TSB_PD_TypeDef *) TSB_PD_BASE) +#define TSB_PE (( TSB_PE_TypeDef *) TSB_PE_BASE) +#define TSB_PF (( TSB_PF_TypeDef *) TSB_PF_BASE) +#define TSB_PG (( TSB_PG_TypeDef *) TSB_PG_BASE) +#define TSB_PH (( TSB_PH_TypeDef *) TSB_PH_BASE) +#define TSB_PJ (( TSB_PJ_TypeDef *) TSB_PJ_BASE) +#define TSB_PK (( TSB_PK_TypeDef *) TSB_PK_BASE) +#define TSB_PL (( TSB_PL_TypeDef *) TSB_PL_BASE) +#define TSB_TB0 (( TSB_TB_TypeDef *) TSB_TB0_BASE) +#define TSB_TB1 (( TSB_TB_TypeDef *) TSB_TB1_BASE) +#define TSB_TB2 (( TSB_TB_TypeDef *) TSB_TB2_BASE) +#define TSB_TB3 (( TSB_TB_TypeDef *) TSB_TB3_BASE) +#define TSB_TB4 (( TSB_TB_TypeDef *) TSB_TB4_BASE) +#define TSB_TB5 (( TSB_TB_TypeDef *) TSB_TB5_BASE) +#define TSB_TB6 (( TSB_TB_TypeDef *) TSB_TB6_BASE) +#define TSB_TB7 (( TSB_TB_TypeDef *) TSB_TB7_BASE) +#define TSB_MT0 (( TSB_MT_TypeDef *) TSB_MT0_BASE) +#define TSB_MT1 (( TSB_MT_TypeDef *) TSB_MT1_BASE) +#define TSB_MT2 (( TSB_MT_TypeDef *) TSB_MT2_BASE) +#define TSB_MT3 (( TSB_MT_TypeDef *) TSB_MT3_BASE) +#define TSB_RTC (( TSB_RTC_TypeDef *) TSB_RTC_BASE) +#define TSB_SC0 (( TSB_SC_TypeDef *) TSB_SC0_BASE) +#define TSB_SC1 (( TSB_SC_TypeDef *) TSB_SC1_BASE) +#define TSB_SC2 (( TSB_SC_TypeDef *) TSB_SC2_BASE) +#define TSB_SC3 (( TSB_SC_TypeDef *) TSB_SC3_BASE) +#define TSB_WD (( TSB_WD_TypeDef *) TSB_WD_BASE) +#define TSB_CG (( TSB_CG_TypeDef *) TSB_CG_BASE) +#define TSB_LVD (( TSB_LVD_TypeDef *) TSB_LVD_BASE) +#define TSB_FC (( TSB_FC_TypeDef *) TSB_FC_BASE) + + +/* Bit-Band for Device Specific Peripheral Registers */ +#define BITBAND_OFFSET (0x02000000UL) +#define BITBAND_PERI_BASE (PERI_BASE + BITBAND_OFFSET) +#define BITBAND_PERI(addr, bitnum) (BITBAND_PERI_BASE + (((uint32_t)(addr) - PERI_BASE) << 5) + ((uint32_t)(bitnum) << 2)) + + + +/* Synchronous Serial Port */ +#define TSB_SSP0_CR0_SPO (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->CR0,6))) +#define TSB_SSP0_CR0_SPH (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->CR0,7))) +#define TSB_SSP0_CR1_LBM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->CR1,0))) +#define TSB_SSP0_CR1_SSE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->CR1,1))) +#define TSB_SSP0_CR1_MS (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->CR1,2))) +#define TSB_SSP0_CR1_SOD (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->CR1,3))) +#define TSB_SSP0_SR_TFE (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->SR,0))) +#define TSB_SSP0_SR_TNF (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->SR,1))) +#define TSB_SSP0_SR_RNE (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->SR,2))) +#define TSB_SSP0_SR_RFF (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->SR,3))) +#define TSB_SSP0_SR_BSY (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->SR,4))) +#define TSB_SSP0_IMSC_RORIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->IMSC,0))) +#define TSB_SSP0_IMSC_RTIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->IMSC,1))) +#define TSB_SSP0_IMSC_RXIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->IMSC,2))) +#define TSB_SSP0_IMSC_TXIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->IMSC,3))) +#define TSB_SSP0_RIS_RORRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->RIS,0))) +#define TSB_SSP0_RIS_RTRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->RIS,1))) +#define TSB_SSP0_RIS_RXRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->RIS,2))) +#define TSB_SSP0_RIS_TXRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->RIS,3))) +#define TSB_SSP0_MIS_RORMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->MIS,0))) +#define TSB_SSP0_MIS_RTMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->MIS,1))) +#define TSB_SSP0_MIS_RXMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->MIS,2))) +#define TSB_SSP0_MIS_TXMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP0->MIS,3))) +#define TSB_SSP0_ICR_RORIC (*((__O uint32_t *)BITBAND_PERI(&TSB_SSP0->ICR,0))) +#define TSB_SSP0_ICR_RTIC (*((__O uint32_t *)BITBAND_PERI(&TSB_SSP0->ICR,1))) +#define TSB_SSP0_DMACR_RXDMAE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->DMACR,0))) +#define TSB_SSP0_DMACR_TXDMAE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP0->DMACR,1))) + +#define TSB_SSP1_CR0_SPO (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->CR0,6))) +#define TSB_SSP1_CR0_SPH (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->CR0,7))) +#define TSB_SSP1_CR1_LBM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->CR1,0))) +#define TSB_SSP1_CR1_SSE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->CR1,1))) +#define TSB_SSP1_CR1_MS (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->CR1,2))) +#define TSB_SSP1_CR1_SOD (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->CR1,3))) +#define TSB_SSP1_SR_TFE (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->SR,0))) +#define TSB_SSP1_SR_TNF (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->SR,1))) +#define TSB_SSP1_SR_RNE (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->SR,2))) +#define TSB_SSP1_SR_RFF (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->SR,3))) +#define TSB_SSP1_SR_BSY (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->SR,4))) +#define TSB_SSP1_IMSC_RORIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->IMSC,0))) +#define TSB_SSP1_IMSC_RTIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->IMSC,1))) +#define TSB_SSP1_IMSC_RXIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->IMSC,2))) +#define TSB_SSP1_IMSC_TXIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->IMSC,3))) +#define TSB_SSP1_RIS_RORRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->RIS,0))) +#define TSB_SSP1_RIS_RTRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->RIS,1))) +#define TSB_SSP1_RIS_RXRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->RIS,2))) +#define TSB_SSP1_RIS_TXRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->RIS,3))) +#define TSB_SSP1_MIS_RORMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->MIS,0))) +#define TSB_SSP1_MIS_RTMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->MIS,1))) +#define TSB_SSP1_MIS_RXMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->MIS,2))) +#define TSB_SSP1_MIS_TXMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP1->MIS,3))) +#define TSB_SSP1_ICR_RORIC (*((__O uint32_t *)BITBAND_PERI(&TSB_SSP1->ICR,0))) +#define TSB_SSP1_ICR_RTIC (*((__O uint32_t *)BITBAND_PERI(&TSB_SSP1->ICR,1))) +#define TSB_SSP1_DMACR_RXDMAE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->DMACR,0))) +#define TSB_SSP1_DMACR_TXDMAE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP1->DMACR,1))) + +#define TSB_SSP2_CR0_SPO (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->CR0,6))) +#define TSB_SSP2_CR0_SPH (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->CR0,7))) +#define TSB_SSP2_CR1_LBM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->CR1,0))) +#define TSB_SSP2_CR1_SSE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->CR1,1))) +#define TSB_SSP2_CR1_MS (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->CR1,2))) +#define TSB_SSP2_CR1_SOD (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->CR1,3))) +#define TSB_SSP2_SR_TFE (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->SR,0))) +#define TSB_SSP2_SR_TNF (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->SR,1))) +#define TSB_SSP2_SR_RNE (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->SR,2))) +#define TSB_SSP2_SR_RFF (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->SR,3))) +#define TSB_SSP2_SR_BSY (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->SR,4))) +#define TSB_SSP2_IMSC_RORIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->IMSC,0))) +#define TSB_SSP2_IMSC_RTIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->IMSC,1))) +#define TSB_SSP2_IMSC_RXIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->IMSC,2))) +#define TSB_SSP2_IMSC_TXIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->IMSC,3))) +#define TSB_SSP2_RIS_RORRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->RIS,0))) +#define TSB_SSP2_RIS_RTRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->RIS,1))) +#define TSB_SSP2_RIS_RXRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->RIS,2))) +#define TSB_SSP2_RIS_TXRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->RIS,3))) +#define TSB_SSP2_MIS_RORMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->MIS,0))) +#define TSB_SSP2_MIS_RTMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->MIS,1))) +#define TSB_SSP2_MIS_RXMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->MIS,2))) +#define TSB_SSP2_MIS_TXMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_SSP2->MIS,3))) +#define TSB_SSP2_ICR_RORIC (*((__O uint32_t *)BITBAND_PERI(&TSB_SSP2->ICR,0))) +#define TSB_SSP2_ICR_RTIC (*((__O uint32_t *)BITBAND_PERI(&TSB_SSP2->ICR,1))) +#define TSB_SSP2_DMACR_RXDMAE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->DMACR,0))) +#define TSB_SSP2_DMACR_TXDMAE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SSP2->DMACR,1))) + + +/* UART */ +#define TSB_UART0_DR_FE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->DR,8))) +#define TSB_UART0_DR_PE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->DR,9))) +#define TSB_UART0_DR_BE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->DR,10))) +#define TSB_UART0_DR_OE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->DR,11))) +#define TSB_UART0_RSR_FE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RSR,0))) +#define TSB_UART0_RSR_PE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RSR,1))) +#define TSB_UART0_RSR_BE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RSR,2))) +#define TSB_UART0_RSR_OE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RSR,3))) +#define TSB_UART0_ECR_FE (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ECR,0))) +#define TSB_UART0_ECR_PE (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ECR,1))) +#define TSB_UART0_ECR_BE (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ECR,2))) +#define TSB_UART0_ECR_OE (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ECR,3))) +#define TSB_UART0_FR_CTS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->FR,0))) +#define TSB_UART0_FR_DSR (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->FR,1))) +#define TSB_UART0_FR_DCD (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->FR,2))) +#define TSB_UART0_FR_BUSY (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->FR,3))) +#define TSB_UART0_FR_RXFE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->FR,4))) +#define TSB_UART0_FR_TXFF (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->FR,5))) +#define TSB_UART0_FR_RXFF (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->FR,6))) +#define TSB_UART0_FR_TXFE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->FR,7))) +#define TSB_UART0_FR_RI (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->FR,8))) +#define TSB_UART0_LCR_H_BRK (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->LCR_H,0))) +#define TSB_UART0_LCR_H_PEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->LCR_H,1))) +#define TSB_UART0_LCR_H_EPS (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->LCR_H,2))) +#define TSB_UART0_LCR_H_STP2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->LCR_H,3))) +#define TSB_UART0_LCR_H_FEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->LCR_H,4))) +#define TSB_UART0_LCR_H_SPS (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->LCR_H,7))) +#define TSB_UART0_CR_UARTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->CR,0))) +#define TSB_UART0_CR_SIREN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->CR,1))) +#define TSB_UART0_CR_SIRLP (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->CR,2))) +#define TSB_UART0_CR_TXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->CR,8))) +#define TSB_UART0_CR_RXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->CR,9))) +#define TSB_UART0_CR_DTR (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->CR,10))) +#define TSB_UART0_CR_RTS (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->CR,11))) +#define TSB_UART0_CR_RTSEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->CR,14))) +#define TSB_UART0_CR_CTSEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->CR,15))) +#define TSB_UART0_IMSC_RIMIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,0))) +#define TSB_UART0_IMSC_CTSMIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,1))) +#define TSB_UART0_IMSC_DCDMIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,2))) +#define TSB_UART0_IMSC_DSRMIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,3))) +#define TSB_UART0_IMSC_RXIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,4))) +#define TSB_UART0_IMSC_TXIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,5))) +#define TSB_UART0_IMSC_RTIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,6))) +#define TSB_UART0_IMSC_FEIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,7))) +#define TSB_UART0_IMSC_PEIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,8))) +#define TSB_UART0_IMSC_BEIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,9))) +#define TSB_UART0_IMSC_OEIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->IMSC,10))) +#define TSB_UART0_RIS_RIRMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,0))) +#define TSB_UART0_RIS_CTSRMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,1))) +#define TSB_UART0_RIS_DCDRMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,2))) +#define TSB_UART0_RIS_DSRRMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,3))) +#define TSB_UART0_RIS_RXRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,4))) +#define TSB_UART0_RIS_TXRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,5))) +#define TSB_UART0_RIS_RTRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,6))) +#define TSB_UART0_RIS_FERIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,7))) +#define TSB_UART0_RIS_PERIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,8))) +#define TSB_UART0_RIS_BERIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,9))) +#define TSB_UART0_RIS_OERIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->RIS,10))) +#define TSB_UART0_MIS_RIMMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,0))) +#define TSB_UART0_MIS_CTSMMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,1))) +#define TSB_UART0_MIS_DCDMMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,2))) +#define TSB_UART0_MIS_DSRMMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,3))) +#define TSB_UART0_MIS_RXMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,4))) +#define TSB_UART0_MIS_TXMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,5))) +#define TSB_UART0_MIS_RTMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,6))) +#define TSB_UART0_MIS_FEMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,7))) +#define TSB_UART0_MIS_PEMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,8))) +#define TSB_UART0_MIS_BEMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,9))) +#define TSB_UART0_MIS_OEMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART0->MIS,10))) +#define TSB_UART0_ICR_RIMIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,0))) +#define TSB_UART0_ICR_CTSMIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,1))) +#define TSB_UART0_ICR_DCDMIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,2))) +#define TSB_UART0_ICR_DSRMIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,3))) +#define TSB_UART0_ICR_RXIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,4))) +#define TSB_UART0_ICR_TXIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,5))) +#define TSB_UART0_ICR_RTIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,6))) +#define TSB_UART0_ICR_FEIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,7))) +#define TSB_UART0_ICR_PEIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,8))) +#define TSB_UART0_ICR_BEIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,9))) +#define TSB_UART0_ICR_OEIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART0->ICR,10))) +#define TSB_UART0_DMACR_RXDMAE (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->DMACR,0))) +#define TSB_UART0_DMACR_TXDMAE (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->DMACR,1))) +#define TSB_UART0_DMACR_DMAONERR (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART0->DMACR,2))) + +#define TSB_UART1_DR_FE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->DR,8))) +#define TSB_UART1_DR_PE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->DR,9))) +#define TSB_UART1_DR_BE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->DR,10))) +#define TSB_UART1_DR_OE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->DR,11))) +#define TSB_UART1_RSR_FE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RSR,0))) +#define TSB_UART1_RSR_PE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RSR,1))) +#define TSB_UART1_RSR_BE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RSR,2))) +#define TSB_UART1_RSR_OE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RSR,3))) +#define TSB_UART1_ECR_FE (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ECR,0))) +#define TSB_UART1_ECR_PE (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ECR,1))) +#define TSB_UART1_ECR_BE (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ECR,2))) +#define TSB_UART1_ECR_OE (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ECR,3))) +#define TSB_UART1_FR_CTS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->FR,0))) +#define TSB_UART1_FR_DSR (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->FR,1))) +#define TSB_UART1_FR_DCD (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->FR,2))) +#define TSB_UART1_FR_BUSY (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->FR,3))) +#define TSB_UART1_FR_RXFE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->FR,4))) +#define TSB_UART1_FR_TXFF (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->FR,5))) +#define TSB_UART1_FR_RXFF (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->FR,6))) +#define TSB_UART1_FR_TXFE (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->FR,7))) +#define TSB_UART1_FR_RI (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->FR,8))) +#define TSB_UART1_LCR_H_BRK (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->LCR_H,0))) +#define TSB_UART1_LCR_H_PEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->LCR_H,1))) +#define TSB_UART1_LCR_H_EPS (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->LCR_H,2))) +#define TSB_UART1_LCR_H_STP2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->LCR_H,3))) +#define TSB_UART1_LCR_H_FEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->LCR_H,4))) +#define TSB_UART1_LCR_H_SPS (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->LCR_H,7))) +#define TSB_UART1_CR_UARTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->CR,0))) +#define TSB_UART1_CR_SIREN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->CR,1))) +#define TSB_UART1_CR_SIRLP (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->CR,2))) +#define TSB_UART1_CR_TXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->CR,8))) +#define TSB_UART1_CR_RXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->CR,9))) +#define TSB_UART1_CR_DTR (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->CR,10))) +#define TSB_UART1_CR_RTS (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->CR,11))) +#define TSB_UART1_CR_RTSEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->CR,14))) +#define TSB_UART1_CR_CTSEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->CR,15))) +#define TSB_UART1_IMSC_RIMIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,0))) +#define TSB_UART1_IMSC_CTSMIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,1))) +#define TSB_UART1_IMSC_DCDMIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,2))) +#define TSB_UART1_IMSC_DSRMIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,3))) +#define TSB_UART1_IMSC_RXIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,4))) +#define TSB_UART1_IMSC_TXIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,5))) +#define TSB_UART1_IMSC_RTIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,6))) +#define TSB_UART1_IMSC_FEIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,7))) +#define TSB_UART1_IMSC_PEIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,8))) +#define TSB_UART1_IMSC_BEIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,9))) +#define TSB_UART1_IMSC_OEIM (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->IMSC,10))) +#define TSB_UART1_RIS_RIRMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,0))) +#define TSB_UART1_RIS_CTSRMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,1))) +#define TSB_UART1_RIS_DCDRMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,2))) +#define TSB_UART1_RIS_DSRRMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,3))) +#define TSB_UART1_RIS_RXRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,4))) +#define TSB_UART1_RIS_TXRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,5))) +#define TSB_UART1_RIS_RTRIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,6))) +#define TSB_UART1_RIS_FERIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,7))) +#define TSB_UART1_RIS_PERIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,8))) +#define TSB_UART1_RIS_BERIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,9))) +#define TSB_UART1_RIS_OERIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->RIS,10))) +#define TSB_UART1_MIS_RIMMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,0))) +#define TSB_UART1_MIS_CTSMMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,1))) +#define TSB_UART1_MIS_DCDMMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,2))) +#define TSB_UART1_MIS_DSRMMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,3))) +#define TSB_UART1_MIS_RXMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,4))) +#define TSB_UART1_MIS_TXMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,5))) +#define TSB_UART1_MIS_RTMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,6))) +#define TSB_UART1_MIS_FEMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,7))) +#define TSB_UART1_MIS_PEMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,8))) +#define TSB_UART1_MIS_BEMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,9))) +#define TSB_UART1_MIS_OEMIS (*((__I uint32_t *)BITBAND_PERI(&TSB_UART1->MIS,10))) +#define TSB_UART1_ICR_RIMIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,0))) +#define TSB_UART1_ICR_CTSMIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,1))) +#define TSB_UART1_ICR_DCDMIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,2))) +#define TSB_UART1_ICR_DSRMIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,3))) +#define TSB_UART1_ICR_RXIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,4))) +#define TSB_UART1_ICR_TXIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,5))) +#define TSB_UART1_ICR_RTIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,6))) +#define TSB_UART1_ICR_FEIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,7))) +#define TSB_UART1_ICR_PEIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,8))) +#define TSB_UART1_ICR_BEIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,9))) +#define TSB_UART1_ICR_OEIC (*((__O uint32_t *)BITBAND_PERI(&TSB_UART1->ICR,10))) +#define TSB_UART1_DMACR_RXDMAE (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->DMACR,0))) +#define TSB_UART1_DMACR_TXDMAE (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->DMACR,1))) +#define TSB_UART1_DMACR_DMAONERR (*((__IO uint32_t *)BITBAND_PERI(&TSB_UART1->DMACR,2))) + + +/* DMA Controller */ +#define TSB_DMAA_STATUS_MASTER_ENABLE (*((__I uint32_t *)BITBAND_PERI(&TSB_DMAA->STATUS,0))) +#define TSB_DMAA_CFG_MASTER_ENABLE (*((__O uint32_t *)BITBAND_PERI(&TSB_DMAA->CFG,0))) +#define TSB_DMAA_ERRCLR_ERR_CLR (*((__IO uint32_t *)BITBAND_PERI(&TSB_DMAA->ERRCLR,0))) + +#define TSB_DMAB_STATUS_MASTER_ENABLE (*((__I uint32_t *)BITBAND_PERI(&TSB_DMAB->STATUS,0))) +#define TSB_DMAB_CFG_MASTER_ENABLE (*((__O uint32_t *)BITBAND_PERI(&TSB_DMAB->CFG,0))) +#define TSB_DMAB_ERRCLR_ERR_CLR (*((__IO uint32_t *)BITBAND_PERI(&TSB_DMAB->ERRCLR,0))) + +#define TSB_DMAC_STATUS_MASTER_ENABLE (*((__I uint32_t *)BITBAND_PERI(&TSB_DMAC->STATUS,0))) +#define TSB_DMAC_CFG_MASTER_ENABLE (*((__O uint32_t *)BITBAND_PERI(&TSB_DMAC->CFG,0))) +#define TSB_DMAC_ERRCLR_ERR_CLR (*((__IO uint32_t *)BITBAND_PERI(&TSB_DMAC->ERRCLR,0))) + + +/* 12bit A/D Converter */ +#define TSB_AD_MOD0_ADS (*((__O uint32_t *)BITBAND_PERI(&TSB_AD->MOD0,0))) +#define TSB_AD_MOD0_HPADS (*((__O uint32_t *)BITBAND_PERI(&TSB_AD->MOD0,1))) +#define TSB_AD_MOD1_ADHWE (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->MOD1,0))) +#define TSB_AD_MOD1_ADHWS (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->MOD1,1))) +#define TSB_AD_MOD1_HPADHWE (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->MOD1,2))) +#define TSB_AD_MOD1_HPADHWS (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->MOD1,3))) +#define TSB_AD_MOD1_RCUT (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->MOD1,5))) +#define TSB_AD_MOD1_I2AD (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->MOD1,6))) +#define TSB_AD_MOD1_DACON (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->MOD1,7))) +#define TSB_AD_MOD3_SCAN (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->MOD3,0))) +#define TSB_AD_MOD3_REPEAT (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->MOD3,1))) +#define TSB_AD_CMPCR0_ADBIG0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->CMPCR0,4))) +#define TSB_AD_CMPCR0_CMPCOND0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->CMPCR0,5))) +#define TSB_AD_CMPCR0_CMP0EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->CMPCR0,7))) +#define TSB_AD_CMPCR1_ADBIG1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->CMPCR1,4))) +#define TSB_AD_CMPCR1_CMPCOND1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->CMPCR1,5))) +#define TSB_AD_CMPCR1_CMP1EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_AD->CMPCR1,7))) + + +/* External Bus Interface(EXB) */ +#define TSB_EXB_MOD_EXBSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_EXB->MOD,0))) +#define TSB_EXB_CS0_CSW0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_EXB->CS0,0))) +#define TSB_EXB_CS1_CSW0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_EXB->CS1,0))) +#define TSB_EXB_CS2_CSW0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_EXB->CS2,0))) +#define TSB_EXB_CS3_CSW0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_EXB->CS3,0))) + + +/* SNFC (SLC NAND Flash Controller) */ +#define TSB_SNFC_ENC_EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->ENC,0))) +#define TSB_SNFC_ECCMOD_SELBCH (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->ECCMOD,0))) +#define TSB_SNFC_ECCMOD_GOUTMODE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->ECCMOD,1))) +#define TSB_SNFC_IE_SEQEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->IE,0))) +#define TSB_SNFC_IE_SEQFLG (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->IE,1))) +#define TSB_SNFC_IE_SEQCLR (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->IE,2))) +#define TSB_SNFC_IE_PRTAEFLG (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->IE,6))) +#define TSB_SNFC_IE_PRTAECLR (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->IE,7))) +#define TSB_SNFC_IE_PRTCEFLG (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->IE,17))) +#define TSB_SNFC_IE_PRTCECLR (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->IE,18))) +#define TSB_SNFC_IE_FAILEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->IE,19))) +#define TSB_SNFC_IE_FAILFLG (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->IE,20))) +#define TSB_SNFC_IE_FAILCLR (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->IE,21))) +#define TSB_SNFC_CS1_PA3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS1,12))) +#define TSB_SNFC_CS1_PA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS1,13))) +#define TSB_SNFC_CS1_CA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS1,14))) +#define TSB_SNFC_CS1_CLE1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS1,15))) +#define TSB_SNFC_CS1_DMYA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS1,26))) +#define TSB_SNFC_CS1_BSY (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS1,27))) +#define TSB_SNFC_CS1_ALE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS1,30))) +#define TSB_SNFC_CS1_CLE2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS1,31))) +#define TSB_SNFC_CS2_PA3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS2,12))) +#define TSB_SNFC_CS2_PA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS2,13))) +#define TSB_SNFC_CS2_CA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS2,14))) +#define TSB_SNFC_CS2_CLE1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS2,15))) +#define TSB_SNFC_CS2_DMYA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS2,26))) +#define TSB_SNFC_CS2_BSY (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS2,27))) +#define TSB_SNFC_CS2_ALE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS2,30))) +#define TSB_SNFC_CS2_CLE2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS2,31))) +#define TSB_SNFC_CS3_PA3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS3,12))) +#define TSB_SNFC_CS3_PA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS3,13))) +#define TSB_SNFC_CS3_CA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS3,14))) +#define TSB_SNFC_CS3_CLE1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS3,15))) +#define TSB_SNFC_CS3_DMYA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS3,26))) +#define TSB_SNFC_CS3_BSY (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS3,27))) +#define TSB_SNFC_CS3_ALE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS3,30))) +#define TSB_SNFC_CS3_CLE2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS3,31))) +#define TSB_SNFC_CS4_PA3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS4,12))) +#define TSB_SNFC_CS4_PA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS4,13))) +#define TSB_SNFC_CS4_CA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS4,14))) +#define TSB_SNFC_CS4_CLE1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS4,15))) +#define TSB_SNFC_CS4_DMYA (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS4,26))) +#define TSB_SNFC_CS4_BSY (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS4,27))) +#define TSB_SNFC_CS4_ALE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS4,30))) +#define TSB_SNFC_CS4_CLE2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CS4,31))) +#define TSB_SNFC_CSE_CMDSQ1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CSE,0))) +#define TSB_SNFC_CSE_CMDSQ2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CSE,1))) +#define TSB_SNFC_CSE_CMDSQ3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CSE,2))) +#define TSB_SNFC_CSE_CMDSQ4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CSE,3))) +#define TSB_SNFC_CSE_RAMSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CSE,6))) +#define TSB_SNFC_CSE_DECMODE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->CSE,7))) +#define TSB_SNFC_EOC_GOUTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_SNFC->EOC,8))) +#define TSB_SNFC_EBS_BSYST0 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EBS,0))) +#define TSB_SNFC_EBS_BSYST1 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EBS,1))) +#define TSB_SNFC_EBS_BSYST2 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EBS,2))) +#define TSB_SNFC_EES_ERR1 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EES,0))) +#define TSB_SNFC_EES_ERR2 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EES,1))) +#define TSB_SNFC_EES_ERR3 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EES,2))) +#define TSB_SNFC_EES_ERR4 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EES,3))) +#define TSB_SNFC_EES_ERR5 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EES,4))) +#define TSB_SNFC_EES_ERR6 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EES,5))) +#define TSB_SNFC_EES_ERR7 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EES,6))) +#define TSB_SNFC_EES_ERR8 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EES,7))) +#define TSB_SNFC_EDS1_ERRST0 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS1,4))) +#define TSB_SNFC_EDS1_ERRST1 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS1,5))) +#define TSB_SNFC_EDS1_ERRST2 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS1,6))) +#define TSB_SNFC_EDS1_ERRST3 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS1,7))) +#define TSB_SNFC_EDS2_ERRST0 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS2,4))) +#define TSB_SNFC_EDS2_ERRST1 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS2,5))) +#define TSB_SNFC_EDS2_ERRST2 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS2,6))) +#define TSB_SNFC_EDS2_ERRST3 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS2,7))) +#define TSB_SNFC_EDS3_ERRST0 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS3,4))) +#define TSB_SNFC_EDS3_ERRST1 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS3,5))) +#define TSB_SNFC_EDS3_ERRST2 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS3,6))) +#define TSB_SNFC_EDS3_ERRST3 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS3,7))) +#define TSB_SNFC_EDS4_ERRST0 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS4,4))) +#define TSB_SNFC_EDS4_ERRST1 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS4,5))) +#define TSB_SNFC_EDS4_ERRST2 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS4,6))) +#define TSB_SNFC_EDS4_ERRST3 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS4,7))) +#define TSB_SNFC_EDS5_ERRST0 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS5,4))) +#define TSB_SNFC_EDS5_ERRST1 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS5,5))) +#define TSB_SNFC_EDS5_ERRST2 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS5,6))) +#define TSB_SNFC_EDS5_ERRST3 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS5,7))) +#define TSB_SNFC_EDS6_ERRST0 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS6,4))) +#define TSB_SNFC_EDS6_ERRST1 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS6,5))) +#define TSB_SNFC_EDS6_ERRST2 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS6,6))) +#define TSB_SNFC_EDS6_ERRST3 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS6,7))) +#define TSB_SNFC_EDS7_ERRST0 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS7,4))) +#define TSB_SNFC_EDS7_ERRST1 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS7,5))) +#define TSB_SNFC_EDS7_ERRST2 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS7,6))) +#define TSB_SNFC_EDS7_ERRST3 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS7,7))) +#define TSB_SNFC_EDS8_ERRST0 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS8,4))) +#define TSB_SNFC_EDS8_ERRST1 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS8,5))) +#define TSB_SNFC_EDS8_ERRST2 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS8,6))) +#define TSB_SNFC_EDS8_ERRST3 (*((__I uint32_t *)BITBAND_PERI(&TSB_SNFC->EDS8,7))) + + + +/* ADC infterface Register */ +#define TSB_ADILV_TRGSEL_TRGSELEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_ADILV->TRGSEL,0))) + + +/* I2C Bus Interface (I2C) */ +#define TSB_I2C0_CR1_NOACK (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C0->CR1,3))) +#define TSB_I2C0_CR1_ACK (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C0->CR1,4))) +#define TSB_I2C0_AR_ALS (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C0->AR,0))) +#define TSB_I2C0_CR2_I2CM (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C0->CR2,3))) +#define TSB_I2C0_CR2_PIN (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C0->CR2,4))) +#define TSB_I2C0_CR2_BB (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C0->CR2,5))) +#define TSB_I2C0_CR2_TRX (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C0->CR2,6))) +#define TSB_I2C0_CR2_MST (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C0->CR2,7))) +#define TSB_I2C0_SR_LRB (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C0->SR,0))) +#define TSB_I2C0_SR_ADO (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C0->SR,1))) +#define TSB_I2C0_SR_AAS (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C0->SR,2))) +#define TSB_I2C0_SR_AL (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C0->SR,3))) +#define TSB_I2C0_SR_PIN (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C0->SR,4))) +#define TSB_I2C0_SR_BB (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C0->SR,5))) +#define TSB_I2C0_SR_TRX (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C0->SR,6))) +#define TSB_I2C0_SR_MST (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C0->SR,7))) +#define TSB_I2C0_IE_IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C0->IE,0))) +#define TSB_I2C0_IR_ISIC (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C0->IR,0))) + +#define TSB_I2C1_CR1_NOACK (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C1->CR1,3))) +#define TSB_I2C1_CR1_ACK (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C1->CR1,4))) +#define TSB_I2C1_AR_ALS (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C1->AR,0))) +#define TSB_I2C1_CR2_I2CM (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C1->CR2,3))) +#define TSB_I2C1_CR2_PIN (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C1->CR2,4))) +#define TSB_I2C1_CR2_BB (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C1->CR2,5))) +#define TSB_I2C1_CR2_TRX (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C1->CR2,6))) +#define TSB_I2C1_CR2_MST (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C1->CR2,7))) +#define TSB_I2C1_SR_LRB (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C1->SR,0))) +#define TSB_I2C1_SR_ADO (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C1->SR,1))) +#define TSB_I2C1_SR_AAS (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C1->SR,2))) +#define TSB_I2C1_SR_AL (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C1->SR,3))) +#define TSB_I2C1_SR_PIN (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C1->SR,4))) +#define TSB_I2C1_SR_BB (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C1->SR,5))) +#define TSB_I2C1_SR_TRX (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C1->SR,6))) +#define TSB_I2C1_SR_MST (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C1->SR,7))) +#define TSB_I2C1_IE_IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C1->IE,0))) +#define TSB_I2C1_IR_ISIC (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C1->IR,0))) + +#define TSB_I2C2_CR1_NOACK (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C2->CR1,3))) +#define TSB_I2C2_CR1_ACK (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C2->CR1,4))) +#define TSB_I2C2_AR_ALS (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C2->AR,0))) +#define TSB_I2C2_CR2_I2CM (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C2->CR2,3))) +#define TSB_I2C2_CR2_PIN (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C2->CR2,4))) +#define TSB_I2C2_CR2_BB (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C2->CR2,5))) +#define TSB_I2C2_CR2_TRX (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C2->CR2,6))) +#define TSB_I2C2_CR2_MST (*((__O uint32_t *)BITBAND_PERI(&TSB_I2C2->CR2,7))) +#define TSB_I2C2_SR_LRB (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C2->SR,0))) +#define TSB_I2C2_SR_ADO (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C2->SR,1))) +#define TSB_I2C2_SR_AAS (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C2->SR,2))) +#define TSB_I2C2_SR_AL (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C2->SR,3))) +#define TSB_I2C2_SR_PIN (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C2->SR,4))) +#define TSB_I2C2_SR_BB (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C2->SR,5))) +#define TSB_I2C2_SR_TRX (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C2->SR,6))) +#define TSB_I2C2_SR_MST (*((__I uint32_t *)BITBAND_PERI(&TSB_I2C2->SR,7))) +#define TSB_I2C2_IE_IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C2->IE,0))) +#define TSB_I2C2_IR_ISIC (*((__IO uint32_t *)BITBAND_PERI(&TSB_I2C2->IR,0))) + + +/* Advanced Encryption Standard (AES) */ +#define TSB_AES_CLR_FIFOCLR (*((__O uint32_t *)BITBAND_PERI(&TSB_AES->CLR,0))) +#define TSB_AES_MOD_OP (*((__IO uint32_t *)BITBAND_PERI(&TSB_AES->MOD,0))) +#define TSB_AES_MOD_DMAEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_AES->MOD,1))) +#define TSB_AES_STATUS_BUSY (*((__I uint32_t *)BITBAND_PERI(&TSB_AES->STATUS,0))) +#define TSB_AES_STATUS_WFIFOST (*((__I uint32_t *)BITBAND_PERI(&TSB_AES->STATUS,1))) +#define TSB_AES_STATUS_RFIFOST (*((__I uint32_t *)BITBAND_PERI(&TSB_AES->STATUS,2))) + + +/* Secure Hash Algorithm Processor (SHA) */ +#define TSB_SHA_START_START (*((__O uint32_t *)BITBAND_PERI(&TSB_SHA->START,0))) +#define TSB_SHA_CR_INTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_SHA->CR,3))) +#define TSB_SHA_DMAEN_DMAEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_SHA->DMAEN,0))) +#define TSB_SHA_STATUS_BUSY (*((__I uint32_t *)BITBAND_PERI(&TSB_SHA->STATUS,0))) + + +/* Entropy Seed Generator (ESG) */ +#define TSB_ESG_CR_START (*((__O uint32_t *)BITBAND_PERI(&TSB_ESG->CR,0))) +#define TSB_ESG_ST_BUSY (*((__I uint32_t *)BITBAND_PERI(&TSB_ESG->ST,0))) +#define TSB_ESG_INT_INT (*((__IO uint32_t *)BITBAND_PERI(&TSB_ESG->INT,0))) + + +/* Soft Reset */ +#define TSB_SRST_IPRST_IPRST0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SRST->IPRST,0))) +#define TSB_SRST_IPRST_IPRST1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SRST->IPRST,1))) +#define TSB_SRST_IPRST_IPRST2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SRST->IPRST,2))) +#define TSB_SRST_IPRST_IPRST3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SRST->IPRST,3))) +#define TSB_SRST_IPRST_IPRST4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SRST->IPRST,4))) + + +/* Multiple Length Arithmetic Coprocessor (MLA) */ +#define TSB_MLA_ST_CABO (*((__IO uint32_t *)BITBAND_PERI(&TSB_MLA->ST,0))) +#define TSB_MLA_ST_BUSY (*((__IO uint32_t *)BITBAND_PERI(&TSB_MLA->ST,1))) + + +/* Port A */ +#define TSB_PA_DATA_PA0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->DATA,0))) +#define TSB_PA_DATA_PA1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->DATA,1))) +#define TSB_PA_DATA_PA2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->DATA,2))) +#define TSB_PA_DATA_PA3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->DATA,3))) +#define TSB_PA_DATA_PA4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->DATA,4))) +#define TSB_PA_DATA_PA5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->DATA,5))) +#define TSB_PA_DATA_PA6 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->DATA,6))) +#define TSB_PA_DATA_PA7 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->DATA,7))) +#define TSB_PA_CR_PA0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->CR,0))) +#define TSB_PA_CR_PA1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->CR,1))) +#define TSB_PA_CR_PA2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->CR,2))) +#define TSB_PA_CR_PA3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->CR,3))) +#define TSB_PA_CR_PA4C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->CR,4))) +#define TSB_PA_CR_PA5C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->CR,5))) +#define TSB_PA_CR_PA6C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->CR,6))) +#define TSB_PA_CR_PA7C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->CR,7))) +#define TSB_PA_FR1_PA0F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR1,0))) +#define TSB_PA_FR1_PA1F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR1,1))) +#define TSB_PA_FR1_PA2F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR1,2))) +#define TSB_PA_FR1_PA3F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR1,3))) +#define TSB_PA_FR1_PA4F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR1,4))) +#define TSB_PA_FR1_PA5F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR1,5))) +#define TSB_PA_FR1_PA6F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR1,6))) +#define TSB_PA_FR1_PA7F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR1,7))) +#define TSB_PA_FR2_PA0F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR2,0))) +#define TSB_PA_FR2_PA1F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR2,1))) +#define TSB_PA_FR2_PA2F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR2,2))) +#define TSB_PA_FR2_PA3F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR2,3))) +#define TSB_PA_FR2_PA4F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR2,4))) +#define TSB_PA_FR2_PA5F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR2,5))) +#define TSB_PA_FR2_PA6F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR2,6))) +#define TSB_PA_FR2_PA7F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR2,7))) +#define TSB_PA_FR3_PA5F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR3,5))) +#define TSB_PA_FR3_PA6F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR3,6))) +#define TSB_PA_FR3_PA7F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR3,7))) +#define TSB_PA_FR4_PA7F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR4,7))) +#define TSB_PA_FR5_PA7F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->FR5,7))) +#define TSB_PA_OD_PA0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->OD,0))) +#define TSB_PA_OD_PA1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->OD,1))) +#define TSB_PA_OD_PA2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->OD,2))) +#define TSB_PA_OD_PA3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->OD,3))) +#define TSB_PA_OD_PA4OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->OD,4))) +#define TSB_PA_OD_PA5OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->OD,5))) +#define TSB_PA_OD_PA6OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->OD,6))) +#define TSB_PA_OD_PA7OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->OD,7))) +#define TSB_PA_PUP_PA0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->PUP,0))) +#define TSB_PA_PUP_PA1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->PUP,1))) +#define TSB_PA_PUP_PA3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->PUP,3))) +#define TSB_PA_PUP_PA4UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->PUP,4))) +#define TSB_PA_PUP_PA5UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->PUP,5))) +#define TSB_PA_PUP_PA6UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->PUP,6))) +#define TSB_PA_PUP_PA7UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->PUP,7))) +#define TSB_PA_PDN_PA2DN (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->PDN,2))) +#define TSB_PA_IE_PA0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->IE,0))) +#define TSB_PA_IE_PA1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->IE,1))) +#define TSB_PA_IE_PA2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->IE,2))) +#define TSB_PA_IE_PA3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->IE,3))) +#define TSB_PA_IE_PA4IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->IE,4))) +#define TSB_PA_IE_PA5IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->IE,5))) +#define TSB_PA_IE_PA6IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->IE,6))) +#define TSB_PA_IE_PA7IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PA->IE,7))) + + +/* Port B */ +#define TSB_PB_DATA_PB0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->DATA,0))) +#define TSB_PB_DATA_PB1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->DATA,1))) +#define TSB_PB_DATA_PB2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->DATA,2))) +#define TSB_PB_DATA_PB3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->DATA,3))) +#define TSB_PB_DATA_PB4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->DATA,4))) +#define TSB_PB_DATA_PB5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->DATA,5))) +#define TSB_PB_DATA_PB6 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->DATA,6))) +#define TSB_PB_DATA_PB7 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->DATA,7))) +#define TSB_PB_CR_PB0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->CR,0))) +#define TSB_PB_CR_PB1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->CR,1))) +#define TSB_PB_CR_PB2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->CR,2))) +#define TSB_PB_CR_PB3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->CR,3))) +#define TSB_PB_CR_PB4C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->CR,4))) +#define TSB_PB_CR_PB5C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->CR,5))) +#define TSB_PB_CR_PB6C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->CR,6))) +#define TSB_PB_CR_PB7C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->CR,7))) +#define TSB_PB_FR1_PB0F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR1,0))) +#define TSB_PB_FR1_PB1F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR1,1))) +#define TSB_PB_FR1_PB2F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR1,2))) +#define TSB_PB_FR1_PB3F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR1,3))) +#define TSB_PB_FR1_PB4F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR1,4))) +#define TSB_PB_FR1_PB5F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR1,5))) +#define TSB_PB_FR1_PB6F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR1,6))) +#define TSB_PB_FR2_PB6F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR2,6))) +#define TSB_PB_FR3_PB0F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR3,0))) +#define TSB_PB_FR3_PB1F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR3,1))) +#define TSB_PB_FR3_PB2F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR3,2))) +#define TSB_PB_FR3_PB3F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR3,3))) +#define TSB_PB_FR3_PB4F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR3,4))) +#define TSB_PB_FR3_PB5F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR3,5))) +#define TSB_PB_FR4_PB2F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR4,2))) +#define TSB_PB_FR4_PB3F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR4,3))) +#define TSB_PB_FR4_PB6F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR4,6))) +#define TSB_PB_FR5_PB2F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR5,2))) +#define TSB_PB_FR5_PB3F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR5,3))) +#define TSB_PB_FR5_PB4F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR5,4))) +#define TSB_PB_FR5_PB5F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR5,5))) +#define TSB_PB_FR5_PB6F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR5,6))) +#define TSB_PB_FR5_PB7F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->FR5,7))) +#define TSB_PB_OD_PB0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->OD,0))) +#define TSB_PB_OD_PB1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->OD,1))) +#define TSB_PB_OD_PB2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->OD,2))) +#define TSB_PB_OD_PB3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->OD,3))) +#define TSB_PB_OD_PB4OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->OD,4))) +#define TSB_PB_OD_PB5OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->OD,5))) +#define TSB_PB_OD_PB6OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->OD,6))) +#define TSB_PB_OD_PB7OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->OD,7))) +#define TSB_PB_PUP_PB0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->PUP,0))) +#define TSB_PB_PUP_PB1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->PUP,1))) +#define TSB_PB_PUP_PB2UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->PUP,2))) +#define TSB_PB_PUP_PB3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->PUP,3))) +#define TSB_PB_PUP_PB4UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->PUP,4))) +#define TSB_PB_PUP_PB5UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->PUP,5))) +#define TSB_PB_PUP_PB6UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->PUP,6))) +#define TSB_PB_PUP_PB7UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->PUP,7))) +#define TSB_PB_IE_PB0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->IE,0))) +#define TSB_PB_IE_PB1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->IE,1))) +#define TSB_PB_IE_PB2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->IE,2))) +#define TSB_PB_IE_PB3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->IE,3))) +#define TSB_PB_IE_PB4IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->IE,4))) +#define TSB_PB_IE_PB5IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->IE,5))) +#define TSB_PB_IE_PB7IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PB->IE,7))) + + +/* Port C */ +#define TSB_PC_DATA_PC0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->DATA,0))) +#define TSB_PC_DATA_PC1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->DATA,1))) +#define TSB_PC_DATA_PC2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->DATA,2))) +#define TSB_PC_DATA_PC3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->DATA,3))) +#define TSB_PC_DATA_PC4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->DATA,4))) +#define TSB_PC_DATA_PC5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->DATA,5))) +#define TSB_PC_CR_PC0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->CR,0))) +#define TSB_PC_CR_PC1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->CR,1))) +#define TSB_PC_CR_PC2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->CR,2))) +#define TSB_PC_CR_PC3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->CR,3))) +#define TSB_PC_CR_PC4C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->CR,4))) +#define TSB_PC_CR_PC5C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->CR,5))) +#define TSB_PC_FR1_PC2F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->FR1,2))) +#define TSB_PC_FR1_PC3F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->FR1,3))) +#define TSB_PC_FR1_PC4F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->FR1,4))) +#define TSB_PC_FR1_PC5F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->FR1,5))) +#define TSB_PC_FR2_PC5F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->FR2,5))) +#define TSB_PC_OD_PC0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->OD,0))) +#define TSB_PC_OD_PC1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->OD,1))) +#define TSB_PC_OD_PC2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->OD,2))) +#define TSB_PC_OD_PC3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->OD,3))) +#define TSB_PC_OD_PC4OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->OD,4))) +#define TSB_PC_OD_PC5OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->OD,5))) +#define TSB_PC_PUP_PC0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->PUP,0))) +#define TSB_PC_PUP_PC1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->PUP,1))) +#define TSB_PC_PUP_PC2UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->PUP,2))) +#define TSB_PC_PUP_PC3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->PUP,3))) +#define TSB_PC_PUP_PC4UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->PUP,4))) +#define TSB_PC_PUP_PC5UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->PUP,5))) +#define TSB_PC_IE_PC0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->IE,0))) +#define TSB_PC_IE_PC1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->IE,1))) +#define TSB_PC_IE_PC2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->IE,2))) +#define TSB_PC_IE_PC3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->IE,3))) +#define TSB_PC_IE_PC4IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->IE,4))) +#define TSB_PC_IE_PC5IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PC->IE,5))) + + +/* Port D */ +#define TSB_PD_DATA_PD0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->DATA,0))) +#define TSB_PD_DATA_PD1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->DATA,1))) +#define TSB_PD_DATA_PD2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->DATA,2))) +#define TSB_PD_DATA_PD3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->DATA,3))) +#define TSB_PD_DATA_PD4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->DATA,4))) +#define TSB_PD_CR_PD0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->CR,0))) +#define TSB_PD_CR_PD1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->CR,1))) +#define TSB_PD_CR_PD2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->CR,2))) +#define TSB_PD_CR_PD3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->CR,3))) +#define TSB_PD_CR_PD4C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->CR,4))) +#define TSB_PD_FR1_PD0F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->FR1,0))) +#define TSB_PD_FR1_PD1F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->FR1,1))) +#define TSB_PD_FR1_PD2F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->FR1,2))) +#define TSB_PD_FR1_PD3F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->FR1,3))) +#define TSB_PD_FR1_PD4F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->FR1,4))) +#define TSB_PD_OD_PD0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->OD,0))) +#define TSB_PD_OD_PD1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->OD,1))) +#define TSB_PD_OD_PD2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->OD,2))) +#define TSB_PD_OD_PD3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->OD,3))) +#define TSB_PD_OD_PD4OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->OD,4))) +#define TSB_PD_PUP_PD0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->PUP,0))) +#define TSB_PD_PUP_PD1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->PUP,1))) +#define TSB_PD_PUP_PD2UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->PUP,2))) +#define TSB_PD_PUP_PD3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->PUP,3))) +#define TSB_PD_PUP_PD4UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->PUP,4))) +#define TSB_PD_IE_PD0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->IE,0))) +#define TSB_PD_IE_PD1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->IE,1))) +#define TSB_PD_IE_PD2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->IE,2))) +#define TSB_PD_IE_PD3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->IE,3))) +#define TSB_PD_IE_PD4IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PD->IE,4))) + + +/* Port E */ +#define TSB_PE_DATA_PE0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->DATA,0))) +#define TSB_PE_DATA_PE1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->DATA,1))) +#define TSB_PE_DATA_PE2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->DATA,2))) +#define TSB_PE_DATA_PE3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->DATA,3))) +#define TSB_PE_DATA_PE4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->DATA,4))) +#define TSB_PE_DATA_PE5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->DATA,5))) +#define TSB_PE_DATA_PE6 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->DATA,6))) +#define TSB_PE_DATA_PE7 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->DATA,7))) +#define TSB_PE_CR_PE0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->CR,0))) +#define TSB_PE_CR_PE1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->CR,1))) +#define TSB_PE_CR_PE2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->CR,2))) +#define TSB_PE_CR_PE3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->CR,3))) +#define TSB_PE_CR_PE4C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->CR,4))) +#define TSB_PE_CR_PE5C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->CR,5))) +#define TSB_PE_CR_PE6C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->CR,6))) +#define TSB_PE_CR_PE7C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->CR,7))) +#define TSB_PE_FR1_PE1F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR1,1))) +#define TSB_PE_FR1_PE2F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR1,2))) +#define TSB_PE_FR1_PE3F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR1,3))) +#define TSB_PE_FR1_PE4F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR1,4))) +#define TSB_PE_FR1_PE5F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR1,5))) +#define TSB_PE_FR1_PE6F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR1,6))) +#define TSB_PE_FR3_PE0F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR3,0))) +#define TSB_PE_FR3_PE1F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR3,1))) +#define TSB_PE_FR3_PE2F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR3,2))) +#define TSB_PE_FR3_PE3F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR3,3))) +#define TSB_PE_FR3_PE4F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR3,4))) +#define TSB_PE_FR3_PE5F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR3,5))) +#define TSB_PE_FR3_PE6F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR3,6))) +#define TSB_PE_FR3_PE7F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR3,7))) +#define TSB_PE_FR4_PE3F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR4,3))) +#define TSB_PE_FR4_PE4F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR4,4))) +#define TSB_PE_FR5_PE0F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR5,0))) +#define TSB_PE_FR5_PE1F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR5,1))) +#define TSB_PE_FR5_PE2F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR5,2))) +#define TSB_PE_FR5_PE3F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR5,3))) +#define TSB_PE_FR5_PE4F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR5,4))) +#define TSB_PE_FR5_PE7F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->FR5,7))) +#define TSB_PE_OD_PE0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->OD,0))) +#define TSB_PE_OD_PE1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->OD,1))) +#define TSB_PE_OD_PE2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->OD,2))) +#define TSB_PE_OD_PE3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->OD,3))) +#define TSB_PE_OD_PE4OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->OD,4))) +#define TSB_PE_OD_PE5OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->OD,5))) +#define TSB_PE_OD_PE6OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->OD,6))) +#define TSB_PE_OD_PE7OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->OD,7))) +#define TSB_PE_PUP_PE0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->PUP,0))) +#define TSB_PE_PUP_PE1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->PUP,1))) +#define TSB_PE_PUP_PE2UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->PUP,2))) +#define TSB_PE_PUP_PE3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->PUP,3))) +#define TSB_PE_PUP_PE4UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->PUP,4))) +#define TSB_PE_PUP_PE5UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->PUP,5))) +#define TSB_PE_PUP_PE6UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->PUP,6))) +#define TSB_PE_PUP_PE7UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->PUP,7))) +#define TSB_PE_IE_PE0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->IE,0))) +#define TSB_PE_IE_PE1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->IE,1))) +#define TSB_PE_IE_PE2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->IE,2))) +#define TSB_PE_IE_PE3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->IE,3))) +#define TSB_PE_IE_PE4IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->IE,4))) +#define TSB_PE_IE_PE5IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->IE,5))) +#define TSB_PE_IE_PE6IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->IE,6))) +#define TSB_PE_IE_PE7IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PE->IE,7))) + + +/* Port F */ +#define TSB_PF_DATA_PF0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->DATA,0))) +#define TSB_PF_DATA_PF1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->DATA,1))) +#define TSB_PF_DATA_PF2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->DATA,2))) +#define TSB_PF_DATA_PF3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->DATA,3))) +#define TSB_PF_DATA_PF4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->DATA,4))) +#define TSB_PF_DATA_PF5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->DATA,5))) +#define TSB_PF_DATA_PF6 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->DATA,6))) +#define TSB_PF_DATA_PF7 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->DATA,7))) +#define TSB_PF_CR_PF0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->CR,0))) +#define TSB_PF_CR_PF1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->CR,1))) +#define TSB_PF_CR_PF2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->CR,2))) +#define TSB_PF_CR_PF3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->CR,3))) +#define TSB_PF_CR_PF4C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->CR,4))) +#define TSB_PF_CR_PF5C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->CR,5))) +#define TSB_PF_CR_PF6C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->CR,6))) +#define TSB_PF_CR_PF7C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->CR,7))) +#define TSB_PF_FR1_PF0F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR1,0))) +#define TSB_PF_FR1_PF1F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR1,1))) +#define TSB_PF_FR1_PF2F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR1,2))) +#define TSB_PF_FR1_PF3F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR1,3))) +#define TSB_PF_FR1_PF4F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR1,4))) +#define TSB_PF_FR1_PF5F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR1,5))) +#define TSB_PF_FR1_PF6F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR1,6))) +#define TSB_PF_FR1_PF7F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR1,7))) +#define TSB_PF_FR3_PF0F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR3,0))) +#define TSB_PF_FR3_PF1F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR3,1))) +#define TSB_PF_FR3_PF2F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR3,2))) +#define TSB_PF_FR3_PF3F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR3,3))) +#define TSB_PF_FR3_PF4F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR3,4))) +#define TSB_PF_FR3_PF5F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR3,5))) +#define TSB_PF_FR3_PF6F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR3,6))) +#define TSB_PF_FR3_PF7F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR3,7))) +#define TSB_PF_FR4_PF1F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR4,1))) +#define TSB_PF_FR4_PF2F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR4,2))) +#define TSB_PF_FR4_PF6F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR4,6))) +#define TSB_PF_FR4_PF7F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR4,7))) +#define TSB_PF_FR5_PF3F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR5,3))) +#define TSB_PF_FR5_PF4F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR5,4))) +#define TSB_PF_FR5_PF5F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR5,5))) +#define TSB_PF_FR5_PF6F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->FR5,6))) +#define TSB_PF_OD_PF0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->OD,0))) +#define TSB_PF_OD_PF1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->OD,1))) +#define TSB_PF_OD_PF2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->OD,2))) +#define TSB_PF_OD_PF3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->OD,3))) +#define TSB_PF_OD_PF4OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->OD,4))) +#define TSB_PF_OD_PF5OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->OD,5))) +#define TSB_PF_OD_PF6OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->OD,6))) +#define TSB_PF_OD_PF7OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->OD,7))) +#define TSB_PF_PUP_PF0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->PUP,0))) +#define TSB_PF_PUP_PF1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->PUP,1))) +#define TSB_PF_PUP_PF2UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->PUP,2))) +#define TSB_PF_PUP_PF3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->PUP,3))) +#define TSB_PF_PUP_PF4UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->PUP,4))) +#define TSB_PF_PUP_PF5UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->PUP,5))) +#define TSB_PF_PUP_PF6UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->PUP,6))) +#define TSB_PF_PUP_PF7UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->PUP,7))) +#define TSB_PF_IE_PF0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->IE,0))) +#define TSB_PF_IE_PF1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->IE,1))) +#define TSB_PF_IE_PF2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->IE,2))) +#define TSB_PF_IE_PF3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->IE,3))) +#define TSB_PF_IE_PF4IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->IE,4))) +#define TSB_PF_IE_PF5IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->IE,5))) +#define TSB_PF_IE_PF6IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->IE,6))) +#define TSB_PF_IE_PF7IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PF->IE,7))) + + +/* Port G */ +#define TSB_PG_DATA_PG0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->DATA,0))) +#define TSB_PG_DATA_PG1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->DATA,1))) +#define TSB_PG_DATA_PG2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->DATA,2))) +#define TSB_PG_DATA_PG3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->DATA,3))) +#define TSB_PG_DATA_PG4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->DATA,4))) +#define TSB_PG_DATA_PG5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->DATA,5))) +#define TSB_PG_DATA_PG6 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->DATA,6))) +#define TSB_PG_DATA_PG7 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->DATA,7))) +#define TSB_PG_CR_PG0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->CR,0))) +#define TSB_PG_CR_PG1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->CR,1))) +#define TSB_PG_CR_PG2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->CR,2))) +#define TSB_PG_CR_PG3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->CR,3))) +#define TSB_PG_CR_PG4C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->CR,4))) +#define TSB_PG_CR_PG5C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->CR,5))) +#define TSB_PG_CR_PG6C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->CR,6))) +#define TSB_PG_CR_PG7C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->CR,7))) +#define TSB_PG_FR1_PG0F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR1,0))) +#define TSB_PG_FR1_PG1F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR1,1))) +#define TSB_PG_FR1_PG2F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR1,2))) +#define TSB_PG_FR1_PG3F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR1,3))) +#define TSB_PG_FR1_PG4F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR1,4))) +#define TSB_PG_FR1_PG5F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR1,5))) +#define TSB_PG_FR1_PG6F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR1,6))) +#define TSB_PG_FR1_PG7F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR1,7))) +#define TSB_PG_FR3_PG0F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR3,0))) +#define TSB_PG_FR3_PG1F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR3,1))) +#define TSB_PG_FR3_PG2F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR3,2))) +#define TSB_PG_FR3_PG3F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR3,3))) +#define TSB_PG_FR4_PG2F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR4,2))) +#define TSB_PG_FR4_PG3F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR4,3))) +#define TSB_PG_FR5_PG0F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR5,0))) +#define TSB_PG_FR5_PG1F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR5,1))) +#define TSB_PG_FR5_PG2F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR5,2))) +#define TSB_PG_FR5_PG3F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR5,3))) +#define TSB_PG_FR5_PG4F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR5,4))) +#define TSB_PG_FR5_PG5F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR5,5))) +#define TSB_PG_FR5_PG6F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR5,6))) +#define TSB_PG_FR5_PG7F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->FR5,7))) +#define TSB_PG_OD_PG0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->OD,0))) +#define TSB_PG_OD_PG1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->OD,1))) +#define TSB_PG_OD_PG2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->OD,2))) +#define TSB_PG_OD_PG3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->OD,3))) +#define TSB_PG_OD_PG4OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->OD,4))) +#define TSB_PG_OD_PG5OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->OD,5))) +#define TSB_PG_OD_PG6OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->OD,6))) +#define TSB_PG_OD_PG7OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->OD,7))) +#define TSB_PG_PUP_PG0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->PUP,0))) +#define TSB_PG_PUP_PG1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->PUP,1))) +#define TSB_PG_PUP_PG2UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->PUP,2))) +#define TSB_PG_PUP_PG3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->PUP,3))) +#define TSB_PG_PUP_PG4UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->PUP,4))) +#define TSB_PG_PUP_PG5UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->PUP,5))) +#define TSB_PG_PUP_PG6UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->PUP,6))) +#define TSB_PG_PUP_PG7UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->PUP,7))) +#define TSB_PG_IE_PG0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->IE,0))) +#define TSB_PG_IE_PG1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->IE,1))) +#define TSB_PG_IE_PG2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->IE,2))) +#define TSB_PG_IE_PG3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->IE,3))) +#define TSB_PG_IE_PG4IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->IE,4))) +#define TSB_PG_IE_PG5IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->IE,5))) +#define TSB_PG_IE_PG6IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->IE,6))) +#define TSB_PG_IE_PG7IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PG->IE,7))) + + +/* Port H */ +#define TSB_PH_DATA_PH0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->DATA,0))) +#define TSB_PH_DATA_PH1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->DATA,1))) +#define TSB_PH_DATA_PH2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->DATA,2))) +#define TSB_PH_DATA_PH3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->DATA,3))) +#define TSB_PH_CR_PH0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->CR,0))) +#define TSB_PH_CR_PH1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->CR,1))) +#define TSB_PH_CR_PH2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->CR,2))) +#define TSB_PH_CR_PH3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->CR,3))) +#define TSB_PH_FR1_PH0F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR1,0))) +#define TSB_PH_FR1_PH1F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR1,1))) +#define TSB_PH_FR1_PH2F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR1,2))) +#define TSB_PH_FR1_PH3F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR1,3))) +#define TSB_PH_FR2_PH0F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR2,0))) +#define TSB_PH_FR2_PH1F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR2,1))) +#define TSB_PH_FR3_PH0F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR3,0))) +#define TSB_PH_FR3_PH1F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR3,1))) +#define TSB_PH_FR3_PH2F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR3,2))) +#define TSB_PH_FR3_PH3F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR3,3))) +#define TSB_PH_FR4_PH0F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR4,0))) +#define TSB_PH_FR4_PH1F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR4,1))) +#define TSB_PH_FR4_PH2F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR4,2))) +#define TSB_PH_FR4_PH3F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->FR4,3))) +#define TSB_PH_OD_PH0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->OD,0))) +#define TSB_PH_OD_PH1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->OD,1))) +#define TSB_PH_OD_PH2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->OD,2))) +#define TSB_PH_OD_PH3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->OD,3))) +#define TSB_PH_PUP_PH0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->PUP,0))) +#define TSB_PH_PUP_PH1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->PUP,1))) +#define TSB_PH_PUP_PH2UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->PUP,2))) +#define TSB_PH_PUP_PH3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->PUP,3))) +#define TSB_PH_IE_PH0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->IE,0))) +#define TSB_PH_IE_PH1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->IE,1))) +#define TSB_PH_IE_PH2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->IE,2))) +#define TSB_PH_IE_PH3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PH->IE,3))) + + +/* Port J */ +#define TSB_PJ_DATA_PJ0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->DATA,0))) +#define TSB_PJ_DATA_PJ1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->DATA,1))) +#define TSB_PJ_DATA_PJ2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->DATA,2))) +#define TSB_PJ_DATA_PJ3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->DATA,3))) +#define TSB_PJ_DATA_PJ4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->DATA,4))) +#define TSB_PJ_DATA_PJ5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->DATA,5))) +#define TSB_PJ_DATA_PJ6 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->DATA,6))) +#define TSB_PJ_DATA_PJ7 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->DATA,7))) +#define TSB_PJ_CR_PJ0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->CR,0))) +#define TSB_PJ_CR_PJ1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->CR,1))) +#define TSB_PJ_CR_PJ2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->CR,2))) +#define TSB_PJ_CR_PJ3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->CR,3))) +#define TSB_PJ_CR_PJ4C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->CR,4))) +#define TSB_PJ_CR_PJ5C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->CR,5))) +#define TSB_PJ_CR_PJ6C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->CR,6))) +#define TSB_PJ_CR_PJ7C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->CR,7))) +#define TSB_PJ_FR1_PJ7F1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->FR1,7))) +#define TSB_PJ_FR2_PJ7F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->FR2,7))) +#define TSB_PJ_FR3_PJ7F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->FR3,7))) +#define TSB_PJ_OD_PJ0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->OD,0))) +#define TSB_PJ_OD_PJ1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->OD,1))) +#define TSB_PJ_OD_PJ2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->OD,2))) +#define TSB_PJ_OD_PJ3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->OD,3))) +#define TSB_PJ_OD_PJ4OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->OD,4))) +#define TSB_PJ_OD_PJ5OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->OD,5))) +#define TSB_PJ_OD_PJ6OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->OD,6))) +#define TSB_PJ_OD_PJ7OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->OD,7))) +#define TSB_PJ_PUP_PJ0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->PUP,0))) +#define TSB_PJ_PUP_PJ1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->PUP,1))) +#define TSB_PJ_PUP_PJ2UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->PUP,2))) +#define TSB_PJ_PUP_PJ3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->PUP,3))) +#define TSB_PJ_PUP_PJ4UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->PUP,4))) +#define TSB_PJ_PUP_PJ5UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->PUP,5))) +#define TSB_PJ_PUP_PJ6UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->PUP,6))) +#define TSB_PJ_PUP_PJ7UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->PUP,7))) +#define TSB_PJ_IE_PJ0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->IE,0))) +#define TSB_PJ_IE_PJ1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->IE,1))) +#define TSB_PJ_IE_PJ2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->IE,2))) +#define TSB_PJ_IE_PJ3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->IE,3))) +#define TSB_PJ_IE_PJ4IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->IE,4))) +#define TSB_PJ_IE_PJ5IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->IE,5))) +#define TSB_PJ_IE_PJ6IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->IE,6))) +#define TSB_PJ_IE_PJ7IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PJ->IE,7))) + + +/* Port K */ +#define TSB_PK_DATA_PK0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->DATA,0))) +#define TSB_PK_DATA_PK1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->DATA,1))) +#define TSB_PK_DATA_PK2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->DATA,2))) +#define TSB_PK_DATA_PK3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->DATA,3))) +#define TSB_PK_DATA_PK4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->DATA,4))) +#define TSB_PK_CR_PK0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->CR,0))) +#define TSB_PK_CR_PK1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->CR,1))) +#define TSB_PK_CR_PK2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->CR,2))) +#define TSB_PK_CR_PK3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->CR,3))) +#define TSB_PK_CR_PK4C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->CR,4))) +#define TSB_PK_FR2_PK1F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->FR2,1))) +#define TSB_PK_FR2_PK2F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->FR2,2))) +#define TSB_PK_FR2_PK3F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->FR2,3))) +#define TSB_PK_FR2_PK4F2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->FR2,4))) +#define TSB_PK_FR3_PK2F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->FR3,2))) +#define TSB_PK_FR3_PK3F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->FR3,3))) +#define TSB_PK_FR4_PK1F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->FR4,1))) +#define TSB_PK_OD_PK0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->OD,0))) +#define TSB_PK_OD_PK1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->OD,1))) +#define TSB_PK_OD_PK2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->OD,2))) +#define TSB_PK_OD_PK3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->OD,3))) +#define TSB_PK_OD_PK4OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->OD,4))) +#define TSB_PK_PUP_PK0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->PUP,0))) +#define TSB_PK_PUP_PK1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->PUP,1))) +#define TSB_PK_PUP_PK2UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->PUP,2))) +#define TSB_PK_PUP_PK3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->PUP,3))) +#define TSB_PK_PUP_PK4UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->PUP,4))) +#define TSB_PK_IE_PK0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->IE,0))) +#define TSB_PK_IE_PK1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->IE,1))) +#define TSB_PK_IE_PK2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->IE,2))) +#define TSB_PK_IE_PK3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->IE,3))) +#define TSB_PK_IE_PK4IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PK->IE,4))) + + +/* Port L */ +#define TSB_PL_DATA_PL0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->DATA,0))) +#define TSB_PL_DATA_PL1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->DATA,1))) +#define TSB_PL_DATA_PL2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->DATA,2))) +#define TSB_PL_DATA_PL3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->DATA,3))) +#define TSB_PL_CR_PL0C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->CR,0))) +#define TSB_PL_CR_PL1C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->CR,1))) +#define TSB_PL_CR_PL2C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->CR,2))) +#define TSB_PL_CR_PL3C (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->CR,3))) +#define TSB_PL_FR3_PL0F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR3,0))) +#define TSB_PL_FR3_PL1F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR3,1))) +#define TSB_PL_FR3_PL2F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR3,2))) +#define TSB_PL_FR3_PL3F3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR3,3))) +#define TSB_PL_FR4_PL0F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR4,0))) +#define TSB_PL_FR4_PL2F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR4,2))) +#define TSB_PL_FR4_PL3F4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR4,3))) +#define TSB_PL_FR5_PL1F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR5,1))) +#define TSB_PL_FR5_PL2F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR5,2))) +#define TSB_PL_FR5_PL3F5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR5,3))) +#define TSB_PL_FR6_PL3F6 (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->FR6,3))) +#define TSB_PL_OD_PL0OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->OD,0))) +#define TSB_PL_OD_PL1OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->OD,1))) +#define TSB_PL_OD_PL2OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->OD,2))) +#define TSB_PL_OD_PL3OD (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->OD,3))) +#define TSB_PL_PUP_PL0UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->PUP,0))) +#define TSB_PL_PUP_PL1UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->PUP,1))) +#define TSB_PL_PUP_PL2UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->PUP,2))) +#define TSB_PL_PUP_PL3UP (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->PUP,3))) +#define TSB_PL_IE_PL0IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->IE,0))) +#define TSB_PL_IE_PL1IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->IE,1))) +#define TSB_PL_IE_PL2IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->IE,2))) +#define TSB_PL_IE_PL3IE (*((__IO uint32_t *)BITBAND_PERI(&TSB_PL->IE,3))) + + +/* 16-bit Timer/Event Counter (TB) */ +#define TSB_TB0_EN_TBHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->EN,6))) +#define TSB_TB0_EN_TBEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->EN,7))) +#define TSB_TB0_RUN_TBRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->RUN,0))) +#define TSB_TB0_RUN_TBPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->RUN,2))) +#define TSB_TB0_CR_CSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->CR,0))) +#define TSB_TB0_CR_TRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->CR,1))) +#define TSB_TB0_CR_I2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->CR,3))) +#define TSB_TB0_CR_TBSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->CR,5))) +#define TSB_TB0_CR_TBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->CR,7))) +#define TSB_TB0_MOD_TBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->MOD,3))) +#define TSB_TB0_MOD_TBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_TB0->MOD,6))) +#define TSB_TB0_FFCR_TBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->FFCR,2))) +#define TSB_TB0_FFCR_TBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->FFCR,3))) +#define TSB_TB0_FFCR_TBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->FFCR,4))) +#define TSB_TB0_FFCR_TBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->FFCR,5))) +#define TSB_TB0_IM_TBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->IM,0))) +#define TSB_TB0_IM_TBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->IM,1))) +#define TSB_TB0_IM_TBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB0->IM,2))) + +#define TSB_TB1_EN_TBHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->EN,6))) +#define TSB_TB1_EN_TBEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->EN,7))) +#define TSB_TB1_RUN_TBRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->RUN,0))) +#define TSB_TB1_RUN_TBPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->RUN,2))) +#define TSB_TB1_CR_CSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->CR,0))) +#define TSB_TB1_CR_TRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->CR,1))) +#define TSB_TB1_CR_I2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->CR,3))) +#define TSB_TB1_CR_TBSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->CR,5))) +#define TSB_TB1_CR_TBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->CR,7))) +#define TSB_TB1_MOD_TBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->MOD,3))) +#define TSB_TB1_MOD_TBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_TB1->MOD,6))) +#define TSB_TB1_FFCR_TBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->FFCR,2))) +#define TSB_TB1_FFCR_TBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->FFCR,3))) +#define TSB_TB1_FFCR_TBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->FFCR,4))) +#define TSB_TB1_FFCR_TBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->FFCR,5))) +#define TSB_TB1_IM_TBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->IM,0))) +#define TSB_TB1_IM_TBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->IM,1))) +#define TSB_TB1_IM_TBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB1->IM,2))) + +#define TSB_TB2_EN_TBHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->EN,6))) +#define TSB_TB2_EN_TBEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->EN,7))) +#define TSB_TB2_RUN_TBRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->RUN,0))) +#define TSB_TB2_RUN_TBPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->RUN,2))) +#define TSB_TB2_CR_CSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->CR,0))) +#define TSB_TB2_CR_TRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->CR,1))) +#define TSB_TB2_CR_I2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->CR,3))) +#define TSB_TB2_CR_TBSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->CR,5))) +#define TSB_TB2_CR_TBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->CR,7))) +#define TSB_TB2_MOD_TBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->MOD,3))) +#define TSB_TB2_MOD_TBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_TB2->MOD,6))) +#define TSB_TB2_FFCR_TBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->FFCR,2))) +#define TSB_TB2_FFCR_TBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->FFCR,3))) +#define TSB_TB2_FFCR_TBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->FFCR,4))) +#define TSB_TB2_FFCR_TBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->FFCR,5))) +#define TSB_TB2_IM_TBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->IM,0))) +#define TSB_TB2_IM_TBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->IM,1))) +#define TSB_TB2_IM_TBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB2->IM,2))) + +#define TSB_TB3_EN_TBHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->EN,6))) +#define TSB_TB3_EN_TBEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->EN,7))) +#define TSB_TB3_RUN_TBRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->RUN,0))) +#define TSB_TB3_RUN_TBPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->RUN,2))) +#define TSB_TB3_CR_CSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->CR,0))) +#define TSB_TB3_CR_TRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->CR,1))) +#define TSB_TB3_CR_I2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->CR,3))) +#define TSB_TB3_CR_TBSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->CR,5))) +#define TSB_TB3_CR_TBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->CR,7))) +#define TSB_TB3_MOD_TBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->MOD,3))) +#define TSB_TB3_MOD_TBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_TB3->MOD,6))) +#define TSB_TB3_FFCR_TBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->FFCR,2))) +#define TSB_TB3_FFCR_TBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->FFCR,3))) +#define TSB_TB3_FFCR_TBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->FFCR,4))) +#define TSB_TB3_FFCR_TBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->FFCR,5))) +#define TSB_TB3_IM_TBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->IM,0))) +#define TSB_TB3_IM_TBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->IM,1))) +#define TSB_TB3_IM_TBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB3->IM,2))) + +#define TSB_TB4_EN_TBHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->EN,6))) +#define TSB_TB4_EN_TBEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->EN,7))) +#define TSB_TB4_RUN_TBRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->RUN,0))) +#define TSB_TB4_RUN_TBPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->RUN,2))) +#define TSB_TB4_CR_CSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->CR,0))) +#define TSB_TB4_CR_TRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->CR,1))) +#define TSB_TB4_CR_I2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->CR,3))) +#define TSB_TB4_CR_TBSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->CR,5))) +#define TSB_TB4_CR_TBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->CR,7))) +#define TSB_TB4_MOD_TBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->MOD,3))) +#define TSB_TB4_MOD_TBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_TB4->MOD,6))) +#define TSB_TB4_FFCR_TBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->FFCR,2))) +#define TSB_TB4_FFCR_TBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->FFCR,3))) +#define TSB_TB4_FFCR_TBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->FFCR,4))) +#define TSB_TB4_FFCR_TBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->FFCR,5))) +#define TSB_TB4_IM_TBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->IM,0))) +#define TSB_TB4_IM_TBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->IM,1))) +#define TSB_TB4_IM_TBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB4->IM,2))) + +#define TSB_TB5_EN_TBHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->EN,6))) +#define TSB_TB5_EN_TBEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->EN,7))) +#define TSB_TB5_RUN_TBRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->RUN,0))) +#define TSB_TB5_RUN_TBPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->RUN,2))) +#define TSB_TB5_CR_CSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->CR,0))) +#define TSB_TB5_CR_TRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->CR,1))) +#define TSB_TB5_CR_I2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->CR,3))) +#define TSB_TB5_CR_TBSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->CR,5))) +#define TSB_TB5_CR_TBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->CR,7))) +#define TSB_TB5_MOD_TBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->MOD,3))) +#define TSB_TB5_MOD_TBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_TB5->MOD,6))) +#define TSB_TB5_FFCR_TBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->FFCR,2))) +#define TSB_TB5_FFCR_TBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->FFCR,3))) +#define TSB_TB5_FFCR_TBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->FFCR,4))) +#define TSB_TB5_FFCR_TBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->FFCR,5))) +#define TSB_TB5_IM_TBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->IM,0))) +#define TSB_TB5_IM_TBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->IM,1))) +#define TSB_TB5_IM_TBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB5->IM,2))) + +#define TSB_TB6_EN_TBHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->EN,6))) +#define TSB_TB6_EN_TBEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->EN,7))) +#define TSB_TB6_RUN_TBRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->RUN,0))) +#define TSB_TB6_RUN_TBPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->RUN,2))) +#define TSB_TB6_CR_CSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->CR,0))) +#define TSB_TB6_CR_TRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->CR,1))) +#define TSB_TB6_CR_I2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->CR,3))) +#define TSB_TB6_CR_TBSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->CR,5))) +#define TSB_TB6_CR_TBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->CR,7))) +#define TSB_TB6_MOD_TBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->MOD,3))) +#define TSB_TB6_MOD_TBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_TB6->MOD,6))) +#define TSB_TB6_FFCR_TBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->FFCR,2))) +#define TSB_TB6_FFCR_TBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->FFCR,3))) +#define TSB_TB6_FFCR_TBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->FFCR,4))) +#define TSB_TB6_FFCR_TBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->FFCR,5))) +#define TSB_TB6_IM_TBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->IM,0))) +#define TSB_TB6_IM_TBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->IM,1))) +#define TSB_TB6_IM_TBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB6->IM,2))) + +#define TSB_TB7_EN_TBHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->EN,6))) +#define TSB_TB7_EN_TBEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->EN,7))) +#define TSB_TB7_RUN_TBRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->RUN,0))) +#define TSB_TB7_RUN_TBPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->RUN,2))) +#define TSB_TB7_CR_CSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->CR,0))) +#define TSB_TB7_CR_TRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->CR,1))) +#define TSB_TB7_CR_I2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->CR,3))) +#define TSB_TB7_CR_TBSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->CR,5))) +#define TSB_TB7_CR_TBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->CR,7))) +#define TSB_TB7_MOD_TBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->MOD,3))) +#define TSB_TB7_MOD_TBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_TB7->MOD,6))) +#define TSB_TB7_FFCR_TBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->FFCR,2))) +#define TSB_TB7_FFCR_TBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->FFCR,3))) +#define TSB_TB7_FFCR_TBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->FFCR,4))) +#define TSB_TB7_FFCR_TBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->FFCR,5))) +#define TSB_TB7_IM_TBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->IM,0))) +#define TSB_TB7_IM_TBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->IM,1))) +#define TSB_TB7_IM_TBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_TB7->IM,2))) + + +/* 16-bit Multi-Purpose Timer (MPT-TMR/IGBT) */ +#define TSB_MT0_EN_MTMODE (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->EN,0))) +#define TSB_MT0_EN_MTHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->EN,6))) +#define TSB_MT0_EN_MTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->EN,7))) +#define TSB_MT0_RUN_MTRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->RUN,0))) +#define TSB_MT0_RUN_MTPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->RUN,2))) +#define TSB_MT0_TBCR_MTTBCSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBCR,0))) +#define TSB_MT0_TBCR_MTTBTRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBCR,1))) +#define TSB_MT0_TBCR_MTI2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBCR,3))) +#define TSB_MT0_TBCR_MTTBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBCR,7))) +#define TSB_MT0_TBMOD_MTTBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBMOD,2))) +#define TSB_MT0_TBMOD_MTTBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_MT0->TBMOD,5))) +#define TSB_MT0_TBMOD_MTTBRSWR (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBMOD,6))) +#define TSB_MT0_TBFFCR_MTTBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBFFCR,2))) +#define TSB_MT0_TBFFCR_MTTBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBFFCR,3))) +#define TSB_MT0_TBFFCR_MTTBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBFFCR,4))) +#define TSB_MT0_TBFFCR_MTTBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBFFCR,5))) +#define TSB_MT0_TBST_MTTBINTTB0 (*((__I uint32_t *)BITBAND_PERI(&TSB_MT0->TBST,0))) +#define TSB_MT0_TBST_MTTBINTTB1 (*((__I uint32_t *)BITBAND_PERI(&TSB_MT0->TBST,1))) +#define TSB_MT0_TBST_MTTBINTTBOF (*((__I uint32_t *)BITBAND_PERI(&TSB_MT0->TBST,2))) +#define TSB_MT0_TBIM_MTTBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBIM,0))) +#define TSB_MT0_TBIM_MTTBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBIM,1))) +#define TSB_MT0_TBIM_MTTBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->TBIM,2))) +#define TSB_MT0_IGCR_IGSNGL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGCR,6))) +#define TSB_MT0_IGCR_IGCLSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGCR,7))) +#define TSB_MT0_IGCR_IGIDIS (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGCR,10))) +#define TSB_MT0_IGRESTA_IGRESTA (*((__O uint32_t *)BITBAND_PERI(&TSB_MT0->IGRESTA,0))) +#define TSB_MT0_IGST_IGST (*((__I uint32_t *)BITBAND_PERI(&TSB_MT0->IGST,0))) +#define TSB_MT0_IGICR_IGTRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGICR,6))) +#define TSB_MT0_IGICR_IGTRGM (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGICR,7))) +#define TSB_MT0_IGOCR_IGOEN0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGOCR,0))) +#define TSB_MT0_IGOCR_IGOEN1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGOCR,1))) +#define TSB_MT0_IGOCR_IGPOL0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGOCR,4))) +#define TSB_MT0_IGOCR_IGPOL1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGOCR,5))) +#define TSB_MT0_IGEMGCR_IGEMGEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGEMGCR,0))) +#define TSB_MT0_IGEMGCR_IGEMGOC (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT0->IGEMGCR,1))) +#define TSB_MT0_IGEMGCR_IGEMGRS (*((__O uint32_t *)BITBAND_PERI(&TSB_MT0->IGEMGCR,2))) +#define TSB_MT0_IGEMGST_IGEMGST (*((__I uint32_t *)BITBAND_PERI(&TSB_MT0->IGEMGST,0))) +#define TSB_MT0_IGEMGST_IGEMGIN (*((__I uint32_t *)BITBAND_PERI(&TSB_MT0->IGEMGST,1))) + +#define TSB_MT1_EN_MTMODE (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->EN,0))) +#define TSB_MT1_EN_MTHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->EN,6))) +#define TSB_MT1_EN_MTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->EN,7))) +#define TSB_MT1_RUN_MTRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->RUN,0))) +#define TSB_MT1_RUN_MTPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->RUN,2))) +#define TSB_MT1_TBCR_MTTBCSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBCR,0))) +#define TSB_MT1_TBCR_MTTBTRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBCR,1))) +#define TSB_MT1_TBCR_MTI2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBCR,3))) +#define TSB_MT1_TBCR_MTTBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBCR,7))) +#define TSB_MT1_TBMOD_MTTBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBMOD,2))) +#define TSB_MT1_TBMOD_MTTBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_MT1->TBMOD,5))) +#define TSB_MT1_TBMOD_MTTBRSWR (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBMOD,6))) +#define TSB_MT1_TBFFCR_MTTBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBFFCR,2))) +#define TSB_MT1_TBFFCR_MTTBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBFFCR,3))) +#define TSB_MT1_TBFFCR_MTTBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBFFCR,4))) +#define TSB_MT1_TBFFCR_MTTBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBFFCR,5))) +#define TSB_MT1_TBST_MTTBINTTB0 (*((__I uint32_t *)BITBAND_PERI(&TSB_MT1->TBST,0))) +#define TSB_MT1_TBST_MTTBINTTB1 (*((__I uint32_t *)BITBAND_PERI(&TSB_MT1->TBST,1))) +#define TSB_MT1_TBST_MTTBINTTBOF (*((__I uint32_t *)BITBAND_PERI(&TSB_MT1->TBST,2))) +#define TSB_MT1_TBIM_MTTBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBIM,0))) +#define TSB_MT1_TBIM_MTTBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBIM,1))) +#define TSB_MT1_TBIM_MTTBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->TBIM,2))) +#define TSB_MT1_IGCR_IGSNGL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGCR,6))) +#define TSB_MT1_IGCR_IGCLSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGCR,7))) +#define TSB_MT1_IGCR_IGIDIS (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGCR,10))) +#define TSB_MT1_IGRESTA_IGRESTA (*((__O uint32_t *)BITBAND_PERI(&TSB_MT1->IGRESTA,0))) +#define TSB_MT1_IGST_IGST (*((__I uint32_t *)BITBAND_PERI(&TSB_MT1->IGST,0))) +#define TSB_MT1_IGICR_IGTRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGICR,6))) +#define TSB_MT1_IGICR_IGTRGM (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGICR,7))) +#define TSB_MT1_IGOCR_IGOEN0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGOCR,0))) +#define TSB_MT1_IGOCR_IGOEN1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGOCR,1))) +#define TSB_MT1_IGOCR_IGPOL0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGOCR,4))) +#define TSB_MT1_IGOCR_IGPOL1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGOCR,5))) +#define TSB_MT1_IGEMGCR_IGEMGEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGEMGCR,0))) +#define TSB_MT1_IGEMGCR_IGEMGOC (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT1->IGEMGCR,1))) +#define TSB_MT1_IGEMGCR_IGEMGRS (*((__O uint32_t *)BITBAND_PERI(&TSB_MT1->IGEMGCR,2))) +#define TSB_MT1_IGEMGST_IGEMGST (*((__I uint32_t *)BITBAND_PERI(&TSB_MT1->IGEMGST,0))) +#define TSB_MT1_IGEMGST_IGEMGIN (*((__I uint32_t *)BITBAND_PERI(&TSB_MT1->IGEMGST,1))) + +#define TSB_MT2_EN_MTMODE (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->EN,0))) +#define TSB_MT2_EN_MTHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->EN,6))) +#define TSB_MT2_EN_MTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->EN,7))) +#define TSB_MT2_RUN_MTRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->RUN,0))) +#define TSB_MT2_RUN_MTPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->RUN,2))) +#define TSB_MT2_TBCR_MTTBCSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBCR,0))) +#define TSB_MT2_TBCR_MTTBTRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBCR,1))) +#define TSB_MT2_TBCR_MTI2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBCR,3))) +#define TSB_MT2_TBCR_MTTBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBCR,7))) +#define TSB_MT2_TBMOD_MTTBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBMOD,2))) +#define TSB_MT2_TBMOD_MTTBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_MT2->TBMOD,5))) +#define TSB_MT2_TBMOD_MTTBRSWR (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBMOD,6))) +#define TSB_MT2_TBFFCR_MTTBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBFFCR,2))) +#define TSB_MT2_TBFFCR_MTTBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBFFCR,3))) +#define TSB_MT2_TBFFCR_MTTBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBFFCR,4))) +#define TSB_MT2_TBFFCR_MTTBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBFFCR,5))) +#define TSB_MT2_TBST_MTTBINTTB0 (*((__I uint32_t *)BITBAND_PERI(&TSB_MT2->TBST,0))) +#define TSB_MT2_TBST_MTTBINTTB1 (*((__I uint32_t *)BITBAND_PERI(&TSB_MT2->TBST,1))) +#define TSB_MT2_TBST_MTTBINTTBOF (*((__I uint32_t *)BITBAND_PERI(&TSB_MT2->TBST,2))) +#define TSB_MT2_TBIM_MTTBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBIM,0))) +#define TSB_MT2_TBIM_MTTBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBIM,1))) +#define TSB_MT2_TBIM_MTTBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->TBIM,2))) +#define TSB_MT2_IGCR_IGSNGL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGCR,6))) +#define TSB_MT2_IGCR_IGCLSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGCR,7))) +#define TSB_MT2_IGCR_IGIDIS (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGCR,10))) +#define TSB_MT2_IGRESTA_IGRESTA (*((__O uint32_t *)BITBAND_PERI(&TSB_MT2->IGRESTA,0))) +#define TSB_MT2_IGST_IGST (*((__I uint32_t *)BITBAND_PERI(&TSB_MT2->IGST,0))) +#define TSB_MT2_IGICR_IGTRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGICR,6))) +#define TSB_MT2_IGICR_IGTRGM (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGICR,7))) +#define TSB_MT2_IGOCR_IGOEN0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGOCR,0))) +#define TSB_MT2_IGOCR_IGOEN1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGOCR,1))) +#define TSB_MT2_IGOCR_IGPOL0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGOCR,4))) +#define TSB_MT2_IGOCR_IGPOL1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGOCR,5))) +#define TSB_MT2_IGEMGCR_IGEMGEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGEMGCR,0))) +#define TSB_MT2_IGEMGCR_IGEMGOC (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT2->IGEMGCR,1))) +#define TSB_MT2_IGEMGCR_IGEMGRS (*((__O uint32_t *)BITBAND_PERI(&TSB_MT2->IGEMGCR,2))) +#define TSB_MT2_IGEMGST_IGEMGST (*((__I uint32_t *)BITBAND_PERI(&TSB_MT2->IGEMGST,0))) +#define TSB_MT2_IGEMGST_IGEMGIN (*((__I uint32_t *)BITBAND_PERI(&TSB_MT2->IGEMGST,1))) + +#define TSB_MT3_EN_MTMODE (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->EN,0))) +#define TSB_MT3_EN_MTHALT (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->EN,6))) +#define TSB_MT3_EN_MTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->EN,7))) +#define TSB_MT3_RUN_MTRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->RUN,0))) +#define TSB_MT3_RUN_MTPRUN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->RUN,2))) +#define TSB_MT3_TBCR_MTTBCSSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBCR,0))) +#define TSB_MT3_TBCR_MTTBTRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBCR,1))) +#define TSB_MT3_TBCR_MTI2TB (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBCR,3))) +#define TSB_MT3_TBCR_MTTBWBF (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBCR,7))) +#define TSB_MT3_TBMOD_MTTBCLE (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBMOD,2))) +#define TSB_MT3_TBMOD_MTTBCP (*((__O uint32_t *)BITBAND_PERI(&TSB_MT3->TBMOD,5))) +#define TSB_MT3_TBMOD_MTTBRSWR (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBMOD,6))) +#define TSB_MT3_TBFFCR_MTTBE0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBFFCR,2))) +#define TSB_MT3_TBFFCR_MTTBE1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBFFCR,3))) +#define TSB_MT3_TBFFCR_MTTBC0T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBFFCR,4))) +#define TSB_MT3_TBFFCR_MTTBC1T1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBFFCR,5))) +#define TSB_MT3_TBST_MTTBINTTB0 (*((__I uint32_t *)BITBAND_PERI(&TSB_MT3->TBST,0))) +#define TSB_MT3_TBST_MTTBINTTB1 (*((__I uint32_t *)BITBAND_PERI(&TSB_MT3->TBST,1))) +#define TSB_MT3_TBST_MTTBINTTBOF (*((__I uint32_t *)BITBAND_PERI(&TSB_MT3->TBST,2))) +#define TSB_MT3_TBIM_MTTBIM0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBIM,0))) +#define TSB_MT3_TBIM_MTTBIM1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBIM,1))) +#define TSB_MT3_TBIM_MTTBIMOF (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->TBIM,2))) +#define TSB_MT3_IGCR_IGSNGL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGCR,6))) +#define TSB_MT3_IGCR_IGCLSYNC (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGCR,7))) +#define TSB_MT3_IGCR_IGIDIS (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGCR,10))) +#define TSB_MT3_IGRESTA_IGRESTA (*((__O uint32_t *)BITBAND_PERI(&TSB_MT3->IGRESTA,0))) +#define TSB_MT3_IGST_IGST (*((__I uint32_t *)BITBAND_PERI(&TSB_MT3->IGST,0))) +#define TSB_MT3_IGICR_IGTRGSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGICR,6))) +#define TSB_MT3_IGICR_IGTRGM (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGICR,7))) +#define TSB_MT3_IGOCR_IGOEN0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGOCR,0))) +#define TSB_MT3_IGOCR_IGOEN1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGOCR,1))) +#define TSB_MT3_IGOCR_IGPOL0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGOCR,4))) +#define TSB_MT3_IGOCR_IGPOL1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGOCR,5))) +#define TSB_MT3_IGEMGCR_IGEMGEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGEMGCR,0))) +#define TSB_MT3_IGEMGCR_IGEMGOC (*((__IO uint32_t *)BITBAND_PERI(&TSB_MT3->IGEMGCR,1))) +#define TSB_MT3_IGEMGCR_IGEMGRS (*((__O uint32_t *)BITBAND_PERI(&TSB_MT3->IGEMGCR,2))) +#define TSB_MT3_IGEMGST_IGEMGST (*((__I uint32_t *)BITBAND_PERI(&TSB_MT3->IGEMGST,0))) +#define TSB_MT3_IGEMGST_IGEMGIN (*((__I uint32_t *)BITBAND_PERI(&TSB_MT3->IGEMGST,1))) + + +/* Real Time Clock (RTC) */ +#define TSB_RTC_ADJCTL_AJEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_RTC->ADJCTL,0))) + + +/* Serial Channel (SC) */ +#define TSB_SC0_EN_SIOE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->EN,0))) +#define TSB_SC0_EN_BRCKSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->EN,1))) +#define TSB_SC0_MOD0_WU (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->MOD0,4))) +#define TSB_SC0_MOD0_RXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->MOD0,5))) +#define TSB_SC0_MOD0_CTSE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->MOD0,6))) +#define TSB_SC0_MOD0_TB8 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->MOD0,7))) +#define TSB_SC0_BRCR_BRADDE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->BRCR,6))) +#define TSB_SC0_MOD1_TXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->MOD1,4))) +#define TSB_SC0_MOD1_I2SC (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->MOD1,7))) +#define TSB_SC0_MOD2_WBUF (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->MOD2,2))) +#define TSB_SC0_MOD2_DRCHG (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->MOD2,3))) +#define TSB_SC0_MOD2_SBLEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->MOD2,4))) +#define TSB_SC0_MOD2_TXRUN (*((__I uint32_t *)BITBAND_PERI(&TSB_SC0->MOD2,5))) +#define TSB_SC0_MOD2_RBFLL (*((__I uint32_t *)BITBAND_PERI(&TSB_SC0->MOD2,6))) +#define TSB_SC0_MOD2_TBEMP (*((__I uint32_t *)BITBAND_PERI(&TSB_SC0->MOD2,7))) +#define TSB_SC0_TST_TUR (*((__I uint32_t *)BITBAND_PERI(&TSB_SC0->TST,7))) +#define TSB_SC0_FCNF_CNFG (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->FCNF,0))) +#define TSB_SC0_FCNF_RXTXCNT (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->FCNF,1))) +#define TSB_SC0_FCNF_RFIE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->FCNF,2))) +#define TSB_SC0_FCNF_TFIE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->FCNF,3))) +#define TSB_SC0_FCNF_RFST (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC0->FCNF,4))) + +#define TSB_SC1_EN_SIOE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->EN,0))) +#define TSB_SC1_EN_BRCKSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->EN,1))) +#define TSB_SC1_MOD0_WU (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->MOD0,4))) +#define TSB_SC1_MOD0_RXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->MOD0,5))) +#define TSB_SC1_MOD0_CTSE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->MOD0,6))) +#define TSB_SC1_MOD0_TB8 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->MOD0,7))) +#define TSB_SC1_BRCR_BRADDE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->BRCR,6))) +#define TSB_SC1_MOD1_TXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->MOD1,4))) +#define TSB_SC1_MOD1_I2SC (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->MOD1,7))) +#define TSB_SC1_MOD2_WBUF (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->MOD2,2))) +#define TSB_SC1_MOD2_DRCHG (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->MOD2,3))) +#define TSB_SC1_MOD2_SBLEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->MOD2,4))) +#define TSB_SC1_MOD2_TXRUN (*((__I uint32_t *)BITBAND_PERI(&TSB_SC1->MOD2,5))) +#define TSB_SC1_MOD2_RBFLL (*((__I uint32_t *)BITBAND_PERI(&TSB_SC1->MOD2,6))) +#define TSB_SC1_MOD2_TBEMP (*((__I uint32_t *)BITBAND_PERI(&TSB_SC1->MOD2,7))) +#define TSB_SC1_TST_TUR (*((__I uint32_t *)BITBAND_PERI(&TSB_SC1->TST,7))) +#define TSB_SC1_FCNF_CNFG (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->FCNF,0))) +#define TSB_SC1_FCNF_RXTXCNT (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->FCNF,1))) +#define TSB_SC1_FCNF_RFIE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->FCNF,2))) +#define TSB_SC1_FCNF_TFIE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->FCNF,3))) +#define TSB_SC1_FCNF_RFST (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC1->FCNF,4))) + +#define TSB_SC2_EN_SIOE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->EN,0))) +#define TSB_SC2_EN_BRCKSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->EN,1))) +#define TSB_SC2_MOD0_WU (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->MOD0,4))) +#define TSB_SC2_MOD0_RXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->MOD0,5))) +#define TSB_SC2_MOD0_CTSE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->MOD0,6))) +#define TSB_SC2_MOD0_TB8 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->MOD0,7))) +#define TSB_SC2_BRCR_BRADDE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->BRCR,6))) +#define TSB_SC2_MOD1_TXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->MOD1,4))) +#define TSB_SC2_MOD1_I2SC (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->MOD1,7))) +#define TSB_SC2_MOD2_WBUF (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->MOD2,2))) +#define TSB_SC2_MOD2_DRCHG (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->MOD2,3))) +#define TSB_SC2_MOD2_SBLEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->MOD2,4))) +#define TSB_SC2_MOD2_TXRUN (*((__I uint32_t *)BITBAND_PERI(&TSB_SC2->MOD2,5))) +#define TSB_SC2_MOD2_RBFLL (*((__I uint32_t *)BITBAND_PERI(&TSB_SC2->MOD2,6))) +#define TSB_SC2_MOD2_TBEMP (*((__I uint32_t *)BITBAND_PERI(&TSB_SC2->MOD2,7))) +#define TSB_SC2_TST_TUR (*((__I uint32_t *)BITBAND_PERI(&TSB_SC2->TST,7))) +#define TSB_SC2_FCNF_CNFG (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->FCNF,0))) +#define TSB_SC2_FCNF_RXTXCNT (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->FCNF,1))) +#define TSB_SC2_FCNF_RFIE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->FCNF,2))) +#define TSB_SC2_FCNF_TFIE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->FCNF,3))) +#define TSB_SC2_FCNF_RFST (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC2->FCNF,4))) + +#define TSB_SC3_EN_SIOE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->EN,0))) +#define TSB_SC3_EN_BRCKSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->EN,1))) +#define TSB_SC3_MOD0_WU (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->MOD0,4))) +#define TSB_SC3_MOD0_RXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->MOD0,5))) +#define TSB_SC3_MOD0_CTSE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->MOD0,6))) +#define TSB_SC3_MOD0_TB8 (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->MOD0,7))) +#define TSB_SC3_BRCR_BRADDE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->BRCR,6))) +#define TSB_SC3_MOD1_TXE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->MOD1,4))) +#define TSB_SC3_MOD1_I2SC (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->MOD1,7))) +#define TSB_SC3_MOD2_WBUF (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->MOD2,2))) +#define TSB_SC3_MOD2_DRCHG (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->MOD2,3))) +#define TSB_SC3_MOD2_SBLEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->MOD2,4))) +#define TSB_SC3_MOD2_TXRUN (*((__I uint32_t *)BITBAND_PERI(&TSB_SC3->MOD2,5))) +#define TSB_SC3_MOD2_RBFLL (*((__I uint32_t *)BITBAND_PERI(&TSB_SC3->MOD2,6))) +#define TSB_SC3_MOD2_TBEMP (*((__I uint32_t *)BITBAND_PERI(&TSB_SC3->MOD2,7))) +#define TSB_SC3_TST_TUR (*((__I uint32_t *)BITBAND_PERI(&TSB_SC3->TST,7))) +#define TSB_SC3_FCNF_CNFG (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->FCNF,0))) +#define TSB_SC3_FCNF_RXTXCNT (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->FCNF,1))) +#define TSB_SC3_FCNF_RFIE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->FCNF,2))) +#define TSB_SC3_FCNF_TFIE (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->FCNF,3))) +#define TSB_SC3_FCNF_RFST (*((__IO uint32_t *)BITBAND_PERI(&TSB_SC3->FCNF,4))) + + +/* Watchdog Timer (WD) */ +#define TSB_WD_MOD_RESCR (*((__IO uint32_t *)BITBAND_PERI(&TSB_WD->MOD,1))) +#define TSB_WD_MOD_I2WDT (*((__IO uint32_t *)BITBAND_PERI(&TSB_WD->MOD,2))) +#define TSB_WD_MOD_WDTE (*((__IO uint32_t *)BITBAND_PERI(&TSB_WD->MOD,7))) +#define TSB_WD_FLG_FLG (*((__I uint32_t *)BITBAND_PERI(&TSB_WD->FLG,0))) + + +/* Clock Generator (CG) */ +#define TSB_CG_SYSCR_FPSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->SYSCR,12))) +#define TSB_CG_SYSCR_FCSTOP (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->SYSCR,20))) +#define TSB_CG_OSCCR_XEN1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,0))) +#define TSB_CG_OSCCR_XEN2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,1))) +#define TSB_CG_OSCCR_XTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,3))) +#define TSB_CG_OSCCR_DRVOSCL (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,7))) +#define TSB_CG_OSCCR_OSCSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,8))) +#define TSB_CG_OSCCR_OSCF (*((__I uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,9))) +#define TSB_CG_OSCCR_HOSCON (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,10))) +#define TSB_CG_OSCCR_DRVOSCH (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,12))) +#define TSB_CG_OSCCR_WUEON (*((__O uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,14))) +#define TSB_CG_OSCCR_WUEF (*((__I uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,15))) +#define TSB_CG_OSCCR_WUPSEL1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,16))) +#define TSB_CG_OSCCR_WUPSEL2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->OSCCR,17))) +#define TSB_CG_STBYCR_PTKEEP (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->STBYCR,17))) +#define TSB_CG_PLLSEL_PLLON (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->PLLSEL,16))) +#define TSB_CG_PLLSEL_PLLSEL (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->PLLSEL,17))) +#define TSB_CG_PLLSEL_PLLST (*((__I uint32_t *)BITBAND_PERI(&TSB_CG->PLLSEL,18))) +#define TSB_CG_FSYSMSKA_PORTA (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,0))) +#define TSB_CG_FSYSMSKA_PORTB (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,1))) +#define TSB_CG_FSYSMSKA_PORTC (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,2))) +#define TSB_CG_FSYSMSKA_PORTD (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,3))) +#define TSB_CG_FSYSMSKA_PORTE (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,4))) +#define TSB_CG_FSYSMSKA_PORTF (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,5))) +#define TSB_CG_FSYSMSKA_PORTG (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,6))) +#define TSB_CG_FSYSMSKA_PORTH (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,7))) +#define TSB_CG_FSYSMSKA_PORTJ (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,8))) +#define TSB_CG_FSYSMSKA_PORTK (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,9))) +#define TSB_CG_FSYSMSKA_PORTL (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,10))) +#define TSB_CG_FSYSMSKA_TMRB0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,13))) +#define TSB_CG_FSYSMSKA_TMRB1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,14))) +#define TSB_CG_FSYSMSKA_TMRB2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,15))) +#define TSB_CG_FSYSMSKA_TMRB3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,16))) +#define TSB_CG_FSYSMSKA_TMRB4 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,17))) +#define TSB_CG_FSYSMSKA_TMRB5 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,18))) +#define TSB_CG_FSYSMSKA_TMRB6 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,19))) +#define TSB_CG_FSYSMSKA_TMRB7 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,20))) +#define TSB_CG_FSYSMSKA_MPT0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,27))) +#define TSB_CG_FSYSMSKA_MPT1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,28))) +#define TSB_CG_FSYSMSKA_MPT2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,29))) +#define TSB_CG_FSYSMSKA_MPT3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,30))) +#define TSB_CG_FSYSMSKA_TRACECLK (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKA,31))) +#define TSB_CG_FSYSMSKB_SIO0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,0))) +#define TSB_CG_FSYSMSKB_SIO1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,1))) +#define TSB_CG_FSYSMSKB_SIO2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,2))) +#define TSB_CG_FSYSMSKB_SIO3 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,3))) +#define TSB_CG_FSYSMSKB_UART0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,10))) +#define TSB_CG_FSYSMSKB_UART1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,11))) +#define TSB_CG_FSYSMSKB_I2C0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,12))) +#define TSB_CG_FSYSMSKB_I2C1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,13))) +#define TSB_CG_FSYSMSKB_I2C2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,14))) +#define TSB_CG_FSYSMSKB_SSP0 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,17))) +#define TSB_CG_FSYSMSKB_SSP1 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,18))) +#define TSB_CG_FSYSMSKB_SSP2 (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,19))) +#define TSB_CG_FSYSMSKB_EBIF (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,20))) +#define TSB_CG_FSYSMSKB_DMAA (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,21))) +#define TSB_CG_FSYSMSKB_DMAB (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,22))) +#define TSB_CG_FSYSMSKB_DMAC (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,23))) +#define TSB_CG_FSYSMSKB_DMAIF (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,24))) +#define TSB_CG_FSYSMSKB_ADC (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,25))) +#define TSB_CG_FSYSMSKB_WDT (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,26))) +#define TSB_CG_FSYSMSKB_AES (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,28))) +#define TSB_CG_FSYSMSKB_SHA (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,29))) +#define TSB_CG_FSYSMSKB_ESG (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,30))) +#define TSB_CG_FSYSMSKB_MLA (*((__I uint32_t *)BITBAND_PERI(&TSB_CG->FSYSMSKB,31))) +#define TSB_CG_IMCGA_INT00EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->IMCGA,0))) +#define TSB_CG_IMCGA_INT01EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->IMCGA,8))) +#define TSB_CG_IMCGA_INT02EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->IMCGA,16))) +#define TSB_CG_IMCGA_INT03EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->IMCGA,24))) +#define TSB_CG_IMCGB_INT04EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->IMCGB,0))) +#define TSB_CG_IMCGB_INT05EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->IMCGB,8))) +#define TSB_CG_IMCGB_INT06EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->IMCGB,16))) +#define TSB_CG_IMCGB_INT07EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->IMCGB,24))) +#define TSB_CG_RSTFLG_PINRSTF (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->RSTFLG,0))) +#define TSB_CG_RSTFLG_OSCFLF (*((__I uint32_t *)BITBAND_PERI(&TSB_CG->RSTFLG,1))) +#define TSB_CG_RSTFLG_WDTRSTF (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->RSTFLG,2))) +#define TSB_CG_RSTFLG_BUPRSTF (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->RSTFLG,3))) +#define TSB_CG_RSTFLG_SYSRSTF (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->RSTFLG,4))) +#define TSB_CG_RSTFLG_LVDRSTF (*((__IO uint32_t *)BITBAND_PERI(&TSB_CG->RSTFLG,6))) + + +/* Low voltage detecter */ +#define TSB_LVD_CR1_EN (*((__IO uint32_t *)BITBAND_PERI(&TSB_LVD->CR1,0))) +#define TSB_LVD_CR1_INTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_LVD->CR1,5))) +#define TSB_LVD_CR1_RSTEN (*((__IO uint32_t *)BITBAND_PERI(&TSB_LVD->CR1,6))) +#define TSB_LVD_CR1_ST (*((__I uint32_t *)BITBAND_PERI(&TSB_LVD->CR1,7))) + +/** @} */ /* End of group Device_Peripheral_registers */ + +#ifdef __cplusplus +} +#endif + +#endif /* __TMPM46B_H__ */ + +/** @} */ /* End of group TMPM46B */ +/** @} */ /* End of group TOSHIBA_TX04_MICROCONTROLLER */