精品剧情v国产在线观看 - 亚洲人成自拍网站在线观看 - 99久久无码国产孕妇精品 - 欧美XXXX性欧美XX000 - 国产精品视频色尤物yw

固話:021-31007158 熱線:15221679567 客服 :
手機  |   地圖  |   RSS

單片機

STM32F0多路ADC采樣中的BUG和解決方案

分類:單片機 發(fā)布:2018-05-14 22:33:31 瀏覽:667次 Tag:

uint32_t ADC_Detect(uint32_t  AD_Channel)  

{  

  

    hadc.Instance->CHSELR = 0;  

    ADC_ChannelConfTypeDef sConfig;  

    sConfig.Channel = AD_Channel;  

        sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;  

        sConfig.SamplingTime = ADC_SAMPLETIME_1CYCLE_5;  

        HAL_ADC_ConfigChannel(&hadc, &sConfig);  

    

    uint32_t ADC_result;  

    /*ADC START*/  

        if(HAL_ADC_Start(&hadc)!=HAL_OK)  

    {  

        while(1)  

        {  

        }  

    }  

    /*Wait for ADC completed*/  

    if (HAL_ADC_PollForConversion(&hadc, 10) != HAL_OK)  

  {  

     while(1)  

      {  

      }  

  }  

  else  

  {  

    /*Get the converted value of regular channel*/  

    ADC_result = HAL_ADC_GetValue(&hadc);  

        HAL_ADC_Stop(&hadc);  

        //ADC_result =((ADC_result*3300)>>8);  

        return ADC_result;  

  }  

}  

使用CUBE生產(chǎn)的ADC無法配置多路采樣,多路采樣采集值不對,研究后發(fā)現(xiàn)是底層函數(shù)沒有將CHANNEL清零導致的


只需要在函數(shù)中增加 hadc.Instance->CHSELR = 0; 手動清0 寄存器即可。 


相關文章
在線留言聯(lián)系我們
電話:021-31007158
傳真:021-31007158
聯(lián)系人:王錦
24H熱線:15221679567
聯(lián)系QQ: 1196661789
郵箱:1196661789@qq.com
網(wǎng)址:www.szchanghongsheng.com.cn
QQ在線咨詢
銷售電話:
15221679567
021-31007158
1196661789