Пример #1
0
/**
  * @brief  Main program.
  * @param  None
  * @retval None
  */
int main(void)
{
    CMP_InitPara CMP_InitParaStruct;
    /* Configurate RCC */
    RCC_Configuration();
    /* Configurate GPIOA*/
    GPIO_Configuration();
    GD_EVAL_LEDInit(LED3);
    /* Initialize CMP1 */
    CMP_ParaInit(&CMP_InitParaStruct);
    CMP_InitParaStruct.CMP_InvertingInput = CMP_INVERTINGINPUT_1_4VREFINT;
    CMP_InitParaStruct.CMP_Output = CMP_OUTPUT_TIM2IC4;
    CMP_InitParaStruct.CMP_OutputPolarity = CMP_OUTPUTPOLARITY_NONINVERTED;
    CMP_InitParaStruct.CMP_Hysteresis = CMP_HYSTERESIS_NO;
    CMP_InitParaStruct.CMP_OperatingMode = CMP_OPERATINGMODE_VERYLOWSPEED;
    CMP_Init(CMP_CHANNEL_CMP1, &CMP_InitParaStruct);

    /* Configurate Timer2 and Interrupt */
    TIMER_Configuration();

    /* Enable CMP1 and Trigger Timer2 input capture */
    CMP_Enable(CMP_CHANNEL_CMP1, ENABLE);

    while(1);
}
Пример #2
0
/**
  * @brief  Main program.
  * @param  None
  * @retval None
  */
int main(void)
{
    CMP_InitPara CMP_InitParaStruct;
    /* Enable Clock */
    RCC_Configuration();
    /* Enable GPIOA analog and alternate output */
    GPIO_Configuration();
    /* Configure CMP1 */
    CMP_ParaInit(&CMP_InitParaStruct);
    CMP_InitParaStruct.CMP_InvertingInput = CMP_INVERTINGINPUT_1_4VREFINT;
    CMP_InitParaStruct.CMP_Output = CMP_OUTPUT_NONE;
    CMP_InitParaStruct.CMP_OutputPolarity = CMP_OUTPUTPOLARITY_NONINVERTED;
    CMP_InitParaStruct.CMP_Hysteresis = CMP_HYSTERESIS_NO;
    CMP_InitParaStruct.CMP_OperatingMode = CMP_OPERATINGMODE_VERYLOWSPEED;
    CMP_Init(CMP_CHANNEL_CMP1, &CMP_InitParaStruct);
    /* Enable CMP1 */
    CMP_Enable(CMP_CHANNEL_CMP1, ENABLE);

    while(1);
}
Пример #3
0
/**
  * @brief  Main program.
  * @param  None
  * @retval None
  */
int main(void)
{
    CMP_InitPara CMP_InitParaStruct;
    EXTI_InitPara EXTI_InitStruct;
    NVIC_InitPara NVIC_InitStruct;
    GD_EVAL_LEDInit(LED2);
    /* configure RCC */
    RCC_Configuration();
    /* configure GPIO */
    GPIO_Configuration();
    /* Initial CMP */
    CMP_ParaInit(&CMP_InitParaStruct);
    CMP_InitParaStruct.CMP_InvertingInput = CMP_INVERTINGINPUT_1_4VREFINT;
    CMP_InitParaStruct.CMP_Output = CMP_OUTPUT_NONE;
    CMP_InitParaStruct.CMP_OutputPolarity = CMP_OUTPUTPOLARITY_NONINVERTED;
    CMP_InitParaStruct.CMP_Hysteresis = CMP_HYSTERESIS_NO;
    CMP_InitParaStruct.CMP_OperatingMode = CMP_OPERATINGMODE_VERYLOWSPEED;
    CMP_Init(CMP_CHANNEL_CMP1, &CMP_InitParaStruct);

     /* NVIC CMP1 output intertupt handle */
    NVIC_InitStruct.NVIC_IRQ = ADC1_CMP_IRQn;
    NVIC_InitStruct.NVIC_IRQPreemptPriority = 0;
    NVIC_InitStruct. NVIC_IRQSubPriority = 0;
    NVIC_InitStruct.NVIC_IRQEnable = ENABLE;
    NVIC_Init(&NVIC_InitStruct);  
    
    /* EXTI trigger source CMP1 output configuration */
    EXTI_InitStruct.EXTI_LINE = EXTI_LINE21 ;
    EXTI_InitStruct.EXTI_Mode = EXTI_Mode_Interrupt;
    EXTI_InitStruct.EXTI_Trigger = EXTI_Trigger_Rising;
    EXTI_InitStruct.EXTI_LINEEnable = ENABLE;
    EXTI_Init(&EXTI_InitStruct);

    /* Enable CMP1 and enter interrupt */
    CMP_Enable(CMP_CHANNEL_CMP1, ENABLE);

    while(1);
}
Пример #4
0
/**
  * @brief  Main program.
  * @param  None
  * @retval None
  */
