+ * \brief LM3S1968 registers definition.
+ */
+
+#ifndef LM3S1968_H
+#define LM3S1968_H
+
+#include <cfg/compiler.h>
+
+/**
+ * Watchdog Timer registers (WATCHDOG0)
+ */
+/*\{*/
+#define WATCHDOG0_LOAD_R (*((reg32_t *)0x40000000))
+#define WATCHDOG0_VALUE_R (*((reg32_t *)0x40000004))
+#define WATCHDOG0_CTL_R (*((reg32_t *)0x40000008))
+#define WATCHDOG0_ICR_R (*((reg32_t *)0x4000000C))
+#define WATCHDOG0_RIS_R (*((reg32_t *)0x40000010))
+#define WATCHDOG0_MIS_R (*((reg32_t *)0x40000014))
+#define WATCHDOG0_TEST_R (*((reg32_t *)0x40000418))
+#define WATCHDOG0_LOCK_R (*((reg32_t *)0x40000C00))
+/*\}*/
+
+/**
+ * GPIO registers (PORTA)
+ */
+/*\{*/
+#define GPIO_PORTA_DATA_BITS_R ((reg32_t *)0x40004000)
+#define GPIO_PORTA_DATA_R (*((reg32_t *)0x400043FC))
+#define GPIO_PORTA_DIR_R (*((reg32_t *)0x40004400))
+#define GPIO_PORTA_IS_R (*((reg32_t *)0x40004404))
+#define GPIO_PORTA_IBE_R (*((reg32_t *)0x40004408))
+#define GPIO_PORTA_IEV_R (*((reg32_t *)0x4000440C))
+#define GPIO_PORTA_IM_R (*((reg32_t *)0x40004410))
+#define GPIO_PORTA_RIS_R (*((reg32_t *)0x40004414))
+#define GPIO_PORTA_MIS_R (*((reg32_t *)0x40004418))
+#define GPIO_PORTA_ICR_R (*((reg32_t *)0x4000441C))
+#define GPIO_PORTA_AFSEL_R (*((reg32_t *)0x40004420))
+#define GPIO_PORTA_DR2R_R (*((reg32_t *)0x40004500))
+#define GPIO_PORTA_DR4R_R (*((reg32_t *)0x40004504))
+#define GPIO_PORTA_DR8R_R (*((reg32_t *)0x40004508))
+#define GPIO_PORTA_ODR_R (*((reg32_t *)0x4000450C))
+#define GPIO_PORTA_PUR_R (*((reg32_t *)0x40004510))
+#define GPIO_PORTA_PDR_R (*((reg32_t *)0x40004514))
+#define GPIO_PORTA_SLR_R (*((reg32_t *)0x40004518))
+#define GPIO_PORTA_DEN_R (*((reg32_t *)0x4000451C))
+#define GPIO_PORTA_LOCK_R (*((reg32_t *)0x40004520))
+#define GPIO_PORTA_CR_R (*((reg32_t *)0x40004524))
+/*\}*/
+
+/**
+ * GPIO registers (PORTB)
+ */
+/*\{*/
+#define GPIO_PORTB_DATA_BITS_R ((reg32_t *)0x40005000)
+#define GPIO_PORTB_DATA_R (*((reg32_t *)0x400053FC))
+#define GPIO_PORTB_DIR_R (*((reg32_t *)0x40005400))
+#define GPIO_PORTB_IS_R (*((reg32_t *)0x40005404))
+#define GPIO_PORTB_IBE_R (*((reg32_t *)0x40005408))
+#define GPIO_PORTB_IEV_R (*((reg32_t *)0x4000540C))
+#define GPIO_PORTB_IM_R (*((reg32_t *)0x40005410))
+#define GPIO_PORTB_RIS_R (*((reg32_t *)0x40005414))
+#define GPIO_PORTB_MIS_R (*((reg32_t *)0x40005418))
+#define GPIO_PORTB_ICR_R (*((reg32_t *)0x4000541C))
+#define GPIO_PORTB_AFSEL_R (*((reg32_t *)0x40005420))
+#define GPIO_PORTB_DR2R_R (*((reg32_t *)0x40005500))
+#define GPIO_PORTB_DR4R_R (*((reg32_t *)0x40005504))
+#define GPIO_PORTB_DR8R_R (*((reg32_t *)0x40005508))
+#define GPIO_PORTB_ODR_R (*((reg32_t *)0x4000550C))
+#define GPIO_PORTB_PUR_R (*((reg32_t *)0x40005510))
+#define GPIO_PORTB_PDR_R (*((reg32_t *)0x40005514))
+#define GPIO_PORTB_SLR_R (*((reg32_t *)0x40005518))
+#define GPIO_PORTB_DEN_R (*((reg32_t *)0x4000551C))
+#define GPIO_PORTB_LOCK_R (*((reg32_t *)0x40005520))
+#define GPIO_PORTB_CR_R (*((reg32_t *)0x40005524))
+/*\}*/
+
+/**
+ * GPIO registers (PORTC)
+ */
+/*\{*/
+#define GPIO_PORTC_DATA_BITS_R ((reg32_t *)0x40006000)
+#define GPIO_PORTC_DATA_R (*((reg32_t *)0x400063FC))
+#define GPIO_PORTC_DIR_R (*((reg32_t *)0x40006400))
+#define GPIO_PORTC_IS_R (*((reg32_t *)0x40006404))
+#define GPIO_PORTC_IBE_R (*((reg32_t *)0x40006408))
+#define GPIO_PORTC_IEV_R (*((reg32_t *)0x4000640C))
+#define GPIO_PORTC_IM_R (*((reg32_t *)0x40006410))
+#define GPIO_PORTC_RIS_R (*((reg32_t *)0x40006414))
+#define GPIO_PORTC_MIS_R (*((reg32_t *)0x40006418))
+#define GPIO_PORTC_ICR_R (*((reg32_t *)0x4000641C))
+#define GPIO_PORTC_AFSEL_R (*((reg32_t *)0x40006420))
+#define GPIO_PORTC_DR2R_R (*((reg32_t *)0x40006500))
+#define GPIO_PORTC_DR4R_R (*((reg32_t *)0x40006504))
+#define GPIO_PORTC_DR8R_R (*((reg32_t *)0x40006508))
+#define GPIO_PORTC_ODR_R (*((reg32_t *)0x4000650C))
+#define GPIO_PORTC_PUR_R (*((reg32_t *)0x40006510))
+#define GPIO_PORTC_PDR_R (*((reg32_t *)0x40006514))
+#define GPIO_PORTC_SLR_R (*((reg32_t *)0x40006518))
+#define GPIO_PORTC_DEN_R (*((reg32_t *)0x4000651C))
+#define GPIO_PORTC_LOCK_R (*((reg32_t *)0x40006520))
+#define GPIO_PORTC_CR_R (*((reg32_t *)0x40006524))
+/*\}*/
+
+/**
+ * GPIO registers (PORTD)
+ */
+/*\{*/
+#define GPIO_PORTD_DATA_BITS_R ((reg32_t *)0x40007000)
+#define GPIO_PORTD_DATA_R (*((reg32_t *)0x400073FC))
+#define GPIO_PORTD_DIR_R (*((reg32_t *)0x40007400))
+#define GPIO_PORTD_IS_R (*((reg32_t *)0x40007404))
+#define GPIO_PORTD_IBE_R (*((reg32_t *)0x40007408))
+#define GPIO_PORTD_IEV_R (*((reg32_t *)0x4000740C))
+#define GPIO_PORTD_IM_R (*((reg32_t *)0x40007410))
+#define GPIO_PORTD_RIS_R (*((reg32_t *)0x40007414))
+#define GPIO_PORTD_MIS_R (*((reg32_t *)0x40007418))
+#define GPIO_PORTD_ICR_R (*((reg32_t *)0x4000741C))
+#define GPIO_PORTD_AFSEL_R (*((reg32_t *)0x40007420))
+#define GPIO_PORTD_DR2R_R (*((reg32_t *)0x40007500))
+#define GPIO_PORTD_DR4R_R (*((reg32_t *)0x40007504))
+#define GPIO_PORTD_DR8R_R (*((reg32_t *)0x40007508))
+#define GPIO_PORTD_ODR_R (*((reg32_t *)0x4000750C))
+#define GPIO_PORTD_PUR_R (*((reg32_t *)0x40007510))
+#define GPIO_PORTD_PDR_R (*((reg32_t *)0x40007514))
+#define GPIO_PORTD_SLR_R (*((reg32_t *)0x40007518))
+#define GPIO_PORTD_DEN_R (*((reg32_t *)0x4000751C))
+#define GPIO_PORTD_LOCK_R (*((reg32_t *)0x40007520))
+#define GPIO_PORTD_CR_R (*((reg32_t *)0x40007524))
+/*\}*/
+
+/**
+ * SSI registers (SSI0)
+ */
+/*\{*/
+#define SSI0_CR0_R (*((reg32_t *)0x40008000))
+#define SSI0_CR1_R (*((reg32_t *)0x40008004))
+#define SSI0_DR_R (*((reg32_t *)0x40008008))
+#define SSI0_SR_R (*((reg32_t *)0x4000800C))
+#define SSI0_CPSR_R (*((reg32_t *)0x40008010))
+#define SSI0_IM_R (*((reg32_t *)0x40008014))
+#define SSI0_RIS_R (*((reg32_t *)0x40008018))
+#define SSI0_MIS_R (*((reg32_t *)0x4000801C))
+#define SSI0_ICR_R (*((reg32_t *)0x40008020))
+/*\}*/
+
+/**
+ * SSI registers (SSI1)
+ */
+/*\{*/
+#define SSI1_CR0_R (*((reg32_t *)0x40009000))
+#define SSI1_CR1_R (*((reg32_t *)0x40009004))
+#define SSI1_DR_R (*((reg32_t *)0x40009008))
+#define SSI1_SR_R (*((reg32_t *)0x4000900C))
+#define SSI1_CPSR_R (*((reg32_t *)0x40009010))
+#define SSI1_IM_R (*((reg32_t *)0x40009014))
+#define SSI1_RIS_R (*((reg32_t *)0x40009018))
+#define SSI1_MIS_R (*((reg32_t *)0x4000901C))
+#define SSI1_ICR_R (*((reg32_t *)0x40009020))
+/*\}*/
+
+/**
+ * UART registers (UART0)
+ */
+/*\{*/
+#define UART0_DR_R (*((reg32_t *)0x4000C000))
+#define UART0_RSR_R (*((reg32_t *)0x4000C004))
+#define UART0_ECR_R (*((reg32_t *)0x4000C004))
+#define UART0_FR_R (*((reg32_t *)0x4000C018))
+#define UART0_ILPR_R (*((reg32_t *)0x4000C020))
+#define UART0_IBRD_R (*((reg32_t *)0x4000C024))
+#define UART0_FBRD_R (*((reg32_t *)0x4000C028))
+#define UART0_LCRH_R (*((reg32_t *)0x4000C02C))
+#define UART0_CTL_R (*((reg32_t *)0x4000C030))
+#define UART0_IFLS_R (*((reg32_t *)0x4000C034))
+#define UART0_IM_R (*((reg32_t *)0x4000C038))
+#define UART0_RIS_R (*((reg32_t *)0x4000C03C))
+#define UART0_MIS_R (*((reg32_t *)0x4000C040))
+#define UART0_ICR_R (*((reg32_t *)0x4000C044))
+/*\}*/
+
+/**
+ * UART registers (UART1)
+ */
+/*\{*/
+#define UART1_DR_R (*((reg32_t *)0x4000D000))
+#define UART1_RSR_R (*((reg32_t *)0x4000D004))
+#define UART1_ECR_R (*((reg32_t *)0x4000D004))
+#define UART1_FR_R (*((reg32_t *)0x4000D018))
+#define UART1_ILPR_R (*((reg32_t *)0x4000D020))
+#define UART1_IBRD_R (*((reg32_t *)0x4000D024))
+#define UART1_FBRD_R (*((reg32_t *)0x4000D028))
+#define UART1_LCRH_R (*((reg32_t *)0x4000D02C))
+#define UART1_CTL_R (*((reg32_t *)0x4000D030))
+#define UART1_IFLS_R (*((reg32_t *)0x4000D034))
+#define UART1_IM_R (*((reg32_t *)0x4000D038))
+#define UART1_RIS_R (*((reg32_t *)0x4000D03C))
+#define UART1_MIS_R (*((reg32_t *)0x4000D040))
+#define UART1_ICR_R (*((reg32_t *)0x4000D044))
+/*\}*/
+
+/**
+ * UART registers (UART2)
+ */
+/*\{*/
+#define UART2_DR_R (*((reg32_t *)0x4000E000))
+#define UART2_RSR_R (*((reg32_t *)0x4000E004))
+#define UART2_ECR_R (*((reg32_t *)0x4000E004))
+#define UART2_FR_R (*((reg32_t *)0x4000E018))
+#define UART2_ILPR_R (*((reg32_t *)0x4000E020))
+#define UART2_IBRD_R (*((reg32_t *)0x4000E024))
+#define UART2_FBRD_R (*((reg32_t *)0x4000E028))
+#define UART2_LCRH_R (*((reg32_t *)0x4000E02C))
+#define UART2_CTL_R (*((reg32_t *)0x4000E030))
+#define UART2_IFLS_R (*((reg32_t *)0x4000E034))
+#define UART2_IM_R (*((reg32_t *)0x4000E038))
+#define UART2_RIS_R (*((reg32_t *)0x4000E03C))
+#define UART2_MIS_R (*((reg32_t *)0x4000E040))
+#define UART2_ICR_R (*((reg32_t *)0x4000E044))
+/*\}*/
+
+/**
+ * I2C registers (I2C0 MASTER)
+ */
+/*\{*/
+#define I2C0_MASTER_MSA_R (*((reg32_t *)0x40020000))
+#define I2C0_MASTER_SOAR_R (*((reg32_t *)0x40020000))
+#define I2C0_MASTER_SCSR_R (*((reg32_t *)0x40020004))
+#define I2C0_MASTER_MCS_R (*((reg32_t *)0x40020004))
+#define I2C0_MASTER_SDR_R (*((reg32_t *)0x40020008))
+#define I2C0_MASTER_MDR_R (*((reg32_t *)0x40020008))
+#define I2C0_MASTER_MTPR_R (*((reg32_t *)0x4002000C))
+#define I2C0_MASTER_SIMR_R (*((reg32_t *)0x4002000C))
+#define I2C0_MASTER_SRIS_R (*((reg32_t *)0x40020010))
+#define I2C0_MASTER_MIMR_R (*((reg32_t *)0x40020010))
+#define I2C0_MASTER_MRIS_R (*((reg32_t *)0x40020014))
+#define I2C0_MASTER_SMIS_R (*((reg32_t *)0x40020014))
+#define I2C0_MASTER_SICR_R (*((reg32_t *)0x40020018))
+#define I2C0_MASTER_MMIS_R (*((reg32_t *)0x40020018))
+#define I2C0_MASTER_MICR_R (*((reg32_t *)0x4002001C))
+#define I2C0_MASTER_MCR_R (*((reg32_t *)0x40020020))
+/*\}*/
+
+/**
+ * I2C registers (I2C0 SLAVE)
+ */
+/*\{*/
+#define I2C0_SLAVE_MSA_R (*((reg32_t *)0x40020800))
+#define I2C0_SLAVE_SOAR_R (*((reg32_t *)0x40020800))
+#define I2C0_SLAVE_SCSR_R (*((reg32_t *)0x40020804))
+#define I2C0_SLAVE_MCS_R (*((reg32_t *)0x40020804))
+#define I2C0_SLAVE_SDR_R (*((reg32_t *)0x40020808))
+#define I2C0_SLAVE_MDR_R (*((reg32_t *)0x40020808))
+#define I2C0_SLAVE_MTPR_R (*((reg32_t *)0x4002080C))
+#define I2C0_SLAVE_SIMR_R (*((reg32_t *)0x4002080C))
+#define I2C0_SLAVE_SRIS_R (*((reg32_t *)0x40020810))
+#define I2C0_SLAVE_MIMR_R (*((reg32_t *)0x40020810))
+#define I2C0_SLAVE_MRIS_R (*((reg32_t *)0x40020814))
+#define I2C0_SLAVE_SMIS_R (*((reg32_t *)0x40020814))
+#define I2C0_SLAVE_SICR_R (*((reg32_t *)0x40020818))
+#define I2C0_SLAVE_MMIS_R (*((reg32_t *)0x40020818))
+#define I2C0_SLAVE_MICR_R (*((reg32_t *)0x4002081C))
+#define I2C0_SLAVE_MCR_R (*((reg32_t *)0x40020820))
+/*\}*/
+
+/**
+ * I2C registers (I2C1 MASTER)
+ */
+/*\{*/
+#define I2C1_MASTER_MSA_R (*((reg32_t *)0x40021000))
+#define I2C1_MASTER_SOAR_R (*((reg32_t *)0x40021000))
+#define I2C1_MASTER_SCSR_R (*((reg32_t *)0x40021004))
+#define I2C1_MASTER_MCS_R (*((reg32_t *)0x40021004))
+#define I2C1_MASTER_SDR_R (*((reg32_t *)0x40021008))
+#define I2C1_MASTER_MDR_R (*((reg32_t *)0x40021008))
+#define I2C1_MASTER_MTPR_R (*((reg32_t *)0x4002100C))
+#define I2C1_MASTER_SIMR_R (*((reg32_t *)0x4002100C))
+#define I2C1_MASTER_SRIS_R (*((reg32_t *)0x40021010))
+#define I2C1_MASTER_MIMR_R (*((reg32_t *)0x40021010))
+#define I2C1_MASTER_MRIS_R (*((reg32_t *)0x40021014))
+#define I2C1_MASTER_SMIS_R (*((reg32_t *)0x40021014))
+#define I2C1_MASTER_SICR_R (*((reg32_t *)0x40021018))
+#define I2C1_MASTER_MMIS_R (*((reg32_t *)0x40021018))
+#define I2C1_MASTER_MICR_R (*((reg32_t *)0x4002101C))
+#define I2C1_MASTER_MCR_R (*((reg32_t *)0x40021020))
+/*\}*/
+
+/**
+ * I2C registers (I2C1 SLAVE)
+ */
+/*\{*/
+#define I2C1_SLAVE_MSA_R (*((reg32_t *)0x40021800))
+#define I2C1_SLAVE_SOAR_R (*((reg32_t *)0x40021800))
+#define I2C1_SLAVE_SCSR_R (*((reg32_t *)0x40021804))
+#define I2C1_SLAVE_MCS_R (*((reg32_t *)0x40021804))
+#define I2C1_SLAVE_SDR_R (*((reg32_t *)0x40021808))
+#define I2C1_SLAVE_MDR_R (*((reg32_t *)0x40021808))
+#define I2C1_SLAVE_MTPR_R (*((reg32_t *)0x4002180C))
+#define I2C1_SLAVE_SIMR_R (*((reg32_t *)0x4002180C))
+#define I2C1_SLAVE_SRIS_R (*((reg32_t *)0x40021810))
+#define I2C1_SLAVE_MIMR_R (*((reg32_t *)0x40021810))
+#define I2C1_SLAVE_MRIS_R (*((reg32_t *)0x40021814))
+#define I2C1_SLAVE_SMIS_R (*((reg32_t *)0x40021814))
+#define I2C1_SLAVE_SICR_R (*((reg32_t *)0x40021818))
+#define I2C1_SLAVE_MMIS_R (*((reg32_t *)0x40021818))
+#define I2C1_SLAVE_MICR_R (*((reg32_t *)0x4002181C))
+#define I2C1_SLAVE_MCR_R (*((reg32_t *)0x40021820))
+/*\}*/
+
+/**
+ * GPIO registers (PORTE)
+ */
+/*\{*/
+#define GPIO_PORTE_DATA_BITS_R ((reg32_t *)0x40024000)
+#define GPIO_PORTE_DATA_R (*((reg32_t *)0x400243FC))
+#define GPIO_PORTE_DIR_R (*((reg32_t *)0x40024400))
+#define GPIO_PORTE_IS_R (*((reg32_t *)0x40024404))
+#define GPIO_PORTE_IBE_R (*((reg32_t *)0x40024408))
+#define GPIO_PORTE_IEV_R (*((reg32_t *)0x4002440C))
+#define GPIO_PORTE_IM_R (*((reg32_t *)0x40024410))
+#define GPIO_PORTE_RIS_R (*((reg32_t *)0x40024414))
+#define GPIO_PORTE_MIS_R (*((reg32_t *)0x40024418))
+#define GPIO_PORTE_ICR_R (*((reg32_t *)0x4002441C))
+#define GPIO_PORTE_AFSEL_R (*((reg32_t *)0x40024420))
+#define GPIO_PORTE_DR2R_R (*((reg32_t *)0x40024500))
+#define GPIO_PORTE_DR4R_R (*((reg32_t *)0x40024504))
+#define GPIO_PORTE_DR8R_R (*((reg32_t *)0x40024508))
+#define GPIO_PORTE_ODR_R (*((reg32_t *)0x4002450C))
+#define GPIO_PORTE_PUR_R (*((reg32_t *)0x40024510))
+#define GPIO_PORTE_PDR_R (*((reg32_t *)0x40024514))
+#define GPIO_PORTE_SLR_R (*((reg32_t *)0x40024518))
+#define GPIO_PORTE_DEN_R (*((reg32_t *)0x4002451C))
+#define GPIO_PORTE_LOCK_R (*((reg32_t *)0x40024520))
+#define GPIO_PORTE_CR_R (*((reg32_t *)0x40024524))
+/*\}*/
+
+/**
+ * GPIO registers (PORTF)
+ */
+/*\{*/
+#define GPIO_PORTF_DATA_BITS_R ((reg32_t *)0x40025000)
+#define GPIO_PORTF_DATA_R (*((reg32_t *)0x400253FC))
+#define GPIO_PORTF_DIR_R (*((reg32_t *)0x40025400))
+#define GPIO_PORTF_IS_R (*((reg32_t *)0x40025404))
+#define GPIO_PORTF_IBE_R (*((reg32_t *)0x40025408))
+#define GPIO_PORTF_IEV_R (*((reg32_t *)0x4002540C))
+#define GPIO_PORTF_IM_R (*((reg32_t *)0x40025410))
+#define GPIO_PORTF_RIS_R (*((reg32_t *)0x40025414))
+#define GPIO_PORTF_MIS_R (*((reg32_t *)0x40025418))
+#define GPIO_PORTF_ICR_R (*((reg32_t *)0x4002541C))
+#define GPIO_PORTF_AFSEL_R (*((reg32_t *)0x40025420))
+#define GPIO_PORTF_DR2R_R (*((reg32_t *)0x40025500))
+#define GPIO_PORTF_DR4R_R (*((reg32_t *)0x40025504))
+#define GPIO_PORTF_DR8R_R (*((reg32_t *)0x40025508))
+#define GPIO_PORTF_ODR_R (*((reg32_t *)0x4002550C))
+#define GPIO_PORTF_PUR_R (*((reg32_t *)0x40025510))
+#define GPIO_PORTF_PDR_R (*((reg32_t *)0x40025514))
+#define GPIO_PORTF_SLR_R (*((reg32_t *)0x40025518))
+#define GPIO_PORTF_DEN_R (*((reg32_t *)0x4002551C))
+#define GPIO_PORTF_LOCK_R (*((reg32_t *)0x40025520))
+#define GPIO_PORTF_CR_R (*((reg32_t *)0x40025524))
+/*\}*/
+
+/**
+ * GPIO registers (PORTG)
+ */
+/*\{*/
+#define GPIO_PORTG_DATA_BITS_R ((reg32_t *)0x40026000)
+#define GPIO_PORTG_DATA_R (*((reg32_t *)0x400263FC))
+#define GPIO_PORTG_DIR_R (*((reg32_t *)0x40026400))
+#define GPIO_PORTG_IS_R (*((reg32_t *)0x40026404))
+#define GPIO_PORTG_IBE_R (*((reg32_t *)0x40026408))
+#define GPIO_PORTG_IEV_R (*((reg32_t *)0x4002640C))
+#define GPIO_PORTG_IM_R (*((reg32_t *)0x40026410))
+#define GPIO_PORTG_RIS_R (*((reg32_t *)0x40026414))
+#define GPIO_PORTG_MIS_R (*((reg32_t *)0x40026418))
+#define GPIO_PORTG_ICR_R (*((reg32_t *)0x4002641C))
+#define GPIO_PORTG_AFSEL_R (*((reg32_t *)0x40026420))
+#define GPIO_PORTG_DR2R_R (*((reg32_t *)0x40026500))
+#define GPIO_PORTG_DR4R_R (*((reg32_t *)0x40026504))
+#define GPIO_PORTG_DR8R_R (*((reg32_t *)0x40026508))
+#define GPIO_PORTG_ODR_R (*((reg32_t *)0x4002650C))
+#define GPIO_PORTG_PUR_R (*((reg32_t *)0x40026510))
+#define GPIO_PORTG_PDR_R (*((reg32_t *)0x40026514))
+#define GPIO_PORTG_SLR_R (*((reg32_t *)0x40026518))
+#define GPIO_PORTG_DEN_R (*((reg32_t *)0x4002651C))
+#define GPIO_PORTG_LOCK_R (*((reg32_t *)0x40026520))
+#define GPIO_PORTG_CR_R (*((reg32_t *)0x40026524))
+/*\}*/
+
+/**
+ * GPIO registers (PORTH)
+ */
+/*\{*/
+#define GPIO_PORTH_DATA_BITS_R ((reg32_t *)0x40027000)
+#define GPIO_PORTH_DATA_R (*((reg32_t *)0x400273FC))
+#define GPIO_PORTH_DIR_R (*((reg32_t *)0x40027400))
+#define GPIO_PORTH_IS_R (*((reg32_t *)0x40027404))
+#define GPIO_PORTH_IBE_R (*((reg32_t *)0x40027408))
+#define GPIO_PORTH_IEV_R (*((reg32_t *)0x4002740C))
+#define GPIO_PORTH_IM_R (*((reg32_t *)0x40027410))
+#define GPIO_PORTH_RIS_R (*((reg32_t *)0x40027414))
+#define GPIO_PORTH_MIS_R (*((reg32_t *)0x40027418))
+#define GPIO_PORTH_ICR_R (*((reg32_t *)0x4002741C))
+#define GPIO_PORTH_AFSEL_R (*((reg32_t *)0x40027420))
+#define GPIO_PORTH_DR2R_R (*((reg32_t *)0x40027500))
+#define GPIO_PORTH_DR4R_R (*((reg32_t *)0x40027504))
+#define GPIO_PORTH_DR8R_R (*((reg32_t *)0x40027508))
+#define GPIO_PORTH_ODR_R (*((reg32_t *)0x4002750C))
+#define GPIO_PORTH_PUR_R (*((reg32_t *)0x40027510))
+#define GPIO_PORTH_PDR_R (*((reg32_t *)0x40027514))
+#define GPIO_PORTH_SLR_R (*((reg32_t *)0x40027518))
+#define GPIO_PORTH_DEN_R (*((reg32_t *)0x4002751C))
+#define GPIO_PORTH_LOCK_R (*((reg32_t *)0x40027520))
+#define GPIO_PORTH_CR_R (*((reg32_t *)0x40027524))
+/*\}*/
+
+/**
+ * PWM registers (PWM)
+ */
+/*\{*/
+#define PWM_CTL_R (*((reg32_t *)0x40028000))
+#define PWM_SYNC_R (*((reg32_t *)0x40028004))
+#define PWM_ENABLE_R (*((reg32_t *)0x40028008))
+#define PWM_INVERT_R (*((reg32_t *)0x4002800C))
+#define PWM_FAULT_R (*((reg32_t *)0x40028010))
+#define PWM_INTEN_R (*((reg32_t *)0x40028014))
+#define PWM_RIS_R (*((reg32_t *)0x40028018))
+#define PWM_ISC_R (*((reg32_t *)0x4002801C))
+#define PWM_STATUS_R (*((reg32_t *)0x40028020))
+#define PWM_0_CTL_R (*((reg32_t *)0x40028040))
+#define PWM_0_INTEN_R (*((reg32_t *)0x40028044))
+#define PWM_0_RIS_R (*((reg32_t *)0x40028048))
+#define PWM_0_ISC_R (*((reg32_t *)0x4002804C))
+#define PWM_0_LOAD_R (*((reg32_t *)0x40028050))
+#define PWM_0_COUNT_R (*((reg32_t *)0x40028054))
+#define PWM_0_CMPA_R (*((reg32_t *)0x40028058))
+#define PWM_0_CMPB_R (*((reg32_t *)0x4002805C))
+#define PWM_0_GENA_R (*((reg32_t *)0x40028060))
+#define PWM_0_GENB_R (*((reg32_t *)0x40028064))
+#define PWM_0_DBCTL_R (*((reg32_t *)0x40028068))
+#define PWM_0_DBRISE_R (*((reg32_t *)0x4002806C))
+#define PWM_0_DBFALL_R (*((reg32_t *)0x40028070))
+#define PWM_1_CTL_R (*((reg32_t *)0x40028080))
+#define PWM_1_INTEN_R (*((reg32_t *)0x40028084))
+#define PWM_1_RIS_R (*((reg32_t *)0x40028088))
+#define PWM_1_ISC_R (*((reg32_t *)0x4002808C))
+#define PWM_1_LOAD_R (*((reg32_t *)0x40028090))
+#define PWM_1_COUNT_R (*((reg32_t *)0x40028094))
+#define PWM_1_CMPA_R (*((reg32_t *)0x40028098))
+#define PWM_1_CMPB_R (*((reg32_t *)0x4002809C))
+#define PWM_1_GENA_R (*((reg32_t *)0x400280A0))
+#define PWM_1_GENB_R (*((reg32_t *)0x400280A4))
+#define PWM_1_DBCTL_R (*((reg32_t *)0x400280A8))
+#define PWM_1_DBRISE_R (*((reg32_t *)0x400280AC))
+#define PWM_1_DBFALL_R (*((reg32_t *)0x400280B0))
+#define PWM_2_CTL_R (*((reg32_t *)0x400280C0))
+#define PWM_2_INTEN_R (*((reg32_t *)0x400280C4))
+#define PWM_2_RIS_R (*((reg32_t *)0x400280C8))
+#define PWM_2_ISC_R (*((reg32_t *)0x400280CC))
+#define PWM_2_LOAD_R (*((reg32_t *)0x400280D0))
+#define PWM_2_COUNT_R (*((reg32_t *)0x400280D4))
+#define PWM_2_CMPA_R (*((reg32_t *)0x400280D8))
+#define PWM_2_CMPB_R (*((reg32_t *)0x400280DC))
+#define PWM_2_GENA_R (*((reg32_t *)0x400280E0))
+#define PWM_2_GENB_R (*((reg32_t *)0x400280E4))
+#define PWM_2_DBCTL_R (*((reg32_t *)0x400280E8))
+#define PWM_2_DBRISE_R (*((reg32_t *)0x400280EC))
+#define PWM_2_DBFALL_R (*((reg32_t *)0x400280F0))
+/*\}*/
+
+/**
+ * QEI registers (QEI0)
+ */
+/*\{*/
+#define QEI0_CTL_R (*((reg32_t *)0x4002C000))
+#define QEI0_STAT_R (*((reg32_t *)0x4002C004))
+#define QEI0_POS_R (*((reg32_t *)0x4002C008))
+#define QEI0_MAXPOS_R (*((reg32_t *)0x4002C00C))
+#define QEI0_LOAD_R (*((reg32_t *)0x4002C010))
+#define QEI0_TIME_R (*((reg32_t *)0x4002C014))
+#define QEI0_COUNT_R (*((reg32_t *)0x4002C018))
+#define QEI0_SPEED_R (*((reg32_t *)0x4002C01C))
+#define QEI0_INTEN_R (*((reg32_t *)0x4002C020))
+#define QEI0_RIS_R (*((reg32_t *)0x4002C024))
+#define QEI0_ISC_R (*((reg32_t *)0x4002C028))
+/*\}*/
+
+/**
+ * QEI registers (QEI1)
+ */
+/*\{*/
+#define QEI1_CTL_R (*((reg32_t *)0x4002D000))
+#define QEI1_STAT_R (*((reg32_t *)0x4002D004))
+#define QEI1_POS_R (*((reg32_t *)0x4002D008))
+#define QEI1_MAXPOS_R (*((reg32_t *)0x4002D00C))
+#define QEI1_LOAD_R (*((reg32_t *)0x4002D010))
+#define QEI1_TIME_R (*((reg32_t *)0x4002D014))
+#define QEI1_COUNT_R (*((reg32_t *)0x4002D018))
+#define QEI1_SPEED_R (*((reg32_t *)0x4002D01C))
+#define QEI1_INTEN_R (*((reg32_t *)0x4002D020))
+#define QEI1_RIS_R (*((reg32_t *)0x4002D024))
+#define QEI1_ISC_R (*((reg32_t *)0x4002D028))
+/*\}*/
+
+/**
+ * Timer registers (TIMER0)
+ */
+/*\{*/
+#define TIMER0_CFG_R (*((reg32_t *)0x40030000))
+#define TIMER0_TAMR_R (*((reg32_t *)0x40030004))
+#define TIMER0_TBMR_R (*((reg32_t *)0x40030008))
+#define TIMER0_CTL_R (*((reg32_t *)0x4003000C))
+#define TIMER0_IMR_R (*((reg32_t *)0x40030018))
+#define TIMER0_RIS_R (*((reg32_t *)0x4003001C))
+#define TIMER0_MIS_R (*((reg32_t *)0x40030020))
+#define TIMER0_ICR_R (*((reg32_t *)0x40030024))
+#define TIMER0_TAILR_R (*((reg32_t *)0x40030028))
+#define TIMER0_TBILR_R (*((reg32_t *)0x4003002C))
+#define TIMER0_TAMATCHR_R (*((reg32_t *)0x40030030))
+#define TIMER0_TBMATCHR_R (*((reg32_t *)0x40030034))
+#define TIMER0_TAPR_R (*((reg32_t *)0x40030038))
+#define TIMER0_TBPR_R (*((reg32_t *)0x4003003C))
+#define TIMER0_TAPMR_R (*((reg32_t *)0x40030040))
+#define TIMER0_TBPMR_R (*((reg32_t *)0x40030044))
+#define TIMER0_TAR_R (*((reg32_t *)0x40030048))
+#define TIMER0_TBR_R (*((reg32_t *)0x4003004C))
+/*\}*/
+
+/**
+ * Timer registers (TIMER1)
+ */
+/*\{*/
+#define TIMER1_CFG_R (*((reg32_t *)0x40031000))
+#define TIMER1_TAMR_R (*((reg32_t *)0x40031004))
+#define TIMER1_TBMR_R (*((reg32_t *)0x40031008))
+#define TIMER1_CTL_R (*((reg32_t *)0x4003100C))
+#define TIMER1_IMR_R (*((reg32_t *)0x40031018))
+#define TIMER1_RIS_R (*((reg32_t *)0x4003101C))
+#define TIMER1_MIS_R (*((reg32_t *)0x40031020))
+#define TIMER1_ICR_R (*((reg32_t *)0x40031024))
+#define TIMER1_TAILR_R (*((reg32_t *)0x40031028))
+#define TIMER1_TBILR_R (*((reg32_t *)0x4003102C))
+#define TIMER1_TAMATCHR_R (*((reg32_t *)0x40031030))
+#define TIMER1_TBMATCHR_R (*((reg32_t *)0x40031034))
+#define TIMER1_TAPR_R (*((reg32_t *)0x40031038))
+#define TIMER1_TBPR_R (*((reg32_t *)0x4003103C))
+#define TIMER1_TAPMR_R (*((reg32_t *)0x40031040))
+#define TIMER1_TBPMR_R (*((reg32_t *)0x40031044))
+#define TIMER1_TAR_R (*((reg32_t *)0x40031048))
+#define TIMER1_TBR_R (*((reg32_t *)0x4003104C))
+/*\}*/
+
+/**
+ * Timer registers (TIMER2)
+ */
+/*\{*/
+#define TIMER2_CFG_R (*((reg32_t *)0x40032000))
+#define TIMER2_TAMR_R (*((reg32_t *)0x40032004))
+#define TIMER2_TBMR_R (*((reg32_t *)0x40032008))
+#define TIMER2_CTL_R (*((reg32_t *)0x4003200C))
+#define TIMER2_IMR_R (*((reg32_t *)0x40032018))
+#define TIMER2_RIS_R (*((reg32_t *)0x4003201C))
+#define TIMER2_MIS_R (*((reg32_t *)0x40032020))
+#define TIMER2_ICR_R (*((reg32_t *)0x40032024))
+#define TIMER2_TAILR_R (*((reg32_t *)0x40032028))
+#define TIMER2_TBILR_R (*((reg32_t *)0x4003202C))
+#define TIMER2_TAMATCHR_R (*((reg32_t *)0x40032030))
+#define TIMER2_TBMATCHR_R (*((reg32_t *)0x40032034))
+#define TIMER2_TAPR_R (*((reg32_t *)0x40032038))
+#define TIMER2_TBPR_R (*((reg32_t *)0x4003203C))
+#define TIMER2_TAPMR_R (*((reg32_t *)0x40032040))
+#define TIMER2_TBPMR_R (*((reg32_t *)0x40032044))
+#define TIMER2_TAR_R (*((reg32_t *)0x40032048))
+#define TIMER2_TBR_R (*((reg32_t *)0x4003204C))
+/*\}*/
+
+/**
+ * Timer registers (TIMER3)
+ */
+/*\{*/
+#define TIMER3_CFG_R (*((reg32_t *)0x40033000))
+#define TIMER3_TAMR_R (*((reg32_t *)0x40033004))
+#define TIMER3_TBMR_R (*((reg32_t *)0x40033008))
+#define TIMER3_CTL_R (*((reg32_t *)0x4003300C))
+#define TIMER3_IMR_R (*((reg32_t *)0x40033018))
+#define TIMER3_RIS_R (*((reg32_t *)0x4003301C))
+#define TIMER3_MIS_R (*((reg32_t *)0x40033020))
+#define TIMER3_ICR_R (*((reg32_t *)0x40033024))
+#define TIMER3_TAILR_R (*((reg32_t *)0x40033028))
+#define TIMER3_TBILR_R (*((reg32_t *)0x4003302C))
+#define TIMER3_TAMATCHR_R (*((reg32_t *)0x40033030))
+#define TIMER3_TBMATCHR_R (*((reg32_t *)0x40033034))
+#define TIMER3_TAPR_R (*((reg32_t *)0x40033038))
+#define TIMER3_TBPR_R (*((reg32_t *)0x4003303C))
+#define TIMER3_TAPMR_R (*((reg32_t *)0x40033040))
+#define TIMER3_TBPMR_R (*((reg32_t *)0x40033044))
+#define TIMER3_TAR_R (*((reg32_t *)0x40033048))
+#define TIMER3_TBR_R (*((reg32_t *)0x4003304C))
+/*\}*/
+
+/**
+ * ADC registers (ADC0)
+ */
+/*\{*/
+#define ADC0_ACTSS_R (*((reg32_t *)0x40038000))
+#define ADC0_RIS_R (*((reg32_t *)0x40038004))
+#define ADC0_IM_R (*((reg32_t *)0x40038008))
+#define ADC0_ISC_R (*((reg32_t *)0x4003800C))
+#define ADC0_OSTAT_R (*((reg32_t *)0x40038010))
+#define ADC0_EMUX_R (*((reg32_t *)0x40038014))
+#define ADC0_USTAT_R (*((reg32_t *)0x40038018))
+#define ADC0_SSPRI_R (*((reg32_t *)0x40038020))
+#define ADC0_PSSI_R (*((reg32_t *)0x40038028))
+#define ADC0_SAC_R (*((reg32_t *)0x40038030))
+#define ADC0_SSMUX0_R (*((reg32_t *)0x40038040))
+#define ADC0_SSCTL0_R (*((reg32_t *)0x40038044))
+#define ADC0_SSFIFO0_R (*((reg32_t *)0x40038048))
+#define ADC0_SSFSTAT0_R (*((reg32_t *)0x4003804C))
+#define ADC0_SSMUX1_R (*((reg32_t *)0x40038060))
+#define ADC0_SSCTL1_R (*((reg32_t *)0x40038064))
+#define ADC0_SSFIFO1_R (*((reg32_t *)0x40038068))
+#define ADC0_SSFSTAT1_R (*((reg32_t *)0x4003806C))
+#define ADC0_SSMUX2_R (*((reg32_t *)0x40038080))
+#define ADC0_SSCTL2_R (*((reg32_t *)0x40038084))
+#define ADC0_SSFIFO2_R (*((reg32_t *)0x40038088))
+#define ADC0_SSFSTAT2_R (*((reg32_t *)0x4003808C))
+#define ADC0_SSMUX3_R (*((reg32_t *)0x400380A0))
+#define ADC0_SSCTL3_R (*((reg32_t *)0x400380A4))
+#define ADC0_SSFIFO3_R (*((reg32_t *)0x400380A8))
+#define ADC0_SSFSTAT3_R (*((reg32_t *)0x400380AC))
+#define ADC0_TMLB_R (*((reg32_t *)0x40038100))
+/*\}*/
+
+/**
+ * Comparator registers (COMP)
+ */
+/*\{*/
+#define COMP_ACMIS_R (*((reg32_t *)0x4003C000))
+#define COMP_ACRIS_R (*((reg32_t *)0x4003C004))
+#define COMP_ACINTEN_R (*((reg32_t *)0x4003C008))
+#define COMP_ACREFCTL_R (*((reg32_t *)0x4003C010))
+#define COMP_ACSTAT0_R (*((reg32_t *)0x4003C020))
+#define COMP_ACCTL0_R (*((reg32_t *)0x4003C024))
+#define COMP_ACSTAT1_R (*((reg32_t *)0x4003C040))
+#define COMP_ACCTL1_R (*((reg32_t *)0x4003C044))
+#define COMP_ACSTAT2_R (*((reg32_t *)0x4003C060))
+#define COMP_ACCTL2_R (*((reg32_t *)0x4003C064))
+/*\}*/
+
+/**
+ * Hibernation module registers (HIB)
+ */
+/*\{*/
+#define HIB_RTCC_R (*((reg32_t *)0x400FC000))
+#define HIB_RTCM0_R (*((reg32_t *)0x400FC004))
+#define HIB_RTCM1_R (*((reg32_t *)0x400FC008))
+#define HIB_RTCLD_R (*((reg32_t *)0x400FC00C))
+#define HIB_CTL_R (*((reg32_t *)0x400FC010))
+#define HIB_IM_R (*((reg32_t *)0x400FC014))
+#define HIB_RIS_R (*((reg32_t *)0x400FC018))
+#define HIB_MIS_R (*((reg32_t *)0x400FC01C))
+#define HIB_IC_R (*((reg32_t *)0x400FC020))
+#define HIB_RTCT_R (*((reg32_t *)0x400FC024))
+#define HIB_DATA_R (*((reg32_t *)0x400FC030))
+/*\}*/
+
+/**
+ * FLASH registers (FLASH CTRL)
+ */
+/*\{*/
+#define FLASH_FMA_R (*((reg32_t *)0x400FD000))
+#define FLASH_FMD_R (*((reg32_t *)0x400FD004))
+#define FLASH_FMC_R (*((reg32_t *)0x400FD008))
+#define FLASH_FCRIS_R (*((reg32_t *)0x400FD00C))
+#define FLASH_FCIM_R (*((reg32_t *)0x400FD010))
+#define FLASH_FCMISC_R (*((reg32_t *)0x400FD014))
+#define FLASH_USECRL_R (*((reg32_t *)0x400FE140))
+#define FLASH_USERDBG_R (*((reg32_t *)0x400FE1D0))
+#define FLASH_USERREG0_R (*((reg32_t *)0x400FE1E0))
+#define FLASH_USERREG1_R (*((reg32_t *)0x400FE1E4))
+#define FLASH_FMPRE0_R (*((reg32_t *)0x400FE200))
+#define FLASH_FMPRE1_R (*((reg32_t *)0x400FE204))
+#define FLASH_FMPRE2_R (*((reg32_t *)0x400FE208))
+#define FLASH_FMPRE3_R (*((reg32_t *)0x400FE20C))
+#define FLASH_FMPPE0_R (*((reg32_t *)0x400FE400))
+#define FLASH_FMPPE1_R (*((reg32_t *)0x400FE404))
+#define FLASH_FMPPE2_R (*((reg32_t *)0x400FE408))
+#define FLASH_FMPPE3_R (*((reg32_t *)0x400FE40C))
+/*\}*/
+
+/**
+ * System Control registers (SYSCTL)
+ */
+/*\{*/
+#define SYSCTL_DID0_R (*((reg32_t *)0x400FE000))
+#define SYSCTL_DID1_R (*((reg32_t *)0x400FE004))
+#define SYSCTL_DC0_R (*((reg32_t *)0x400FE008))
+#define SYSCTL_DC1_R (*((reg32_t *)0x400FE010))
+#define SYSCTL_DC2_R (*((reg32_t *)0x400FE014))
+#define SYSCTL_DC3_R (*((reg32_t *)0x400FE018))
+#define SYSCTL_DC4_R (*((reg32_t *)0x400FE01C))
+#define SYSCTL_PBORCTL_R (*((reg32_t *)0x400FE030))
+#define SYSCTL_LDOPCTL_R (*((reg32_t *)0x400FE034))
+#define SYSCTL_SRCR0_R (*((reg32_t *)0x400FE040))
+#define SYSCTL_SRCR1_R (*((reg32_t *)0x400FE044))
+#define SYSCTL_SRCR2_R (*((reg32_t *)0x400FE048))
+#define SYSCTL_RIS_R (*((reg32_t *)0x400FE050))
+#define SYSCTL_IMC_R (*((reg32_t *)0x400FE054))
+#define SYSCTL_MISC_R (*((reg32_t *)0x400FE058))
+#define SYSCTL_RESC_R (*((reg32_t *)0x400FE05C))
+#define SYSCTL_RCC_R (*((reg32_t *)0x400FE060))
+#define SYSCTL_PLLCFG_R (*((reg32_t *)0x400FE064))
+#define SYSCTL_RCC2_R (*((reg32_t *)0x400FE070))
+#define SYSCTL_RCGC0_R (*((reg32_t *)0x400FE100))
+#define SYSCTL_RCGC1_R (*((reg32_t *)0x400FE104))
+#define SYSCTL_RCGC2_R (*((reg32_t *)0x400FE108))
+#define SYSCTL_SCGC0_R (*((reg32_t *)0x400FE110))
+#define SYSCTL_SCGC1_R (*((reg32_t *)0x400FE114))
+#define SYSCTL_SCGC2_R (*((reg32_t *)0x400FE118))
+#define SYSCTL_DCGC0_R (*((reg32_t *)0x400FE120))
+#define SYSCTL_DCGC1_R (*((reg32_t *)0x400FE124))
+#define SYSCTL_DCGC2_R (*((reg32_t *)0x400FE128))
+#define SYSCTL_DSLPCLKCFG_R (*((reg32_t *)0x400FE144))
+/*\}*/
+
+/**
+ * NVIC registers (NVIC)
+ */
+/*\{*/
+#define NVIC_INT_TYPE_R (*((reg32_t *)0xE000E004))
+#define NVIC_ST_CTRL_R (*((reg32_t *)0xE000E010))
+#define NVIC_ST_RELOAD_R (*((reg32_t *)0xE000E014))
+#define NVIC_ST_CURRENT_R (*((reg32_t *)0xE000E018))
+#define NVIC_ST_CAL_R (*((reg32_t *)0xE000E01C))
+#define NVIC_EN0_R (*((reg32_t *)0xE000E100))
+#define NVIC_EN1_R (*((reg32_t *)0xE000E104))
+#define NVIC_DIS0_R (*((reg32_t *)0xE000E180))
+#define NVIC_DIS1_R (*((reg32_t *)0xE000E184))
+#define NVIC_PEND0_R (*((reg32_t *)0xE000E200))
+#define NVIC_PEND1_R (*((reg32_t *)0xE000E204))
+#define NVIC_UNPEND0_R (*((reg32_t *)0xE000E280))
+#define NVIC_UNPEND1_R (*((reg32_t *)0xE000E284))
+#define NVIC_ACTIVE0_R (*((reg32_t *)0xE000E300))
+#define NVIC_ACTIVE1_R (*((reg32_t *)0xE000E304))
+#define NVIC_PRI0_R (*((reg32_t *)0xE000E400))
+#define NVIC_PRI1_R (*((reg32_t *)0xE000E404))
+#define NVIC_PRI2_R (*((reg32_t *)0xE000E408))
+#define NVIC_PRI3_R (*((reg32_t *)0xE000E40C))
+#define NVIC_PRI4_R (*((reg32_t *)0xE000E410))
+#define NVIC_PRI5_R (*((reg32_t *)0xE000E414))
+#define NVIC_PRI6_R (*((reg32_t *)0xE000E418))
+#define NVIC_PRI7_R (*((reg32_t *)0xE000E41C))
+#define NVIC_PRI8_R (*((reg32_t *)0xE000E420))
+#define NVIC_PRI9_R (*((reg32_t *)0xE000E424))
+#define NVIC_PRI10_R (*((reg32_t *)0xE000E428))
+#define NVIC_CPUID_R (*((reg32_t *)0xE000ED00))
+#define NVIC_INT_CTRL_R (*((reg32_t *)0xE000ED04))
+#define NVIC_VTABLE_R (*((reg32_t *)0xE000ED08))
+#define NVIC_APINT_R (*((reg32_t *)0xE000ED0C))
+#define NVIC_SYS_CTRL_R (*((reg32_t *)0xE000ED10))
+#define NVIC_CFG_CTRL_R (*((reg32_t *)0xE000ED14))
+#define NVIC_SYS_PRI1_R (*((reg32_t *)0xE000ED18))
+#define NVIC_SYS_PRI2_R (*((reg32_t *)0xE000ED1C))
+#define NVIC_SYS_PRI3_R (*((reg32_t *)0xE000ED20))
+#define NVIC_SYS_HND_CTRL_R (*((reg32_t *)0xE000ED24))
+#define NVIC_FAULT_STAT_R (*((reg32_t *)0xE000ED28))
+#define NVIC_HFAULT_STAT_R (*((reg32_t *)0xE000ED2C))
+#define NVIC_DEBUG_STAT_R (*((reg32_t *)0xE000ED30))
+#define NVIC_MM_ADDR_R (*((reg32_t *)0xE000ED34))
+#define NVIC_FAULT_ADDR_R (*((reg32_t *)0xE000ED38))
+#define NVIC_MPU_TYPE_R (*((reg32_t *)0xE000ED90))
+#define NVIC_MPU_CTRL_R (*((reg32_t *)0xE000ED94))
+#define NVIC_MPU_NUMBER_R (*((reg32_t *)0xE000ED98))
+#define NVIC_MPU_BASE_R (*((reg32_t *)0xE000ED9C))
+#define NVIC_MPU_ATTR_R (*((reg32_t *)0xE000EDA0))
+#define NVIC_DBG_CTRL_R (*((reg32_t *)0xE000EDF0))
+#define NVIC_DBG_XFER_R (*((reg32_t *)0xE000EDF4))
+#define NVIC_DBG_DATA_R (*((reg32_t *)0xE000EDF8))
+#define NVIC_DBG_INT_R (*((reg32_t *)0xE000EDFC))
+#define NVIC_SW_TRIG_R (*((reg32_t *)0xE000EF00))
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the WDT_O_LOAD register.
+ */
+/*\{*/
+#define WDT_LOAD_M 0xFFFFFFFF ///< Watchdog Load Value
+#define WDT_LOAD_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the WDT_O_VALUE register.
+ */
+/*\{*/
+#define WDT_VALUE_M 0xFFFFFFFF ///< Watchdog Value
+#define WDT_VALUE_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the WDT_O_CTL register.
+ */
+/*\{*/
+#define WDT_CTL_RESEN 0x00000002 ///< Watchdog Reset Enable
+#define WDT_CTL_INTEN 0x00000001 ///< Watchdog Interrupt Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the WDT_O_ICR register.
+ */
+/*\{*/
+#define WDT_ICR_M 0xFFFFFFFF ///< Watchdog Interrupt Clear
+#define WDT_ICR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the WDT_O_RIS register.
+ */
+/*\{*/
+#define WDT_RIS_WDTRIS 0x00000001 ///< Watchdog Raw Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the WDT_O_MIS register.
+ */
+/*\{*/
+#define WDT_MIS_WDTMIS 0x00000001 ///< Watchdog Masked Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the WDT_O_TEST register.
+ */
+/*\{*/
+#define WDT_TEST_STALL 0x00000100 ///< Watchdog Stall Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the WDT_O_LOCK register.
+ */
+/*\{*/
+#define WDT_LOCK_M 0xFFFFFFFF ///< Watchdog Lock
+#define WDT_LOCK_UNLOCKED 0x00000000 ///< Unlocked
+#define WDT_LOCK_LOCKED 0x00000001 ///< Locked
+#define WDT_LOCK_UNLOCK 0x1ACCE551 ///< Unlocks the watchdog timer
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the GPIO_O_LOCK register.
+ */
+/*\{*/
+#define GPIO_LOCK_M 0xFFFFFFFF ///< GPIO Lock
+#define GPIO_LOCK_UNLOCKED 0x00000000 ///< The GPIOCR register is unlocked
+ ///< and may be modified
+#define GPIO_LOCK_LOCKED 0x00000001 ///< The GPIOCR register is locked
+ ///< and may not be modified
+#define GPIO_LOCK_KEY 0x1ACCE551 ///< Unlocks the GPIO_CR register
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the SSI_O_CR0 register.
+ */
+/*\{*/
+#define SSI_CR0_SCR_M 0x0000FF00 ///< SSI Serial Clock Rate
+#define SSI_CR0_SPH 0x00000080 ///< SSI Serial Clock Phase
+#define SSI_CR0_SPO 0x00000040 ///< SSI Serial Clock Polarity
+#define SSI_CR0_FRF_M 0x00000030 ///< SSI Frame Format Select
+#define SSI_CR0_FRF_MOTO 0x00000000 ///< Freescale SPI Frame Format
+#define SSI_CR0_FRF_TI 0x00000010 ///< Texas Instruments Synchronous
+ ///< Serial Frame Format
+#define SSI_CR0_FRF_NMW 0x00000020 ///< MICROWIRE Frame Format
+#define SSI_CR0_DSS_M 0x0000000F ///< SSI Data Size Select
+#define SSI_CR0_DSS_4 0x00000003 ///< 4-bit data
+#define SSI_CR0_DSS_5 0x00000004 ///< 5-bit data
+#define SSI_CR0_DSS_6 0x00000005 ///< 6-bit data
+#define SSI_CR0_DSS_7 0x00000006 ///< 7-bit data
+#define SSI_CR0_DSS_8 0x00000007 ///< 8-bit data
+#define SSI_CR0_DSS_9 0x00000008 ///< 9-bit data
+#define SSI_CR0_DSS_10 0x00000009 ///< 10-bit data
+#define SSI_CR0_DSS_11 0x0000000A ///< 11-bit data
+#define SSI_CR0_DSS_12 0x0000000B ///< 12-bit data
+#define SSI_CR0_DSS_13 0x0000000C ///< 13-bit data
+#define SSI_CR0_DSS_14 0x0000000D ///< 14-bit data
+#define SSI_CR0_DSS_15 0x0000000E ///< 15-bit data
+#define SSI_CR0_DSS_16 0x0000000F ///< 16-bit data
+#define SSI_CR0_SCR_S 8
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the SSI_O_CR1 register.
+ */
+/*\{*/
+#define SSI_CR1_SOD 0x00000008 ///< SSI Slave Mode Output Disable
+#define SSI_CR1_MS 0x00000004 ///< SSI Master/Slave Select
+#define SSI_CR1_SSE 0x00000002 ///< SSI Synchronous Serial Port
+ ///< Enable
+#define SSI_CR1_LBM 0x00000001 ///< SSI Loopback Mode
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the SSI_O_DR register.
+ */
+/*\{*/
+#define SSI_DR_DATA_M 0x0000FFFF ///< SSI Receive/Transmit Data
+#define SSI_DR_DATA_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the SSI_O_SR register.
+ */
+/*\{*/
+#define SSI_SR_BSY 0x00000010 ///< SSI Busy Bit
+#define SSI_SR_RFF 0x00000008 ///< SSI Receive FIFO Full
+#define SSI_SR_RNE 0x00000004 ///< SSI Receive FIFO Not Empty
+#define SSI_SR_TNF 0x00000002 ///< SSI Transmit FIFO Not Full
+#define SSI_SR_TFE 0x00000001 ///< SSI Transmit FIFO Empty
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the SSI_O_CPSR register.
+ */
+/*\{*/
+#define SSI_CPSR_CPSDVSR_M 0x000000FF ///< SSI Clock Prescale Divisor
+#define SSI_CPSR_CPSDVSR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the SSI_O_IM register.
+ */
+/*\{*/
+#define SSI_IM_TXIM 0x00000008 ///< SSI Transmit FIFO Interrupt Mask
+#define SSI_IM_RXIM 0x00000004 ///< SSI Receive FIFO Interrupt Mask
+#define SSI_IM_RTIM 0x00000002 ///< SSI Receive Time-Out Interrupt
+ ///< Mask
+#define SSI_IM_RORIM 0x00000001 ///< SSI Receive Overrun Interrupt
+ ///< Mask
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the SSI_O_RIS register.
+ */
+/*\{*/
+#define SSI_RIS_TXRIS 0x00000008 ///< SSI Transmit FIFO Raw Interrupt
+ ///< Status
+#define SSI_RIS_RXRIS 0x00000004 ///< SSI Receive FIFO Raw Interrupt
+ ///< Status
+#define SSI_RIS_RTRIS 0x00000002 ///< SSI Receive Time-Out Raw
+ ///< Interrupt Status
+#define SSI_RIS_RORRIS 0x00000001 ///< SSI Receive Overrun Raw
+ ///< Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the SSI_O_MIS register.
+ */
+/*\{*/
+#define SSI_MIS_TXMIS 0x00000008 ///< SSI Transmit FIFO Masked
+ ///< Interrupt Status
+#define SSI_MIS_RXMIS 0x00000004 ///< SSI Receive FIFO Masked
+ ///< Interrupt Status
+#define SSI_MIS_RTMIS 0x00000002 ///< SSI Receive Time-Out Masked
+ ///< Interrupt Status
+#define SSI_MIS_RORMIS 0x00000001 ///< SSI Receive Overrun Masked
+ ///< Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the SSI_O_ICR register.
+ */
+/*\{*/
+#define SSI_ICR_RTIC 0x00000002 ///< SSI Receive Time-Out Interrupt
+ ///< Clear
+#define SSI_ICR_RORIC 0x00000001 ///< SSI Receive Overrun Interrupt
+ ///< Clear
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_DR register.
+ */
+/*\{*/
+#define UART_DR_OE 0x00000800 ///< UART Overrun Error
+#define UART_DR_BE 0x00000400 ///< UART Break Error
+#define UART_DR_PE 0x00000200 ///< UART Parity Error
+#define UART_DR_FE 0x00000100 ///< UART Framing Error
+#define UART_DR_DATA_M 0x000000FF ///< Data Transmitted or Received
+#define UART_DR_DATA_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_RSR register.
+ */
+/*\{*/
+#define UART_RSR_OE 0x00000008 ///< UART Overrun Error
+#define UART_RSR_BE 0x00000004 ///< UART Break Error
+#define UART_RSR_PE 0x00000002 ///< UART Parity Error
+#define UART_RSR_FE 0x00000001 ///< UART Framing Error
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_ECR register.
+ */
+/*\{*/
+#define UART_ECR_DATA_M 0x000000FF ///< Error Clear
+#define UART_ECR_DATA_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_FR register.
+ */
+/*\{*/
+#define UART_FR_TXFE 0x00000080 ///< UART Transmit FIFO Empty
+#define UART_FR_RXFF 0x00000040 ///< UART Receive FIFO Full
+#define UART_FR_TXFF 0x00000020 ///< UART Transmit FIFO Full
+#define UART_FR_RXFE 0x00000010 ///< UART Receive FIFO Empty
+#define UART_FR_BUSY 0x00000008 ///< UART Busy
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_ILPR register.
+ */
+/*\{*/
+#define UART_ILPR_ILPDVSR_M 0x000000FF ///< IrDA Low-Power Divisor
+#define UART_ILPR_ILPDVSR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_IBRD register.
+ */
+/*\{*/
+#define UART_IBRD_DIVINT_M 0x0000FFFF ///< Integer Baud-Rate Divisor
+#define UART_IBRD_DIVINT_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_FBRD register.
+ */
+/*\{*/
+#define UART_FBRD_DIVFRAC_M 0x0000003F ///< Fractional Baud-Rate Divisor
+#define UART_FBRD_DIVFRAC_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_LCRH register.
+ */
+/*\{*/
+#define UART_LCRH_SPS 0x00000080 ///< UART Stick Parity Select
+#define UART_LCRH_WLEN_M 0x00000060 ///< UART Word Length
+#define UART_LCRH_WLEN_5 0x00000000 ///< 5 bits (default)
+#define UART_LCRH_WLEN_6 0x00000020 ///< 6 bits
+#define UART_LCRH_WLEN_7 0x00000040 ///< 7 bits
+#define UART_LCRH_WLEN_8 0x00000060 ///< 8 bits
+#define UART_LCRH_FEN 0x00000010 ///< UART Enable FIFOs
+#define UART_LCRH_STP2 0x00000008 ///< UART Two Stop Bits Select
+#define UART_LCRH_EPS 0x00000004 ///< UART Even Parity Select
+#define UART_LCRH_PEN 0x00000002 ///< UART Parity Enable
+#define UART_LCRH_BRK 0x00000001 ///< UART Send Break
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_CTL register.
+ */
+/*\{*/
+#define UART_CTL_RXE 0x00000200 ///< UART Receive Enable
+#define UART_CTL_TXE 0x00000100 ///< UART Transmit Enable
+#define UART_CTL_LBE 0x00000080 ///< UART Loop Back Enable
+#define UART_CTL_SIRLP 0x00000004 ///< UART SIR Low-Power Mode
+#define UART_CTL_SIREN 0x00000002 ///< UART SIR Enable
+#define UART_CTL_UARTEN 0x00000001 ///< UART Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_IFLS register.
+ */
+/*\{*/
+#define UART_IFLS_RX_M 0x00000038 ///< UART Receive Interrupt FIFO
+ ///< Level Select
+#define UART_IFLS_RX1_8 0x00000000 ///< RX FIFO >= 1/8 full
+#define UART_IFLS_RX2_8 0x00000008 ///< RX FIFO >= 1/4 full
+#define UART_IFLS_RX4_8 0x00000010 ///< RX FIFO >= 1/2 full (default)
+#define UART_IFLS_RX6_8 0x00000018 ///< RX FIFO >= 3/4 full
+#define UART_IFLS_RX7_8 0x00000020 ///< RX FIFO >= 7/8 full
+#define UART_IFLS_TX_M 0x00000007 ///< UART Transmit Interrupt FIFO
+ ///< Level Select
+#define UART_IFLS_TX1_8 0x00000000 ///< TX FIFO <= 1/8 full
+#define UART_IFLS_TX2_8 0x00000001 ///< TX FIFO <= 1/4 full
+#define UART_IFLS_TX4_8 0x00000002 ///< TX FIFO <= 1/2 full (default)
+#define UART_IFLS_TX6_8 0x00000003 ///< TX FIFO <= 3/4 full
+#define UART_IFLS_TX7_8 0x00000004 ///< TX FIFO <= 7/8 full
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_IM register.
+ */
+/*\{*/
+#define UART_IM_OEIM 0x00000400 ///< UART Overrun Error Interrupt
+ ///< Mask
+#define UART_IM_BEIM 0x00000200 ///< UART Break Error Interrupt Mask
+#define UART_IM_PEIM 0x00000100 ///< UART Parity Error Interrupt Mask
+#define UART_IM_FEIM 0x00000080 ///< UART Framing Error Interrupt
+ ///< Mask
+#define UART_IM_RTIM 0x00000040 ///< UART Receive Time-Out Interrupt
+ ///< Mask
+#define UART_IM_TXIM 0x00000020 ///< UART Transmit Interrupt Mask
+#define UART_IM_RXIM 0x00000010 ///< UART Receive Interrupt Mask
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_RIS register.
+ */
+/*\{*/
+#define UART_RIS_OERIS 0x00000400 ///< UART Overrun Error Raw Interrupt
+ ///< Status
+#define UART_RIS_BERIS 0x00000200 ///< UART Break Error Raw Interrupt
+ ///< Status
+#define UART_RIS_PERIS 0x00000100 ///< UART Parity Error Raw Interrupt
+ ///< Status
+#define UART_RIS_FERIS 0x00000080 ///< UART Framing Error Raw Interrupt
+ ///< Status
+#define UART_RIS_RTRIS 0x00000040 ///< UART Receive Time-Out Raw
+ ///< Interrupt Status
+#define UART_RIS_TXRIS 0x00000020 ///< UART Transmit Raw Interrupt
+ ///< Status
+#define UART_RIS_RXRIS 0x00000010 ///< UART Receive Raw Interrupt
+ ///< Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_MIS register.
+ */
+/*\{*/
+#define UART_MIS_OEMIS 0x00000400 ///< UART Overrun Error Masked
+ ///< Interrupt Status
+#define UART_MIS_BEMIS 0x00000200 ///< UART Break Error Masked
+ ///< Interrupt Status
+#define UART_MIS_PEMIS 0x00000100 ///< UART Parity Error Masked
+ ///< Interrupt Status
+#define UART_MIS_FEMIS 0x00000080 ///< UART Framing Error Masked
+ ///< Interrupt Status
+#define UART_MIS_RTMIS 0x00000040 ///< UART Receive Time-Out Masked
+ ///< Interrupt Status
+#define UART_MIS_TXMIS 0x00000020 ///< UART Transmit Masked Interrupt
+ ///< Status
+#define UART_MIS_RXMIS 0x00000010 ///< UART Receive Masked Interrupt
+ ///< Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the UART_O_ICR register.
+ */
+/*\{*/
+#define UART_ICR_OEIC 0x00000400 ///< Overrun Error Interrupt Clear
+#define UART_ICR_BEIC 0x00000200 ///< Break Error Interrupt Clear
+#define UART_ICR_PEIC 0x00000100 ///< Parity Error Interrupt Clear
+#define UART_ICR_FEIC 0x00000080 ///< Framing Error Interrupt Clear
+#define UART_ICR_RTIC 0x00000040 ///< Receive Time-Out Interrupt Clear
+#define UART_ICR_TXIC 0x00000020 ///< Transmit Interrupt Clear
+#define UART_ICR_RXIC 0x00000010 ///< Receive Interrupt Clear
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_MSA register.
+ */
+/*\{*/
+#define I2C_MSA_SA_M 0x000000FE ///< I2C Slave Address
+#define I2C_MSA_RS 0x00000001 ///< Receive not send
+#define I2C_MSA_SA_S 1
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_SOAR register.
+ */
+/*\{*/
+#define I2C_SOAR_OAR_M 0x0000007F ///< I2C Slave Own Address
+#define I2C_SOAR_OAR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_SCSR register.
+ */
+/*\{*/
+#define I2C_SCSR_FBR 0x00000004 ///< First Byte Received
+#define I2C_SCSR_TREQ 0x00000002 ///< Transmit Request
+#define I2C_SCSR_DA 0x00000001 ///< Device Active
+#define I2C_SCSR_RREQ 0x00000001 ///< Receive Request
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_MCS register.
+ */
+/*\{*/
+#define I2C_MCS_BUSBSY 0x00000040 ///< Bus Busy
+#define I2C_MCS_IDLE 0x00000020 ///< I2C Idle
+#define I2C_MCS_ARBLST 0x00000010 ///< Arbitration Lost
+#define I2C_MCS_ACK 0x00000008 ///< Data Acknowledge Enable
+#define I2C_MCS_DATACK 0x00000008 ///< Acknowledge Data
+#define I2C_MCS_ADRACK 0x00000004 ///< Acknowledge Address
+#define I2C_MCS_STOP 0x00000004 ///< Generate STOP
+#define I2C_MCS_START 0x00000002 ///< Generate START
+#define I2C_MCS_ERROR 0x00000002 ///< Error
+#define I2C_MCS_RUN 0x00000001 ///< I2C Master Enable
+#define I2C_MCS_BUSY 0x00000001 ///< I2C Busy
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_SDR register.
+ */
+/*\{*/
+#define I2C_SDR_DATA_M 0x000000FF ///< Data for Transfer
+#define I2C_SDR_DATA_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_MDR register.
+ */
+/*\{*/
+#define I2C_MDR_DATA_M 0x000000FF ///< Data Transferred
+#define I2C_MDR_DATA_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_MTPR register.
+ */
+/*\{*/
+#define I2C_MTPR_TPR_M 0x000000FF ///< SCL Clock Period
+#define I2C_MTPR_TPR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_SIMR register.
+ */
+/*\{*/
+#define I2C_SIMR_DATAIM 0x00000001 ///< Data Interrupt Mask
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_SRIS register.
+ */
+/*\{*/
+#define I2C_SRIS_DATARIS 0x00000001 ///< Data Raw Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_MIMR register.
+ */
+/*\{*/
+#define I2C_MIMR_IM 0x00000001 ///< Interrupt Mask
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_MRIS register.
+ */
+/*\{*/
+#define I2C_MRIS_RIS 0x00000001 ///< Raw Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_SMIS register.
+ */
+/*\{*/
+#define I2C_SMIS_DATAMIS 0x00000001 ///< Data Masked Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_SICR register.
+ */
+/*\{*/
+#define I2C_SICR_DATAIC 0x00000001 ///< Data Interrupt Clear
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_MMIS register.
+ */
+/*\{*/
+#define I2C_MMIS_MIS 0x00000001 ///< Masked Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_MICR register.
+ */
+/*\{*/
+#define I2C_MICR_IC 0x00000001 ///< Interrupt Clear
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the I2C_O_MCR register.
+ */
+/*\{*/
+#define I2C_MCR_SFE 0x00000020 ///< I2C Slave Function Enable
+#define I2C_MCR_MFE 0x00000010 ///< I2C Master Function Enable
+#define I2C_MCR_LPBK 0x00000001 ///< I2C Loopback
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_CTL register.
+ */
+/*\{*/
+#define PWM_CTL_GLOBALSYNC2 0x00000004 ///< Update PWM Generator 2
+#define PWM_CTL_GLOBALSYNC1 0x00000002 ///< Update PWM Generator 1
+#define PWM_CTL_GLOBALSYNC0 0x00000001 ///< Update PWM Generator 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_SYNC register.
+ */
+/*\{*/
+#define PWM_SYNC_SYNC2 0x00000004 ///< Reset Generator 2 Counter
+#define PWM_SYNC_SYNC1 0x00000002 ///< Reset Generator 1 Counter
+#define PWM_SYNC_SYNC0 0x00000001 ///< Reset Generator 0 Counter
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_ENABLE register.
+ */
+/*\{*/
+#define PWM_ENABLE_PWM5EN 0x00000020 ///< PWM5 Output Enable
+#define PWM_ENABLE_PWM4EN 0x00000010 ///< PWM4 Output Enable
+#define PWM_ENABLE_PWM3EN 0x00000008 ///< PWM3 Output Enable
+#define PWM_ENABLE_PWM2EN 0x00000004 ///< PWM2 Output Enable
+#define PWM_ENABLE_PWM1EN 0x00000002 ///< PWM1 Output Enable
+#define PWM_ENABLE_PWM0EN 0x00000001 ///< PWM0 Output Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_INVERT register.
+ */
+/*\{*/
+#define PWM_INVERT_PWM5INV 0x00000020 ///< Invert PWM5 Signal
+#define PWM_INVERT_PWM4INV 0x00000010 ///< Invert PWM4 Signal
+#define PWM_INVERT_PWM3INV 0x00000008 ///< Invert PWM3 Signal
+#define PWM_INVERT_PWM2INV 0x00000004 ///< Invert PWM2 Signal
+#define PWM_INVERT_PWM1INV 0x00000002 ///< Invert PWM1 Signal
+#define PWM_INVERT_PWM0INV 0x00000001 ///< Invert PWM0 Signal
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_FAULT register.
+ */
+/*\{*/
+#define PWM_FAULT_FAULT5 0x00000020 ///< PWM5 Fault
+#define PWM_FAULT_FAULT4 0x00000010 ///< PWM4 Fault
+#define PWM_FAULT_FAULT3 0x00000008 ///< PWM3 Fault
+#define PWM_FAULT_FAULT2 0x00000004 ///< PWM2 Fault
+#define PWM_FAULT_FAULT1 0x00000002 ///< PWM1 Fault
+#define PWM_FAULT_FAULT0 0x00000001 ///< PWM0 Fault
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_INTEN register.
+ */
+/*\{*/
+#define PWM_INTEN_INTFAULT 0x00010000 ///< Fault Interrupt Enable
+#define PWM_INTEN_INTPWM2 0x00000004 ///< PWM2 Interrupt Enable
+#define PWM_INTEN_INTPWM1 0x00000002 ///< PWM1 Interrupt Enable
+#define PWM_INTEN_INTPWM0 0x00000001 ///< PWM0 Interrupt Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_RIS register.
+ */
+/*\{*/
+#define PWM_RIS_INTFAULT 0x00010000 ///< Fault Interrupt Asserted
+#define PWM_RIS_INTPWM2 0x00000004 ///< PWM2 Interrupt Asserted
+#define PWM_RIS_INTPWM1 0x00000002 ///< PWM1 Interrupt Asserted
+#define PWM_RIS_INTPWM0 0x00000001 ///< PWM0 Interrupt Asserted
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_ISC register.
+ */
+/*\{*/
+#define PWM_ISC_INTFAULT 0x00010000 ///< Fault Interrupt Asserted
+#define PWM_ISC_INTPWM2 0x00000004 ///< PWM2 Interrupt Status
+#define PWM_ISC_INTPWM1 0x00000002 ///< PWM1 Interrupt Status
+#define PWM_ISC_INTPWM0 0x00000001 ///< PWM0 Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_STATUS register.
+ */
+/*\{*/
+#define PWM_STATUS_FAULT 0x00000001 ///< Fault Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_CTL register.
+ */
+/*\{*/
+#define PWM_X_CTL_CMPBUPD 0x00000020 ///< Comparator B Update Mode
+#define PWM_X_CTL_CMPAUPD 0x00000010 ///< Comparator A Update Mode
+#define PWM_X_CTL_LOADUPD 0x00000008 ///< Load Register Update Mode
+#define PWM_X_CTL_DEBUG 0x00000004 ///< Debug Mode
+#define PWM_X_CTL_MODE 0x00000002 ///< Counter Mode
+#define PWM_X_CTL_ENABLE 0x00000001 ///< PWM Block Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_INTEN register.
+ */
+/*\{*/
+#define PWM_X_INTEN_TRCMPBD 0x00002000 ///< Trigger for Counter=PWMnCMPB
+ ///< Down
+#define PWM_X_INTEN_TRCMPBU 0x00001000 ///< Trigger for Counter=PWMnCMPB Up
+#define PWM_X_INTEN_TRCMPAD 0x00000800 ///< Trigger for Counter=PWMnCMPA
+ ///< Down
+#define PWM_X_INTEN_TRCMPAU 0x00000400 ///< Trigger for Counter=PWMnCMPA Up
+#define PWM_X_INTEN_TRCNTLOAD 0x00000200 ///< Trigger for Counter=PWMnLOAD
+#define PWM_X_INTEN_TRCNTZERO 0x00000100 ///< Trigger for Counter=0
+#define PWM_X_INTEN_INTCMPBD 0x00000020 ///< Interrupt for Counter=PWMnCMPB
+ ///< Down
+#define PWM_X_INTEN_INTCMPBU 0x00000010 ///< Interrupt for Counter=PWMnCMPB
+ ///< Up
+#define PWM_X_INTEN_INTCMPAD 0x00000008 ///< Interrupt for Counter=PWMnCMPA
+ ///< Down
+#define PWM_X_INTEN_INTCMPAU 0x00000004 ///< Interrupt for Counter=PWMnCMPA
+ ///< Up
+#define PWM_X_INTEN_INTCNTLOAD 0x00000002 ///< Interrupt for Counter=PWMnLOAD
+#define PWM_X_INTEN_INTCNTZERO 0x00000001 ///< Interrupt for Counter=0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_RIS register.
+ */
+/*\{*/
+#define PWM_X_RIS_INTCMPBD 0x00000020 ///< Comparator B Down Interrupt
+ ///< Status
+#define PWM_X_RIS_INTCMPBU 0x00000010 ///< Comparator B Up Interrupt Status
+#define PWM_X_RIS_INTCMPAD 0x00000008 ///< Comparator A Down Interrupt
+ ///< Status
+#define PWM_X_RIS_INTCMPAU 0x00000004 ///< Comparator A Up Interrupt Status
+#define PWM_X_RIS_INTCNTLOAD 0x00000002 ///< Counter=Load Interrupt Status
+#define PWM_X_RIS_INTCNTZERO 0x00000001 ///< Counter=0 Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_ISC register.
+ */
+/*\{*/
+#define PWM_X_ISC_INTCMPBD 0x00000020 ///< Comparator B Down Interrupt
+#define PWM_X_ISC_INTCMPBU 0x00000010 ///< Comparator B Up Interrupt
+#define PWM_X_ISC_INTCMPAD 0x00000008 ///< Comparator A Down Interrupt
+#define PWM_X_ISC_INTCMPAU 0x00000004 ///< Comparator A Up Interrupt
+#define PWM_X_ISC_INTCNTLOAD 0x00000002 ///< Counter=Load Interrupt
+#define PWM_X_ISC_INTCNTZERO 0x00000001 ///< Counter=0 Interrupt
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_LOAD register.
+ */
+/*\{*/
+#define PWM_X_LOAD_M 0x0000FFFF ///< Counter Load Value
+#define PWM_X_LOAD_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_COUNT register.
+ */
+/*\{*/
+#define PWM_X_COUNT_M 0x0000FFFF ///< Counter Value
+#define PWM_X_COUNT_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_CMPA register.
+ */
+/*\{*/
+#define PWM_X_CMPA_M 0x0000FFFF ///< Comparator A Value
+#define PWM_X_CMPA_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_CMPB register.
+ */
+/*\{*/
+#define PWM_X_CMPB_M 0x0000FFFF ///< Comparator B Value
+#define PWM_X_CMPB_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_GENA register.
+ */
+/*\{*/
+#define PWM_X_GENA_ACTCMPBD_M 0x00000C00 ///< Action for Comparator B Down
+#define PWM_X_GENA_ACTCMPBD_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENA_ACTCMPBD_INV 0x00000400 ///< Invert pwmA
+#define PWM_X_GENA_ACTCMPBD_ZERO 0x00000800 ///< Drive pwmA Low
+#define PWM_X_GENA_ACTCMPBD_ONE 0x00000C00 ///< Drive pwmA High
+#define PWM_X_GENA_ACTCMPBU_M 0x00000300 ///< Action for Comparator B Up
+#define PWM_X_GENA_ACTCMPBU_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENA_ACTCMPBU_INV 0x00000100 ///< Invert pwmA
+#define PWM_X_GENA_ACTCMPBU_ZERO 0x00000200 ///< Drive pwmA Low
+#define PWM_X_GENA_ACTCMPBU_ONE 0x00000300 ///< Drive pwmA High
+#define PWM_X_GENA_ACTCMPAD_M 0x000000C0 ///< Action for Comparator A Down
+#define PWM_X_GENA_ACTCMPAD_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENA_ACTCMPAD_INV 0x00000040 ///< Invert pwmA
+#define PWM_X_GENA_ACTCMPAD_ZERO 0x00000080 ///< Drive pwmA Low
+#define PWM_X_GENA_ACTCMPAD_ONE 0x000000C0 ///< Drive pwmA High
+#define PWM_X_GENA_ACTCMPAU_M 0x00000030 ///< Action for Comparator A Up
+#define PWM_X_GENA_ACTCMPAU_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENA_ACTCMPAU_INV 0x00000010 ///< Invert pwmA
+#define PWM_X_GENA_ACTCMPAU_ZERO 0x00000020 ///< Drive pwmA Low
+#define PWM_X_GENA_ACTCMPAU_ONE 0x00000030 ///< Drive pwmA High
+#define PWM_X_GENA_ACTLOAD_M 0x0000000C ///< Action for Counter=LOAD
+#define PWM_X_GENA_ACTLOAD_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENA_ACTLOAD_INV 0x00000004 ///< Invert pwmA
+#define PWM_X_GENA_ACTLOAD_ZERO 0x00000008 ///< Drive pwmA Low
+#define PWM_X_GENA_ACTLOAD_ONE 0x0000000C ///< Drive pwmA High
+#define PWM_X_GENA_ACTZERO_M 0x00000003 ///< Action for Counter=0
+#define PWM_X_GENA_ACTZERO_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENA_ACTZERO_INV 0x00000001 ///< Invert pwmA
+#define PWM_X_GENA_ACTZERO_ZERO 0x00000002 ///< Drive pwmA Low
+#define PWM_X_GENA_ACTZERO_ONE 0x00000003 ///< Drive pwmA High
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_GENB register.
+ */
+/*\{*/
+#define PWM_X_GENB_ACTCMPBD_M 0x00000C00 ///< Action for Comparator B Down
+#define PWM_X_GENB_ACTCMPBD_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENB_ACTCMPBD_INV 0x00000400 ///< Invert pwmB
+#define PWM_X_GENB_ACTCMPBD_ZERO 0x00000800 ///< Drive pwmB Low
+#define PWM_X_GENB_ACTCMPBD_ONE 0x00000C00 ///< Drive pwmB High
+#define PWM_X_GENB_ACTCMPBU_M 0x00000300 ///< Action for Comparator B Up
+#define PWM_X_GENB_ACTCMPBU_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENB_ACTCMPBU_INV 0x00000100 ///< Invert pwmB
+#define PWM_X_GENB_ACTCMPBU_ZERO 0x00000200 ///< Drive pwmB Low
+#define PWM_X_GENB_ACTCMPBU_ONE 0x00000300 ///< Drive pwmB High
+#define PWM_X_GENB_ACTCMPAD_M 0x000000C0 ///< Action for Comparator A Down
+#define PWM_X_GENB_ACTCMPAD_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENB_ACTCMPAD_INV 0x00000040 ///< Invert pwmB
+#define PWM_X_GENB_ACTCMPAD_ZERO 0x00000080 ///< Drive pwmB Low
+#define PWM_X_GENB_ACTCMPAD_ONE 0x000000C0 ///< Drive pwmB High
+#define PWM_X_GENB_ACTCMPAU_M 0x00000030 ///< Action for Comparator A Up
+#define PWM_X_GENB_ACTCMPAU_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENB_ACTCMPAU_INV 0x00000010 ///< Invert pwmB
+#define PWM_X_GENB_ACTCMPAU_ZERO 0x00000020 ///< Drive pwmB Low
+#define PWM_X_GENB_ACTCMPAU_ONE 0x00000030 ///< Drive pwmB High
+#define PWM_X_GENB_ACTLOAD_M 0x0000000C ///< Action for Counter=LOAD
+#define PWM_X_GENB_ACTLOAD_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENB_ACTLOAD_INV 0x00000004 ///< Invert pwmB
+#define PWM_X_GENB_ACTLOAD_ZERO 0x00000008 ///< Drive pwmB Low
+#define PWM_X_GENB_ACTLOAD_ONE 0x0000000C ///< Drive pwmB High
+#define PWM_X_GENB_ACTZERO_M 0x00000003 ///< Action for Counter=0
+#define PWM_X_GENB_ACTZERO_NONE 0x00000000 ///< Do nothing
+#define PWM_X_GENB_ACTZERO_INV 0x00000001 ///< Invert pwmB
+#define PWM_X_GENB_ACTZERO_ZERO 0x00000002 ///< Drive pwmB Low
+#define PWM_X_GENB_ACTZERO_ONE 0x00000003 ///< Drive pwmB High
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_DBCTL register.
+ */
+/*\{*/
+#define PWM_X_DBCTL_ENABLE 0x00000001 ///< Dead-Band Generator Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_DBRISE register.
+ */
+/*\{*/
+#define PWM_X_DBRISE_DELAY_M 0x00000FFF ///< Dead-Band Rise Delay
+#define PWM_X_DBRISE_DELAY_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the PWM_O_X_DBFALL register.
+ */
+/*\{*/
+#define PWM_X_DBFALL_DELAY_M 0x00000FFF ///< Dead-Band Fall Delay
+#define PWM_X_DBFALL_DELAY_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_CTL register.
+ */
+/*\{*/
+#define QEI_CTL_STALLEN 0x00001000 ///< Stall QEI
+#define QEI_CTL_INVI 0x00000800 ///< Invert Index Pulse
+#define QEI_CTL_INVB 0x00000400 ///< Invert PhB
+#define QEI_CTL_INVA 0x00000200 ///< Invert PhA
+#define QEI_CTL_VELDIV_M 0x000001C0 ///< Predivide Velocity
+#define QEI_CTL_VELDIV_1 0x00000000 ///< QEI clock /1
+#define QEI_CTL_VELDIV_2 0x00000040 ///< QEI clock /2
+#define QEI_CTL_VELDIV_4 0x00000080 ///< QEI clock /4
+#define QEI_CTL_VELDIV_8 0x000000C0 ///< QEI clock /8
+#define QEI_CTL_VELDIV_16 0x00000100 ///< QEI clock /16
+#define QEI_CTL_VELDIV_32 0x00000140 ///< QEI clock /32
+#define QEI_CTL_VELDIV_64 0x00000180 ///< QEI clock /64
+#define QEI_CTL_VELDIV_128 0x000001C0 ///< QEI clock /128
+#define QEI_CTL_VELEN 0x00000020 ///< Capture Velocity
+#define QEI_CTL_RESMODE 0x00000010 ///< Reset Mode
+#define QEI_CTL_CAPMODE 0x00000008 ///< Capture Mode
+#define QEI_CTL_SIGMODE 0x00000004 ///< Signal Mode
+#define QEI_CTL_SWAP 0x00000002 ///< Swap Signals
+#define QEI_CTL_ENABLE 0x00000001 ///< Enable QEI
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_STAT register.
+ */
+/*\{*/
+#define QEI_STAT_DIRECTION 0x00000002 ///< Direction of Rotation
+#define QEI_STAT_ERROR 0x00000001 ///< Error Detected
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_POS register.
+ */
+/*\{*/
+#define QEI_POS_M 0xFFFFFFFF ///< Current Position Integrator Value
+#define QEI_POS_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_MAXPOS register.
+ */
+/*\{*/
+#define QEI_MAXPOS_M 0xFFFFFFFF ///< Maximum Position Integrator Value
+#define QEI_MAXPOS_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_LOAD register.
+ */
+/*\{*/
+#define QEI_LOAD_M 0xFFFFFFFF ///< Velocity Timer Load Value
+#define QEI_LOAD_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_TIME register.
+ */
+/*\{*/
+#define QEI_TIME_M 0xFFFFFFFF ///< Velocity Timer Current Value
+#define QEI_TIME_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_COUNT register.
+ */
+/*\{*/
+#define QEI_COUNT_M 0xFFFFFFFF ///< Velocity Pulse Count
+#define QEI_COUNT_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_SPEED register.
+ */
+/*\{*/
+#define QEI_SPEED_M 0xFFFFFFFF ///< Velocity
+#define QEI_SPEED_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_INTEN register.
+ */
+/*\{*/
+#define QEI_INTEN_ERROR 0x00000008 ///< Phase Error Interrupt Enable
+#define QEI_INTEN_DIR 0x00000004 ///< Direction Change Interrupt
+ ///< Enable
+#define QEI_INTEN_TIMER 0x00000002 ///< Timer Expires Interrupt Enable
+#define QEI_INTEN_INDEX 0x00000001 ///< Index Pulse Detected Interrupt
+ ///< Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_RIS register.
+ */
+/*\{*/
+#define QEI_RIS_ERROR 0x00000008 ///< Phase Error Detected
+#define QEI_RIS_DIR 0x00000004 ///< Direction Change Detected
+#define QEI_RIS_TIMER 0x00000002 ///< Velocity Timer Expired
+#define QEI_RIS_INDEX 0x00000001 ///< Index Pulse Asserted
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the QEI_O_ISC register.
+ */
+/*\{*/
+#define QEI_ISC_ERROR 0x00000008 ///< Phase Error Interrupt
+#define QEI_ISC_DIR 0x00000004 ///< Direction Change Interrupt
+#define QEI_ISC_TIMER 0x00000002 ///< Velocity Timer Expired Interrupt
+#define QEI_ISC_INDEX 0x00000001 ///< Index Pulse Interrupt
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_CFG register.
+ */
+/*\{*/
+#define TIMER_CFG_M 0x00000007 ///< GPTM Configuration
+#define TIMER_CFG_32_BIT_TIMER 0x00000000 ///< 32-bit timer configuration
+#define TIMER_CFG_32_BIT_RTC 0x00000001 ///< 32-bit real-time clock (RTC)
+ ///< counter configuration
+#define TIMER_CFG_16_BIT 0x00000004 ///< 16-bit timer configuration. The
+ ///< function is controlled by bits
+ ///< 1:0 of GPTMTAMR and GPTMTBMR
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TAMR register.
+ */
+/*\{*/
+#define TIMER_TAMR_TAAMS 0x00000008 ///< GPTM Timer A Alternate Mode
+ ///< Select
+#define TIMER_TAMR_TACMR 0x00000004 ///< GPTM Timer A Capture Mode
+#define TIMER_TAMR_TAMR_M 0x00000003 ///< GPTM Timer A Mode
+#define TIMER_TAMR_TAMR_1_SHOT 0x00000001 ///< One-Shot Timer mode
+#define TIMER_TAMR_TAMR_PERIOD 0x00000002 ///< Periodic Timer mode
+#define TIMER_TAMR_TAMR_CAP 0x00000003 ///< Capture mode
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TBMR register.
+ */
+/*\{*/
+#define TIMER_TBMR_TBAMS 0x00000008 ///< GPTM Timer B Alternate Mode
+ ///< Select
+#define TIMER_TBMR_TBCMR 0x00000004 ///< GPTM Timer B Capture Mode
+#define TIMER_TBMR_TBMR_M 0x00000003 ///< GPTM Timer B Mode
+#define TIMER_TBMR_TBMR_1_SHOT 0x00000001 ///< One-Shot Timer mode
+#define TIMER_TBMR_TBMR_PERIOD 0x00000002 ///< Periodic Timer mode
+#define TIMER_TBMR_TBMR_CAP 0x00000003 ///< Capture mode
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_CTL register.
+ */
+/*\{*/
+#define TIMER_CTL_TBPWML 0x00004000 ///< GPTM Timer B PWM Output Level
+#define TIMER_CTL_TBOTE 0x00002000 ///< GPTM Timer B Output Trigger
+ ///< Enable
+#define TIMER_CTL_TBEVENT_M 0x00000C00 ///< GPTM Timer B Event Mode
+#define TIMER_CTL_TBEVENT_POS 0x00000000 ///< Positive edge
+#define TIMER_CTL_TBEVENT_NEG 0x00000400 ///< Negative edge
+#define TIMER_CTL_TBEVENT_BOTH 0x00000C00 ///< Both edges
+#define TIMER_CTL_TBSTALL 0x00000200 ///< GPTM Timer B Stall Enable
+#define TIMER_CTL_TBEN 0x00000100 ///< GPTM Timer B Enable
+#define TIMER_CTL_TAPWML 0x00000040 ///< GPTM Timer A PWM Output Level
+#define TIMER_CTL_TAOTE 0x00000020 ///< GPTM Timer A Output Trigger
+ ///< Enable
+#define TIMER_CTL_RTCEN 0x00000010 ///< GPTM RTC Enable
+#define TIMER_CTL_TAEVENT_M 0x0000000C ///< GPTM Timer A Event Mode
+#define TIMER_CTL_TAEVENT_POS 0x00000000 ///< Positive edge
+#define TIMER_CTL_TAEVENT_NEG 0x00000004 ///< Negative edge
+#define TIMER_CTL_TAEVENT_BOTH 0x0000000C ///< Both edges
+#define TIMER_CTL_TASTALL 0x00000002 ///< GPTM Timer A Stall Enable
+#define TIMER_CTL_TAEN 0x00000001 ///< GPTM Timer A Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_IMR register.
+ */
+/*\{*/
+#define TIMER_IMR_CBEIM 0x00000400 ///< GPTM Capture B Event Interrupt
+ ///< Mask
+#define TIMER_IMR_CBMIM 0x00000200 ///< GPTM Capture B Match Interrupt
+ ///< Mask
+#define TIMER_IMR_TBTOIM 0x00000100 ///< GPTM Timer B Time-Out Interrupt
+ ///< Mask
+#define TIMER_IMR_RTCIM 0x00000008 ///< GPTM RTC Interrupt Mask
+#define TIMER_IMR_CAEIM 0x00000004 ///< GPTM Capture A Event Interrupt
+ ///< Mask
+#define TIMER_IMR_CAMIM 0x00000002 ///< GPTM Capture A Match Interrupt
+ ///< Mask
+#define TIMER_IMR_TATOIM 0x00000001 ///< GPTM Timer A Time-Out Interrupt
+ ///< Mask
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_RIS register.
+ */
+/*\{*/
+#define TIMER_RIS_CBERIS 0x00000400 ///< GPTM Capture B Event Raw
+ ///< Interrupt
+#define TIMER_RIS_CBMRIS 0x00000200 ///< GPTM Capture B Match Raw
+ ///< Interrupt
+#define TIMER_RIS_TBTORIS 0x00000100 ///< GPTM Timer B Time-Out Raw
+ ///< Interrupt
+#define TIMER_RIS_RTCRIS 0x00000008 ///< GPTM RTC Raw Interrupt
+#define TIMER_RIS_CAERIS 0x00000004 ///< GPTM Capture A Event Raw
+ ///< Interrupt
+#define TIMER_RIS_CAMRIS 0x00000002 ///< GPTM Capture A Match Raw
+ ///< Interrupt
+#define TIMER_RIS_TATORIS 0x00000001 ///< GPTM Timer A Time-Out Raw
+ ///< Interrupt
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_MIS register.
+ */
+/*\{*/
+#define TIMER_MIS_CBEMIS 0x00000400 ///< GPTM Capture B Event Masked
+ ///< Interrupt
+#define TIMER_MIS_CBMMIS 0x00000200 ///< GPTM Capture B Match Masked
+ ///< Interrupt
+#define TIMER_MIS_TBTOMIS 0x00000100 ///< GPTM Timer B Time-Out Masked
+ ///< Interrupt
+#define TIMER_MIS_RTCMIS 0x00000008 ///< GPTM RTC Masked Interrupt
+#define TIMER_MIS_CAEMIS 0x00000004 ///< GPTM Capture A Event Masked
+ ///< Interrupt
+#define TIMER_MIS_CAMMIS 0x00000002 ///< GPTM Capture A Match Masked
+ ///< Interrupt
+#define TIMER_MIS_TATOMIS 0x00000001 ///< GPTM Timer A Time-Out Masked
+ ///< Interrupt
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_ICR register.
+ */
+/*\{*/
+#define TIMER_ICR_CBECINT 0x00000400 ///< GPTM Capture B Event Interrupt
+ ///< Clear
+#define TIMER_ICR_CBMCINT 0x00000200 ///< GPTM Capture B Match Interrupt
+ ///< Clear
+#define TIMER_ICR_TBTOCINT 0x00000100 ///< GPTM Timer B Time-Out Interrupt
+ ///< Clear
+#define TIMER_ICR_RTCCINT 0x00000008 ///< GPTM RTC Interrupt Clear
+#define TIMER_ICR_CAECINT 0x00000004 ///< GPTM Capture A Event Interrupt
+ ///< Clear
+#define TIMER_ICR_CAMCINT 0x00000002 ///< GPTM Capture A Match Interrupt
+ ///< Clear
+#define TIMER_ICR_TATOCINT 0x00000001 ///< GPTM Timer A Time-Out Raw
+ ///< Interrupt
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TAILR register.
+ */
+/*\{*/
+#define TIMER_TAILR_TAILRH_M 0xFFFF0000 ///< GPTM Timer A Interval Load
+ ///< Register High
+#define TIMER_TAILR_TAILRL_M 0x0000FFFF ///< GPTM Timer A Interval Load
+ ///< Register Low
+#define TIMER_TAILR_TAILRH_S 16
+#define TIMER_TAILR_TAILRL_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TBILR register.
+ */
+/*\{*/
+#define TIMER_TBILR_TBILRL_M 0x0000FFFF ///< GPTM Timer B Interval Load
+ ///< Register
+#define TIMER_TBILR_TBILRL_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TAMATCHR
+* register.
+ */
+/*\{*/
+#define TIMER_TAMATCHR_TAMRH_M 0xFFFF0000 ///< GPTM Timer A Match Register High
+#define TIMER_TAMATCHR_TAMRL_M 0x0000FFFF ///< GPTM Timer A Match Register Low
+#define TIMER_TAMATCHR_TAMRH_S 16
+#define TIMER_TAMATCHR_TAMRL_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TBMATCHR
+* register.
+ */
+/*\{*/
+#define TIMER_TBMATCHR_TBMRL_M 0x0000FFFF ///< GPTM Timer B Match Register Low
+#define TIMER_TBMATCHR_TBMRL_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TAPR register.
+ */
+/*\{*/
+#define TIMER_TAPR_TAPSR_M 0x000000FF ///< GPTM Timer A Prescale
+#define TIMER_TAPR_TAPSR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TBPR register.
+ */
+/*\{*/
+#define TIMER_TBPR_TBPSR_M 0x000000FF ///< GPTM Timer B Prescale
+#define TIMER_TBPR_TBPSR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TAPMR register.
+ */
+/*\{*/
+#define TIMER_TAPMR_TAPSMR_M 0x000000FF ///< GPTM TimerA Prescale Match
+#define TIMER_TAPMR_TAPSMR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TBPMR register.
+ */
+/*\{*/
+#define TIMER_TBPMR_TBPSMR_M 0x000000FF ///< GPTM TimerB Prescale Match
+#define TIMER_TBPMR_TBPSMR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TAR register.
+ */
+/*\{*/
+#define TIMER_TAR_TARH_M 0xFFFF0000 ///< GPTM Timer A Register High
+#define TIMER_TAR_TARL_M 0x0000FFFF ///< GPTM Timer A Register Low
+#define TIMER_TAR_TARH_S 16
+#define TIMER_TAR_TARL_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the TIMER_O_TBR register.
+ */
+/*\{*/
+#define TIMER_TBR_TBRL_M 0x0000FFFF ///< GPTM Timer B
+#define TIMER_TBR_TBRL_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_ACTSS register.
+ */
+/*\{*/
+#define ADC_ACTSS_ASEN3 0x00000008 ///< ADC SS3 Enable
+#define ADC_ACTSS_ASEN2 0x00000004 ///< ADC SS2 Enable
+#define ADC_ACTSS_ASEN1 0x00000002 ///< ADC SS1 Enable
+#define ADC_ACTSS_ASEN0 0x00000001 ///< ADC SS0 Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_RIS register.
+ */
+/*\{*/
+#define ADC_RIS_INR3 0x00000008 ///< SS3 Raw Interrupt Status
+#define ADC_RIS_INR2 0x00000004 ///< SS2 Raw Interrupt Status
+#define ADC_RIS_INR1 0x00000002 ///< SS1 Raw Interrupt Status
+#define ADC_RIS_INR0 0x00000001 ///< SS0 Raw Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_IM register.
+ */
+/*\{*/
+#define ADC_IM_MASK3 0x00000008 ///< SS3 Interrupt Mask
+#define ADC_IM_MASK2 0x00000004 ///< SS2 Interrupt Mask
+#define ADC_IM_MASK1 0x00000002 ///< SS1 Interrupt Mask
+#define ADC_IM_MASK0 0x00000001 ///< SS0 Interrupt Mask
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_ISC register.
+ */
+/*\{*/
+#define ADC_ISC_IN3 0x00000008 ///< SS3 Interrupt Status and Clear
+#define ADC_ISC_IN2 0x00000004 ///< SS2 Interrupt Status and Clear
+#define ADC_ISC_IN1 0x00000002 ///< SS1 Interrupt Status and Clear
+#define ADC_ISC_IN0 0x00000001 ///< SS0 Interrupt Status and Clear
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_OSTAT register.
+ */
+/*\{*/
+#define ADC_OSTAT_OV3 0x00000008 ///< SS3 FIFO Overflow
+#define ADC_OSTAT_OV2 0x00000004 ///< SS2 FIFO Overflow
+#define ADC_OSTAT_OV1 0x00000002 ///< SS1 FIFO Overflow
+#define ADC_OSTAT_OV0 0x00000001 ///< SS0 FIFO Overflow
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_EMUX register.
+ */
+/*\{*/
+#define ADC_EMUX_EM3_M 0x0000F000 ///< SS3 Trigger Select
+#define ADC_EMUX_EM3_PROCESSOR 0x00000000 ///< Processor (default)
+#define ADC_EMUX_EM3_COMP0 0x00001000 ///< Analog Comparator 0
+#define ADC_EMUX_EM3_COMP1 0x00002000 ///< Analog Comparator 1
+#define ADC_EMUX_EM3_COMP2 0x00003000 ///< Analog Comparator 2
+#define ADC_EMUX_EM3_EXTERNAL 0x00004000 ///< External (GPIO PB4)
+#define ADC_EMUX_EM3_TIMER 0x00005000 ///< Timer
+#define ADC_EMUX_EM3_PWM0 0x00006000 ///< PWM0
+#define ADC_EMUX_EM3_PWM1 0x00007000 ///< PWM1
+#define ADC_EMUX_EM3_PWM2 0x00008000 ///< PWM2
+#define ADC_EMUX_EM3_ALWAYS 0x0000F000 ///< Always (continuously sample)
+#define ADC_EMUX_EM2_M 0x00000F00 ///< SS2 Trigger Select
+#define ADC_EMUX_EM2_PROCESSOR 0x00000000 ///< Processor (default)
+#define ADC_EMUX_EM2_COMP0 0x00000100 ///< Analog Comparator 0
+#define ADC_EMUX_EM2_COMP1 0x00000200 ///< Analog Comparator 1
+#define ADC_EMUX_EM2_COMP2 0x00000300 ///< Analog Comparator 2
+#define ADC_EMUX_EM2_EXTERNAL 0x00000400 ///< External (GPIO PB4)
+#define ADC_EMUX_EM2_TIMER 0x00000500 ///< Timer
+#define ADC_EMUX_EM2_PWM0 0x00000600 ///< PWM0
+#define ADC_EMUX_EM2_PWM1 0x00000700 ///< PWM1
+#define ADC_EMUX_EM2_PWM2 0x00000800 ///< PWM2
+#define ADC_EMUX_EM2_ALWAYS 0x00000F00 ///< Always (continuously sample)
+#define ADC_EMUX_EM1_M 0x000000F0 ///< SS1 Trigger Select
+#define ADC_EMUX_EM1_PROCESSOR 0x00000000 ///< Processor (default)
+#define ADC_EMUX_EM1_COMP0 0x00000010 ///< Analog Comparator 0
+#define ADC_EMUX_EM1_COMP1 0x00000020 ///< Analog Comparator 1
+#define ADC_EMUX_EM1_COMP2 0x00000030 ///< Analog Comparator 2
+#define ADC_EMUX_EM1_EXTERNAL 0x00000040 ///< External (GPIO PB4)
+#define ADC_EMUX_EM1_TIMER 0x00000050 ///< Timer
+#define ADC_EMUX_EM1_PWM0 0x00000060 ///< PWM0
+#define ADC_EMUX_EM1_PWM1 0x00000070 ///< PWM1
+#define ADC_EMUX_EM1_PWM2 0x00000080 ///< PWM2
+#define ADC_EMUX_EM1_ALWAYS 0x000000F0 ///< Always (continuously sample)
+#define ADC_EMUX_EM0_M 0x0000000F ///< SS0 Trigger Select
+#define ADC_EMUX_EM0_PROCESSOR 0x00000000 ///< Processor (default)
+#define ADC_EMUX_EM0_COMP0 0x00000001 ///< Analog Comparator 0
+#define ADC_EMUX_EM0_COMP1 0x00000002 ///< Analog Comparator 1
+#define ADC_EMUX_EM0_COMP2 0x00000003 ///< Analog Comparator 2
+#define ADC_EMUX_EM0_EXTERNAL 0x00000004 ///< External (GPIO PB4)
+#define ADC_EMUX_EM0_TIMER 0x00000005 ///< Timer
+#define ADC_EMUX_EM0_PWM0 0x00000006 ///< PWM0
+#define ADC_EMUX_EM0_PWM1 0x00000007 ///< PWM1
+#define ADC_EMUX_EM0_PWM2 0x00000008 ///< PWM2
+#define ADC_EMUX_EM0_ALWAYS 0x0000000F ///< Always (continuously sample)
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_USTAT register.
+ */
+/*\{*/
+#define ADC_USTAT_UV3 0x00000008 ///< SS3 FIFO Underflow
+#define ADC_USTAT_UV2 0x00000004 ///< SS2 FIFO Underflow
+#define ADC_USTAT_UV1 0x00000002 ///< SS1 FIFO Underflow
+#define ADC_USTAT_UV0 0x00000001 ///< SS0 FIFO Underflow
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSPRI register.
+ */
+/*\{*/
+#define ADC_SSPRI_SS3_M 0x00003000 ///< SS3 Priority
+#define ADC_SSPRI_SS3_1ST 0x00000000 ///< First priority
+#define ADC_SSPRI_SS3_2ND 0x00001000 ///< Second priority
+#define ADC_SSPRI_SS3_3RD 0x00002000 ///< Third priority
+#define ADC_SSPRI_SS3_4TH 0x00003000 ///< Fourth priority
+#define ADC_SSPRI_SS2_M 0x00000300 ///< SS2 Priority
+#define ADC_SSPRI_SS2_1ST 0x00000000 ///< First priority
+#define ADC_SSPRI_SS2_2ND 0x00000100 ///< Second priority
+#define ADC_SSPRI_SS2_3RD 0x00000200 ///< Third priority
+#define ADC_SSPRI_SS2_4TH 0x00000300 ///< Fourth priority
+#define ADC_SSPRI_SS1_M 0x00000030 ///< SS1 Priority
+#define ADC_SSPRI_SS1_1ST 0x00000000 ///< First priority
+#define ADC_SSPRI_SS1_2ND 0x00000010 ///< Second priority
+#define ADC_SSPRI_SS1_3RD 0x00000020 ///< Third priority
+#define ADC_SSPRI_SS1_4TH 0x00000030 ///< Fourth priority
+#define ADC_SSPRI_SS0_M 0x00000003 ///< SS0 Priority
+#define ADC_SSPRI_SS0_1ST 0x00000000 ///< First priority
+#define ADC_SSPRI_SS0_2ND 0x00000001 ///< Second priority
+#define ADC_SSPRI_SS0_3RD 0x00000002 ///< Third priority
+#define ADC_SSPRI_SS0_4TH 0x00000003 ///< Fourth priority
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_PSSI register.
+ */
+/*\{*/
+#define ADC_PSSI_SS3 0x00000008 ///< SS3 Initiate
+#define ADC_PSSI_SS2 0x00000004 ///< SS2 Initiate
+#define ADC_PSSI_SS1 0x00000002 ///< SS1 Initiate
+#define ADC_PSSI_SS0 0x00000001 ///< SS0 Initiate
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SAC register.
+ */
+/*\{*/
+#define ADC_SAC_AVG_M 0x00000007 ///< Hardware Averaging Control
+#define ADC_SAC_AVG_OFF 0x00000000 ///< No hardware oversampling
+#define ADC_SAC_AVG_2X 0x00000001 ///< 2x hardware oversampling
+#define ADC_SAC_AVG_4X 0x00000002 ///< 4x hardware oversampling
+#define ADC_SAC_AVG_8X 0x00000003 ///< 8x hardware oversampling
+#define ADC_SAC_AVG_16X 0x00000004 ///< 16x hardware oversampling
+#define ADC_SAC_AVG_32X 0x00000005 ///< 32x hardware oversampling
+#define ADC_SAC_AVG_64X 0x00000006 ///< 64x hardware oversampling
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSMUX0 register.
+ */
+/*\{*/
+#define ADC_SSMUX0_MUX7_M 0x70000000 ///< 8th Sample Input Select
+#define ADC_SSMUX0_MUX6_M 0x07000000 ///< 7th Sample Input Select
+#define ADC_SSMUX0_MUX5_M 0x00700000 ///< 6th Sample Input Select
+#define ADC_SSMUX0_MUX4_M 0x00070000 ///< 5th Sample Input Select
+#define ADC_SSMUX0_MUX3_M 0x00007000 ///< 4th Sample Input Select
+#define ADC_SSMUX0_MUX2_M 0x00000700 ///< 3rd Sample Input Select
+#define ADC_SSMUX0_MUX1_M 0x00000070 ///< 2nd Sample Input Select
+#define ADC_SSMUX0_MUX0_M 0x00000007 ///< 1st Sample Input Select
+#define ADC_SSMUX0_MUX7_S 28
+#define ADC_SSMUX0_MUX6_S 24
+#define ADC_SSMUX0_MUX5_S 20
+#define ADC_SSMUX0_MUX4_S 16
+#define ADC_SSMUX0_MUX3_S 12
+#define ADC_SSMUX0_MUX2_S 8
+#define ADC_SSMUX0_MUX1_S 4
+#define ADC_SSMUX0_MUX0_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSCTL0 register.
+ */
+/*\{*/
+#define ADC_SSCTL0_TS7 0x80000000 ///< 8th Sample Temp Sensor Select
+#define ADC_SSCTL0_IE7 0x40000000 ///< 8th Sample Interrupt Enable
+#define ADC_SSCTL0_END7 0x20000000 ///< 8th Sample is End of Sequence
+#define ADC_SSCTL0_D7 0x10000000 ///< 8th Sample Diff Input Select
+#define ADC_SSCTL0_TS6 0x08000000 ///< 7th Sample Temp Sensor Select
+#define ADC_SSCTL0_IE6 0x04000000 ///< 7th Sample Interrupt Enable
+#define ADC_SSCTL0_END6 0x02000000 ///< 7th Sample is End of Sequence
+#define ADC_SSCTL0_D6 0x01000000 ///< 7th Sample Diff Input Select
+#define ADC_SSCTL0_TS5 0x00800000 ///< 6th Sample Temp Sensor Select
+#define ADC_SSCTL0_IE5 0x00400000 ///< 6th Sample Interrupt Enable
+#define ADC_SSCTL0_END5 0x00200000 ///< 6th Sample is End of Sequence
+#define ADC_SSCTL0_D5 0x00100000 ///< 6th Sample Diff Input Select
+#define ADC_SSCTL0_TS4 0x00080000 ///< 5th Sample Temp Sensor Select
+#define ADC_SSCTL0_IE4 0x00040000 ///< 5th Sample Interrupt Enable
+#define ADC_SSCTL0_END4 0x00020000 ///< 5th Sample is End of Sequence
+#define ADC_SSCTL0_D4 0x00010000 ///< 5th Sample Diff Input Select
+#define ADC_SSCTL0_TS3 0x00008000 ///< 4th Sample Temp Sensor Select
+#define ADC_SSCTL0_IE3 0x00004000 ///< 4th Sample Interrupt Enable
+#define ADC_SSCTL0_END3 0x00002000 ///< 4th Sample is End of Sequence
+#define ADC_SSCTL0_D3 0x00001000 ///< 4th Sample Diff Input Select
+#define ADC_SSCTL0_TS2 0x00000800 ///< 3rd Sample Temp Sensor Select
+#define ADC_SSCTL0_IE2 0x00000400 ///< 3rd Sample Interrupt Enable
+#define ADC_SSCTL0_END2 0x00000200 ///< 3rd Sample is End of Sequence
+#define ADC_SSCTL0_D2 0x00000100 ///< 3rd Sample Diff Input Select
+#define ADC_SSCTL0_TS1 0x00000080 ///< 2nd Sample Temp Sensor Select
+#define ADC_SSCTL0_IE1 0x00000040 ///< 2nd Sample Interrupt Enable
+#define ADC_SSCTL0_END1 0x00000020 ///< 2nd Sample is End of Sequence
+#define ADC_SSCTL0_D1 0x00000010 ///< 2nd Sample Diff Input Select
+#define ADC_SSCTL0_TS0 0x00000008 ///< 1st Sample Temp Sensor Select
+#define ADC_SSCTL0_IE0 0x00000004 ///< 1st Sample Interrupt Enable
+#define ADC_SSCTL0_END0 0x00000002 ///< 1st Sample is End of Sequence
+#define ADC_SSCTL0_D0 0x00000001 ///< 1st Sample Diff Input Select
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSFIFO0 register.
+ */
+/*\{*/
+#define ADC_SSFIFO0_DATA_M 0x000003FF ///< Conversion Result Data
+#define ADC_SSFIFO0_DATA_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSFSTAT0 register.
+ */
+/*\{*/
+#define ADC_SSFSTAT0_FULL 0x00001000 ///< FIFO Full
+#define ADC_SSFSTAT0_EMPTY 0x00000100 ///< FIFO Empty
+#define ADC_SSFSTAT0_HPTR_M 0x000000F0 ///< FIFO Head Pointer
+#define ADC_SSFSTAT0_TPTR_M 0x0000000F ///< FIFO Tail Pointer
+#define ADC_SSFSTAT0_HPTR_S 4
+#define ADC_SSFSTAT0_TPTR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSMUX1 register.
+ */
+/*\{*/
+#define ADC_SSMUX1_MUX3_M 0x00007000 ///< 4th Sample Input Select
+#define ADC_SSMUX1_MUX2_M 0x00000700 ///< 3rd Sample Input Select
+#define ADC_SSMUX1_MUX1_M 0x00000070 ///< 2nd Sample Input Select
+#define ADC_SSMUX1_MUX0_M 0x00000007 ///< 1st Sample Input Select
+#define ADC_SSMUX1_MUX3_S 12
+#define ADC_SSMUX1_MUX2_S 8
+#define ADC_SSMUX1_MUX1_S 4
+#define ADC_SSMUX1_MUX0_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSCTL1 register.
+ */
+/*\{*/
+#define ADC_SSCTL1_TS3 0x00008000 ///< 4th Sample Temp Sensor Select
+#define ADC_SSCTL1_IE3 0x00004000 ///< 4th Sample Interrupt Enable
+#define ADC_SSCTL1_END3 0x00002000 ///< 4th Sample is End of Sequence
+#define ADC_SSCTL1_D3 0x00001000 ///< 4th Sample Diff Input Select
+#define ADC_SSCTL1_TS2 0x00000800 ///< 3rd Sample Temp Sensor Select
+#define ADC_SSCTL1_IE2 0x00000400 ///< 3rd Sample Interrupt Enable
+#define ADC_SSCTL1_END2 0x00000200 ///< 3rd Sample is End of Sequence
+#define ADC_SSCTL1_D2 0x00000100 ///< 3rd Sample Diff Input Select
+#define ADC_SSCTL1_TS1 0x00000080 ///< 2nd Sample Temp Sensor Select
+#define ADC_SSCTL1_IE1 0x00000040 ///< 2nd Sample Interrupt Enable
+#define ADC_SSCTL1_END1 0x00000020 ///< 2nd Sample is End of Sequence
+#define ADC_SSCTL1_D1 0x00000010 ///< 2nd Sample Diff Input Select
+#define ADC_SSCTL1_TS0 0x00000008 ///< 1st Sample Temp Sensor Select
+#define ADC_SSCTL1_IE0 0x00000004 ///< 1st Sample Interrupt Enable
+#define ADC_SSCTL1_END0 0x00000002 ///< 1st Sample is End of Sequence
+#define ADC_SSCTL1_D0 0x00000001 ///< 1st Sample Diff Input Select
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSFIFO1 register.
+ */
+/*\{*/
+#define ADC_SSFIFO1_DATA_M 0x000003FF ///< Conversion Result Data
+#define ADC_SSFIFO1_DATA_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSFSTAT1 register.
+ */
+/*\{*/
+#define ADC_SSFSTAT1_FULL 0x00001000 ///< FIFO Full
+#define ADC_SSFSTAT1_EMPTY 0x00000100 ///< FIFO Empty
+#define ADC_SSFSTAT1_HPTR_M 0x000000F0 ///< FIFO Head Pointer
+#define ADC_SSFSTAT1_TPTR_M 0x0000000F ///< FIFO Tail Pointer
+#define ADC_SSFSTAT1_HPTR_S 4
+#define ADC_SSFSTAT1_TPTR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSMUX2 register.
+ */
+/*\{*/
+#define ADC_SSMUX2_MUX3_M 0x00007000 ///< 4th Sample Input Select
+#define ADC_SSMUX2_MUX2_M 0x00000700 ///< 3rd Sample Input Select
+#define ADC_SSMUX2_MUX1_M 0x00000070 ///< 2nd Sample Input Select
+#define ADC_SSMUX2_MUX0_M 0x00000007 ///< 1st Sample Input Select
+#define ADC_SSMUX2_MUX3_S 12
+#define ADC_SSMUX2_MUX2_S 8
+#define ADC_SSMUX2_MUX1_S 4
+#define ADC_SSMUX2_MUX0_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSCTL2 register.
+ */
+/*\{*/
+#define ADC_SSCTL2_TS3 0x00008000 ///< 4th Sample Temp Sensor Select
+#define ADC_SSCTL2_IE3 0x00004000 ///< 4th Sample Interrupt Enable
+#define ADC_SSCTL2_END3 0x00002000 ///< 4th Sample is End of Sequence
+#define ADC_SSCTL2_D3 0x00001000 ///< 4th Sample Diff Input Select
+#define ADC_SSCTL2_TS2 0x00000800 ///< 3rd Sample Temp Sensor Select
+#define ADC_SSCTL2_IE2 0x00000400 ///< 3rd Sample Interrupt Enable
+#define ADC_SSCTL2_END2 0x00000200 ///< 3rd Sample is End of Sequence
+#define ADC_SSCTL2_D2 0x00000100 ///< 3rd Sample Diff Input Select
+#define ADC_SSCTL2_TS1 0x00000080 ///< 2nd Sample Temp Sensor Select
+#define ADC_SSCTL2_IE1 0x00000040 ///< 2nd Sample Interrupt Enable
+#define ADC_SSCTL2_END1 0x00000020 ///< 2nd Sample is End of Sequence
+#define ADC_SSCTL2_D1 0x00000010 ///< 2nd Sample Diff Input Select
+#define ADC_SSCTL2_TS0 0x00000008 ///< 1st Sample Temp Sensor Select
+#define ADC_SSCTL2_IE0 0x00000004 ///< 1st Sample Interrupt Enable
+#define ADC_SSCTL2_END0 0x00000002 ///< 1st Sample is End of Sequence
+#define ADC_SSCTL2_D0 0x00000001 ///< 1st Sample Diff Input Select
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSFIFO2 register.
+ */
+/*\{*/
+#define ADC_SSFIFO2_DATA_M 0x000003FF ///< Conversion Result Data
+#define ADC_SSFIFO2_DATA_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSFSTAT2 register.
+ */
+/*\{*/
+#define ADC_SSFSTAT2_FULL 0x00001000 ///< FIFO Full
+#define ADC_SSFSTAT2_EMPTY 0x00000100 ///< FIFO Empty
+#define ADC_SSFSTAT2_HPTR_M 0x000000F0 ///< FIFO Head Pointer
+#define ADC_SSFSTAT2_TPTR_M 0x0000000F ///< FIFO Tail Pointer
+#define ADC_SSFSTAT2_HPTR_S 4
+#define ADC_SSFSTAT2_TPTR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSMUX3 register.
+ */
+/*\{*/
+#define ADC_SSMUX3_MUX0_M 0x00000007 ///< 1st Sample Input Select
+#define ADC_SSMUX3_MUX0_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSCTL3 register.
+ */
+/*\{*/
+#define ADC_SSCTL3_TS0 0x00000008 ///< 1st Sample Temp Sensor Select
+#define ADC_SSCTL3_IE0 0x00000004 ///< 1st Sample Interrupt Enable
+#define ADC_SSCTL3_END0 0x00000002 ///< 1st Sample is End of Sequence
+#define ADC_SSCTL3_D0 0x00000001 ///< 1st Sample Diff Input Select
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSFIFO3 register.
+ */
+/*\{*/
+#define ADC_SSFIFO3_DATA_M 0x000003FF ///< Conversion Result Data
+#define ADC_SSFIFO3_DATA_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_SSFSTAT3 register.
+ */
+/*\{*/
+#define ADC_SSFSTAT3_FULL 0x00001000 ///< FIFO Full
+#define ADC_SSFSTAT3_EMPTY 0x00000100 ///< FIFO Empty
+#define ADC_SSFSTAT3_HPTR_M 0x000000F0 ///< FIFO Head Pointer
+#define ADC_SSFSTAT3_TPTR_M 0x0000000F ///< FIFO Tail Pointer
+#define ADC_SSFSTAT3_HPTR_S 4
+#define ADC_SSFSTAT3_TPTR_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the ADC_O_TMLB register.
+ */
+/*\{*/
+#define ADC_TMLB_LB 0x00000001 ///< Loopback Mode Enable
+/*\}*/
+
+/**
+ * The following are defines for the the interpretation of the data in the
+* SSFIFOx when the ADC TMLB is enabled.
+ */
+/*\{*/
+#define ADC_SSFIFO_TMLB_CNT_M 0x000003C0 ///< Continuous Sample Counter
+#define ADC_SSFIFO_TMLB_CONT 0x00000020 ///< Continuation Sample Indicator
+#define ADC_SSFIFO_TMLB_DIFF 0x00000010 ///< Differential Sample Indicator
+#define ADC_SSFIFO_TMLB_TS 0x00000008 ///< Temp Sensor Sample Indicator
+#define ADC_SSFIFO_TMLB_MUX_M 0x00000007 ///< Analog Input Indicator
+#define ADC_SSFIFO_TMLB_CNT_S 6 ///< Sample counter shift
+#define ADC_SSFIFO_TMLB_MUX_S 0 ///< Input channel number shift
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the COMP_O_ACMIS register.
+ */
+/*\{*/
+#define COMP_ACMIS_IN2 0x00000004 ///< Comparator 2 Masked Interrupt
+ ///< Status
+#define COMP_ACMIS_IN1 0x00000002 ///< Comparator 1 Masked Interrupt
+ ///< Status
+#define COMP_ACMIS_IN0 0x00000001 ///< Comparator 0 Masked Interrupt
+ ///< Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the COMP_O_ACRIS register.
+ */
+/*\{*/
+#define COMP_ACRIS_IN2 0x00000004 ///< Comparator 2 Interrupt Status
+#define COMP_ACRIS_IN1 0x00000002 ///< Comparator 1 Interrupt Status
+#define COMP_ACRIS_IN0 0x00000001 ///< Comparator 0 Interrupt Status
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the COMP_O_ACINTEN register.
+ */
+/*\{*/
+#define COMP_ACINTEN_IN2 0x00000004 ///< Comparator 2 Interrupt Enable
+#define COMP_ACINTEN_IN1 0x00000002 ///< Comparator 1 Interrupt Enable
+#define COMP_ACINTEN_IN0 0x00000001 ///< Comparator 0 Interrupt Enable
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the COMP_O_ACREFCTL
+* register.
+ */
+/*\{*/
+#define COMP_ACREFCTL_EN 0x00000200 ///< Resistor Ladder Enable
+#define COMP_ACREFCTL_RNG 0x00000100 ///< Resistor Ladder Range
+#define COMP_ACREFCTL_VREF_M 0x0000000F ///< Resistor Ladder Voltage Ref
+#define COMP_ACREFCTL_VREF_S 0
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the COMP_O_ACSTAT0 register.
+ */
+/*\{*/
+#define COMP_ACSTAT0_OVAL 0x00000002 ///< Comparator Output Value
+/*\}*/
+
+/**
+ * The following are defines for the bit fields in the COMP_O_ACCTL0 register.