stm32f051c8的模拟比较器配置不成功

2019-08-21 12:34发布

最近在使用stm32f051,在配置模拟比较器时很奇怪,无法配置反向输入端
void Comp_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
COMP_InitTypeDef COMP_InitStructure;

RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG, ENABLE);

GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_1 | GPIO_Pin_5;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
GPIO_Init(GPIOA, &GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_0;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource0, GPIO_AF_7);

COMP_InitStructure.COMP_InvertingInput = COMP_InvertingInput_IO;
COMP_InitStructure.COMP_Output = COMP_Output_None;
COMP_InitStructure.COMP_OutputPol = COMP_OutputPol_NonInverted;
COMP_InitStructure.COMP_Hysteresis = COMP_Hysteresis_No;
COMP_InitStructure.COMP_Mode = COMP_Mode_MediumSpeed;

COMP_Init(COMP_Selection_COMP1 , &COMP_InitStructure);

COMP_Cmd(COMP_Selection_COMP1 , ENABLE);
}
想把PA1 PA5设置成比较器的输入
这样配置后发现只有PA1口设置成了比较器的一个输入端,但另一个输入端不知道是哪了,PA1接高电平PA0输出高电平,PA1接地PA0输出低电平,另一个端口完全不知道被配置到哪去了,PA5接高接低输出完全没反应
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。