跳转到内容

services::I2CUpdateManager API

文档稀疏
符号
75
已记录
68
修订版本
0.1.0+855c407f828e

7 / 75 个公开 API 符号没有说明。

命名空间

1

2

结构体

2

函数

35

I2CDevice::conversionMs

                    virtual uint32_t I2CDevice::conversionMs () const
                  

获取触发后需要等待的最短转换时间 转换等待时间,单位毫秒;返回 0 表示可直接进入读取阶段

services/i2c_update_manager/I2CDevice.hpp:123

I2CDevice::init

                    virtual bool I2CDevice::init (I2CBusDMA &bus, uint32_t timeout_ms)=0
                  

执行一次初始化或探活流程 bus 当前设备所在的 I2C 总线 timeout_ms 单次事务超时时间,单位毫秒 初始化是否成功

services/i2c_update_manager/I2CDevice.hpp:50

I2CDevice::isDataFresh

                    bool I2CDevice::isDataFresh (const uint32_t now_ms, const uint32_t stale_ms) const
                  

查询设备数据是否仍然新鲜 now_ms 当前时间戳,单位毫秒 stale_ms 允许的数据陈旧阈值,单位毫秒 数据是否仍在可接受的新鲜时间窗口内

services/i2c_update_manager/I2CDevice.hpp:88

I2CDevice::onRead

                    virtual bool I2CDevice::onRead (I2CBusDMA &bus, uint32_t now_ms, uint32_t timeout_ms)=0
                  

读取一次设备数据并更新内部缓存 bus 当前设备所在的 I2C 总线 now_ms 当前时间戳,单位毫秒 timeout_ms 单次事务超时时间,单位毫秒 本轮读取是否成功

services/i2c_update_manager/I2CDevice.hpp:132

I2CDevice::onTrigger

                    virtual bool I2CDevice::onTrigger (I2CBusDMA &, uint32_t)
                  

发送一次“开始转换”或“开始采样”命令 bus 当前设备所在的 I2C 总线 timeout_ms 单次事务超时时间,单位毫秒 触发是否成功

services/i2c_update_manager/I2CDevice.hpp:117

I2CDevice::update

                    UpdateStatus I2CDevice::update (I2CBusDMA &bus, uint32_t now_ms, uint32_t timeout_ms)
                  

推进一次设备状态机 bus 当前设备所在的 I2C 总线 now_ms 当前时间戳,单位毫秒 timeout_ms 单次事务超时时间,单位毫秒 本次推进后的状态结果

services/i2c_update_manager/I2CDevice.hpp:59

I2CUpdateManager::computeSleepMs

                    uint32_t I2CUpdateManager::computeSleepMs (uint32_t now_ms) const
                  

计算下一次轮询前最多可以休眠多久 now_ms 当前时间戳,单位毫秒 推荐休眠时长,单位毫秒

services/i2c_update_manager/I2CUpdateManager.hpp:108

I2CUpdateManager::registerDevice

                    bool I2CUpdateManager::registerDevice (I2CDevice &device, uint32_t period_ms, uint32_t phase_ms=0U, uint32_t timeout_ms=20U)
                  

注册一个周期设备 device 要注册的设备对象 period_ms 更新周期,单位毫秒 phase_ms 初始错峰相位,单位毫秒 timeout_ms 单次事务超时时间,单位毫秒 start() 设备是否注册成功;该接口只能在前调用

services/i2c_update_manager/I2CUpdateManager.hpp:64

I2CUpdateManager::selectReadyEntry

                    I2CUpdateManager::Entry * I2CUpdateManager::selectReadyEntry (uint32_t now_ms)
                  

选择当前已经到期且应优先调度的设备条目 now_ms 当前时间戳,单位毫秒 选中的设备条目,若无可调度设备则返回空指针

services/i2c_update_manager/I2CUpdateManager.hpp:101

I2CUpdateManager::serviceEntry

                    void I2CUpdateManager::serviceEntry (Entry &entry, uint32_t now_ms)
                  

推进一个设备条目的初始化或更新流程 entry 要推进的设备条目 now_ms 当前时间戳,单位毫秒

services/i2c_update_manager/I2CUpdateManager.hpp:115

枚举

2

变量

29

文件

4