一、硬件设计
简单介绍
1、采用灵敏型光敏电阻传感器
2、比较器输出,信号干净,波形好,驱动能力强,超过15mA;
3、配可调电位器,可调节检测光线亮度;
4、工作电压3.3V-5V;
5、输出形式:DO数字开关量输出(0和1)和AO模拟电压输出;
6、使用宽电压LM393比较器。
AO引脚为adc采集引脚,通常我们只用这个引脚来采集光敏传感器的数据,VCC接3V3,GND接地。
二、软件设计
光敏传感器的AO引脚接到了stm32的PB0,对应的是ADC1的通道8,照下图进行配置即可。
以下为adc_light.c的代码,此函数用于读取adc的电压值,再转换为对应的光敏强度。
#include "adc_light.h"
extern ADC_HandleTypeDef hadc1;
float Get_Light_Value(void)
{
float Light_Value;
uint16_t ADC_Value, i;
HAL_ADC_Start(&hadc1);
HAL_ADC_PollForConversion(&hadc1, 10);
for(i=0; i<30; i++)
ADC_Value += HAL_ADC_GetValue(&hadc1);
HAL