[综合信息]

HC32L ADC连续切换通道采样异常---原理分析以及解决方案

[复制链接]
2393|15
手机看帖
扫描二维码
随时随地手机跟帖
liaotian001|  楼主 | 2019-11-5 14:56 | 显示全部楼层 |阅读模式
最近有客户反馈HC32L13x,在连续切换通道采样时,发现采样数据异常,------ 原理分析以及解决方案

现象:
每次放电后再采样,当P35采样完成后增加500us的延时,则在P35上可见一个峰值为60mv的快速上升后放电的波形。

664955dc11c5d38ea0.png


原理分析:SAR ADC的前端电路要求的简单说明

本文简单说明SAR ADC对其输入信号的输出阻抗的要求。

图1为内部缓冲跟随器关闭时,外部输入和芯片内部ADC输入的连接示意图。外部信号源自己有输出阻抗RAIN,线路的寄生电容Cparastic。

474455dc11c99c71bd.png

图1 内部缓冲跟随器关闭时外部输入和芯片内部ADC输入的连接示意图

如果靠信号源VAIN供电,寄生电容Cparastic越小越好,其和ADC的内部采样电容的总电容Ctotal=Cparastic+CADC,图1里信号通路的总电阻Rtotal=RAIN+RADC,图1里的RC时间常数为τ=Ctotal*Rtotal,对12位SAR ADC来说,采样时间需要10个RC时间常数。

对1MSPS典型应用来说,ADC的时钟频率FADC为24MHz,其中采样有8个ADC时钟周期(可以通过寄存器设置采样消耗的ADC时钟周期数),采样时间为8/FADC=8/24us=0.333us。10个RC时间常数需要小于采样时间,即10τ=10* Ctotal*Rtotal <0.33us(这里寄生电容Cparastic假设为0,CADC为20pF)得到Rtotal <1.65kΩ,由于RADC在电源电压为3.3V,工艺为typical情况下为0.65kΩ(RADC随电源电压,工艺条件而变化),故RAIN需要满足的条件为RAIN<1kΩ。

改变MUX通道选择后由于ADC的电容需要重新充放电来采样,对前端的要求需要满足前述条件,否则切换通道时ADC的转换值就会不准。


图2为内部缓冲跟随器打开时,外部输入和芯片内部ADC输入的连接关系示意图。

40095dc11cb01575c.png


图2 内部缓冲跟随器打开时外部输入和芯片内部ADC输入的连接关系示意图

图2中ADC的采样电容被内部缓冲跟随器隔离开了,输入信号通路上的电容Ctotal=Cparastic +CBUFFER,输入信号通路的总电阻Rtotal=RAIN+RADC,RC时间常数为τ=Ctotal*Rtotal,对12位SAR ADC来说,采样时间需要10个RC时间常数。

内部缓冲跟随器打开的条件是ADC的转换率需要小于或等于200kSPS。对200kSPS典型应用来说,ADC的时钟频率FADC为4.8MHz,其中采样有8个ADC时钟周期(可以通过寄存器设置采样消耗的ADC时钟周期数),采样时间为8/FADC=8/4.8us=1.666us。10个RC时间常数需要小于采样时间,即10τ=10* Ctotal*Rtotal <1.666us(这里寄生电容Cparastic假设为0, CBUFFER为1pF,Ctotal为1pF)得到Rtotal <166.66kΩ,由于RADC在电源电压为3.3V,工艺为typical情况下为0.65kΩ(RADC随电源电压,工艺条件而变化),故RAIN需要满足的条件为RAIN<166kΩ。

