STM32F051 Intialización del comparador 2

0

Acabo de comenzar a usar el STM32F051 para mi proyecto y me gustaría aprovechar del comparador construido dentro del chip.

He estado tratando de usar COMP 2 en una configuración de comparador simple, con

  • PA3 como la no inversión
  • PA2 como la inversión
  • PA7 como salida (no invertida, velocidad completa, sin histéresis, sin modo de ventana).

Como conecto mi referencia a 0 V, estoy esperando un 1 lógico de PA7 si el voltaje es mayor que 0 en PA2 . Aquí está el ejemplo de mi código:

RCC_AHBENR &= 0x00000000; //Resetting Timer for Pin Inputs
RCC_AHBENR |= 0x00020000; //Initializing Inputs for pin A;

GPIOA_AFRL &= 0x00000000; //Resetting
GPIOA_AFRH &= 0x00000000; //Resetting
GPIOA_MODER &= 0x00000000; //Resetting Input, see page 151 of RM0091
COMP_CSR &= 0x00000000;    /*!< Set COMP_CSR register to reset value */

COMP_CSR |= 0x00610000;    //All bits set to zero except (16,22,21), have to set PA3 and PA2 to analog, PA7 as alternate function
GPIOA_MODER|= 0x000080F0;  //PA7 in Alternate Mode, PA3 PA2 in analog mode
GPIOA_AFRH |= 0x00000000;  //No Alternate Function for High
GPIOA_AFRL |= 0x70000000;  //AF7 for PA7 (COMP2OUT)

Hasta ahora, independientemente de la entrada, la salida en PA7 sigue siendo cero. ¿Tengo que inicializar un temporizador (estaba leyendo algo sobre PCLK)? Gracias.

    
pregunta Rudy Montoya

0 respuestas

Lea otras preguntas en las etiquetas