int main(void)
{
    CMP_InitPara CMP_InitParaStruct;
    RCC_Configuration();
    GPIO_Configuration();
    DAC_Configuration();
    /* Set data for DAC channel1 */
    DAC_SetDAC1Data(DAC_ALIGN_12B_R ,0xA00);
    DAC_SoftwareTrigger_Enable(DAC1,ENABLE);
    /* initialize CMP1 */
    CMP_ParaInit(&CMP_InitParaStruct);
    CMP_InitParaStruct.CMP_InvertingInput = CMP_INVERTINGINPUT_1_2VREFINT;
    CMP_InitParaStruct.CMP_Output = CMP_OUTPUT_NONE;
    CMP_InitParaStruct.CMP_OutputPolarity = CMP_OUTPUTPOLARITY_NONINVERTED;
    CMP_InitParaStruct.CMP_Hysteresis = CMP_HYSTERESIS_NO;
    CMP_InitParaStruct.CMP_OperatingMode = CMP_OPERATINGMODE_VERYLOWSPEED;
    CMP_Init(CMP_CHANNEL_CMP1, &CMP_InitParaStruct);
    /* Turn on switch between CMP1 and DAC */
    CMP_Switch_Enable(ENABLE);
    /* Enable CMP1 */
    CMP_Enable(CMP_CHANNEL_CMP1, ENABLE);

    while(1);
}
Пример #5
0
/******************************************************************************
**   Main Function  main()
******************************************************************************/
int main (void)
{
  uint32_t i;

  //SystemInit();

  /* Set port 1_0 to output */
  LPC_GPIO1->DIR |= 1 << 0;     
  LPC_GPIO1->SET |= 1 << 0;
  /* Set port 1_1 to output */
  LPC_GPIO1->DIR |= 1 << 1;
  LPC_GPIO1->SET |= 1 << 1;
  /* Set port 1_2 to output */
  LPC_GPIO1->DIR |= 1 << 2;
  LPC_GPIO1->SET |= 1 << 2;

  CMP_Init();           

  CMP_CurrentSrcControl( POWERUP );            // Current Source powered


  CMP_BangapControl( POWERUP );                // Band Gap powered
    


  CMP_TempSenControl( ENABLE, POWERUP );       // Temp Sensor enabled, powered

  for (i = 0; i < 0x80; i++);                    // wait for comparators stablized
 
  CMP_SelectInput( 1, POWERUP, CMP_VP, 1 );    // CMP1, powered, VP -> CMP1_IN[2]
    
  CMP_SelectInput( 1, POWERUP, CMP_VM, 2 );    // CMP1, powered, VP -> CMP1_IN[1]
  CMP_SetHysteresis( 1, 0 );                   // CMP1, hysteresis : none
    
  CMP_SetOutput( 1, ENABLE, ASYNC );           // CMP1, enabled, async
    for (i = 0; i < 0x80; i++);                  // wait for comparators stablized

    
    if (CMP_GetOutputStatus(1))
    {
      LPC_GPIO1->SET |= 1 << 1;
    }
    else
    {
      LPC_GPIO1->CLR |= 1 << 1;
    }
        

    
    for (i = 0; i < 0x80; i++);                  // wait for comparators stablized
        
  CMP_SelectInput( 1, POWERUP, CMP_VP, 2 );    // CMP1, powered, VP -> CMP1_IN[2]
            
        for (i = 0; i < 0x80; i++);                  // wait for comparators stablized
        
  CMP_SelectInput( 1, POWERUP, CMP_VM, 1 );    // CMP1, powered, VP -> CMP1_IN[1]
  CMP_SetHysteresis( 1, 0 );                   // CMP1, hysteresis : none
  CMP_SetOutput( 1, ENABLE, ASYNC );           // CMP1, enabled, async
 for (i = 0; i < 0x80; i++);                     // wait for comparators stablized

        
    if (CMP_GetOutputStatus(1))
    {
      LPC_GPIO1->SET |= 1 << 1;
    }
    else
    {
      LPC_GPIO1->CLR |= 1 << 1;
    }

    while(1);   
        
        

  }