PDMA测试:
AD转换单次模式时:
源地址sPDMA.sSrcCtrl.u32Addr = ADC_BASE+0x04;也就是ADC1通道,所以选择ADC1通道转换,结果正确。
AD转换单周期扫描模式时:
源地址sPDMA.sSrcCtrl.u32Addr = ADC_BASE+0x04;也就是ADC1通道,所以选择ADC0-ADC7通道转换,得到的转换结果错误(相当于ADC0转换结束PDMA就完成了一次传输),如果选择ADC1-ADC7通道转换,得到的转换结果正确。
AD转换连续扫描模式时:
1.源地址sPDMA.sSrcCtrl.u32Addr = ADC_BASE+0x04;也就是ADC1通道,如果选择读取8个ADC1转换结果,如果选择ADC0-ADC7通道转换,结果得到第一个数值不对,后面7个对(相当于ADC0转换结束PDMA就完成了一次传输),如果选择ADC1-ADC7通道转换,结果正确,8个都是正确的转换结果。
2.源地址sPDMA.sSrcCtrl.u32Addr = ADC_BASE+0x08;也就是ADC2通道,如果选择读取8个ADC2转换结果,如果选择ADC0-ADC7通道转换,结果得到前2个数值不对,后面6个对(相当于ADC0,ADC1转换结束PDMA就完成了两次传输),如果选择ADC2-ADC7通道转换,结果正确,8个都是正确的转换结果。
不知道是不是我哪里设置有问题还是。。。。 |