1.FIFO 结构与大小
- FIFO 数据可以包含陀螺仪和加速度计数据,通过 SPI/I2C/I3C 接口以突发读模式读取。
- FIFO 大小可配置为 16 样本、32 样本、64 样本或 128 样本(每个样本为 6 字节)。
2.FIFO 模式
- Bypass 模式:禁用 FIFO 功能。
- FIFO 模式:FIFO 满后停止写入新数据,直到主机读取 FIFO 数据。
- Stream 模式:FIFO 满后继续写入新数据,最早的数据被覆盖。
3.示例:
- 初始化I2C通信:
init_i2c()
函数打开I2C设备文件并设置I2C从设备地址。 - 配置FIFO模式:
configure_fifo_mode()
函数根据提供的模式设置FIFO_CTRL寄存器。 - 读取FIFO样本计数:
read_fifo_sample_count()
函数从FIFO_SMPL_CNT和FIFO_STATUS寄存器读取FIFO样本计数。 - 读取FIFO数据:
read_fifo_data()
函数从FIFO_DATA寄存器读取指定数量的FIFO数据。