COMP.c

/**

******************************************************************************

* File Name : COMP.c

* Description : This file provides code for the configuration

* of the COMP instances.

******************************************************************************


*

******************************************************************************

*/


/* Includes ------------------------------------------------------------------*/

#include "comp.h"


/* USER CODE BEGIN 0 */

//hcomp2.Init.Mode =COMP_MODE_MEDIUMSPEED ; //COMP_MODE_MEDIUMSPEED COMP_MODE_HIGHSPEED

// hcomp2.Init.HYSTERESIS = COMP_HYSTERESIS_HIGH;

/* USER CODE END 0 */


COMP_HandleTypeDef hcomp2;

COMP_HandleTypeDef hcomp4;


/* COMP2 init function */

void MX_COMP2_Init(void)

{


hcomp2.Instance = COMP2;

hcomp2.Init.InvertingInput = COMP_INVERTINGINPUT_VREFINT;

hcomp2.Init.NonInvertingInput = COMP_NONINVERTINGINPUT_IO1;

hcomp2.Init.Output = COMP_OUTPUT_NONE;

hcomp2.Init.OutputPol = COMP_OUTPUTPOL_NONINVERTED;

hcomp2.Init.BlankingSrce = COMP_BLANKINGSRCE_NONE;

hcomp2.Init.TriggerMode = COMP_TRIGGERMODE_IT_RISING;

// hcomp2.Init.Mode =COMP_MODE_MEDIUMSPEED ; //COMP_MODE_MEDIUMSPEED COMP_MODE_HIGHSPEED

// hcomp2.Init.HYSTERESIS = COMP_HYSTERESIS_HIGH;

if (HAL_COMP_Init(&hcomp2) != HAL_OK)

{

Error_Handler();

}


}

/* COMP4 init function */

void MX_COMP4_Init(void)

{


hcomp4.Instance = COMP4;

hcomp4.Init.InvertingInput = COMP_INVERTINGINPUT_VREFINT;

hcomp4.Init.NonInvertingInput = COMP_NONINVERTINGINPUT_IO1;

hcomp4.Init.Output = COMP_OUTPUT_NONE;

hcomp4.Init.OutputPol = COMP_OUTPUTPOL_NONINVERTED;

hcomp4.Init.BlankingSrce = COMP_BLANKINGSRCE_NONE;

hcomp4.Init.TriggerMode = COMP_TRIGGERMODE_IT_RISING;

if (HAL_COMP_Init(&hcomp4) != HAL_OK)

{

Error_Handler();

}


}


void HAL_COMP_MspInit(COMP_HandleTypeDef* compHandle)

{


GPIO_InitTypeDef GPIO_InitStruct = {0};

if(compHandle->Instance==COMP2)

{

/* USER CODE BEGIN COMP2_MspInit 0 */


/* USER CODE END COMP2_MspInit 0 */


__HAL_RCC_GPIOA_CLK_ENABLE();

/**COMP2 GPIO Configuration

PA7 ------> COMP2_INP

*/

GPIO_InitStruct.Pin = GPIO_PIN_7;

GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;

GPIO_InitStruct.Pull = GPIO_NOPULL;

HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);


/* COMP2 interrupt Init */

HAL_NVIC_SetPriority(COMP2_IRQn, 0, 0);

HAL_NVIC_EnableIRQ(COMP2_IRQn);

/* USER CODE BEGIN COMP2_MspInit 1 */


/* USER CODE END COMP2_MspInit 1 */

}

else if(compHandle->Instance==COMP4)

{

/* USER CODE BEGIN COMP4_MspInit 0 */


/* USER CODE END COMP4_MspInit 0 */


__HAL_RCC_GPIOB_CLK_ENABLE();

/**COMP4 GPIO Configuration

PB0 ------> COMP4_INP

*/

GPIO_InitStruct.Pin = GPIO_PIN_0;

GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;

GPIO_InitStruct.Pull = GPIO_NOPULL;

HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);


/* COMP4 interrupt Init */

HAL_NVIC_SetPriority(COMP4_6_IRQn, 0, 0);

HAL_NVIC_EnableIRQ(COMP4_6_IRQn);

/* USER CODE BEGIN COMP4_MspInit 1 */


/* USER CODE END COMP4_MspInit 1 */

}

}


void HAL_COMP_MspDeInit(COMP_HandleTypeDef* compHandle)

{


if(compHandle->Instance==COMP2)

{

/* USER CODE BEGIN COMP2_MspDeInit 0 */


/* USER CODE END COMP2_MspDeInit 0 */


/**COMP2 GPIO Configuration

PA7 ------> COMP2_INP

*/

HAL_GPIO_DeInit(GPIOA, GPIO_PIN_7);


/* COMP2 interrupt Deinit */

HAL_NVIC_DisableIRQ(COMP2_IRQn);

/* USER CODE BEGIN COMP2_MspDeInit 1 */


/* USER CODE END COMP2_MspDeInit 1 */

}

else if(compHandle->Instance==COMP4)

{

/* USER CODE BEGIN COMP4_MspDeInit 0 */


/* USER CODE END COMP4_MspDeInit 0 */


/**COMP4 GPIO Configuration

PB0 ------> COMP4_INP

*/

HAL_GPIO_DeInit(GPIOB, GPIO_PIN_0);


/* COMP4 interrupt Deinit */

HAL_NVIC_DisableIRQ(COMP4_6_IRQn);

/* USER CODE BEGIN COMP4_MspDeInit 1 */


/* USER CODE END COMP4_MspDeInit 1 */

}

}


/* USER CODE BEGIN 1 */


/* USER CODE END 1 */


/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/