Fork me on GitHub

一 概念
AP3426是一个高度集成了红外,光感和接近角的传感器。该传感器凭借着高灵敏度广泛应用在可穿戴领域。笔者在一个产品上用了这个传感器。花了一些时间来调试和熟悉这个传感器,这里就做一个总结吧。
二 硬件解析
1 硬件原理:
 
这个原理图是官方提供的,我们按照这个来做产品,是可以正常工作的。
2 接口含义:
这个是该芯片的接口含义,这个接口如上所示:
三 软件解析
1 初始化:
该芯片的初始化非常简单,只需要把系统复位一下,是能这几个传感器即可。然后设置传感器的阈值。
    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 数据获取:这个是其中的一个数据获取。
 
 
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);
}

 

四 总结
接下来,就是在正常的产品中,好好测试一下该模块的性能了。在做产品的同时,我们把该芯片做成了一个模块,并把配套的资料都准备好了。这个不仅可以自己用,也可以给有需求的伙伴使用了。
 
 
 
posted on 2023-09-18 11:34  虚生  阅读(82)  评论(0编辑  收藏  举报