官方商店:见评论区

光照强度传感器 GZ-A1 - 图1

一、简介

善学坊GZ-A1光照强度传感器内置5516光敏电阻,能够高灵敏度地感知环境光照度(参考值)。

二、技术参数

  • 工作电压: 3.3 ~ 5v
  • 最大电压(V-dc):150
  • 最大功耗(mW):100
  • 环境温度(°C):-30—- +70
  • 光谱峰值(nm):560
  • 亮电阻(10Lux)(KΩ):5-10
  • 暗电阻(MΩ):0.8
  • 100λ10:0.6
  • 响应时间(ms):上升30、下降30
  • 照度电阻特性:2

    三、引脚说明

  • VCC:电源正极接口,可外接3.3~5v供电电源

  • GND:电源负极接口,可外接电源负极或地线(GND)
  • DO:数字信号输出接口(0和1),可外接单片机的GPIO
  • AO:模拟信号输出接口,可外接单片的ADC采样通道

    四、使用说明

    1.接线说明

  • 用杜邦线把模块的VCC和GND分别与单片机的3v3和GND连接;

  • 把DO与单片机的其中一个GPIO连接;
  • 把AO与单片机的其中一个ADC采样通道连接。

举个接线的例子,用杜邦线把模块的AO连接至CC2530开发板(51单片机)的P0_0、DO连接至P0_5,如图所示。
光照强度传感器 GZ-A1 - 图2
其中的详细连接说明如下:
A.传感器主板的VCC引脚与CC2530开发板的任意3v3引脚连接;
B.传感器主板的GND引脚与CC2530开发板的任意GND引脚连接;
C.传感器主板的AO引脚与CC2530开发板的P0_0引脚连接;
D.传感器主板的DO引脚与CC2530开发板的P0_5引脚连接。

2.光照强度检测

当光照强度小于指定的阈值时,DO输出高电平,大于指定的阈值时输出低电平。

3.阈值调节

模块中蓝色的电位器是用于调节光照度的阀值,顺时针旋转,控制的光照度阈值会越小,逆时针越大。

4.使用AO接口

与DO不同,AO会输出模拟信号,因此需要与单片机的ADC采样通道连接。单片机可以通过此模拟信号来获取光照强度大小。

五、参考代码

  1. /*
  2. 宏定义接收传感器数据的GPIO,格式如下:
  3. #define 接口名称 单片机GPIO名称
  4. */
  5. //1.定义单片机的P0\_5接口作为接收传感器数字信号的接口;
  6. //2.需要用杜邦线把P0_5与模块的DO_OUT接口连接;
  7. //3.需要根据实际需求更改GPIO。
  8. #define DO_OUT P0_5
  9. //1.定义单片机的P0_0接口作为接收传感器数字信号的接口;
  10. //2.需要用杜邦线把P0_0与模块的AO_OUT接口连接;
  11. //3.需要根据实际需求更改GPIO。
  12. #define AO_OUT P0_0
  13. void main()
  14. {
  15. //以下代码分别展示如何使用DO_OUT和AO_OUT来驱动传感器,读者只需选择其中一种方式来驱动传感器即可
  16. //1.使用DO_OUT接口
  17. //初始化传感器
  18. initialDO_OUT();//读者需要根据不同的单片机实现本函数
  19. while(1)
  20. {
  21. if(DO_OUT==0)//如果测量结果大于指定的阈值
  22. {
  23. delay(1000);//延时1秒后再检测测量结果,抗干扰
  24. if(DO_OUT==0)//如果测量结果大于指定的阈值
  25. {
  26. ;//编写处理代码
  27. }
  28. }
  29. //延时1s,读者可根据需要更改延时时间
  30. delay(1000)
  31. }
  32. //2.使用AO_OUT接口
  33. //初始化传感器
  34. initialAO_OUT();//读者需要根据不同的单片机实现本函数
  35. int value;//用于保存传感器的值
  36. while(1){
  37. //使用ADC读取AO_OUT的值
  38. value=ADCRead(AO_OUT);//读者需要根据不同的单片机实现本函数
  39. //此处编写处理代码
  40. //延时1s,读者可根据需要更改延时时间
  41. delay(1000);
  42. }
  43. }

联系我们

  • 如需选购Matter、ZigBee、433/868、LoRa、2.4G、WiFi等物联网模块或IoT设备定制开发,联系方式:见评论区。
  • IoT低代码开发平台:见评论区。