满船清梦i 2025-06-07 05:11 采纳率: 33.3%
浏览 9

为什么我设置fifo的水印阈值,但是中断2不会输出电平变化啊

为什么我设置fifo的水印阈值,映射到中断2上面,但是中断2不会输出电平变化啊

下面是我的代码

Lsm6ds3_SoftwareReset();
 
// 加速度计26HZ, 2g量程。
LSM6DS3TRC_Set_CTRL1_XL(0x1D);
LSM6DS3TRC_Set_CTRL2_G(0x14);
 
//Block Data update, Interrupt output active high, Little Endian
iic_writeRegister(LSM6DS_ADDR, LSM6DS3TRC_CTRL3_C, 0x44);  
 
LSM6DS3TRC_Set_FIFO_CTRL4(0x80);      //STOP_ON_FTH =1
//FIFO Continuous mode, If the FIFO is full, the new sample overwrites the older one.
//LSM6DS3TRC_Set_FIFO_CTRL5(0x0E);    //FIFO Continuous mode 
 LSM6DS3TRC_Set_FIFO_CTRL5(0x09);    //FIFO mode
 
 
//Accelerometer FIFO decimation setting 0x02:Decimation with factor 2
 
LSM6DS3TRC_Set_FIFO_CTRL3(0x09);  // XL+GYRO
 
 
//set FIFO threshold
Lsm6ds3_SetFifoThresholdInFrames(300);
// enable accelerometer int2
LSM6DS3TRC_Set_INT2_CTRL(0x08);
 
//disable high-performance mode
LSM6DS3TRC_Set_CTRL6_C(0x10);
// 设置陀螺仪为低功耗模式(bit7 = 1)
LSM6DS3TRC_Set_CTRL7_G(0x80);
![img](https://i-blog.csdnimg.cn/ask/9cac8144adab4f7e9857d45b1ec9157c.jpeg "#left")

![img](https://i-blog.csdnimg.cn/ask/2af6092291a843c8ad28d2eae2bd5db5.jpeg "#left")

![img](https://i-blog.csdnimg.cn/ask/caa1ab3ef00c4341842f527970d045c6.jpeg "#left")
  • 写回答

6条回答 默认 最新

  • 阿里嘎多学长 2025-06-07 05:11
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    问题解答

    你设置了FIFO的水印阈值,但是中断2不输出电平变化,这可能是因为以下几个原因:

    1. FIFO水印阈值设置错误:请检查你设置的水印阈值是否正确。如果设置的阈值太高或太低,可能导致中断2不输出电平变化。
    2. FIFO水印阈值未生效:请检查FIFO水印阈值是否已经生效。如果FIFO水印阈值未生效,中断2将不输出电平变化。
    3. 中断2未启用:请检查中断2是否已经启用。如果中断2未启用,中断2将不输出电平变化。
    4. FIFO水印阈值与中断2的配置不匹配:请检查FIFO水印阈值与中断2的配置是否匹配。如果不匹配,中断2将不输出电平变化。

    建议你检查代码中的FIFO水印阈值设置和中断2的配置是否正确,并且检查FIFO水印阈值是否已经生效。如果问题仍然存在,可以提供更多的代码信息和详细的错误信息,以便更好地帮助你解决问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 6月7日