QMK/lib/chibios-contrib/os/common/ext/TivaWare/inc/hw_adc.h

1307 lines
72 KiB
C

//*****************************************************************************
//
// hw_adc.h - Macros used when accessing the ADC hardware.
//
// Copyright (c) 2005-2016 Texas Instruments Incorporated. All rights reserved.
// Software License Agreement
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions
// are met:
//
// Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
//
// Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in the
// documentation and/or other materials provided with the
// distribution.
//
// Neither the name of Texas Instruments Incorporated nor the names of
// its contributors may be used to endorse or promote products derived
// from this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// This is part of revision 2.1.3.156 of the Tiva Firmware Development Package.
//
//*****************************************************************************
#ifndef __HW_ADC_H__
#define __HW_ADC_H__
//*****************************************************************************
//
// The following are defines for the ADC register offsets.
//
//*****************************************************************************
#define ADC_O_ACTSS 0x00000000 // ADC Active Sample Sequencer
#define ADC_O_RIS 0x00000004 // ADC Raw Interrupt Status
#define ADC_O_IM 0x00000008 // ADC Interrupt Mask
#define ADC_O_ISC 0x0000000C // ADC Interrupt Status and Clear
#define ADC_O_OSTAT 0x00000010 // ADC Overflow Status
#define ADC_O_EMUX 0x00000014 // ADC Event Multiplexer Select
#define ADC_O_USTAT 0x00000018 // ADC Underflow Status
#define ADC_O_TSSEL 0x0000001C // ADC Trigger Source Select
#define ADC_O_SSPRI 0x00000020 // ADC Sample Sequencer Priority
#define ADC_O_SPC 0x00000024 // ADC Sample Phase Control
#define ADC_O_PSSI 0x00000028 // ADC Processor Sample Sequence
// Initiate
#define ADC_O_SAC 0x00000030 // ADC Sample Averaging Control
#define ADC_O_DCISC 0x00000034 // ADC Digital Comparator Interrupt
// Status and Clear
#define ADC_O_CTL 0x00000038 // ADC Control
#define ADC_O_SSMUX0 0x00000040 // ADC Sample Sequence Input
// Multiplexer Select 0
#define ADC_O_SSCTL0 0x00000044 // ADC Sample Sequence Control 0
#define ADC_O_SSFIFO0 0x00000048 // ADC Sample Sequence Result FIFO
// 0
#define ADC_O_SSFSTAT0 0x0000004C // ADC Sample Sequence FIFO 0
// Status
#define ADC_O_SSOP0 0x00000050 // ADC Sample Sequence 0 Operation
#define ADC_O_SSDC0 0x00000054 // ADC Sample Sequence 0 Digital
// Comparator Select
#define ADC_O_SSEMUX0 0x00000058 // ADC Sample Sequence Extended
// Input Multiplexer Select 0
#define ADC_O_SSTSH0 0x0000005C // ADC Sample Sequence 0 Sample and
// Hold Time
#define ADC_O_SSMUX1 0x00000060 // ADC Sample Sequence Input
// Multiplexer Select 1
#define ADC_O_SSCTL1 0x00000064 // ADC Sample Sequence Control 1
#define ADC_O_SSFIFO1 0x00000068 // ADC Sample Sequence Result FIFO
// 1
#define ADC_O_SSFSTAT1 0x0000006C // ADC Sample Sequence FIFO 1
// Status
#define ADC_O_SSOP1 0x00000070 // ADC Sample Sequence 1 Operation
#define ADC_O_SSDC1 0x00000074 // ADC Sample Sequence 1 Digital
// Comparator Select
#define ADC_O_SSEMUX1 0x00000078 // ADC Sample Sequence Extended
// Input Multiplexer Select 1
#define ADC_O_SSTSH1 0x0000007C // ADC Sample Sequence 1 Sample and
// Hold Time
#define ADC_O_SSMUX2 0x00000080 // ADC Sample Sequence Input
// Multiplexer Select 2
#define ADC_O_SSCTL2 0x00000084 // ADC Sample Sequence Control 2
#define ADC_O_SSFIFO2 0x00000088 // ADC Sample Sequence Result FIFO
// 2
#define ADC_O_SSFSTAT2 0x0000008C // ADC Sample Sequence FIFO 2
// Status
#define ADC_O_SSOP2 0x00000090 // ADC Sample Sequence 2 Operation
#define ADC_O_SSDC2 0x00000094 // ADC Sample Sequence 2 Digital
// Comparator Select
#define ADC_O_SSEMUX2 0x00000098 // ADC Sample Sequence Extended
// Input Multiplexer Select 2
#define ADC_O_SSTSH2 0x0000009C // ADC Sample Sequence 2 Sample and
// Hold Time
#define ADC_O_SSMUX3 0x000000A0 // ADC Sample Sequence Input
// Multiplexer Select 3
#define ADC_O_SSCTL3 0x000000A4 // ADC Sample Sequence Control 3
#define ADC_O_SSFIFO3 0x000000A8 // ADC Sample Sequence Result FIFO
// 3
#define ADC_O_SSFSTAT3 0x000000AC // ADC Sample Sequence FIFO 3
// Status
#define ADC_O_SSOP3 0x000000B0 // ADC Sample Sequence 3 Operation
#define ADC_O_SSDC3 0x000000B4 // ADC Sample Sequence 3 Digital
// Comparator Select
#define ADC_O_SSEMUX3 0x000000B8 // ADC Sample Sequence Extended
// Input Multiplexer Select 3
#define ADC_O_SSTSH3 0x000000BC // ADC Sample Sequence 3 Sample and
// Hold Time
#define ADC_O_DCRIC 0x00000D00 // ADC Digital Comparator Reset
// Initial Conditions
#define ADC_O_DCCTL0 0x00000E00 // ADC Digital Comparator Control 0
#define ADC_O_DCCTL1 0x00000E04 // ADC Digital Comparator Control 1
#define ADC_O_DCCTL2 0x00000E08 // ADC Digital Comparator Control 2
#define ADC_O_DCCTL3 0x00000E0C // ADC Digital Comparator Control 3
#define ADC_O_DCCTL4 0x00000E10 // ADC Digital Comparator Control 4
#define ADC_O_DCCTL5 0x00000E14 // ADC Digital Comparator Control 5
#define ADC_O_DCCTL6 0x00000E18 // ADC Digital Comparator Control 6
#define ADC_O_DCCTL7 0x00000E1C // ADC Digital Comparator Control 7
#define ADC_O_DCCMP0 0x00000E40 // ADC Digital Comparator Range 0
#define ADC_O_DCCMP1 0x00000E44 // ADC Digital Comparator Range 1
#define ADC_O_DCCMP2 0x00000E48 // ADC Digital Comparator Range 2
#define ADC_O_DCCMP3 0x00000E4C // ADC Digital Comparator Range 3
#define ADC_O_DCCMP4 0x00000E50 // ADC Digital Comparator Range 4
#define ADC_O_DCCMP5 0x00000E54 // ADC Digital Comparator Range 5
#define ADC_O_DCCMP6 0x00000E58 // ADC Digital Comparator Range 6
#define ADC_O_DCCMP7 0x00000E5C // ADC Digital Comparator Range 7
#define ADC_O_PP 0x00000FC0 // ADC Peripheral Properties
#define ADC_O_PC 0x00000FC4 // ADC Peripheral Configuration
#define ADC_O_CC 0x00000FC8 // ADC Clock Configuration
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_ACTSS register.
//
//*****************************************************************************
#define ADC_ACTSS_BUSY 0x00010000 // ADC Busy
#define ADC_ACTSS_ADEN3 0x00000800 // ADC SS3 DMA Enable
#define ADC_ACTSS_ADEN2 0x00000400 // ADC SS2 DMA Enable
#define ADC_ACTSS_ADEN1 0x00000200 // ADC SS1 DMA Enable
#define ADC_ACTSS_ADEN0 0x00000100 // ADC SS1 DMA Enable
#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_INRDC 0x00010000 // Digital Comparator Raw Interrupt
// Status
#define ADC_RIS_DMAINR3 0x00000800 // SS3 DMA Raw Interrupt Status
#define ADC_RIS_DMAINR2 0x00000400 // SS2 DMA Raw Interrupt Status
#define ADC_RIS_DMAINR1 0x00000200 // SS1 DMA Raw Interrupt Status
#define ADC_RIS_DMAINR0 0x00000100 // SS0 DMA Raw Interrupt Status
#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_DCONSS3 0x00080000 // Digital Comparator Interrupt on
// SS3
#define ADC_IM_DCONSS2 0x00040000 // Digital Comparator Interrupt on
// SS2
#define ADC_IM_DCONSS1 0x00020000 // Digital Comparator Interrupt on
// SS1
#define ADC_IM_DCONSS0 0x00010000 // Digital Comparator Interrupt on
// SS0
#define ADC_IM_DMAMASK3 0x00000800 // SS3 DMA Interrupt Mask
#define ADC_IM_DMAMASK2 0x00000400 // SS2 DMA Interrupt Mask
#define ADC_IM_DMAMASK1 0x00000200 // SS1 DMA Interrupt Mask
#define ADC_IM_DMAMASK0 0x00000100 // SS0 DMA Interrupt Mask
#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_DCINSS3 0x00080000 // Digital Comparator Interrupt
// Status on SS3
#define ADC_ISC_DCINSS2 0x00040000 // Digital Comparator Interrupt
// Status on SS2
#define ADC_ISC_DCINSS1 0x00020000 // Digital Comparator Interrupt
// Status on SS1
#define ADC_ISC_DCINSS0 0x00010000 // Digital Comparator Interrupt
// Status on SS0
#define ADC_ISC_DMAIN3 0x00000800 // SS3 DMA Interrupt Status and
// Clear
#define ADC_ISC_DMAIN2 0x00000400 // SS2 DMA Interrupt Status and
// Clear
#define ADC_ISC_DMAIN1 0x00000200 // SS1 DMA Interrupt Status and
// Clear
#define ADC_ISC_DMAIN0 0x00000100 // SS0 DMA Interrupt Status and
// Clear
#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 Pins)
#define ADC_EMUX_EM3_TIMER 0x00005000 // Timer
#define ADC_EMUX_EM3_PWM0 0x00006000 // PWM generator 0
#define ADC_EMUX_EM3_PWM1 0x00007000 // PWM generator 1
#define ADC_EMUX_EM3_PWM2 0x00008000 // PWM generator 2
#define ADC_EMUX_EM3_PWM3 0x00009000 // PWM generator 3
#define ADC_EMUX_EM3_NEVER 0x0000E000 // Never Trigger
#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 Pins)
#define ADC_EMUX_EM2_TIMER 0x00000500 // Timer
#define ADC_EMUX_EM2_PWM0 0x00000600 // PWM generator 0
#define ADC_EMUX_EM2_PWM1 0x00000700 // PWM generator 1
#define ADC_EMUX_EM2_PWM2 0x00000800 // PWM generator 2
#define ADC_EMUX_EM2_PWM3 0x00000900 // PWM generator 3
#define ADC_EMUX_EM2_NEVER 0x00000E00 // Never Trigger
#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 Pins)
#define ADC_EMUX_EM1_TIMER 0x00000050 // Timer
#define ADC_EMUX_EM1_PWM0 0x00000060 // PWM generator 0
#define ADC_EMUX_EM1_PWM1 0x00000070 // PWM generator 1
#define ADC_EMUX_EM1_PWM2 0x00000080 // PWM generator 2
#define ADC_EMUX_EM1_PWM3 0x00000090 // PWM generator 3
#define ADC_EMUX_EM1_NEVER 0x000000E0 // Never Trigger
#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 Pins)
#define ADC_EMUX_EM0_TIMER 0x00000005 // Timer
#define ADC_EMUX_EM0_PWM0 0x00000006 // PWM generator 0
#define ADC_EMUX_EM0_PWM1 0x00000007 // PWM generator 1
#define ADC_EMUX_EM0_PWM2 0x00000008 // PWM generator 2
#define ADC_EMUX_EM0_PWM3 0x00000009 // PWM generator 3
#define ADC_EMUX_EM0_NEVER 0x0000000E // Never Trigger
#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_TSSEL register.
//
//*****************************************************************************
#define ADC_TSSEL_PS3_M 0x30000000 // Generator 3 PWM Module Trigger
// Select
#define ADC_TSSEL_PS3_0 0x00000000 // Use Generator 3 (and its
// trigger) in PWM module 0
#define ADC_TSSEL_PS3_1 0x10000000 // Use Generator 3 (and its
// trigger) in PWM module 1
#define ADC_TSSEL_PS2_M 0x00300000 // Generator 2 PWM Module Trigger
// Select
#define ADC_TSSEL_PS2_0 0x00000000 // Use Generator 2 (and its
// trigger) in PWM module 0
#define ADC_TSSEL_PS2_1 0x00100000 // Use Generator 2 (and its
// trigger) in PWM module 1
#define ADC_TSSEL_PS1_M 0x00003000 // Generator 1 PWM Module Trigger
// Select
#define ADC_TSSEL_PS1_0 0x00000000 // Use Generator 1 (and its
// trigger) in PWM module 0
#define ADC_TSSEL_PS1_1 0x00001000 // Use Generator 1 (and its
// trigger) in PWM module 1
#define ADC_TSSEL_PS0_M 0x00000030 // Generator 0 PWM Module Trigger
// Select
#define ADC_TSSEL_PS0_0 0x00000000 // Use Generator 0 (and its
// trigger) in PWM module 0
#define ADC_TSSEL_PS0_1 0x00000010 // Use Generator 0 (and its
// trigger) in PWM module 1
//*****************************************************************************
//
// 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_SS2_M 0x00000300 // SS2 Priority
#define ADC_SSPRI_SS1_M 0x00000030 // SS1 Priority
#define ADC_SSPRI_SS0_M 0x00000003 // SS0 Priority
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SPC register.
//
//*****************************************************************************
#define ADC_SPC_PHASE_M 0x0000000F // Phase Difference
#define ADC_SPC_PHASE_0 0x00000000 // ADC sample lags by 0.0
#define ADC_SPC_PHASE_22_5 0x00000001 // ADC sample lags by 22.5
#define ADC_SPC_PHASE_45 0x00000002 // ADC sample lags by 45.0
#define ADC_SPC_PHASE_67_5 0x00000003 // ADC sample lags by 67.5
#define ADC_SPC_PHASE_90 0x00000004 // ADC sample lags by 90.0
#define ADC_SPC_PHASE_112_5 0x00000005 // ADC sample lags by 112.5
#define ADC_SPC_PHASE_135 0x00000006 // ADC sample lags by 135.0
#define ADC_SPC_PHASE_157_5 0x00000007 // ADC sample lags by 157.5
#define ADC_SPC_PHASE_180 0x00000008 // ADC sample lags by 180.0
#define ADC_SPC_PHASE_202_5 0x00000009 // ADC sample lags by 202.5
#define ADC_SPC_PHASE_225 0x0000000A // ADC sample lags by 225.0
#define ADC_SPC_PHASE_247_5 0x0000000B // ADC sample lags by 247.5
#define ADC_SPC_PHASE_270 0x0000000C // ADC sample lags by 270.0
#define ADC_SPC_PHASE_292_5 0x0000000D // ADC sample lags by 292.5
#define ADC_SPC_PHASE_315 0x0000000E // ADC sample lags by 315.0
#define ADC_SPC_PHASE_337_5 0x0000000F // ADC sample lags by 337.5
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_PSSI register.
//
//*****************************************************************************
#define ADC_PSSI_GSYNC 0x80000000 // Global Synchronize
#define ADC_PSSI_SYNCWAIT 0x08000000 // Synchronize Wait
#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_DCISC register.
//
//*****************************************************************************
#define ADC_DCISC_DCINT7 0x00000080 // Digital Comparator 7 Interrupt
// Status and Clear
#define ADC_DCISC_DCINT6 0x00000040 // Digital Comparator 6 Interrupt
// Status and Clear
#define ADC_DCISC_DCINT5 0x00000020 // Digital Comparator 5 Interrupt
// Status and Clear
#define ADC_DCISC_DCINT4 0x00000010 // Digital Comparator 4 Interrupt
// Status and Clear
#define ADC_DCISC_DCINT3 0x00000008 // Digital Comparator 3 Interrupt
// Status and Clear
#define ADC_DCISC_DCINT2 0x00000004 // Digital Comparator 2 Interrupt
// Status and Clear
#define ADC_DCISC_DCINT1 0x00000002 // Digital Comparator 1 Interrupt
// Status and Clear
#define ADC_DCISC_DCINT0 0x00000001 // Digital Comparator 0 Interrupt
// Status and Clear
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_CTL register.
//
//*****************************************************************************
#define ADC_CTL_VREF_M 0x00000003 // Voltage Reference Select
#define ADC_CTL_VREF_INTERNAL 0x00000000 // VDDA and GNDA are the voltage
// references
#define ADC_CTL_VREF_EXT_3V 0x00000001 // The external VREFA+ and VREFA-
// inputs are the voltage
// references
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSMUX0 register.
//
//*****************************************************************************
#define ADC_SSMUX0_MUX7_M 0xF0000000 // 8th Sample Input Select
#define ADC_SSMUX0_MUX6_M 0x0F000000 // 7th Sample Input Select
#define ADC_SSMUX0_MUX5_M 0x00F00000 // 6th Sample Input Select
#define ADC_SSMUX0_MUX4_M 0x000F0000 // 5th Sample Input Select
#define ADC_SSMUX0_MUX3_M 0x0000F000 // 4th Sample Input Select
#define ADC_SSMUX0_MUX2_M 0x00000F00 // 3rd Sample Input Select
#define ADC_SSMUX0_MUX1_M 0x000000F0 // 2nd Sample Input Select
#define ADC_SSMUX0_MUX0_M 0x0000000F // 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 Differential 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 Differential 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 Differential 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 Differential 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 Differential 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 Differential 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 Differential 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 Differential Input
// Select
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSFIFO0 register.
//
//*****************************************************************************
#define ADC_SSFIFO0_DATA_M 0x00000FFF // 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_SSOP0 register.
//
//*****************************************************************************
#define ADC_SSOP0_S7DCOP 0x10000000 // Sample 7 Digital Comparator
// Operation
#define ADC_SSOP0_S6DCOP 0x01000000 // Sample 6 Digital Comparator
// Operation
#define ADC_SSOP0_S5DCOP 0x00100000 // Sample 5 Digital Comparator
// Operation
#define ADC_SSOP0_S4DCOP 0x00010000 // Sample 4 Digital Comparator
// Operation
#define ADC_SSOP0_S3DCOP 0x00001000 // Sample 3 Digital Comparator
// Operation
#define ADC_SSOP0_S2DCOP 0x00000100 // Sample 2 Digital Comparator
// Operation
#define ADC_SSOP0_S1DCOP 0x00000010 // Sample 1 Digital Comparator
// Operation
#define ADC_SSOP0_S0DCOP 0x00000001 // Sample 0 Digital Comparator
// Operation
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSDC0 register.
//
//*****************************************************************************
#define ADC_SSDC0_S7DCSEL_M 0xF0000000 // Sample 7 Digital Comparator
// Select
#define ADC_SSDC0_S6DCSEL_M 0x0F000000 // Sample 6 Digital Comparator
// Select
#define ADC_SSDC0_S5DCSEL_M 0x00F00000 // Sample 5 Digital Comparator
// Select
#define ADC_SSDC0_S4DCSEL_M 0x000F0000 // Sample 4 Digital Comparator
// Select
#define ADC_SSDC0_S3DCSEL_M 0x0000F000 // Sample 3 Digital Comparator
// Select
#define ADC_SSDC0_S2DCSEL_M 0x00000F00 // Sample 2 Digital Comparator
// Select
#define ADC_SSDC0_S1DCSEL_M 0x000000F0 // Sample 1 Digital Comparator
// Select
#define ADC_SSDC0_S0DCSEL_M 0x0000000F // Sample 0 Digital Comparator
// Select
#define ADC_SSDC0_S6DCSEL_S 24
#define ADC_SSDC0_S5DCSEL_S 20
#define ADC_SSDC0_S4DCSEL_S 16
#define ADC_SSDC0_S3DCSEL_S 12
#define ADC_SSDC0_S2DCSEL_S 8
#define ADC_SSDC0_S1DCSEL_S 4
#define ADC_SSDC0_S0DCSEL_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSEMUX0 register.
//
//*****************************************************************************
#define ADC_SSEMUX0_EMUX7 0x10000000 // 8th Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX0_EMUX6 0x01000000 // 7th Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX0_EMUX5 0x00100000 // 6th Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX0_EMUX4 0x00010000 // 5th Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX0_EMUX3 0x00001000 // 4th Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX0_EMUX2 0x00000100 // 3rd Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX0_EMUX1 0x00000010 // 2th Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX0_EMUX0 0x00000001 // 1st Sample Input Select (Upper
// Bit)
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSTSH0 register.
//
//*****************************************************************************
#define ADC_SSTSH0_TSH7_M 0xF0000000 // 8th Sample and Hold Period
// Select
#define ADC_SSTSH0_TSH6_M 0x0F000000 // 7th Sample and Hold Period
// Select
#define ADC_SSTSH0_TSH5_M 0x00F00000 // 6th Sample and Hold Period
// Select
#define ADC_SSTSH0_TSH4_M 0x000F0000 // 5th Sample and Hold Period
// Select
#define ADC_SSTSH0_TSH3_M 0x0000F000 // 4th Sample and Hold Period
// Select
#define ADC_SSTSH0_TSH2_M 0x00000F00 // 3rd Sample and Hold Period
// Select
#define ADC_SSTSH0_TSH1_M 0x000000F0 // 2nd Sample and Hold Period
// Select
#define ADC_SSTSH0_TSH0_M 0x0000000F // 1st Sample and Hold Period
// Select
#define ADC_SSTSH0_TSH7_S 28
#define ADC_SSTSH0_TSH6_S 24
#define ADC_SSTSH0_TSH5_S 20
#define ADC_SSTSH0_TSH4_S 16
#define ADC_SSTSH0_TSH3_S 12
#define ADC_SSTSH0_TSH2_S 8
#define ADC_SSTSH0_TSH1_S 4
#define ADC_SSTSH0_TSH0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSMUX1 register.
//
//*****************************************************************************
#define ADC_SSMUX1_MUX3_M 0x0000F000 // 4th Sample Input Select
#define ADC_SSMUX1_MUX2_M 0x00000F00 // 3rd Sample Input Select
#define ADC_SSMUX1_MUX1_M 0x000000F0 // 2nd Sample Input Select
#define ADC_SSMUX1_MUX0_M 0x0000000F // 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 Differential 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 Differential 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 Differential 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 Differential Input
// Select
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSFIFO1 register.
//
//*****************************************************************************
#define ADC_SSFIFO1_DATA_M 0x00000FFF // 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_SSOP1 register.
//
//*****************************************************************************
#define ADC_SSOP1_S3DCOP 0x00001000 // Sample 3 Digital Comparator
// Operation
#define ADC_SSOP1_S2DCOP 0x00000100 // Sample 2 Digital Comparator
// Operation
#define ADC_SSOP1_S1DCOP 0x00000010 // Sample 1 Digital Comparator
// Operation
#define ADC_SSOP1_S0DCOP 0x00000001 // Sample 0 Digital Comparator
// Operation
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSDC1 register.
//
//*****************************************************************************
#define ADC_SSDC1_S3DCSEL_M 0x0000F000 // Sample 3 Digital Comparator
// Select
#define ADC_SSDC1_S2DCSEL_M 0x00000F00 // Sample 2 Digital Comparator
// Select
#define ADC_SSDC1_S1DCSEL_M 0x000000F0 // Sample 1 Digital Comparator
// Select
#define ADC_SSDC1_S0DCSEL_M 0x0000000F // Sample 0 Digital Comparator
// Select
#define ADC_SSDC1_S2DCSEL_S 8
#define ADC_SSDC1_S1DCSEL_S 4
#define ADC_SSDC1_S0DCSEL_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSEMUX1 register.
//
//*****************************************************************************
#define ADC_SSEMUX1_EMUX3 0x00001000 // 4th Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX1_EMUX2 0x00000100 // 3rd Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX1_EMUX1 0x00000010 // 2th Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX1_EMUX0 0x00000001 // 1st Sample Input Select (Upper
// Bit)
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSTSH1 register.
//
//*****************************************************************************
#define ADC_SSTSH1_TSH3_M 0x0000F000 // 4th Sample and Hold Period
// Select
#define ADC_SSTSH1_TSH2_M 0x00000F00 // 3rd Sample and Hold Period
// Select
#define ADC_SSTSH1_TSH1_M 0x000000F0 // 2nd Sample and Hold Period
// Select
#define ADC_SSTSH1_TSH0_M 0x0000000F // 1st Sample and Hold Period
// Select
#define ADC_SSTSH1_TSH3_S 12
#define ADC_SSTSH1_TSH2_S 8
#define ADC_SSTSH1_TSH1_S 4
#define ADC_SSTSH1_TSH0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSMUX2 register.
//
//*****************************************************************************
#define ADC_SSMUX2_MUX3_M 0x0000F000 // 4th Sample Input Select
#define ADC_SSMUX2_MUX2_M 0x00000F00 // 3rd Sample Input Select
#define ADC_SSMUX2_MUX1_M 0x000000F0 // 2nd Sample Input Select
#define ADC_SSMUX2_MUX0_M 0x0000000F // 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 Differential 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 Differential 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 Differential 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 Differential Input
// Select
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSFIFO2 register.
//
//*****************************************************************************
#define ADC_SSFIFO2_DATA_M 0x00000FFF // 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_SSOP2 register.
//
//*****************************************************************************
#define ADC_SSOP2_S3DCOP 0x00001000 // Sample 3 Digital Comparator
// Operation
#define ADC_SSOP2_S2DCOP 0x00000100 // Sample 2 Digital Comparator
// Operation
#define ADC_SSOP2_S1DCOP 0x00000010 // Sample 1 Digital Comparator
// Operation
#define ADC_SSOP2_S0DCOP 0x00000001 // Sample 0 Digital Comparator
// Operation
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSDC2 register.
//
//*****************************************************************************
#define ADC_SSDC2_S3DCSEL_M 0x0000F000 // Sample 3 Digital Comparator
// Select
#define ADC_SSDC2_S2DCSEL_M 0x00000F00 // Sample 2 Digital Comparator
// Select
#define ADC_SSDC2_S1DCSEL_M 0x000000F0 // Sample 1 Digital Comparator
// Select
#define ADC_SSDC2_S0DCSEL_M 0x0000000F // Sample 0 Digital Comparator
// Select
#define ADC_SSDC2_S2DCSEL_S 8
#define ADC_SSDC2_S1DCSEL_S 4
#define ADC_SSDC2_S0DCSEL_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSEMUX2 register.
//
//*****************************************************************************
#define ADC_SSEMUX2_EMUX3 0x00001000 // 4th Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX2_EMUX2 0x00000100 // 3rd Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX2_EMUX1 0x00000010 // 2th Sample Input Select (Upper
// Bit)
#define ADC_SSEMUX2_EMUX0 0x00000001 // 1st Sample Input Select (Upper
// Bit)
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSTSH2 register.
//
//*****************************************************************************
#define ADC_SSTSH2_TSH3_M 0x0000F000 // 4th Sample and Hold Period
// Select
#define ADC_SSTSH2_TSH2_M 0x00000F00 // 3rd Sample and Hold Period
// Select
#define ADC_SSTSH2_TSH1_M 0x000000F0 // 2nd Sample and Hold Period
// Select
#define ADC_SSTSH2_TSH0_M 0x0000000F // 1st Sample and Hold Period
// Select
#define ADC_SSTSH2_TSH3_S 12
#define ADC_SSTSH2_TSH2_S 8
#define ADC_SSTSH2_TSH1_S 4
#define ADC_SSTSH2_TSH0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSMUX3 register.
//
//*****************************************************************************
#define ADC_SSMUX3_MUX0_M 0x0000000F // 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 // Sample Interrupt Enable
#define ADC_SSCTL3_END0 0x00000002 // End of Sequence
#define ADC_SSCTL3_D0 0x00000001 // Sample Differential Input Select
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSFIFO3 register.
//
//*****************************************************************************
#define ADC_SSFIFO3_DATA_M 0x00000FFF // 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_SSOP3 register.
//
//*****************************************************************************
#define ADC_SSOP3_S0DCOP 0x00000001 // Sample 0 Digital Comparator
// Operation
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSDC3 register.
//
//*****************************************************************************
#define ADC_SSDC3_S0DCSEL_M 0x0000000F // Sample 0 Digital Comparator
// Select
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSEMUX3 register.
//
//*****************************************************************************
#define ADC_SSEMUX3_EMUX0 0x00000001 // 1st Sample Input Select (Upper
// Bit)
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_SSTSH3 register.
//
//*****************************************************************************
#define ADC_SSTSH3_TSH0_M 0x0000000F // 1st Sample and Hold Period
// Select
#define ADC_SSTSH3_TSH0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCRIC register.
//
//*****************************************************************************
#define ADC_DCRIC_DCTRIG7 0x00800000 // Digital Comparator Trigger 7
#define ADC_DCRIC_DCTRIG6 0x00400000 // Digital Comparator Trigger 6
#define ADC_DCRIC_DCTRIG5 0x00200000 // Digital Comparator Trigger 5
#define ADC_DCRIC_DCTRIG4 0x00100000 // Digital Comparator Trigger 4
#define ADC_DCRIC_DCTRIG3 0x00080000 // Digital Comparator Trigger 3
#define ADC_DCRIC_DCTRIG2 0x00040000 // Digital Comparator Trigger 2
#define ADC_DCRIC_DCTRIG1 0x00020000 // Digital Comparator Trigger 1
#define ADC_DCRIC_DCTRIG0 0x00010000 // Digital Comparator Trigger 0
#define ADC_DCRIC_DCINT7 0x00000080 // Digital Comparator Interrupt 7
#define ADC_DCRIC_DCINT6 0x00000040 // Digital Comparator Interrupt 6
#define ADC_DCRIC_DCINT5 0x00000020 // Digital Comparator Interrupt 5
#define ADC_DCRIC_DCINT4 0x00000010 // Digital Comparator Interrupt 4
#define ADC_DCRIC_DCINT3 0x00000008 // Digital Comparator Interrupt 3
#define ADC_DCRIC_DCINT2 0x00000004 // Digital Comparator Interrupt 2
#define ADC_DCRIC_DCINT1 0x00000002 // Digital Comparator Interrupt 1
#define ADC_DCRIC_DCINT0 0x00000001 // Digital Comparator Interrupt 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCTL0 register.
//
//*****************************************************************************
#define ADC_DCCTL0_CTE 0x00001000 // Comparison Trigger Enable
#define ADC_DCCTL0_CTC_M 0x00000C00 // Comparison Trigger Condition
#define ADC_DCCTL0_CTC_LOW 0x00000000 // Low Band
#define ADC_DCCTL0_CTC_MID 0x00000400 // Mid Band
#define ADC_DCCTL0_CTC_HIGH 0x00000C00 // High Band
#define ADC_DCCTL0_CTM_M 0x00000300 // Comparison Trigger Mode
#define ADC_DCCTL0_CTM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL0_CTM_ONCE 0x00000100 // Once
#define ADC_DCCTL0_CTM_HALWAYS 0x00000200 // Hysteresis Always
#define ADC_DCCTL0_CTM_HONCE 0x00000300 // Hysteresis Once
#define ADC_DCCTL0_CIE 0x00000010 // Comparison Interrupt Enable
#define ADC_DCCTL0_CIC_M 0x0000000C // Comparison Interrupt Condition
#define ADC_DCCTL0_CIC_LOW 0x00000000 // Low Band
#define ADC_DCCTL0_CIC_MID 0x00000004 // Mid Band
#define ADC_DCCTL0_CIC_HIGH 0x0000000C // High Band
#define ADC_DCCTL0_CIM_M 0x00000003 // Comparison Interrupt Mode
#define ADC_DCCTL0_CIM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL0_CIM_ONCE 0x00000001 // Once
#define ADC_DCCTL0_CIM_HALWAYS 0x00000002 // Hysteresis Always
#define ADC_DCCTL0_CIM_HONCE 0x00000003 // Hysteresis Once
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCTL1 register.
//
//*****************************************************************************
#define ADC_DCCTL1_CTE 0x00001000 // Comparison Trigger Enable
#define ADC_DCCTL1_CTC_M 0x00000C00 // Comparison Trigger Condition
#define ADC_DCCTL1_CTC_LOW 0x00000000 // Low Band
#define ADC_DCCTL1_CTC_MID 0x00000400 // Mid Band
#define ADC_DCCTL1_CTC_HIGH 0x00000C00 // High Band
#define ADC_DCCTL1_CTM_M 0x00000300 // Comparison Trigger Mode
#define ADC_DCCTL1_CTM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL1_CTM_ONCE 0x00000100 // Once
#define ADC_DCCTL1_CTM_HALWAYS 0x00000200 // Hysteresis Always
#define ADC_DCCTL1_CTM_HONCE 0x00000300 // Hysteresis Once
#define ADC_DCCTL1_CIE 0x00000010 // Comparison Interrupt Enable
#define ADC_DCCTL1_CIC_M 0x0000000C // Comparison Interrupt Condition
#define ADC_DCCTL1_CIC_LOW 0x00000000 // Low Band
#define ADC_DCCTL1_CIC_MID 0x00000004 // Mid Band
#define ADC_DCCTL1_CIC_HIGH 0x0000000C // High Band
#define ADC_DCCTL1_CIM_M 0x00000003 // Comparison Interrupt Mode
#define ADC_DCCTL1_CIM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL1_CIM_ONCE 0x00000001 // Once
#define ADC_DCCTL1_CIM_HALWAYS 0x00000002 // Hysteresis Always
#define ADC_DCCTL1_CIM_HONCE 0x00000003 // Hysteresis Once
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCTL2 register.
//
//*****************************************************************************
#define ADC_DCCTL2_CTE 0x00001000 // Comparison Trigger Enable
#define ADC_DCCTL2_CTC_M 0x00000C00 // Comparison Trigger Condition
#define ADC_DCCTL2_CTC_LOW 0x00000000 // Low Band
#define ADC_DCCTL2_CTC_MID 0x00000400 // Mid Band
#define ADC_DCCTL2_CTC_HIGH 0x00000C00 // High Band
#define ADC_DCCTL2_CTM_M 0x00000300 // Comparison Trigger Mode
#define ADC_DCCTL2_CTM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL2_CTM_ONCE 0x00000100 // Once
#define ADC_DCCTL2_CTM_HALWAYS 0x00000200 // Hysteresis Always
#define ADC_DCCTL2_CTM_HONCE 0x00000300 // Hysteresis Once
#define ADC_DCCTL2_CIE 0x00000010 // Comparison Interrupt Enable
#define ADC_DCCTL2_CIC_M 0x0000000C // Comparison Interrupt Condition
#define ADC_DCCTL2_CIC_LOW 0x00000000 // Low Band
#define ADC_DCCTL2_CIC_MID 0x00000004 // Mid Band
#define ADC_DCCTL2_CIC_HIGH 0x0000000C // High Band
#define ADC_DCCTL2_CIM_M 0x00000003 // Comparison Interrupt Mode
#define ADC_DCCTL2_CIM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL2_CIM_ONCE 0x00000001 // Once
#define ADC_DCCTL2_CIM_HALWAYS 0x00000002 // Hysteresis Always
#define ADC_DCCTL2_CIM_HONCE 0x00000003 // Hysteresis Once
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCTL3 register.
//
//*****************************************************************************
#define ADC_DCCTL3_CTE 0x00001000 // Comparison Trigger Enable
#define ADC_DCCTL3_CTC_M 0x00000C00 // Comparison Trigger Condition
#define ADC_DCCTL3_CTC_LOW 0x00000000 // Low Band
#define ADC_DCCTL3_CTC_MID 0x00000400 // Mid Band
#define ADC_DCCTL3_CTC_HIGH 0x00000C00 // High Band
#define ADC_DCCTL3_CTM_M 0x00000300 // Comparison Trigger Mode
#define ADC_DCCTL3_CTM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL3_CTM_ONCE 0x00000100 // Once
#define ADC_DCCTL3_CTM_HALWAYS 0x00000200 // Hysteresis Always
#define ADC_DCCTL3_CTM_HONCE 0x00000300 // Hysteresis Once
#define ADC_DCCTL3_CIE 0x00000010 // Comparison Interrupt Enable
#define ADC_DCCTL3_CIC_M 0x0000000C // Comparison Interrupt Condition
#define ADC_DCCTL3_CIC_LOW 0x00000000 // Low Band
#define ADC_DCCTL3_CIC_MID 0x00000004 // Mid Band
#define ADC_DCCTL3_CIC_HIGH 0x0000000C // High Band
#define ADC_DCCTL3_CIM_M 0x00000003 // Comparison Interrupt Mode
#define ADC_DCCTL3_CIM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL3_CIM_ONCE 0x00000001 // Once
#define ADC_DCCTL3_CIM_HALWAYS 0x00000002 // Hysteresis Always
#define ADC_DCCTL3_CIM_HONCE 0x00000003 // Hysteresis Once
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCTL4 register.
//
//*****************************************************************************
#define ADC_DCCTL4_CTE 0x00001000 // Comparison Trigger Enable
#define ADC_DCCTL4_CTC_M 0x00000C00 // Comparison Trigger Condition
#define ADC_DCCTL4_CTC_LOW 0x00000000 // Low Band
#define ADC_DCCTL4_CTC_MID 0x00000400 // Mid Band
#define ADC_DCCTL4_CTC_HIGH 0x00000C00 // High Band
#define ADC_DCCTL4_CTM_M 0x00000300 // Comparison Trigger Mode
#define ADC_DCCTL4_CTM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL4_CTM_ONCE 0x00000100 // Once
#define ADC_DCCTL4_CTM_HALWAYS 0x00000200 // Hysteresis Always
#define ADC_DCCTL4_CTM_HONCE 0x00000300 // Hysteresis Once
#define ADC_DCCTL4_CIE 0x00000010 // Comparison Interrupt Enable
#define ADC_DCCTL4_CIC_M 0x0000000C // Comparison Interrupt Condition
#define ADC_DCCTL4_CIC_LOW 0x00000000 // Low Band
#define ADC_DCCTL4_CIC_MID 0x00000004 // Mid Band
#define ADC_DCCTL4_CIC_HIGH 0x0000000C // High Band
#define ADC_DCCTL4_CIM_M 0x00000003 // Comparison Interrupt Mode
#define ADC_DCCTL4_CIM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL4_CIM_ONCE 0x00000001 // Once
#define ADC_DCCTL4_CIM_HALWAYS 0x00000002 // Hysteresis Always
#define ADC_DCCTL4_CIM_HONCE 0x00000003 // Hysteresis Once
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCTL5 register.
//
//*****************************************************************************
#define ADC_DCCTL5_CTE 0x00001000 // Comparison Trigger Enable
#define ADC_DCCTL5_CTC_M 0x00000C00 // Comparison Trigger Condition
#define ADC_DCCTL5_CTC_LOW 0x00000000 // Low Band
#define ADC_DCCTL5_CTC_MID 0x00000400 // Mid Band
#define ADC_DCCTL5_CTC_HIGH 0x00000C00 // High Band
#define ADC_DCCTL5_CTM_M 0x00000300 // Comparison Trigger Mode
#define ADC_DCCTL5_CTM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL5_CTM_ONCE 0x00000100 // Once
#define ADC_DCCTL5_CTM_HALWAYS 0x00000200 // Hysteresis Always
#define ADC_DCCTL5_CTM_HONCE 0x00000300 // Hysteresis Once
#define ADC_DCCTL5_CIE 0x00000010 // Comparison Interrupt Enable
#define ADC_DCCTL5_CIC_M 0x0000000C // Comparison Interrupt Condition
#define ADC_DCCTL5_CIC_LOW 0x00000000 // Low Band
#define ADC_DCCTL5_CIC_MID 0x00000004 // Mid Band
#define ADC_DCCTL5_CIC_HIGH 0x0000000C // High Band
#define ADC_DCCTL5_CIM_M 0x00000003 // Comparison Interrupt Mode
#define ADC_DCCTL5_CIM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL5_CIM_ONCE 0x00000001 // Once
#define ADC_DCCTL5_CIM_HALWAYS 0x00000002 // Hysteresis Always
#define ADC_DCCTL5_CIM_HONCE 0x00000003 // Hysteresis Once
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCTL6 register.
//
//*****************************************************************************
#define ADC_DCCTL6_CTE 0x00001000 // Comparison Trigger Enable
#define ADC_DCCTL6_CTC_M 0x00000C00 // Comparison Trigger Condition
#define ADC_DCCTL6_CTC_LOW 0x00000000 // Low Band
#define ADC_DCCTL6_CTC_MID 0x00000400 // Mid Band
#define ADC_DCCTL6_CTC_HIGH 0x00000C00 // High Band
#define ADC_DCCTL6_CTM_M 0x00000300 // Comparison Trigger Mode
#define ADC_DCCTL6_CTM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL6_CTM_ONCE 0x00000100 // Once
#define ADC_DCCTL6_CTM_HALWAYS 0x00000200 // Hysteresis Always
#define ADC_DCCTL6_CTM_HONCE 0x00000300 // Hysteresis Once
#define ADC_DCCTL6_CIE 0x00000010 // Comparison Interrupt Enable
#define ADC_DCCTL6_CIC_M 0x0000000C // Comparison Interrupt Condition
#define ADC_DCCTL6_CIC_LOW 0x00000000 // Low Band
#define ADC_DCCTL6_CIC_MID 0x00000004 // Mid Band
#define ADC_DCCTL6_CIC_HIGH 0x0000000C // High Band
#define ADC_DCCTL6_CIM_M 0x00000003 // Comparison Interrupt Mode
#define ADC_DCCTL6_CIM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL6_CIM_ONCE 0x00000001 // Once
#define ADC_DCCTL6_CIM_HALWAYS 0x00000002 // Hysteresis Always
#define ADC_DCCTL6_CIM_HONCE 0x00000003 // Hysteresis Once
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCTL7 register.
//
//*****************************************************************************
#define ADC_DCCTL7_CTE 0x00001000 // Comparison Trigger Enable
#define ADC_DCCTL7_CTC_M 0x00000C00 // Comparison Trigger Condition
#define ADC_DCCTL7_CTC_LOW 0x00000000 // Low Band
#define ADC_DCCTL7_CTC_MID 0x00000400 // Mid Band
#define ADC_DCCTL7_CTC_HIGH 0x00000C00 // High Band
#define ADC_DCCTL7_CTM_M 0x00000300 // Comparison Trigger Mode
#define ADC_DCCTL7_CTM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL7_CTM_ONCE 0x00000100 // Once
#define ADC_DCCTL7_CTM_HALWAYS 0x00000200 // Hysteresis Always
#define ADC_DCCTL7_CTM_HONCE 0x00000300 // Hysteresis Once
#define ADC_DCCTL7_CIE 0x00000010 // Comparison Interrupt Enable
#define ADC_DCCTL7_CIC_M 0x0000000C // Comparison Interrupt Condition
#define ADC_DCCTL7_CIC_LOW 0x00000000 // Low Band
#define ADC_DCCTL7_CIC_MID 0x00000004 // Mid Band
#define ADC_DCCTL7_CIC_HIGH 0x0000000C // High Band
#define ADC_DCCTL7_CIM_M 0x00000003 // Comparison Interrupt Mode
#define ADC_DCCTL7_CIM_ALWAYS 0x00000000 // Always
#define ADC_DCCTL7_CIM_ONCE 0x00000001 // Once
#define ADC_DCCTL7_CIM_HALWAYS 0x00000002 // Hysteresis Always
#define ADC_DCCTL7_CIM_HONCE 0x00000003 // Hysteresis Once
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCMP0 register.
//
//*****************************************************************************
#define ADC_DCCMP0_COMP1_M 0x0FFF0000 // Compare 1
#define ADC_DCCMP0_COMP0_M 0x00000FFF // Compare 0
#define ADC_DCCMP0_COMP1_S 16
#define ADC_DCCMP0_COMP0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCMP1 register.
//
//*****************************************************************************
#define ADC_DCCMP1_COMP1_M 0x0FFF0000 // Compare 1
#define ADC_DCCMP1_COMP0_M 0x00000FFF // Compare 0
#define ADC_DCCMP1_COMP1_S 16
#define ADC_DCCMP1_COMP0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCMP2 register.
//
//*****************************************************************************
#define ADC_DCCMP2_COMP1_M 0x0FFF0000 // Compare 1
#define ADC_DCCMP2_COMP0_M 0x00000FFF // Compare 0
#define ADC_DCCMP2_COMP1_S 16
#define ADC_DCCMP2_COMP0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCMP3 register.
//
//*****************************************************************************
#define ADC_DCCMP3_COMP1_M 0x0FFF0000 // Compare 1
#define ADC_DCCMP3_COMP0_M 0x00000FFF // Compare 0
#define ADC_DCCMP3_COMP1_S 16
#define ADC_DCCMP3_COMP0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCMP4 register.
//
//*****************************************************************************
#define ADC_DCCMP4_COMP1_M 0x0FFF0000 // Compare 1
#define ADC_DCCMP4_COMP0_M 0x00000FFF // Compare 0
#define ADC_DCCMP4_COMP1_S 16
#define ADC_DCCMP4_COMP0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCMP5 register.
//
//*****************************************************************************
#define ADC_DCCMP5_COMP1_M 0x0FFF0000 // Compare 1
#define ADC_DCCMP5_COMP0_M 0x00000FFF // Compare 0
#define ADC_DCCMP5_COMP1_S 16
#define ADC_DCCMP5_COMP0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCMP6 register.
//
//*****************************************************************************
#define ADC_DCCMP6_COMP1_M 0x0FFF0000 // Compare 1
#define ADC_DCCMP6_COMP0_M 0x00000FFF // Compare 0
#define ADC_DCCMP6_COMP1_S 16
#define ADC_DCCMP6_COMP0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_DCCMP7 register.
//
//*****************************************************************************
#define ADC_DCCMP7_COMP1_M 0x0FFF0000 // Compare 1
#define ADC_DCCMP7_COMP0_M 0x00000FFF // Compare 0
#define ADC_DCCMP7_COMP1_S 16
#define ADC_DCCMP7_COMP0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_PP register.
//
//*****************************************************************************
#define ADC_PP_APSHT 0x01000000 // Application-Programmable
// Sample-and-Hold Time
#define ADC_PP_TS 0x00800000 // Temperature Sensor
#define ADC_PP_RSL_M 0x007C0000 // Resolution
#define ADC_PP_TYPE_M 0x00030000 // ADC Architecture
#define ADC_PP_TYPE_SAR 0x00000000 // SAR
#define ADC_PP_DC_M 0x0000FC00 // Digital Comparator Count
#define ADC_PP_CH_M 0x000003F0 // ADC Channel Count
#define ADC_PP_MCR_M 0x0000000F // Maximum Conversion Rate
#define ADC_PP_MCR_FULL 0x00000007 // Full conversion rate (FCONV) as
// defined by TADC and NSH
#define ADC_PP_MSR_M 0x0000000F // Maximum ADC Sample Rate
#define ADC_PP_MSR_125K 0x00000001 // 125 ksps
#define ADC_PP_MSR_250K 0x00000003 // 250 ksps
#define ADC_PP_MSR_500K 0x00000005 // 500 ksps
#define ADC_PP_MSR_1M 0x00000007 // 1 Msps
#define ADC_PP_RSL_S 18
#define ADC_PP_DC_S 10
#define ADC_PP_CH_S 4
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_PC register.
//
//*****************************************************************************
#define ADC_PC_SR_M 0x0000000F // ADC Sample Rate
#define ADC_PC_SR_125K 0x00000001 // 125 ksps
#define ADC_PC_SR_250K 0x00000003 // 250 ksps
#define ADC_PC_SR_500K 0x00000005 // 500 ksps
#define ADC_PC_SR_1M 0x00000007 // 1 Msps
#define ADC_PC_MCR_M 0x0000000F // Conversion Rate
#define ADC_PC_MCR_1_8 0x00000001 // Eighth conversion rate. After a
// conversion completes, the logic
// pauses for 112 TADC periods
// before starting the next
// conversion
#define ADC_PC_MCR_1_4 0x00000003 // Quarter conversion rate. After a
// conversion completes, the logic
// pauses for 48 TADC periods
// before starting the next
// conversion
#define ADC_PC_MCR_1_2 0x00000005 // Half conversion rate. After a
// conversion completes, the logic
// pauses for 16 TADC periods
// before starting the next
// conversion
#define ADC_PC_MCR_FULL 0x00000007 // Full conversion rate (FCONV) as
// defined by TADC and NSH
//*****************************************************************************
//
// The following are defines for the bit fields in the ADC_O_CC register.
//
//*****************************************************************************
#define ADC_CC_CLKDIV_M 0x000003F0 // PLL VCO Clock Divisor
#define ADC_CC_CS_M 0x0000000F // ADC Clock Source
#define ADC_CC_CS_SYSPLL 0x00000000 // PLL VCO divided by CLKDIV
#define ADC_CC_CS_PIOSC 0x00000001 // PIOSC
#define ADC_CC_CS_MOSC 0x00000002 // MOSC
#define ADC_CC_CLKDIV_S 4
#endif // __HW_ADC_H__