windkiss 发表于 2014-5-7 11:04:13

ADC+DMA采集三通道AD值不对,代码如下,求大神解答!

#include "stm32f10x.h"
#define ADC1_DR_Address    ((u32)0x4001244C)
void TIM1_UP_IRQHandler(void)
{
 round1++;
 TIM_ClearITPendingBit(TIM1, TIM_IT_Update);
}
void TIM2_IRQHandler(void)
{
  TIM_ClearITPendingBit(TIM2, TIM_IT_Update);
  ADC_SoftwareStartConvCmd(ADC1,ENABLE);
//   while(!(ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC)));
                 
   while(!(DMA_GetFlagStatus(DMA1_FLAG_TC1)));
    adc_current=adc_value;
    adc_voltagea=adc_value;
    adc_voltageb=adc_value;
 //    while(!times);
//    while(!(times==3));

//  times=0;
   
     DMA_ClearFlag(DMA1_FLAG_TC1);
//   ADC_ClearFlag(ADC1, ADC_FLAG_EOC);
  i++;
           LED_on;
   if(i==7)
   {
   i=0;
   Max_cu=adc_current;
      Min_cu=adc_current;
      sum_cu=adc_current;
   Max_voa=adc_voltagea;
      Min_voa=adc_voltagea;
      sum_voa=adc_voltagea;
   Max_vob=adc_voltageb;
      Min_vob=adc_voltageb;
      sum_vob=adc_voltageb;
      for(i=1;iMax_cu) Max_cu=adc_current;
         if(adc_currentMax_voa) Max_voa=adc_voltagea;
         if(adc_voltageaMax_vob) Max_vob=adc_voltageb;
         if(adc_voltageb

windkiss 发表于 2014-5-7 11:05:27

RE:ADC+DMA采集三通道AD值不对,代码如下,求大神解答!

在改变对应AD引脚后,相同电平对应的AD值和没改变引脚前是不一样的,这是什么引起的啊!!!!
页: [1]
查看完整版本: ADC+DMA采集三通道AD值不对,代码如下,求大神解答!