查看: 2997|回复: 0

【ROHM传感器套件试用】十二、接近开关及亮度调节灯控

[复制链接]
  • TA的每日心情
    开心
    2022-6-16 19:35
  • 签到天数: 649 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2017-4-7 17:11:58 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 踏平幼稚园 于 2017-4-7 17:13 编辑

    说明:测试程序使用的开发板为nucleo-f411re,程序下载链接:【ROHM传感器套件试用】二、stm32代码移植(所有模块通过测试)

    本贴使用模块:RPR0521(光照接近传感器)

    一、控制逻辑
        1、开关:通过传感器接近检测判断接近与否,一次接近+一次离开作为一次有效操作,灯做打开关闭操作

        2、亮度:亮度使用占空比控制。通过传感器反馈的光照强度,获取到的数值(0-500)/5得到0-100的占空比,需要注意的是数值大于500时占空比设为100,占空比小于5时需将占空比设为5,以免灯在弱光下太暗或不亮。

    二、代码实现
        1、将light.c文件和light.h文件分别复制到工程跟目录的Src及Inc中,然后添加c文件到工程里。

        2、main.c中在rpr0521rs.init后添加led初始化函数
    1. rpr0521rs.init();
    2. light_init();
    复制代码
    3、main.c主循环中near_far = rpr0521rs.check_near_far(ps_val);改为以下内容
    1. near_far = rpr0521rs.check_near_far(ps_val);
    2. light_ctrl(als_val, ps_val, near_far);
    复制代码
    4、去掉主循环中的延时函数HAL_Delay,防止操作被忽略

    三、效果展示
        gif5新文件.gif


    light代码文件(需配合本帖开头链接中的测试工程使用): light.zip (1.45 KB, 下载次数: 4)
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-20 13:36 , Processed in 0.112172 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.