
简介GL55系列光敏电阻规格书是深圳晶创和立科技官方提供的器件文档面向电子工程师、嵌入式开发者与硬件选型人员用于快速掌握光敏电阻的核心电气参数与测试环境可支撑光控开关、智能灯控、机器人传感等常见设计场景。压缩包内共1个PDF文件整包约321KB轻量可直接查阅。文档完整列出了GL5516、GL5528、GL5537、GL5539、GL5549五个型号的外形尺寸参数表覆盖耐压、最大功率、环境温度、中心波长、亮电阻、暗电阻、γ值及响应时间同时给出了亮电阻、暗电阻、γ值的定义与测试条件可直观对比各型号灵敏度差异为选型提供依据。此外还附有光谱峰值、阻值-光照对应图等工程参考信息便于按光照范围进行选型和光控电路设计。目前已有237人学习适合需要对比选型或理解光敏电阻特性的入门与中级开发者。1. 光敏电阻 GL5516 规格书从阻值档位判断电路阈值很多工程师拿到光敏电阻 GL5516 规格书后第一件事就是查“亮阻”一栏然后把数值抄进原理图板子回来却发现白天黑夜分辨不清才回头研究测试条件。GL5516(5-10) 里的 5-10在 JCHL晶创和立这类厂家的常见命名规则里代表 10Lux 照度下亮阻落在 5~10kΩ 这个分档不是任意光照下的阻值C10077 只是 BOM 物料编码只负责追溯批次不负责表达电气特性。这篇文章按规格书记载的参数把分压电路计算、ADC 量程换算和现场标定串起来适合硬件工程师和做环境光检测的嵌入式开发者对照自己的工程落地。2. 拆读 GL5516(5-10) 规格书亮阻、暗阻、伽马值决定电路形态2.1 亮阻和暗阻两个测量条件下截然不同的电阻区间2.1.1 亮阻的 10Lux 测试条件怎么理解光敏电阻的阻值随入射光照变化只写“亮阻 5~10kΩ”不写照度是无效的。规格书里这一行通常表述为“10Lux”意思是使用标准光源照射感光面照度计读数正好 10Lux 时测得阻值。10Lux 在真实环境中大约相当于一盏台灯在桌面留下的一小块余光远低于常见室内亮度。也就是说白天窗边几百 Lux、阴天室内几十 LuxGL5516 的实际阻值比亮阻档位还要低得多。在判断“有没有光照”的场景里9kΩ 和 6kΩ 的区别并不重要但在光线明暗渐变的环境里你得先知道当前照度落在曲线的哪一段才能决定用多大电阻做分压。2.1.2 暗阻 1MΩ 这个数量级作用在哪暗阻一般标注为“≥1MΩ”测试条件近似 0 Lux。这个参数的工程意义在于决定暗态分压电压能低到什么程度。如果 Rfix 取 10kΩ、VCC 取 3.3V1MΩ 暗阻对应输出仅 32.7mV对 12 位 ADC 来说约 40 个 LSB分辨没问题。但如果机壳漏光、PCB 开窗朝向光源暗态可能被拉到几十到几百 kΩ输出抬高到 500mV 以上阈值判断就会漂。暗阻不需要高精度但在结构设计上要保证“暗”是真正的暗。2.2 伽马值把阻值变化写成可计算的幂函数伽马值描述光敏电阻阻值与照度之间的对数线性关系近似用 R A × E^(-γ) 表示E 为照度A 为与阻值档位相关的常数。GL5516 常见 γ 在 0.71.0 之间。按亮阻 5~10kΩ、取中值 8kΩ、γ0.7 估算R(E) 8kΩ × (10 / E)^0.7照度 100Lux 时约 1.6kΩ照度 500Lux 时约 480Ω。可见光敏电阻在大照度下阻值会低到几百欧分压输出变化幅度因此变窄。这个公式对你的直接价值是从规格书亮阻档位可以推算任意照度下的电阻近似区间从而预先判断 ADC 输出范围不用等样品回来盲目试电阻。2.3 额定功耗、峰值波长和响应时间容易被漏看额定功耗 100mW、最大外加直流电压 150V一般小信号电路碰不到极限但有人会直接把 LED 串在光敏电阻后面当夜灯亮度变化时电流冲击可能损坏器件。峰值波长 540nm 表示对可见光敏感但光敏层对红外也有响应这点会在下一章展开。响应时间约 20~30ms对判断环境光完全够用如果拿去测风扇转速或码盘遮挡响应速度就明显跟不上。3. 用 GL5516 规格书参数设计分压电路ADC 量程与灵敏度3.1 分压电路怎么接输出方向怎么定义3.1.1 典型接法与电压表达式最常见的分压形式是VCC 接光敏电阻 RLRL 另一端接检测节点再串固定电阻 Rfix 到 GNDADC 采样检测节点。输出电压为Vout VCC × Rfix / (RL Rfix)取 VCC3.3V、Rfix10kΩ代入 GL5516(5-10) 的典型值计算场景光敏电阻 RL输出电压12 位 ADC 原始值10Lux下限5kΩ2.20V273010Lux上限10kΩ1.65V2048暗态1MΩ0.033V413.1.2 亮高暗低的方向适合 MCU 判断从结果看光线越强输出越高光线越弱输出越接近 0V。“亮高暗低”的方向让 MCU 端逻辑直观默认阈值判断可以直接用voltage threshold表示“有光照”。注意反接光敏电阻和固定电阻的位置后输出会变成暗高亮低虽然也能工作但在 ADC 量程利用上不如本文接法合理暗态高电平时触碰电源纹波更容易抖动。3.2 固件里把 ADC 原始值换算成电阻值的写法下面这段 C 代码完成 12 位 ADC 原始值到光敏电阻阻值的换算适合 STM32 或国产 M0/M3 系列 MCU 移植// 12 位 ADC参考电压 3.3V分压电阻 10kΩ float adc_to_ldr_kohm(uint16_t raw) { float vout raw * 3.3f / 4095.0f; // 先把原始值换成电压 float rfix 10.0f; // 下拉电阻 10kΩ if (vout 0.003f) { // 接近 0V 视为暗态 return 1000.0f; // 返回 1MΩ 避免除零 } // 反解分压公式RLDR Rfix × (VCC - Vout) / Vout return rfix * (3.3f - vout) / vout; }代码前半段做原始值到电压的量程映射后半段反解分压公式。第 7 行防除零需要保留因为暗态下 Vout 可能接近 0V直接做除法会得到异常大数。返回 1000.0f 单位是 kΩ按规格书暗阻下限 1MΩ 处理让后续阈值判断落入正常比较区间。实际使用中可以在判断前先看 raw 值是否小于某个极小值比如 raw 50 直接走暗态分支效率更高。3.3 Rfix 取多大量程、分辨率和暗态电压的权衡3.3.1 不同固定电阻的对比固定电阻 Rfix 取值直接决定输出电压、量程区间和暗态电压位置。用同样的 GL5516 参数重算Rfix5kΩ 亮阻10kΩ 亮阻1MΩ 暗阻亮暗压差5kΩ1.65V1.10V16.4mV约 1.08V10kΩ2.20V1.65V32.7mV约 1.62V20kΩ2.64V2.20V64.7mV约 2.15V47kΩ2.97V2.49V151mV约 2.82V3.3.2 根据应用场景选 RfixRfix 变大后亮暗两端压差增大ADC 分辨率利用更充分但暗态电压同时抬高。若测的是夜间低照环境暗态 151mV 意味着漏光对输出的影响被放大一种“暗”在不同结构里的读数差异变大。若只区分白天和黑夜Rfix 取 10kΩ 或 20kΩ 都合适。若需要分辨 0~10Lux 的微弱变化反而应该把 Rfix 调到 47kΩ将亮度变化映射到更宽的电压区间。规格书亮阻档位决定的是选型下限Rfix 决定的是灵敏度落点两者需要放在一起算。4. 光敏电阻 GL5516 调试实战标定流程、光源干扰与采样去抖4.1 两点标定法把规格书档位映射到项目实际环境规格书提供的是实验室条件参数每个项目的机壳透光率、光源色温、安装角度都不同必须现场标定。建议按下列步骤做两点标定完全遮住光敏电阻感光面保持 1 秒以上记录 ADC 原始值 raw_dark。在光敏电阻位置放置照度计打开项目实际使用的主光源把照度调到典型工作值比如 200Lux记录 raw_bright。初始化阈值 mid (raw_dark raw_bright) / 2。加入回差threshold_high mid 50threshold_low mid - 50避免临界区反复跳变。标定时注意照度计感光面要与光敏电阻处于同一平面、同一朝向不要用手遮挡。raw_dark 和 raw_bright 的记录时间隔开几分钟确认灯源充分预热。白炽灯和 LED 灯在同样照度下因为光谱不同测出的原始值并不一致所以必须用项目实际光源标定。这一步不做前面所有参数计算都只能算“纸面设计”。4.2 光源频谱、红外成分和结构遮挡光敏电阻的峰值波长虽在 540nm 附近但感光层实际响应带宽很宽红外光、紫外光都会不同程度影响阻值。白炽灯和卤素灯的红外成分高同一照度下会让光敏电阻的阻值比 LED 光源更低导致相同“200Lux”的标定结果在换灯后全部偏移。对策有两种一是在结构上加滤光片把红外成分压掉成本会上升二是在软件里增加光源识别或定期自校准用一组历史数据修正阈值。结构遮挡是另一个容易被忽略的因素。机壳开窗的大小、感光面与窗户的夹角都会影响入射光强度。光敏电阻顶部的环氧树脂封装有聚光效果开窗位置偏移 5mm读数可能变化 30% 以上。调试阶段建议用热熔胶固定光敏电阻位置避免装配公差影响一致性。4.3 采样抖动、响应延迟和软件去抖4.3.1 滑动平均去抖的 C 语言实现GL5516 本身有几十毫秒响应时间MCU 以 100ms 间隔采样时输出已经比较平滑。但 ADC 参考噪声和电源纹波会叠加到采样值上表现为阈值附近偶发抖动。滑动平均是最常用的处理方法#define ADC_SAMPLE_NUM 8 static uint16_t adc_buf[ADC_SAMPLE_NUM]; static uint8_t adc_idx 0; uint16_t adc_read_smooth(void) { uint16_t raw adc_read(); // 底层 ADC 采样函数 adc_buf[adc_idx] raw; adc_idx (adc_idx 1) % ADC_SAMPLE_NUM; uint32_t sum 0; for (uint8_t i 0; i ADC_SAMPLE_NUM; i) { sum adc_buf[i]; } return (uint16_t)(sum / ADC_SAMPLE_NUM); }这段代码维护一个 8 深度的环形缓冲区每次采样填入然后求平均。光标数据全部来自同一通道、同一时间尺度所以不会像低通滤波那样滞后太多 100ms。由于光敏电阻响应时间在 20~30ms8 次平均对快速变化的遮挡不会造成过度延迟同时能把 1 LSB 左右的随机抖动压掉。4.3.2 去抖不止滤波一种思路滑动平均之外阈值回差同样有效。判断状态变化时只有 ADC 值越过 threshold_high 才认为进入亮态低于 threshold_low 才认为进入暗态中间区间保持前一状态。两种方法可以共存滤波负责减小噪声幅度回差负责消除临界反复切换。调试时建议先把 raw 值和计算出的电阻值通过串口打印出来记录一天的数据再定回差宽度而不是凭感觉写固定数字。5. 用自建标定台核对 GL5516 批次一致性和存储影响批量采购 JCHL 或其他厂家 GL5516 时每批样品的实际阻值不会完全等于规格书标称值出厂分档只保证落在 5~10kΩ 区间内。上机前抽测一致性能提前发现会导致阈值偏移的批次。常见做法是用一盏可调亮度 LED 台灯、一只照度计和万用表搭一个简易标定台。把光敏电阻和照度计放在同一水平面调整台灯亮度到 10Lux记录阻值再分别测 50Lux、100Lux、200Lux 三档。每次调节后等 30 秒再读数让阻值稳定。对每个样品记录四条数据随后用下面这段 Python 脚本算出实测伽马值import numpy as np lux np.array([10.0, 50.0, 100.0, 200.0]) r_kohm np.array([8.2, 2.1, 1.1, 0.6]) # 实测阻值 log_lux np.log(lux) log_res np.log(r_kohm) slope np.polyfit(log_lux, log_res, 1)[0] gamma -slope print(fgamma {gamma:.2f}) print(fA {np.exp(np.polyfit(log_lux, log_res, 1)[1]):.1f})np.polyfit 对对数坐标做一次线性拟合斜率取负就是伽马值截距还原成常数 A。同一批次抽 10 颗样品gamma 落在 0.7~1.0 区间且彼此偏差不超过 0.1批次一致性可以接受。亮阻用最大最小值比偏差超过 20% 的批次建议单独处理暗阻低于 1MΩ 的样品直接剔除。样品测试完后要放回原包装密封保存。光敏电阻感光层暴露在空气中长时间受潮或接触硫化物气体会导致表面变质阻值漂移明显回流焊后不要反复拆焊做过高温老化试验的样品不要回流入库。抽测记录写进采购履历下批到货直接比对比看每份规格书都有效。本文还有配套的精品资源点击获取