[STM32F3]

请教各位大神,关于STM32F301 的ADC差分输入采样配置

[复制链接]
3517|1
手机看帖
扫描二维码
随时随地手机跟帖
xiaoyu9632|  楼主 | 2014-11-19 13:45 | 显示全部楼层 |阅读模式
关于差分模式的配置,datasheet里面介绍的很简单。我按照要求去做结果似乎和单端模式一个样,不知道是什么原因,请各位大神指教。
主要涉及到几个方面:
step 1 :ADC1->CR |= ADCALDIF;     //1: Writing ADCAL will launch a calibration in Differential inputs Mode.
。。。

step2:ADC1->DIFSEL |= 0x02;   //DIFSEL[i] = 1: ADC analog input channel-i is configured in differential mode
...

step3:ADC1->JSQR = (3 << 0)       //2 CONVERSIONS
                | (8 << 2)       //JEXTSEL: External trigger selection for injected group (JEXT8 = TIM1_TRGO2)
                | (1 << 6)       //01: Hardware trigger detection on the rising edge
                | (2 << 8);       //JSQ1: ADC_IN1

然后我会在JDR中取值,但是发现这个值和单端配置ADC模式得出的值是一样的,请问各位大神,我上面的几个关于ADC differential mode的配置有什么问题吗?

补充:
我的ADCIN1 和ADCIN2两个输入端分别是一个电路的两路输出,一路电压输入在电源电压不变的情况下基本恒定为电源电压的一半,另一路输入会在这个电源电压一半的附近波动,所以我的目标是通过差分模式测量出两个输入电压之间的差异。按照我的电路设计应该得出的是这两个电压的差值,但是目前得出值居然还是电源电压值得一半。这是单端的结果,所以我怀疑我是不是软件配置错误,不知各位有没有这方面的经验。
xiaoyu9632|  楼主 | 2014-11-20 15:47 | 显示全部楼层
谢谢各位,我已经找到原因,我的配置没错。是我对它的结果产生了误解

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:漂泊的小船

23

主题

159

帖子

0

粉丝