现在分析一下转换通道MUX时的情况,假设通道1的输入电压为U1,通道2的输入电压为U2,芯片内部电容为Cin(不开内部缓冲跟随器时为CADC,开内部缓冲跟随器时为CBUFFER),外部电容为Cparastic,在由通道1转换为通道2前,Cin上的电压为U1,通道2上的Cparastic的电压为U2。转换通道为2后,Cparastic上的电压脉冲为(Cin*U1+Cparastic*U2)/(Cin+Cparastic)-U2=Cin*(U1-U2)/(Cin+Cparastic)。根据公式可知,在相同Cparastic情况下,不同通道间的电压越大,脉冲越大。Cin越大(不开内部缓冲跟随器时Cin大),脉冲越大。在固定通道间电压及内部电容Cin时,要减小换通道时的脉冲,则需要增大Cparastic。通过增大Cparastic而减小换通道时产生的脉冲时需要注意此时信号通路RC常数往往比较大,可能不满足10个RC常数小于采样时间的规定,此时如果要使ADC准确采样,则需要使Cparastic上的电压脉冲Cin*(U1-U2)/ (Cin+Cparastic)小于一个LSB,根据公式可知此时Cparastic 需要远远大于Cin,如果Cin是pF级别,则Cparastic需要至少nF级别。

通过上一段内容可知,打开输入缓冲跟随器后,能降低输入信号面对的等效输入电容(隔离了ADC的采样电容),改变MUX通道选择后由于只有CBUFFER才需要重新由输入信号来驱动,故打开输入缓冲跟随器后再改变通道时,对输入信号的驱动能力要求更低,或者说由于芯片内部电容重新充放电而对输入信号造成的干扰更小。


使用特权

评论回复
liaotian001|  楼主 | 2019-11-5 14:58 | 显示全部楼层
328705dc11d61af86e.png
600045dc11d7b2a36e.png


使用特权

评论回复
liaotian001|  楼主 | 2019-11-5 14:58 | 显示全部楼层
819955dc11da2e24a6.png

使用特权

评论回复
liaotian001|  楼主 | 2019-11-5 15:03 | 显示全部楼层
原因:
不同通道,不同的模拟信号输入,有不同的寄生电荷,切换通道时,需要考虑到上一通道的电荷迁移对于下一通道采样的影响。

解决方案:
(1)信号源输出阻抗要小,充放电时间短,切换通道之后可快速采样。
(2)或者计算出不同的充放电时间,bypss这个充放电时间,再去进行ADC采样。
(3)HC32L13x 系列都内建了输入Buffer,打开输入buffer,可以降低电荷从不同通道之间迁移的ADC对采样时间的影响。

使用特权

评论回复
caizhiwei| | 2019-11-21 09:36 | 显示全部楼层
HC32L13x 系列都内建了输入Buffer,打开输入buffer,可以降低电荷从不同通道之间迁移的ADC对采样时间的影响

怎么打开呀?请教

使用特权

评论回复
liaotian001|  楼主 | 2019-11-26 22:08 | 显示全部楼层
caizhiwei 发表于 2019-11-21 09:36
HC32L13x 系列都内建了输入Buffer,打开输入buffer,可以降低电荷从不同通道之间迁移的ADC对采样时间的影响 ...

Spec上面有写,如何打开输入buffer

使用特权

评论回复
aoyi| | 2019-12-4 08:35 | 显示全部楼层
非常感谢楼主分享

使用特权

评论回复
drer| | 2019-12-4 08:43 | 显示全部楼层
非常感谢楼主分享

使用特权

评论回复
gwsan| | 2019-12-4 08:52 | 显示全部楼层
非常感谢楼主分享

使用特权

评论回复
kxsi| | 2019-12-4 09:03 | 显示全部楼层
非常不错的资料

使用特权

评论回复
nawu| | 2019-12-4 09:10 | 显示全部楼层
非常不错的资料

使用特权

评论回复
qcliu| | 2019-12-4 09:20 | 显示全部楼层
感谢楼主分享

使用特权

评论回复
tfqi| | 2019-12-4 09:35 | 显示全部楼层
感谢楼主分享

使用特权

评论回复
wiba| | 2019-12-4 10:09 | 显示全部楼层
感谢楼主分享

使用特权

评论回复
zljiu| | 2019-12-4 10:24 | 显示全部楼层
非常感谢分享

使用特权

评论回复
coshi| | 2019-12-4 10:54 | 显示全部楼层
非常感谢楼主分享

使用特权

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

本版积分规则

5

主题

184

帖子

2

粉丝