这段时间在某一技术群水群时,群友提出了一个问题是:他的单片机引脚翻转后需要采集翻转后的电压为什么采集不准,需要等待500us之后才可以采集成功。
\ 对此,另有群友提出可能是ADC转换时间的原因,但是这个原因不太可能,理由是:一般ADC采集已经考虑了其ADC采集时间,因此在调用ADC读取函数的同时已经对其进行了延时。其次是500us的时间对于ADC的转换速度来说已经是绰绰有余了,因此不太可能是ADC的转换时间原因。
对此,我提出的两个观点是:1.可能是由于配置的上下拉电阻太大,导致电阻与寄生电容构成的充放电回路的时间常数过大,导致方波的下降沿时间过长。但是这一可能性也不是很大,因为从示波器上看出这个波形还是非常工整漂亮的,可以认为是理想方波。2.第二个可能是由于一般ADC前总是要接一个跟随器,其硬件电路上可能使用的跟随器性能不够,无法快速的适应电压的变换从而导致当IO口翻转后,跟随器无法及时的翻转电压,导致需要延时一段时间后等待跟随器稳定,进而可以准确采集电压。

后来群友去检测跟随器输出的信号之后,发现当IO口翻转后,运算放大器输出的电压并没有及时的变换,而是需要等待一段时间后才能进行稳定。
那么如何解决这个问题呢?
这里就不得不提运算放大器的两个重要指标:压摆率
压摆率(SR slew-rate-limit)
顾名思义:压~摆~率,就是能“压住电压的速率”,单位通常是V/us,其定义为输入为阶跃信号时闭环放大器的输出电压时间变化率的平均值。简而言之就是运算放大器的响应速度。
压摆率高的运算放大器,其响应速度也很快,所以许多高频电路也需要选用压摆率高的运算放大器,也就是我们所说的高速运放,而前面群友遇到的问题也就是运算放大器的压摆率不够导致的。
例如LM358的压摆率为0.5V/us

而高速运算放大器AD8066则高达180V/us
因此如果电路涉及到高频或者需要高频跟随器等更快的响应速度,即需要选择合适的高速运算放大器来搭建电路。
仿真
可以看到在Multisim中,LM358的压摆率为5V/16.8us =0.297V/us
(具体应以实际测量为主)
如何去选择压摆率呢?
有一个非常重要的公式:SR = 2pi * f * Vplc
其中f是工作频率,Vplc是信号的幅值。例如我们的工作频率是100kHZ,信号的幅度最终是100mV,那么压摆率就应该满足SR>2*3.14*100000*0.1 = 62800V/s ,也就是0.062V/us.


登录 或 注册 后才可以进行评论哦!
还没有评论,抢个沙发!