watch-sensor framework

Posted on 2024-09-11 16:23  牛man  阅读(20)  评论(0)    收藏  举报

sensor架构:

sensor  service: os 状态下,sensor服务(独立线程),接收sensor  数据和运行算法

sensor sleep: 休眠裸机状态下,sensor回调(在idle 线程上下文中调用),接收sensor数据和运行算法

sensor algorithm: sensor 算法库

Sensor hal: sensor 硬件抽象层,封装操作sensor device的实现细节

SPIMT/IICMT: 支持spi 和i2c 接口自动采集数据

Sensors: 传感器硬件,主要是spi和i2c接口

Sensor 工作状态:

sensor 工作期间为什么不需要os 全程产于?

 状态机:

 

STAT_MT: MT 硬件运行,CPU 不运行,MT 硬件工作;CPU深度休眠,SPIMT/IICMT外部中断触发或定时采集数据,数据传输完成中断唤醒CPU跑算法。

STAT_RAW:裸机运行态,CPU 运行,OS不运行;Sensor Sleep通过wakeup callback调用裸机算法,为节省功耗不用唤醒OS,计算完成后根据算法结果来决定休眠还是唤醒OS。

STAT_OS:OS 运行,CPU运行,OS运行;Sensor Service根据算法输出保存数据结果,并产生事件通知应用。