之前的文章讨论了如何在 LCD 上显示电流和电压测量值以及如何执行可靠的模数转换。现在,我们将继续该项目,在面包板上构建环境光传感器电路,将电路的输出信号数字化,并解释数字化测量结果。
我们将使用的光敏元件是SHARP制造的GA1A2S100线性输出环境光传感器。这种三端器件不是简单的光电二极管或光电晶体管。相反,它包含三个光电二极管和调节电路,如下所示:
终结果是一种对光水平和光谱成分的敏感性与人眼相似的设备。换句话说,该传感器的输出可以相当准确地指示环境对人类来说有多亮或多暗。
传感器产生与环境光水平成正比的输出电流:
我们需要让该电流通过负载电阻,以生成可由 EFM8 的 ADC 测量的电压,因此个设计任务是调整负载电阻的大小。传感器的数据表规定,输出引脚上的电压不应超过 V CC - 1 V;我们正在使用VCC = 3.3 V,因此我们需要选择一个电阻,当传感器暴露在预期光照水平时,该电阻将产生约 2.3 V 的电压。如输出电流与照度关系图所示,传感器的可用亮度高达 10,000 勒克斯。然而,10,000 勒克斯相当于在阴天的室外,(有趣的是)它比任何正常的室内照度要亮得多。由于该项目旨在监测室内光照水平,因此我们假设照度为 1000 勒克斯(光线充足的办公室可能为 500 勒克斯)。从上图可以看出,1000 lux 相当于 500 μA,2.3 V 除以 500 μA 等于 4600 Ω。因此我们将选择一个标准的4.7 kΩ电阻来将传感器的输出电流转换为电压。
正如我们在上一篇文章中观察到的,ADC 的输入阻抗可能会与电路相互作用,从而导致错误的测量。该项目没有出现上一个项目中存在的两个问题:外部电路不包含大量串联电阻,并且无需更改多路复用器设置,因为我们仅使用一个模拟输入。因此,稳定时间不是该项目的主要问题。尽管如此,我们仍然会包含一个运算放大器来缓冲传感器的输出,因为这是确保我们拥有一个可以快速为 ADC 采样电容器充电的低阻抗驱动器的简单方法。另一个好处是,通过电路中的运算放大器,我们可以轻松地加入额外的增益或低通滤波器,以抑制不需要的高频变化。不过,在这个项目中,我们不需要更多增益,我们将通过固件过滤测量结果,因此运算放大器被配置为单位增益缓冲器。此外,我们不必太担心运算放大器弊大于利,因为它的失调电压和噪声不会产生显着影响。整体电路如下: