|
在做ADC-DMA转电压值时,输出值存储在uhADCxConvertedValue中,长度为256,但是打印出来的值每个通道的前128个有数值,但是后128个数据都为0,很奇怪,不知道为什么? #define NB 256 //每个通道长度为256 #define CHN 2 //两个通道 #define ADCNB NB*CHN u16 uhADCxConvertedValue[NB][CHN]; HAL_ADC_Start_DMA(&hadc1,(uint32_t*)&uhADCxConvertedValue, ADCNB); for(int a=0;a<NB;a++){ printf("uhADCxConvertedValue[%d][0]= %d\r\n",a,uhADCxConvertedValue[a][0]); //通道1的数据 printf("uhADCxConvertedValue[%d][1]= %d\r\n",a,uhADCxConvertedValue[a][1]); //通道2的数据 } |
微信公众号
手机版
评分
查看全部评分
评分
查看全部评分
“从程序看,DMA会进两次中断,第一次是一半传输完,第二次是全部传输完”这句话怎么理解,怎么看出会两次中断还要读两次才完整?
评分
查看全部评分
哦,大概清楚了,谢谢