前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >光感红外接近传感器AP3426调试总结

光感红外接近传感器AP3426调试总结

原创
作者头像
番茄老夫子
发布2023-10-30 14:19:32
2400
发布2023-10-30 14:19:32
举报

一 概念

AP3426是一个高度集成了红外,光感和接近角的传感器。该传感器凭借着高灵敏度广泛应用在可穿戴领域。笔者在一个产品上用了这个传感器。花了一些时间来调试和熟悉这个传感器,这里就做一个总结吧。

二 硬件解析

1 硬件原理:

这个原理图是官方提供的,我们按照这个来做产品,是可以正常工作的。

2 接口含义:

这个是该芯片的接口含义,这个接口如上所示:

三 软件解析

1 初始化:

该芯片的初始化非常简单,只需要把系统复位一下,是能这几个传感器即可。然后设置传感器的阈值。

代码语言:javascript
复制
    AP3426_WriteOneByte(SYS_CONTROL_ADDR,AP3426_MODE_SW_RESET ); // AP3426 execute reset
    osDelay(50);
    AP3426_WriteOneByte(SYS_CONTROL_ADDR,AP3426_MODE_IR_ALS_AND_PS ); // AP3426 enable IR, ALS and PsData
    osDelay(50);
    AP3426_WriteOneByte(PS_Low_LowThreshold, Init_ps_lowThreshold); //PS Low Threshold=0x200
    osDelay(50);
    AP3426_WriteOneByte(PS_High_LowThreshold, Init_pshi_lowbyteThreshold); //PS High Threshold=500
    AP3426_WriteOneByte(PS_High_LowThreshold, Init_pshi_upbyteThreshold); //PS High Threshold=500
    osDelay(50);

2 数据获取:这个是其中的一个数据获取。

代码语言:javascript
复制
void AP3426_Read_ALS_Data(uint16_t* als)
{
 uint8_t als_l = 0, als_h = 0;
 als_l = AP3426_ReadOneByte(ALS_Data_Low);
 als_h = AP3426_ReadOneByte(ALS_Data_High);
 *als = (als_h << 8) | (als_l);
}

四 总结

接下来,就是在正常的产品中,好好测试一下该模块的性能了。在做产品的同时,我们把该芯片做成了一个模块,并把配套的资料都准备好了。这个不仅可以自己用,也可以给有需求的伙伴使用了。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
物联网通信
腾讯云物联网通信(Internet of Things Hub, IoT Hub)旨在提供一个安全、稳定、高效的连接平台,帮助开发者低成本、快速地实现“设备-设备”、“设备-用户应用”、“设备-云服务”之间可靠、高并发的数据通信。物联网通信平台不仅可以实现设备之间的互动、设备的数据上报和配置下发,还可以基于规则引擎和腾讯云产品打通,方便快捷地实现海量设备数据的存储、计算以及智能分析。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档