光敏电阻的阻值会随光照强度变化而变化,进而影响引脚Light_AD的输出电压值。我们可以使用STM8的PD2引脚来采集Light_AD的电压模拟量,并将其转为数字量。当采集到的AD值大于设定的阈值(在本程序中为700)时,将PD3引脚(即Light_IO引脚)置低,以表明有光照。
传感器所使用的光敏电阻在暗处的电阻约为2M欧姆,而在亮处的电阻约为10K欧姆。由此我们可以计算出:在黑暗条件下,Light_AD的电压值为3.3V * 2000K / (2000K + 10K) = 3.28V。而在光照条件下,Light_AD的电压值则为3.3V * 10K / (10K + 10K) = 1.65V。
STM8单片机内部配有10位AD转换器,参考电压为供电电压3.3V。根据上述计算结果,我们选定1.65V(需要根据实际测量结果进行调整)作为临界值。当Light_AD为1.65V时,AD读数为1.65 / 3.3 * 1024 = 512。因此,当AD读数大于512时表示无光照,反之则表示有光照,并点亮LED3作为指示。
暂无评论