Files
2026-06-06 20:50:54 +08:00

826 lines
68 KiB
C

/*****************************************************************************
Copyright (C) 2023 Texas Instruments Incorporated - http://www.ti.com/
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.
*****************************************************************************/
#ifndef ti_devices_msp_peripherals_hw_comp__include
#define ti_devices_msp_peripherals_hw_comp__include
/* Filename: hw_comp.h */
/* Revised: 2023-05-10 21:23:38 */
/* Revision: 5c29864c187960f76e656cbc0f0f844cdb69a263 */
#ifndef __CORTEX_M
#ifdef __cplusplus
#define __I volatile /*!< Defines 'read only' permissions */
#else
#define __I volatile const /*!< Defines 'read only' permissions */
#endif
#define __O volatile /*!< Defines 'write only' permissions */
#define __IO volatile /*!< Defines 'read / write' permissions */
/* following defines should be used for structure members */
#define __IM volatile const /*! Defines 'read only' structure member permissions */
#define __OM volatile /*! Defines 'write only' structure member permissions */
#define __IOM volatile /*! Defines 'read / write' structure member permissions */
#endif
/* Use standard integer types with explicit width */
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
#if defined ( __CC_ARM )
#pragma anon_unions
#endif
/******************************************************************************
* COMP Registers
******************************************************************************/
#define COMP_GEN_EVENT_OFS ((uint32_t)0x00001050U)
#define COMP_CPU_INT_OFS ((uint32_t)0x00001020U)
#define COMP_GPRCM_OFS ((uint32_t)0x00000800U)
/** @addtogroup COMP_GEN_EVENT
@{
*/
typedef struct {
__I uint32_t IIDX; /* !< (@ 0x00001050) Interrupt index */
uint32_t RESERVED0;
__IO uint32_t IMASK; /* !< (@ 0x00001058) Interrupt mask */
uint32_t RESERVED1;
__I uint32_t RIS; /* !< (@ 0x00001060) Raw interrupt status */
uint32_t RESERVED2;
__I uint32_t MIS; /* !< (@ 0x00001068) Masked interrupt status */
uint32_t RESERVED3;
__O uint32_t ISET; /* !< (@ 0x00001070) Interrupt set */
uint32_t RESERVED4;
__O uint32_t ICLR; /* !< (@ 0x00001078) Interrupt clear */
} COMP_GEN_EVENT_Regs;
/*@}*/ /* end of group COMP_GEN_EVENT */
/** @addtogroup COMP_CPU_INT
@{
*/
typedef struct {
__I uint32_t IIDX; /* !< (@ 0x00001020) Interrupt index */
uint32_t RESERVED0;
__IO uint32_t IMASK; /* !< (@ 0x00001028) Interrupt mask */
uint32_t RESERVED1;
__I uint32_t RIS; /* !< (@ 0x00001030) Raw interrupt status */
uint32_t RESERVED2;
__I uint32_t MIS; /* !< (@ 0x00001038) Masked interrupt status */
uint32_t RESERVED3;
__O uint32_t ISET; /* !< (@ 0x00001040) Interrupt set */
uint32_t RESERVED4;
__O uint32_t ICLR; /* !< (@ 0x00001048) Interrupt clear */
} COMP_CPU_INT_Regs;
/*@}*/ /* end of group COMP_CPU_INT */
/** @addtogroup COMP_GPRCM
@{
*/
typedef struct {
__IO uint32_t PWREN; /* !< (@ 0x00000800) Power enable */
__O uint32_t RSTCTL; /* !< (@ 0x00000804) Reset Control */
__IO uint32_t CLKCFG; /* !< (@ 0x00000808) Peripheral Clock Configuration Register */
uint32_t RESERVED0[2];
__I uint32_t STAT; /* !< (@ 0x00000814) Status Register */
} COMP_GPRCM_Regs;
/*@}*/ /* end of group COMP_GPRCM */
/** @addtogroup COMP
@{
*/
typedef struct {
uint32_t RESERVED0[256];
__IO uint32_t FSUB_0; /* !< (@ 0x00000400) Subscriber Port 0 */
__IO uint32_t FSUB_1; /* !< (@ 0x00000404) Subscriber Port 1 */
uint32_t RESERVED1[15];
__IO uint32_t FPUB_1; /* !< (@ 0x00000444) Publisher port 1 */
uint32_t RESERVED2[238];
COMP_GPRCM_Regs GPRCM; /* !< (@ 0x00000800) */
uint32_t RESERVED3[514];
COMP_CPU_INT_Regs CPU_INT; /* !< (@ 0x00001020) */
uint32_t RESERVED4;
COMP_GEN_EVENT_Regs GEN_EVENT; /* !< (@ 0x00001050) */
uint32_t RESERVED5[25];
__IO uint32_t EVT_MODE; /* !< (@ 0x000010E0) Event Mode */
uint32_t RESERVED6[6];
__I uint32_t DESC; /* !< (@ 0x000010FC) Module Description */
__IO uint32_t CTL0; /* !< (@ 0x00001100) Control 0 */
__IO uint32_t CTL1; /* !< (@ 0x00001104) Control 1 */
__IO uint32_t CTL2; /* !< (@ 0x00001108) Control 2 */
__IO uint32_t CTL3; /* !< (@ 0x0000110C) Control 3 */
uint32_t RESERVED7[4];
__I uint32_t STAT; /* !< (@ 0x00001120) Status */
} COMP_Regs;
/*@}*/ /* end of group COMP */
#if defined ( __CC_ARM )
#pragma no_anon_unions
#endif
/******************************************************************************
* COMP Register Control Bits
******************************************************************************/
/* COMP_GEN_EVENT_IIDX Bits */
/* COMP_GEN_EVENT_IIDX[STAT] Bits */
#define COMP_GEN_EVENT_IIDX_STAT_OFS (0) /* !< STAT Offset */
#define COMP_GEN_EVENT_IIDX_STAT_MASK ((uint32_t)0x00000003U) /* !< Interrupt index status */
#define COMP_GEN_EVENT_IIDX_STAT_NO_INTR ((uint32_t)0x00000000U) /* !< No pending interrupt */
#define COMP_GEN_EVENT_IIDX_STAT_COMPIFG ((uint32_t)0x00000002U) /* !< Comparator output interrupt */
#define COMP_GEN_EVENT_IIDX_STAT_COMPINVIFG ((uint32_t)0x00000003U) /* !< Comparator output inverted
interrupt */
#define COMP_GEN_EVENT_IIDX_STAT_OUTRDYIFG ((uint32_t)0x00000004U) /* !< Comparator output ready interrupt */
/* COMP_GEN_EVENT_IMASK Bits */
/* COMP_GEN_EVENT_IMASK[COMPIFG] Bits */
#define COMP_GEN_EVENT_IMASK_COMPIFG_OFS (1) /* !< COMPIFG Offset */
#define COMP_GEN_EVENT_IMASK_COMPIFG_MASK ((uint32_t)0x00000002U) /* !< Masks COMPIFG */
#define COMP_GEN_EVENT_IMASK_COMPIFG_CLR ((uint32_t)0x00000000U) /* !< Interrupt is masked out */
#define COMP_GEN_EVENT_IMASK_COMPIFG_SET ((uint32_t)0x00000002U) /* !< Interrupt will request an interrupt
service routine and corresponding bit
in MIS will be set */
/* COMP_GEN_EVENT_IMASK[COMPINVIFG] Bits */
#define COMP_GEN_EVENT_IMASK_COMPINVIFG_OFS (2) /* !< COMPINVIFG Offset */
#define COMP_GEN_EVENT_IMASK_COMPINVIFG_MASK ((uint32_t)0x00000004U) /* !< Masks COMPINVIFG */
#define COMP_GEN_EVENT_IMASK_COMPINVIFG_CLR ((uint32_t)0x00000000U) /* !< Interrupt is masked out */
#define COMP_GEN_EVENT_IMASK_COMPINVIFG_SET ((uint32_t)0x00000004U) /* !< Interrupt will request an interrupt
service routine and corresponding bit
in MIS will be set */
/* COMP_GEN_EVENT_IMASK[OUTRDYIFG] Bits */
#define COMP_GEN_EVENT_IMASK_OUTRDYIFG_OFS (3) /* !< OUTRDYIFG Offset */
#define COMP_GEN_EVENT_IMASK_OUTRDYIFG_MASK ((uint32_t)0x00000008U) /* !< Masks OUTRDYIFG */
#define COMP_GEN_EVENT_IMASK_OUTRDYIFG_CLR ((uint32_t)0x00000000U) /* !< Interrupt is masked out */
#define COMP_GEN_EVENT_IMASK_OUTRDYIFG_SET ((uint32_t)0x00000008U) /* !< Interrupt will request an interrupt
service routine and corresponding bit
in MIS will be set */
/* COMP_GEN_EVENT_RIS Bits */
/* COMP_GEN_EVENT_RIS[COMPIFG] Bits */
#define COMP_GEN_EVENT_RIS_COMPIFG_OFS (1) /* !< COMPIFG Offset */
#define COMP_GEN_EVENT_RIS_COMPIFG_MASK ((uint32_t)0x00000002U) /* !< Raw interrupt status for comparator
output interrupt flag. The IES bit
defines the transition of the
comparator output setting this bit. */
#define COMP_GEN_EVENT_RIS_COMPIFG_CLR ((uint32_t)0x00000000U) /* !< No interrupt pending */
#define COMP_GEN_EVENT_RIS_COMPIFG_SET ((uint32_t)0x00000002U) /* !< Interrupt pending */
/* COMP_GEN_EVENT_RIS[COMPINVIFG] Bits */
#define COMP_GEN_EVENT_RIS_COMPINVIFG_OFS (2) /* !< COMPINVIFG Offset */
#define COMP_GEN_EVENT_RIS_COMPINVIFG_MASK ((uint32_t)0x00000004U) /* !< Raw interrupt status for comparator
output inverted interrupt flag. The
IES bit defines the transition of the
comparator output setting this bit. */
#define COMP_GEN_EVENT_RIS_COMPINVIFG_CLR ((uint32_t)0x00000000U) /* !< No interrupt pending */
#define COMP_GEN_EVENT_RIS_COMPINVIFG_SET ((uint32_t)0x00000004U) /* !< Interrupt pending */
/* COMP_GEN_EVENT_RIS[OUTRDYIFG] Bits */
#define COMP_GEN_EVENT_RIS_OUTRDYIFG_OFS (3) /* !< OUTRDYIFG Offset */
#define COMP_GEN_EVENT_RIS_OUTRDYIFG_MASK ((uint32_t)0x00000008U) /* !< Raw interrupt status for comparator
output ready interrupt flag. This bit
is set when the comparator output is
valid. */
#define COMP_GEN_EVENT_RIS_OUTRDYIFG_CLR ((uint32_t)0x00000000U) /* !< No interrupt pending */
#define COMP_GEN_EVENT_RIS_OUTRDYIFG_SET ((uint32_t)0x00000008U) /* !< Interrupt pending */
/* COMP_GEN_EVENT_MIS Bits */
/* COMP_GEN_EVENT_MIS[COMPIFG] Bits */
#define COMP_GEN_EVENT_MIS_COMPIFG_OFS (1) /* !< COMPIFG Offset */
#define COMP_GEN_EVENT_MIS_COMPIFG_MASK ((uint32_t)0x00000002U) /* !< Masked interrupt status for COMPIFG */
#define COMP_GEN_EVENT_MIS_COMPIFG_CLR ((uint32_t)0x00000000U) /* !< COMPIFG does not request an
interrupt service routine */
#define COMP_GEN_EVENT_MIS_COMPIFG_SET ((uint32_t)0x00000002U) /* !< COMPIFG requests an interrupt
service routine */
/* COMP_GEN_EVENT_MIS[COMPINVIFG] Bits */
#define COMP_GEN_EVENT_MIS_COMPINVIFG_OFS (2) /* !< COMPINVIFG Offset */
#define COMP_GEN_EVENT_MIS_COMPINVIFG_MASK ((uint32_t)0x00000004U) /* !< Masked interrupt status for
COMPINVIFG */
#define COMP_GEN_EVENT_MIS_COMPINVIFG_CLR ((uint32_t)0x00000000U) /* !< COMPINVIFG does not request an
interrupt service routine */
#define COMP_GEN_EVENT_MIS_COMPINVIFG_SET ((uint32_t)0x00000004U) /* !< COMPINVIFG requests an interrupt
service routine */
/* COMP_GEN_EVENT_MIS[OUTRDYIFG] Bits */
#define COMP_GEN_EVENT_MIS_OUTRDYIFG_OFS (3) /* !< OUTRDYIFG Offset */
#define COMP_GEN_EVENT_MIS_OUTRDYIFG_MASK ((uint32_t)0x00000008U) /* !< Masked interrupt status for
OUTRDYIFG */
#define COMP_GEN_EVENT_MIS_OUTRDYIFG_CLR ((uint32_t)0x00000000U) /* !< OUTRDYIFG does not request an
interrupt service routine */
#define COMP_GEN_EVENT_MIS_OUTRDYIFG_SET ((uint32_t)0x00000008U) /* !< OUTRDYIFG requests an interrupt
service routine */
/* COMP_GEN_EVENT_ISET Bits */
/* COMP_GEN_EVENT_ISET[COMPIFG] Bits */
#define COMP_GEN_EVENT_ISET_COMPIFG_OFS (1) /* !< COMPIFG Offset */
#define COMP_GEN_EVENT_ISET_COMPIFG_MASK ((uint32_t)0x00000002U) /* !< Sets COMPIFG in RIS register */
#define COMP_GEN_EVENT_ISET_COMPIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_GEN_EVENT_ISET_COMPIFG_SET ((uint32_t)0x00000002U) /* !< RIS bit corresponding to COMPIFG is
set */
/* COMP_GEN_EVENT_ISET[COMPINVIFG] Bits */
#define COMP_GEN_EVENT_ISET_COMPINVIFG_OFS (2) /* !< COMPINVIFG Offset */
#define COMP_GEN_EVENT_ISET_COMPINVIFG_MASK ((uint32_t)0x00000004U) /* !< Sets COMPINVIFG in RIS register */
#define COMP_GEN_EVENT_ISET_COMPINVIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_GEN_EVENT_ISET_COMPINVIFG_SET ((uint32_t)0x00000004U) /* !< RIS bit corresponding to COMPINVIFG
is set */
/* COMP_GEN_EVENT_ISET[OUTRDYIFG] Bits */
#define COMP_GEN_EVENT_ISET_OUTRDYIFG_OFS (3) /* !< OUTRDYIFG Offset */
#define COMP_GEN_EVENT_ISET_OUTRDYIFG_MASK ((uint32_t)0x00000008U) /* !< Sets OUTRDYIFG in RIS register */
#define COMP_GEN_EVENT_ISET_OUTRDYIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_GEN_EVENT_ISET_OUTRDYIFG_SET ((uint32_t)0x00000008U) /* !< RIS bit corresponding to OUTRDYIFG
is set */
/* COMP_GEN_EVENT_ICLR Bits */
/* COMP_GEN_EVENT_ICLR[COMPIFG] Bits */
#define COMP_GEN_EVENT_ICLR_COMPIFG_OFS (1) /* !< COMPIFG Offset */
#define COMP_GEN_EVENT_ICLR_COMPIFG_MASK ((uint32_t)0x00000002U) /* !< Clears COMPIFG in RIS register */
#define COMP_GEN_EVENT_ICLR_COMPIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_GEN_EVENT_ICLR_COMPIFG_CLR ((uint32_t)0x00000002U) /* !< RIS bit corresponding to COMPIFG is
cleared */
/* COMP_GEN_EVENT_ICLR[COMPINVIFG] Bits */
#define COMP_GEN_EVENT_ICLR_COMPINVIFG_OFS (2) /* !< COMPINVIFG Offset */
#define COMP_GEN_EVENT_ICLR_COMPINVIFG_MASK ((uint32_t)0x00000004U) /* !< Clears COMPINVIFG in RIS register */
#define COMP_GEN_EVENT_ICLR_COMPINVIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_GEN_EVENT_ICLR_COMPINVIFG_CLR ((uint32_t)0x00000004U) /* !< RIS bit corresponding to COMPINVIFG
is cleared */
/* COMP_GEN_EVENT_ICLR[OUTRDYIFG] Bits */
#define COMP_GEN_EVENT_ICLR_OUTRDYIFG_OFS (3) /* !< OUTRDYIFG Offset */
#define COMP_GEN_EVENT_ICLR_OUTRDYIFG_MASK ((uint32_t)0x00000008U) /* !< Clears OUTRDYIFG in RIS register */
#define COMP_GEN_EVENT_ICLR_OUTRDYIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_GEN_EVENT_ICLR_OUTRDYIFG_CLR ((uint32_t)0x00000008U) /* !< RIS bit corresponding to OUTRDYIFG
is cleared */
/* COMP_CPU_INT_IIDX Bits */
/* COMP_CPU_INT_IIDX[STAT] Bits */
#define COMP_CPU_INT_IIDX_STAT_OFS (0) /* !< STAT Offset */
#define COMP_CPU_INT_IIDX_STAT_MASK ((uint32_t)0x00000003U) /* !< Interrupt index status */
#define COMP_CPU_INT_IIDX_STAT_NO_INTR ((uint32_t)0x00000000U) /* !< No pending interrupt */
#define COMP_CPU_INT_IIDX_STAT_COMPIFG ((uint32_t)0x00000002U) /* !< Comparator output interrupt */
#define COMP_CPU_INT_IIDX_STAT_COMPINVIFG ((uint32_t)0x00000003U) /* !< Comparator output inverted
interrupt */
#define COMP_CPU_INT_IIDX_STAT_OUTRDYIFG ((uint32_t)0x00000004U) /* !< Comparator output ready interrupt */
/* COMP_CPU_INT_IMASK Bits */
/* COMP_CPU_INT_IMASK[COMPIFG] Bits */
#define COMP_CPU_INT_IMASK_COMPIFG_OFS (1) /* !< COMPIFG Offset */
#define COMP_CPU_INT_IMASK_COMPIFG_MASK ((uint32_t)0x00000002U) /* !< Masks COMPIFG */
#define COMP_CPU_INT_IMASK_COMPIFG_CLR ((uint32_t)0x00000000U) /* !< Interrupt is masked out */
#define COMP_CPU_INT_IMASK_COMPIFG_SET ((uint32_t)0x00000002U) /* !< Interrupt will request an interrupt
service routine and corresponding bit
in MIS will be set */
/* COMP_CPU_INT_IMASK[COMPINVIFG] Bits */
#define COMP_CPU_INT_IMASK_COMPINVIFG_OFS (2) /* !< COMPINVIFG Offset */
#define COMP_CPU_INT_IMASK_COMPINVIFG_MASK ((uint32_t)0x00000004U) /* !< Masks COMPINVIFG */
#define COMP_CPU_INT_IMASK_COMPINVIFG_CLR ((uint32_t)0x00000000U) /* !< Interrupt is masked out */
#define COMP_CPU_INT_IMASK_COMPINVIFG_SET ((uint32_t)0x00000004U) /* !< Interrupt will request an interrupt
service routine and corresponding bit
in MIS will be set */
/* COMP_CPU_INT_IMASK[OUTRDYIFG] Bits */
#define COMP_CPU_INT_IMASK_OUTRDYIFG_OFS (3) /* !< OUTRDYIFG Offset */
#define COMP_CPU_INT_IMASK_OUTRDYIFG_MASK ((uint32_t)0x00000008U) /* !< Masks OUTRDYIFG */
#define COMP_CPU_INT_IMASK_OUTRDYIFG_CLR ((uint32_t)0x00000000U) /* !< Interrupt is masked out */
#define COMP_CPU_INT_IMASK_OUTRDYIFG_SET ((uint32_t)0x00000008U) /* !< Interrupt will request an interrupt
service routine and corresponding bit
in MIS will be set */
/* COMP_CPU_INT_RIS Bits */
/* COMP_CPU_INT_RIS[COMPIFG] Bits */
#define COMP_CPU_INT_RIS_COMPIFG_OFS (1) /* !< COMPIFG Offset */
#define COMP_CPU_INT_RIS_COMPIFG_MASK ((uint32_t)0x00000002U) /* !< Raw interrupt status for comparator
output interrupt flag. The IES bit
defines the transition of the
comparator output setting this bit. */
#define COMP_CPU_INT_RIS_COMPIFG_CLR ((uint32_t)0x00000000U) /* !< No interrupt pending */
#define COMP_CPU_INT_RIS_COMPIFG_SET ((uint32_t)0x00000002U) /* !< Interrupt pending */
/* COMP_CPU_INT_RIS[COMPINVIFG] Bits */
#define COMP_CPU_INT_RIS_COMPINVIFG_OFS (2) /* !< COMPINVIFG Offset */
#define COMP_CPU_INT_RIS_COMPINVIFG_MASK ((uint32_t)0x00000004U) /* !< Raw interrupt status for comparator
output inverted interrupt flag. The
IES bit defines the transition of the
comparator output setting this bit. */
#define COMP_CPU_INT_RIS_COMPINVIFG_CLR ((uint32_t)0x00000000U) /* !< No interrupt pending */
#define COMP_CPU_INT_RIS_COMPINVIFG_SET ((uint32_t)0x00000004U) /* !< Interrupt pending */
/* COMP_CPU_INT_RIS[OUTRDYIFG] Bits */
#define COMP_CPU_INT_RIS_OUTRDYIFG_OFS (3) /* !< OUTRDYIFG Offset */
#define COMP_CPU_INT_RIS_OUTRDYIFG_MASK ((uint32_t)0x00000008U) /* !< Raw interrupt status for comparator
output ready interrupt flag. This bit
is set when the comparator output is
valid. */
#define COMP_CPU_INT_RIS_OUTRDYIFG_CLR ((uint32_t)0x00000000U) /* !< No interrupt pending */
#define COMP_CPU_INT_RIS_OUTRDYIFG_SET ((uint32_t)0x00000008U) /* !< Interrupt pending */
/* COMP_CPU_INT_MIS Bits */
/* COMP_CPU_INT_MIS[COMPIFG] Bits */
#define COMP_CPU_INT_MIS_COMPIFG_OFS (1) /* !< COMPIFG Offset */
#define COMP_CPU_INT_MIS_COMPIFG_MASK ((uint32_t)0x00000002U) /* !< Masked interrupt status for COMPIFG */
#define COMP_CPU_INT_MIS_COMPIFG_CLR ((uint32_t)0x00000000U) /* !< COMPIFG does not request an
interrupt service routine */
#define COMP_CPU_INT_MIS_COMPIFG_SET ((uint32_t)0x00000002U) /* !< COMPIFG requests an interrupt
service routine */
/* COMP_CPU_INT_MIS[COMPINVIFG] Bits */
#define COMP_CPU_INT_MIS_COMPINVIFG_OFS (2) /* !< COMPINVIFG Offset */
#define COMP_CPU_INT_MIS_COMPINVIFG_MASK ((uint32_t)0x00000004U) /* !< Masked interrupt status for
COMPINVIFG */
#define COMP_CPU_INT_MIS_COMPINVIFG_CLR ((uint32_t)0x00000000U) /* !< COMPINVIFG does not request an
interrupt service routine */
#define COMP_CPU_INT_MIS_COMPINVIFG_SET ((uint32_t)0x00000004U) /* !< COMPINVIFG requests an interrupt
service routine */
/* COMP_CPU_INT_MIS[OUTRDYIFG] Bits */
#define COMP_CPU_INT_MIS_OUTRDYIFG_OFS (3) /* !< OUTRDYIFG Offset */
#define COMP_CPU_INT_MIS_OUTRDYIFG_MASK ((uint32_t)0x00000008U) /* !< Masked interrupt status for
OUTRDYIFG */
#define COMP_CPU_INT_MIS_OUTRDYIFG_CLR ((uint32_t)0x00000000U) /* !< OUTRDYIFG does not request an
interrupt service routine */
#define COMP_CPU_INT_MIS_OUTRDYIFG_SET ((uint32_t)0x00000008U) /* !< OUTRDYIFG requests an interrupt
service routine */
/* COMP_CPU_INT_ISET Bits */
/* COMP_CPU_INT_ISET[COMPIFG] Bits */
#define COMP_CPU_INT_ISET_COMPIFG_OFS (1) /* !< COMPIFG Offset */
#define COMP_CPU_INT_ISET_COMPIFG_MASK ((uint32_t)0x00000002U) /* !< Sets COMPIFG in RIS register */
#define COMP_CPU_INT_ISET_COMPIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_CPU_INT_ISET_COMPIFG_SET ((uint32_t)0x00000002U) /* !< RIS bit corresponding to COMPIFG is
set */
/* COMP_CPU_INT_ISET[COMPINVIFG] Bits */
#define COMP_CPU_INT_ISET_COMPINVIFG_OFS (2) /* !< COMPINVIFG Offset */
#define COMP_CPU_INT_ISET_COMPINVIFG_MASK ((uint32_t)0x00000004U) /* !< Sets COMPINVIFG in RIS register */
#define COMP_CPU_INT_ISET_COMPINVIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_CPU_INT_ISET_COMPINVIFG_SET ((uint32_t)0x00000004U) /* !< RIS bit corresponding to COMPINVIFG
is set */
/* COMP_CPU_INT_ISET[OUTRDYIFG] Bits */
#define COMP_CPU_INT_ISET_OUTRDYIFG_OFS (3) /* !< OUTRDYIFG Offset */
#define COMP_CPU_INT_ISET_OUTRDYIFG_MASK ((uint32_t)0x00000008U) /* !< Sets OUTRDYIFG in RIS register */
#define COMP_CPU_INT_ISET_OUTRDYIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_CPU_INT_ISET_OUTRDYIFG_SET ((uint32_t)0x00000008U) /* !< RIS bit corresponding to OUTRDYIFG
is set */
/* COMP_CPU_INT_ICLR Bits */
/* COMP_CPU_INT_ICLR[COMPIFG] Bits */
#define COMP_CPU_INT_ICLR_COMPIFG_OFS (1) /* !< COMPIFG Offset */
#define COMP_CPU_INT_ICLR_COMPIFG_MASK ((uint32_t)0x00000002U) /* !< Clears COMPIFG in RIS register */
#define COMP_CPU_INT_ICLR_COMPIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_CPU_INT_ICLR_COMPIFG_CLR ((uint32_t)0x00000002U) /* !< RIS bit corresponding to COMPIFG is
cleared */
/* COMP_CPU_INT_ICLR[COMPINVIFG] Bits */
#define COMP_CPU_INT_ICLR_COMPINVIFG_OFS (2) /* !< COMPINVIFG Offset */
#define COMP_CPU_INT_ICLR_COMPINVIFG_MASK ((uint32_t)0x00000004U) /* !< Clears COMPINVIFG in RIS register */
#define COMP_CPU_INT_ICLR_COMPINVIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_CPU_INT_ICLR_COMPINVIFG_CLR ((uint32_t)0x00000004U) /* !< RIS bit corresponding to COMPINVIFG
is cleared */
/* COMP_CPU_INT_ICLR[OUTRDYIFG] Bits */
#define COMP_CPU_INT_ICLR_OUTRDYIFG_OFS (3) /* !< OUTRDYIFG Offset */
#define COMP_CPU_INT_ICLR_OUTRDYIFG_MASK ((uint32_t)0x00000008U) /* !< Clears OUTRDYIFG in RIS register */
#define COMP_CPU_INT_ICLR_OUTRDYIFG_NO_EFFECT ((uint32_t)0x00000000U) /* !< Writing a 0 has no effect */
#define COMP_CPU_INT_ICLR_OUTRDYIFG_CLR ((uint32_t)0x00000008U) /* !< RIS bit corresponding to OUTRDYIFG
is cleared */
/* COMP_PWREN Bits */
/* COMP_PWREN[ENABLE] Bits */
#define COMP_PWREN_ENABLE_OFS (0) /* !< ENABLE Offset */
#define COMP_PWREN_ENABLE_MASK ((uint32_t)0x00000001U) /* !< Enable the power */
#define COMP_PWREN_ENABLE_DISABLE ((uint32_t)0x00000000U) /* !< Disable Power */
#define COMP_PWREN_ENABLE_ENABLE ((uint32_t)0x00000001U) /* !< Enable Power */
/* COMP_PWREN[KEY] Bits */
#define COMP_PWREN_KEY_OFS (24) /* !< KEY Offset */
#define COMP_PWREN_KEY_MASK ((uint32_t)0xFF000000U) /* !< KEY to allow Power State Change */
#define COMP_PWREN_KEY_UNLOCK_W ((uint32_t)0x26000000U) /* !< KEY to allow write access to this
register */
/* COMP_RSTCTL Bits */
/* COMP_RSTCTL[RESETSTKYCLR] Bits */
#define COMP_RSTCTL_RESETSTKYCLR_OFS (1) /* !< RESETSTKYCLR Offset */
#define COMP_RSTCTL_RESETSTKYCLR_MASK ((uint32_t)0x00000002U) /* !< Clear the RESETSTKY bit in the STAT
register */
#define COMP_RSTCTL_RESETSTKYCLR_NOP ((uint32_t)0x00000000U) /* !< Writing 0 has no effect */
#define COMP_RSTCTL_RESETSTKYCLR_CLR ((uint32_t)0x00000002U) /* !< Clear reset sticky bit */
/* COMP_RSTCTL[RESETASSERT] Bits */
#define COMP_RSTCTL_RESETASSERT_OFS (0) /* !< RESETASSERT Offset */
#define COMP_RSTCTL_RESETASSERT_MASK ((uint32_t)0x00000001U) /* !< Assert reset to the peripheral */
#define COMP_RSTCTL_RESETASSERT_NOP ((uint32_t)0x00000000U) /* !< Writing 0 has no effect */
#define COMP_RSTCTL_RESETASSERT_ASSERT ((uint32_t)0x00000001U) /* !< Assert reset */
/* COMP_RSTCTL[KEY] Bits */
#define COMP_RSTCTL_KEY_OFS (24) /* !< KEY Offset */
#define COMP_RSTCTL_KEY_MASK ((uint32_t)0xFF000000U) /* !< Unlock key */
#define COMP_RSTCTL_KEY_UNLOCK_W ((uint32_t)0xB1000000U) /* !< KEY to allow write access to this
register */
/* COMP_CLKCFG Bits */
/* COMP_CLKCFG[KEY] Bits */
#define COMP_CLKCFG_KEY_OFS (24) /* !< KEY Offset */
#define COMP_CLKCFG_KEY_MASK ((uint32_t)0xFF000000U) /* !< KEY to Allow State Change -- 0xA9 */
#define COMP_CLKCFG_KEY_UNLOCK ((uint32_t)0xA9000000U) /* !< Key value to be used in writing to
this register for the write to take
effect. */
/* COMP_CLKCFG[BLOCKASYNC] Bits */
#define COMP_CLKCFG_BLOCKASYNC_OFS (8) /* !< BLOCKASYNC Offset */
#define COMP_CLKCFG_BLOCKASYNC_MASK ((uint32_t)0x00000100U) /* !< Async Clock Request is blocked from
starting SYSOSC or forcing bus clock
to 32MHz */
#define COMP_CLKCFG_BLOCKASYNC_DISABLE ((uint32_t)0x00000000U) /* !< disable COMP to request SYSOSC */
#define COMP_CLKCFG_BLOCKASYNC_ENABLE ((uint32_t)0x00000100U) /* !< enable COMP to request SYSOSC */
/* COMP_GPRCM_STAT Bits */
/* COMP_GPRCM_STAT[RESETSTKY] Bits */
#define COMP_GPRCM_STAT_RESETSTKY_OFS (16) /* !< RESETSTKY Offset */
#define COMP_GPRCM_STAT_RESETSTKY_MASK ((uint32_t)0x00010000U) /* !< This bit indicates, if the
peripheral was reset, since this bit
was cleared by RESETSTKYCLR in the
RSTCTL register */
#define COMP_GPRCM_STAT_RESETSTKY_NORES ((uint32_t)0x00000000U) /* !< The peripheral has not been reset
since this bit was last cleared by
RESETSTKYCLR in the RSTCTL register */
#define COMP_GPRCM_STAT_RESETSTKY_RESET ((uint32_t)0x00010000U) /* !< The peripheral was reset since the
last bit clear */
/* COMP_FSUB_0 Bits */
/* COMP_FSUB_0[CHANID] Bits */
#define COMP_FSUB_0_CHANID_OFS (0) /* !< CHANID Offset */
#define COMP_FSUB_0_CHANID_MASK ((uint32_t)0x00007FFFU) /* !< 0 = disconnected. 1-15 = connected
to channelID = CHANID. */
#define COMP_FSUB_0_CHANID_MNIMUM ((uint32_t)0x00000000U) /* !< 0 is an allowed value, signifying
that the event is unconnected */
#define COMP_FSUB_0_CHANID_UNCONNECTED ((uint32_t)0x00000000U) /* !< A value of 0 specifies that the
event is not connected */
#define COMP_FSUB_0_CHANID_MAXIMUM ((uint32_t)0x0000000FU) /* !< Consult your device datasheet as
the actual allowed maximum may be
less than 15. */
/* COMP_FSUB_1 Bits */
/* COMP_FSUB_1[CHANID] Bits */
#define COMP_FSUB_1_CHANID_OFS (0) /* !< CHANID Offset */
#define COMP_FSUB_1_CHANID_MASK ((uint32_t)0x00007FFFU) /* !< 0 = disconnected. 1-15 = connected
to channelID = CHANID. */
#define COMP_FSUB_1_CHANID_MNIMUM ((uint32_t)0x00000000U) /* !< 0 is an allowed value, signifying
that the event is unconnected */
#define COMP_FSUB_1_CHANID_UNCONNECTED ((uint32_t)0x00000000U) /* !< A value of 0 specifies that the
event is not connected */
#define COMP_FSUB_1_CHANID_MAXIMUM ((uint32_t)0x0000000FU) /* !< Consult your device datasheet as
the actual allowed maximum may be
less than 15. */
/* COMP_FPUB_1 Bits */
/* COMP_FPUB_1[CHANID] Bits */
#define COMP_FPUB_1_CHANID_OFS (0) /* !< CHANID Offset */
#define COMP_FPUB_1_CHANID_MASK ((uint32_t)0x00007FFFU) /* !< 0 = disconnected. 1-15 = connected
to channelID = CHANID. */
#define COMP_FPUB_1_CHANID_MNIMUM ((uint32_t)0x00000000U) /* !< 0 is an allowed value, signifying
that the event is unconnected */
#define COMP_FPUB_1_CHANID_UNCONNECTED ((uint32_t)0x00000000U) /* !< A value of 0 specifies that the
event is not connected */
#define COMP_FPUB_1_CHANID_MAXIMUM ((uint32_t)0x0000000FU) /* !< Consult your device datasheet as
the actual allowed maximum may be
less than 15. */
/* COMP_EVT_MODE Bits */
/* COMP_EVT_MODE[INT0_CFG] Bits */
#define COMP_EVT_MODE_INT0_CFG_OFS (0) /* !< INT0_CFG Offset */
#define COMP_EVT_MODE_INT0_CFG_MASK ((uint32_t)0x00000003U) /* !< Event line mode select for event
corresponding to CPU_INT */
#define COMP_EVT_MODE_INT0_CFG_DISABLE ((uint32_t)0x00000000U) /* !< The interrupt or event line is
disabled. */
#define COMP_EVT_MODE_INT0_CFG_SOFTWARE ((uint32_t)0x00000001U) /* !< Event handled by software. Software
must clear the associated RIS flag. */
#define COMP_EVT_MODE_INT0_CFG_HARDWARE ((uint32_t)0x00000002U) /* !< Event handled by hardware. The
hardware (another module) clears
automatically the associated RIS
flag. */
/* COMP_EVT_MODE[EVT1_CFG] Bits */
#define COMP_EVT_MODE_EVT1_CFG_OFS (2) /* !< EVT1_CFG Offset */
#define COMP_EVT_MODE_EVT1_CFG_MASK ((uint32_t)0x0000000CU) /* !< Event line mode select for event
corresponding to GEN_EVENT */
#define COMP_EVT_MODE_EVT1_CFG_DISABLE ((uint32_t)0x00000000U) /* !< The interrupt or event line is
disabled. */
#define COMP_EVT_MODE_EVT1_CFG_SOFTWARE ((uint32_t)0x00000004U) /* !< Event handled by software. Software
must clear the associated RIS flag. */
#define COMP_EVT_MODE_EVT1_CFG_HARDWARE ((uint32_t)0x00000008U) /* !< Event handled by hardware. The
hardware (another module) clears
automatically the associated RIS
flag. */
/* COMP_DESC Bits */
/* COMP_DESC[MINREV] Bits */
#define COMP_DESC_MINREV_OFS (0) /* !< MINREV Offset */
#define COMP_DESC_MINREV_MASK ((uint32_t)0x0000000FU) /* !< Minor rev of the IP */
/* COMP_DESC[MAJREV] Bits */
#define COMP_DESC_MAJREV_OFS (4) /* !< MAJREV Offset */
#define COMP_DESC_MAJREV_MASK ((uint32_t)0x000000F0U) /* !< Major rev of the IP */
/* COMP_DESC[FEATUREVER] Bits */
#define COMP_DESC_FEATUREVER_OFS (12) /* !< FEATUREVER Offset */
#define COMP_DESC_FEATUREVER_MASK ((uint32_t)0x0000F000U) /* !< Feature Set for the module
*instance* */
/* COMP_DESC[MODULEID] Bits */
#define COMP_DESC_MODULEID_OFS (16) /* !< MODULEID Offset */
#define COMP_DESC_MODULEID_MASK ((uint32_t)0xFFFF0000U) /* !< Module identification contains a
unique peripheral identification
number. The assignments are
maintained in a central database for
all of the platform modules to ensure
uniqueness. */
/* COMP_CTL0 Bits */
/* COMP_CTL0[IPSEL] Bits */
#define COMP_CTL0_IPSEL_OFS (0) /* !< IPSEL Offset */
#define COMP_CTL0_IPSEL_MASK ((uint32_t)0x00000007U) /* !< Channel input selected for the
positive terminal of the comparator
if IPEN is set to 1. */
#define COMP_CTL0_IPSEL_CH_0 ((uint32_t)0x00000000U) /* !< Channel 0 selected */
#define COMP_CTL0_IPSEL_CH_1 ((uint32_t)0x00000001U) /* !< Channel 1 selected */
#define COMP_CTL0_IPSEL_CH_2 ((uint32_t)0x00000002U) /* !< Channel 2 selected */
#define COMP_CTL0_IPSEL_CH_3 ((uint32_t)0x00000003U) /* !< Channel 3 selected */
#define COMP_CTL0_IPSEL_CH_4 ((uint32_t)0x00000004U) /* !< Channel 4 selected */
#define COMP_CTL0_IPSEL_CH_5 ((uint32_t)0x00000005U) /* !< Channel 5 selected */
#define COMP_CTL0_IPSEL_CH_6 ((uint32_t)0x00000006U) /* !< Channel 6 selected */
#define COMP_CTL0_IPSEL_CH_7 ((uint32_t)0x00000007U) /* !< Channel 7 selected */
/* COMP_CTL0[IPEN] Bits */
#define COMP_CTL0_IPEN_OFS (15) /* !< IPEN Offset */
#define COMP_CTL0_IPEN_MASK ((uint32_t)0x00008000U) /* !< Channel input enable for the
positive terminal of the comparator. */
#define COMP_CTL0_IPEN_DISABLE ((uint32_t)0x00000000U) /* !< Selected analog input channel for
positive terminal is disabled */
#define COMP_CTL0_IPEN_ENABLE ((uint32_t)0x00008000U) /* !< Selected analog input channel for
positive terminal is enabled */
/* COMP_CTL0[IMEN] Bits */
#define COMP_CTL0_IMEN_OFS (31) /* !< IMEN Offset */
#define COMP_CTL0_IMEN_MASK ((uint32_t)0x80000000U) /* !< Channel input enable for the
negative terminal of the comparator. */
#define COMP_CTL0_IMEN_DISABLE ((uint32_t)0x00000000U) /* !< Selected analog input channel for
negative terminal is disabled */
#define COMP_CTL0_IMEN_ENABLE ((uint32_t)0x80000000U) /* !< Selected analog input channel for
negative terminal is enabled */
/* COMP_CTL0[IMSEL] Bits */
#define COMP_CTL0_IMSEL_OFS (16) /* !< IMSEL Offset */
#define COMP_CTL0_IMSEL_MASK ((uint32_t)0x00070000U) /* !< Channel input selected for the
negative terminal of the comparator
if IMEN is set to 1. */
#define COMP_CTL0_IMSEL_CH_0 ((uint32_t)0x00000000U) /* !< Channel 0 selected */
#define COMP_CTL0_IMSEL_CH_1 ((uint32_t)0x00010000U) /* !< Channel 1 selected */
#define COMP_CTL0_IMSEL_CH_2 ((uint32_t)0x00020000U) /* !< Channel 2 selected */
#define COMP_CTL0_IMSEL_CH_3 ((uint32_t)0x00030000U) /* !< Channel 3 selected */
#define COMP_CTL0_IMSEL_CH_4 ((uint32_t)0x00040000U) /* !< Channel 4 selected */
#define COMP_CTL0_IMSEL_CH_5 ((uint32_t)0x00050000U) /* !< Channel 5 selected */
#define COMP_CTL0_IMSEL_CH_6 ((uint32_t)0x00060000U) /* !< Channel 6 selected */
#define COMP_CTL0_IMSEL_CH_7 ((uint32_t)0x00070000U) /* !< Channel 7 selected */
/* COMP_CTL1 Bits */
/* COMP_CTL1[ENABLE] Bits */
#define COMP_CTL1_ENABLE_OFS (0) /* !< ENABLE Offset */
#define COMP_CTL1_ENABLE_MASK ((uint32_t)0x00000001U) /* !< This bit turns on the comparator.
When the comparator is turned off it
consumes no power. */
#define COMP_CTL1_ENABLE_OFF ((uint32_t)0x00000000U) /* !< Comparator is off */
#define COMP_CTL1_ENABLE_ON ((uint32_t)0x00000001U) /* !< Comparator is on */
/* COMP_CTL1[MODE] Bits */
#define COMP_CTL1_MODE_OFS (1) /* !< MODE Offset */
#define COMP_CTL1_MODE_MASK ((uint32_t)0x00000002U) /* !< This bit selects the comparator
operating mode. */
#define COMP_CTL1_MODE_FAST ((uint32_t)0x00000000U) /* !< Comparator is in fast mode */
#define COMP_CTL1_MODE_ULP ((uint32_t)0x00000002U) /* !< Comparator is in ultra-low power
mode */
/* COMP_CTL1[EXCH] Bits */
#define COMP_CTL1_EXCH_OFS (2) /* !< EXCH Offset */
#define COMP_CTL1_EXCH_MASK ((uint32_t)0x00000004U) /* !< This bit exchanges the comparator
inputs and inverts the comparator
output. */
#define COMP_CTL1_EXCH_NO_EXC ((uint32_t)0x00000000U) /* !< Comparator inputs not exchanged and
output not inverted */
#define COMP_CTL1_EXCH_EXC ((uint32_t)0x00000004U) /* !< Comparator inputs exchanged and
output inverted */
/* COMP_CTL1[SHORT] Bits */
#define COMP_CTL1_SHORT_OFS (3) /* !< SHORT Offset */
#define COMP_CTL1_SHORT_MASK ((uint32_t)0x00000008U) /* !< This bit shorts the positive and
negative input terminals of the
comparator. */
#define COMP_CTL1_SHORT_NO_SHT ((uint32_t)0x00000000U) /* !< Comparator positive and negative
input terminals are not shorted */
#define COMP_CTL1_SHORT_SHT ((uint32_t)0x00000008U) /* !< Comparator positive and negative
input terminals are shorted */
/* COMP_CTL1[IES] Bits */
#define COMP_CTL1_IES_OFS (4) /* !< IES Offset */
#define COMP_CTL1_IES_MASK ((uint32_t)0x00000010U) /* !< This bit selected the interrupt
edge for COMPIFG and COMPINVIFG. */
#define COMP_CTL1_IES_RISING ((uint32_t)0x00000000U) /* !< Rising edge sets COMPIFG and
falling edge sets COMPINVIFG */
#define COMP_CTL1_IES_FALLING ((uint32_t)0x00000010U) /* !< Falling edge sets COMPIFG and
rising edge sets COMPINVIFG */
/* COMP_CTL1[HYST] Bits */
#define COMP_CTL1_HYST_OFS (5) /* !< HYST Offset */
#define COMP_CTL1_HYST_MASK ((uint32_t)0x00000060U) /* !< These bits select the hysteresis
setting of the comparator. */
#define COMP_CTL1_HYST_NO_HYS ((uint32_t)0x00000000U) /* !< No hysteresis */
#define COMP_CTL1_HYST_LOW_HYS ((uint32_t)0x00000020U) /* !< Low hysteresis, typical 10mV */
#define COMP_CTL1_HYST_MED_HYS ((uint32_t)0x00000040U) /* !< Medium hysteresis, typical 20mV */
#define COMP_CTL1_HYST_HIGH_HYS ((uint32_t)0x00000060U) /* !< High hysteresis, typical 30mV */
/* COMP_CTL1[OUTPOL] Bits */
#define COMP_CTL1_OUTPOL_OFS (7) /* !< OUTPOL Offset */
#define COMP_CTL1_OUTPOL_MASK ((uint32_t)0x00000080U) /* !< This bit selects the comparator
output polarity. */
#define COMP_CTL1_OUTPOL_NON_INV ((uint32_t)0x00000000U) /* !< Comparator output is non-inverted */
#define COMP_CTL1_OUTPOL_INV ((uint32_t)0x00000080U) /* !< Comparator output is inverted */
/* COMP_CTL1[FLTEN] Bits */
#define COMP_CTL1_FLTEN_OFS (8) /* !< FLTEN Offset */
#define COMP_CTL1_FLTEN_MASK ((uint32_t)0x00000100U) /* !< This bit enables the analog filter
at comparator output. */
#define COMP_CTL1_FLTEN_DISABLE ((uint32_t)0x00000000U) /* !< Comparator output filter is
disabled */
#define COMP_CTL1_FLTEN_ENABLE ((uint32_t)0x00000100U) /* !< Comparator output filter is enabled */
/* COMP_CTL1[FLTDLY] Bits */
#define COMP_CTL1_FLTDLY_OFS (9) /* !< FLTDLY Offset */
#define COMP_CTL1_FLTDLY_MASK ((uint32_t)0x00000600U) /* !< These bits select the comparator
output filter delay. See the
device-specific data sheet for
specific values on comparator
propagation delay for different
filter delay settings. */
#define COMP_CTL1_FLTDLY_DLY_0 ((uint32_t)0x00000000U) /* !< Typical filter delay of 70 ns */
#define COMP_CTL1_FLTDLY_DLY_1 ((uint32_t)0x00000200U) /* !< Typical filter delay of 500 ns */
#define COMP_CTL1_FLTDLY_DLY_2 ((uint32_t)0x00000400U) /* !< Typical filter delay of 1200 ns */
#define COMP_CTL1_FLTDLY_DLY_3 ((uint32_t)0x00000600U) /* !< Typical filter delay of 2700 ns */
/* COMP_CTL1[WINCOMPEN] Bits */
#define COMP_CTL1_WINCOMPEN_OFS (12) /* !< WINCOMPEN Offset */
#define COMP_CTL1_WINCOMPEN_MASK ((uint32_t)0x00001000U) /* !< This bit enables window comparator
operation of comparator. */
#define COMP_CTL1_WINCOMPEN_OFF ((uint32_t)0x00000000U) /* !< window comparator is disable */
#define COMP_CTL1_WINCOMPEN_ON ((uint32_t)0x00001000U) /* !< window comparator is enable */
/* COMP_CTL2 Bits */
/* COMP_CTL2[REFMODE] Bits */
#define COMP_CTL2_REFMODE_OFS (0) /* !< REFMODE Offset */
#define COMP_CTL2_REFMODE_MASK ((uint32_t)0x00000001U) /* !< This bit requests ULP_REF bandgap
operation in fast mode(static) or low
power mode (sampled). The local
reference buffer and 8-bit DAC inside
comparator module are also configured
accordingly. Fast mode operation
offers higher accuracy but consumes
higher current. Low power operation
consumes lower current but with
relaxed reference voltage accuracy.
Comparator requests for reference
voltage from ULP_REF only when REFLVL
> 0. */
#define COMP_CTL2_REFMODE_STATIC ((uint32_t)0x00000000U) /* !< ULP_REF bandgap, local reference
buffer and 8-bit DAC inside
comparator operate in static mode. */
#define COMP_CTL2_REFMODE_SAMPLED ((uint32_t)0x00000001U) /* !< ULP_REF bandgap, local reference
buffer and 8-bit DAC inside
comparator operate in sampled mode. */
/* COMP_CTL2[REFSRC] Bits */
#define COMP_CTL2_REFSRC_OFS (3) /* !< REFSRC Offset */
#define COMP_CTL2_REFSRC_MASK ((uint32_t)0x00000038U) /* !< These bits select the reference
source for the comparator. */
#define COMP_CTL2_REFSRC_OFF ((uint32_t)0x00000000U) /* !< Reference voltage generator is
disabled (local reference buffer as
well as DAC). */
#define COMP_CTL2_REFSRC_VDDA_DAC ((uint32_t)0x00000008U) /* !< VDDA selected as the reference
source to DAC and DAC output applied
as reference to comparator. */
#define COMP_CTL2_REFSRC_VREF_DAC ((uint32_t)0x00000010U) /* !< VREF selected as reference to DAC
and DAC output applied as reference
to comparator. */
#define COMP_CTL2_REFSRC_VREF ((uint32_t)0x00000018U) /* !< In devices where internal VREF is
buffered and hookedup to extrernal
VREF pin, VREF applied as reference
to comparator. DAC is switched off.
Note: In LEGO_A3, DAC is turned off
in this selection, in other deviced
DAC is kept on. */
#define COMP_CTL2_REFSRC_VDDA ((uint32_t)0x00000028U) /* !< VDDA is used as comparator
reference. Note: In LEGO_A3, DAC is
turned off in this selection, in
other deviced DAC is kept on. */
#define COMP_CTL2_REFSRC_INTVREF_DAC ((uint32_t)0x00000030U) /* !< Internal reference selected as the
reference source to DAC and DAC
output applied as reference to
comparator. */
#define COMP_CTL2_REFSRC_INTVREF ((uint32_t)0x00000038U) /* !< Internal VREF is used as the source
of comparator. Not all devices will
have this option. */
/* COMP_CTL2[REFSEL] Bits */
#define COMP_CTL2_REFSEL_OFS (7) /* !< REFSEL Offset */
#define COMP_CTL2_REFSEL_MASK ((uint32_t)0x00000080U) /* !< This bit selects if the selected
reference voltage is applied to
positive or negative terminal of the
comparator. */
#define COMP_CTL2_REFSEL_POSITIVE ((uint32_t)0x00000000U) /* !< If EXCH bit is 0, the selected
reference is applied to positive
terminal. If EXCH bit is 1, the
selected reference is applied to
negative terminal. */
#define COMP_CTL2_REFSEL_NEGATIVE ((uint32_t)0x00000080U) /* !< If EXCH bit is 0, the selected
reference is applied to negative
terminal. If EXCH bit is 1, the
selected reference is applied to
positive terminal. */
/* COMP_CTL2[DACCTL] Bits */
#define COMP_CTL2_DACCTL_OFS (16) /* !< DACCTL Offset */
#define COMP_CTL2_DACCTL_MASK ((uint32_t)0x00010000U) /* !< This bit determines if the
comparator output or DACSW bit
controls the selection between
DACCODE0 and DACCODE1. */
#define COMP_CTL2_DACCTL_COMPOUT_SEL ((uint32_t)0x00000000U) /* !< Comparator output controls
selection between DACCODE0 and
DACCODE1 */
#define COMP_CTL2_DACCTL_DACSW_SEL ((uint32_t)0x00010000U) /* !< DACSW bit controls selection
between DACCODE0 and DACCODE1 */
/* COMP_CTL2[DACSW] Bits */
#define COMP_CTL2_DACSW_OFS (17) /* !< DACSW Offset */
#define COMP_CTL2_DACSW_MASK ((uint32_t)0x00020000U) /* !< This bit selects between DACCODE0
and DACCODE1 to 8-bit DAC when DACCTL
bit is 1. */
#define COMP_CTL2_DACSW_DACCODE0_SEL ((uint32_t)0x00000000U) /* !< DACCODE0 selected for 8-bit DAC */
#define COMP_CTL2_DACSW_DACCODE1_SEL ((uint32_t)0x00020000U) /* !< DACCODE1 selected for 8-bit DAC */
/* COMP_CTL2[BLANKSRC] Bits */
#define COMP_CTL2_BLANKSRC_OFS (8) /* !< BLANKSRC Offset */
#define COMP_CTL2_BLANKSRC_MASK ((uint32_t)0x00000700U) /* !< These bits select the blanking
source for the comparator. */
#define COMP_CTL2_BLANKSRC_DISABLE ((uint32_t)0x00000000U) /* !< Blanking source disabled */
#define COMP_CTL2_BLANKSRC_BLANKSRC1 ((uint32_t)0x00000100U) /* !< Select Blanking Source 1 */
#define COMP_CTL2_BLANKSRC_BLANKSRC2 ((uint32_t)0x00000200U) /* !< Select Blanking Source 2 */
#define COMP_CTL2_BLANKSRC_BLANKSRC3 ((uint32_t)0x00000300U) /* !< Select Blanking Source 3 */
#define COMP_CTL2_BLANKSRC_BLANKSRC4 ((uint32_t)0x00000400U) /* !< Select Blanking Source 4 */
#define COMP_CTL2_BLANKSRC_BLANKSRC5 ((uint32_t)0x00000500U) /* !< Select Blanking Source 5 */
#define COMP_CTL2_BLANKSRC_BLANKSRC6 ((uint32_t)0x00000600U) /* !< Select Blanking Source 6 */
/* COMP_CTL2[SAMPMODE] Bits */
#define COMP_CTL2_SAMPMODE_OFS (24) /* !< SAMPMODE Offset */
#define COMP_CTL2_SAMPMODE_MASK ((uint32_t)0x01000000U) /* !< Enable sampled mode of comparator. */
#define COMP_CTL2_SAMPMODE_DISABLE ((uint32_t)0x00000000U) /* !< Sampled mode disabled */
#define COMP_CTL2_SAMPMODE_ENABLE ((uint32_t)0x01000000U) /* !< Sampled mode enabled */
/* COMP_CTL3 Bits */
/* COMP_CTL3[DACCODE0] Bits */
#define COMP_CTL3_DACCODE0_OFS (0) /* !< DACCODE0 Offset */
#define COMP_CTL3_DACCODE0_MASK ((uint32_t)0x000000FFU) /* !< This is the first 8-bit DAC code.
When the DAC code is 0x0 the DAC
output will be 0 V. When the DAC code
is 0xFF the DAC output will be
selected reference voltage x 255/256. */
#define COMP_CTL3_DACCODE0_MNIMUM ((uint32_t)0x00000000U) /* !< Minimum DAC code value */
#define COMP_CTL3_DACCODE0_MAXIMUM ((uint32_t)0x000000FFU) /* !< Minimum DAC code value */
/* COMP_CTL3[DACCODE1] Bits */
#define COMP_CTL3_DACCODE1_OFS (16) /* !< DACCODE1 Offset */
#define COMP_CTL3_DACCODE1_MASK ((uint32_t)0x00FF0000U) /* !< This is the second 8-bit DAC code.
When the DAC code is 0x0 the DAC
output will be 0 V. When the DAC code
is 0xFF the DAC output will be
selected reference voltage x 255/256. */
#define COMP_CTL3_DACCODE1_MNIMUM ((uint32_t)0x00000000U) /* !< Minimum DAC code value */
#define COMP_CTL3_DACCODE1_MAXIMUM ((uint32_t)0x00FF0000U) /* !< Minimum DAC code value */
/* COMP_STAT Bits */
/* COMP_STAT[OUT] Bits */
#define COMP_STAT_OUT_OFS (0) /* !< OUT Offset */
#define COMP_STAT_OUT_MASK ((uint32_t)0x00000001U) /* !< This bit reflects the value of the
comparator output. Writing to this
bit has no effect on the comparator
output. */
#define COMP_STAT_OUT_LOW ((uint32_t)0x00000000U) /* !< Comparator output is low */
#define COMP_STAT_OUT_HIGH ((uint32_t)0x00000001U) /* !< Comparator output is high */
#ifdef __cplusplus
}
#endif
#endif /* ti_devices_msp_peripherals_hw_comp__include */