MCUXpresso SDK API Reference Manual  Rev. 0
NXP Semiconductors
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
CMP: JN518X cmp driver

Overview

The MCUXpresso SDK provides a peripheral driver for the cmp driver module of MCUXpresso SDK devices.

Data Structures

struct  cmp_config_t
 cmp configurataions More...
 

Macros

#define CMP_INT_POL_SHIFT_VALUE   (1U)
 cmp level shift value definition
 

Enumerations

enum  _cmp_status {
  kCMP_In0BiggerThanIn1 = 1U,
  kCMP_In1BiggerThanIn0 = 0U
}
 cmp status More...
 
enum  cmp_interrupt_mask_t {
  kCMP_EdgeRising = 0U << CMP_INT_POL_SHIFT_VALUE,
  kCMP_EdgeFalling = 1U << CMP_INT_POL_SHIFT_VALUE,
  kCMP_EdgeRisingFalling = 3U << CMP_INT_POL_SHIFT_VALUE,
  kCMP_LevelLow = (0U << CMP_INT_POL_SHIFT_VALUE) | 1U,
  kCMP_LevelHigh = (2U << CMP_INT_POL_SHIFT_VALUE) | 1U
}
 cmp interrupt More...
 
enum  cmp_mode_t {
  kCMP_FastMode = 0U,
  kCMP_LowpowerMode = 1U
}
 cmp work mode More...
 
enum  cmp_input_t {
  kCMP_InputAllExternal = 0U,
  kCMP_InputOneExternalOneInternal = 1U
}
 cmp input source More...
 

Driver version

#define FSL_CMP_DRIVER_VERSION   (MAKE_VERSION(2U, 0U, 0U))
 Driver version 2.0.0. More...
 

Cmp Initialization and deinitialization

void CMP_Init (cmp_config_t *config)
 CMP intialization. More...
 
void CMP_Deinit (void)
 CMP deintialization.
 

cmp functionality

static void CMP_SwapExtInput (void)
 Swap the external input channel. More...
 
static void CMP_EnableLowePowerMode (bool enable)
 switch cmp work mode. More...
 
static void CMP_EnableInnerInput (bool enable)
 switch input source. More...
 
static void CMP_EnbaleLowHysteresis (bool enable)
 cmp enable low hysteresis.
 
static uint32_t CMP_GetOutput (void)
 cmp output status. More...
 

cmp interrupt

void CMP_SetInterruptConfig (cmp_interrupt_mask_t mask)
 cmp set interrupt configurations. More...
 
static void CMP_EnableInterrupt (void)
 cmp enable interrupt.
 
static void CMP_DisableInterrupt (void)
 cmp disable interrupt.
 
static bool CMP_GetInterruptStatus (void)
 cmp get interrupt status. More...
 
static void CMP_ClearInterruptStatus (void)
 cmp clear interrupt status. More...
 

Data Structure Documentation

struct cmp_config_t

Data Fields

bool enLowHysteris
 low hysteresis
 
cmp_input_t src
 input source select
 
cmp_mode_t mode
 cmp work mode
 

Macro Definition Documentation

#define FSL_CMP_DRIVER_VERSION   (MAKE_VERSION(2U, 0U, 0U))

Enumeration Type Documentation

Enumerator
kCMP_In0BiggerThanIn1 

comparator input 0 is bigger than input 1

kCMP_In1BiggerThanIn0 

comparator input 1 is bigger than input 0

Enumerator
kCMP_EdgeRising 

Edge sensitive, falling edge.

kCMP_EdgeFalling 

Edge sensitive, rising edge.

kCMP_EdgeRisingFalling 

Edge sensitive, rising and falling edge.

kCMP_LevelLow 

Level sensitive, low level.

kCMP_LevelHigh 

Level sensitive, high level.

enum cmp_mode_t
Enumerator
kCMP_FastMode 

Used in an active or deep sleep mode, this mode requires PMU bias enabled.

kCMP_LowpowerMode 

Used for all power mode, doesn't require PMU bias enabled.

Enumerator
kCMP_InputAllExternal 

Cmp input from two external source.

kCMP_InputOneExternalOneInternal 

Cmp input from one external input and one internal voltage reference 0.8V.

Function Documentation

void CMP_Init ( cmp_config_t config)
Parameters
configinit configurations.
static void CMP_SwapExtInput ( void  )
inlinestatic
Parameters
baseCMP base address.
static void CMP_EnableLowePowerMode ( bool  enable)
inlinestatic
Parameters
enabletrue is enter lowe power mode, false is enter fast mode
static void CMP_EnableInnerInput ( bool  enable)
inlinestatic
Parameters
enabletrue is one external and one internal, false is all external.
static uint32_t CMP_GetOutput ( void  )
inlinestatic
Returns
0 is kCMP_In1BiggerThanIn0, 1 is kCMP_In0BiggerThanIn1.
void CMP_SetInterruptConfig ( cmp_interrupt_mask_t  mask)
Parameters
maskinterrupt mask.
static bool CMP_GetInterruptStatus ( void  )
inlinestatic
Returns
true is interrupt pending, false is no interrupt pending.
static void CMP_ClearInterruptStatus ( void  )
inlinestatic
Returns
true is interrupt pending, false is no interrupt pending.