// PB0 : OPAMP_VINP
// PB1 : OPAMP_VINM
// PA6 : OPAMP_VOUT
static void OPAMP_GPIO_Config(void)
{
GPIO_InitType GPIO_InitStructure;
RCC_EnableAPB2PeriphClk(RCC_APB2_PERIPH_GPIOA, ENABLE);
RCC_EnableAPB2PeriphClk(RCC_APB2_PERIPH_GPIOB, ENABLE);
RCC_EnableAPB2PeriphClk(RCC_APB2_PERIPH_AFIO, ENABLE);
OPAMP_SetVpSel(OPAMP_CS_VPSEL_PB0);
OPAMP_SetVmSel(OPAMP_CS_VMSEL_PB1);
GPIO_InitStruct(&GPIO_InitStructure);
GPIO_InitStructure.GPIO_Alternate = GPIO_NO_AF;
GPIO_InitStructure.GPIO_Speed = GPIO_SPEED_HIGH;
GPIO_InitStructure.GPIO_Current = GPIO_DC_LOW;
GPIO_InitStructure.GPIO_Pull = GPIO_NO_PULL;
GPIO_InitStructure.GPIO_Mode = GPIO_MODE_ANALOG;
GPIO_InitStructure.Pin = GPIO_PIN_0;
GPIO_InitPeripheral(GPIOB, &GPIO_InitStructure);
GPIO_InitStructure.Pin = GPIO_PIN_1;
GPIO_InitPeripheral(GPIOB, &GPIO_InitStructure);
GPIO_InitStructure.Pin = GPIO_PIN_6;
GPIO_InitPeripheral(GPIOA, &GPIO_InitStructure);
}
static void OPAMP_Channel_Config(void)
{
OPAMP_InitType OPAMP_Initial;
RCC_EnableAPB1PeriphClk(RCC_APB1_PERIPH_OPAMP, ENABLE);
OPAMP_DeInit();
OPAMP_StructInit(&OPAMP_Initial);
OPAMP_Initial.Mod = OPAMP_CS_EXT_OPAMP;
OPAMP_Initial.Gain = OPAMP_CS_PGA_GAIN_8;
OPAMP_Initial.TimeAutoMuxEn = DISABLE;
OPAMP_Init(&OPAMP_Initial);
OPAMP_Enable(ENABLE);
}
void OPAMP_Config(void)
{
OPAMP_GPIO_Config();
OPAMP_Channel_Config();
}
//请问有人能帮忙看看这OPAMP程序是缺失哪部分配置不
|