问答

汇集网友智慧,解决技术难题

21ic问答首页 - TAG
  • APM32F003F4P6休眠后起来重新初始化ADC,无法进行AD转换

    [color=rgb(17, 17, 17)][backcolor=rgb(255, 255, 255)][font=system-ui, -apple-system, BlinkMacSystemFont, "][size=14.4px]void ADC_Init(void)[/size][/font][/backcolor][/color][align=left][color=rgb(17, 17, 17)][backcolor=rgb(255, 255, 255)][font=system-ui, -apple-system, BlinkMacSystemFont, "][size=14.4px]{ ADC_Config_T adcConfig; GPIO_Config_T gpioConfig;[/size][/font][/backcolor][/color][/align][color=rgb(227, 98, 9)]ADC_Reset[/color]();[color=rgb(106, 115, 125)]/* ADC GPIO configuration */[/color][color=rgb(106, 115, 125)]//pd5,pd6 as diff ch3[/color]gpioConfig.pin = GPIO_PIN_5|GPIO_PIN_6;[color=rgb(106, 115, 125)]//now use and debug[/color]gpioConfig.mode = GPIO_MODE_IN_FLOATING;gpioConfig.speed = GPIO_SPEED_10MHz;gpioConfig.intEn=GPIO_EINT_DISABLE;[color=rgb(227, 98, 9)]GPIO_Config[/color](GPIOD, &gpioConfig);[color=rgb(227, 98, 9)]ADC_ConfigDivider[/color](ADC_DIV_2);[color=rgb(106, 115, 125)]//ADC_SetMode(ADC_MODE_SINGLE_END);[/color][color=rgb(106, 115, 125)]/* ADC configuration */[/color][color=rgb(227, 98, 9)]ADC_ConfigStructInit[/color](&adcConfig);[color=rgb(227, 98, 9)]ADC_Config[/color](&adcConfig);[align=left][color=rgb(17, 17, 17)][backcolor=rgb(255, 255, 255)][font=system-ui, -apple-system, BlinkMacSystemFont, "][size=14.4px]// ADC_EnableInterrupt(ADC_INT_CC); ADC_ConfigConversionMode(ADC_CONV_MODE_CONTINUOUS); [color=rgb(25, 47, 97)]#if[/color] 1 ADC_SetMode(ADC_MODE_DIFF_INPUT); ADC_SetDiffInputChannel(ADC_DIFF_CHANNEL_VAIN2); [color=rgb(25, 47, 97)]#else[/color] ADC_SetChannel(ADC_CHANNEL_5); [color=rgb(25, 47, 97)]#endif[/color][/size][/font][/backcolor][/color][/align][align=left][color=rgb(17, 17, 17)][backcolor=rgb(255, 255, 255)][font=system-ui, -apple-system, BlinkMacSystemFont, "][size=14.4px]//[/size][/font][/backcolor][/color][/align][align=left][color=rgb(17, 17, 17)][backcolor=rgb(255, 255, 255)][font=system-ui, -apple-system, BlinkMacSystemFont, "][size=14.4px]// NVIC_EnableIRQRequest(ADC_IRQn, 0X01); ADC_Enable(); ADC_StartConversion(); //fg_detect_start=TRUE; START_TIMER(w_delay_start, TIMER_1MS_3S); }[/size][/font][/backcolor][/color][/align][align=left][color=rgb(17, 17, 17)][backcolor=rgb(255, 255, 255)][font=system-ui, -apple-system, BlinkMacSystemFont, "][size=14.4px]上单初始化用这个函数,休眠后起来也用这个函数初始化,发现 if(ADC_ReadStatusFlag(ADC_FLAG_CC) == SET) 这个一直不成立,试过单端模式,也是一样的情况[/size][/font][/backcolor][/color][/align][align=left][color=rgb(17, 17, 17)][backcolor=rgb(255, 255, 255)][font=system-ui, -apple-system, BlinkMacSystemFont, "][size=14.4px]重新初始化也不行,查看寄存器,配置正常,但是CCF不能被置位,起来后会开启ADC clock[/size][/font][/backcolor][/color][/align]

    ADC AD转换 IO APM32F003 F4 ONFI

    256浏览量 6回复量 关注量