ADI 技术
直播中

姜葳

7年用户 194经验值
私信 关注
[问答]

ADXL345无法进入中断

小弟想通过ADXL345,测试到检测活动(阈值在活动寄存器中已经配置)后,启用中断进行点亮发光二极管的操作。现在的问题是无法进入中断。之前进入中断过(但并非满足要求),只是在执行完活动检测中断使能后,立即点亮,而并没检测到活动。
对ADXL345的配置如下:其中寄存器的配置顺序也是反复颠倒了几次,对各个寄存器的配置没有问题。

  Single_Write_ADXL345(0x01,0x52);
   __delay_cycles(2000);
  Single_Write_ADXL345(0x31,0x2B);       //测量范围,正负16g13位模式
  Single_Write_ADXL345(0x27,0xF0);        //交流耦合模式,xyz三轴使能
  Single_Write_ADXL345(0x24,0x01);        //活动加速度阈值 0.12g
  Single_Write_ADXL345(0x2F,0xff);       //所有中断都发送的int1管脚中断,0为int1,1为int2  
  Single_Write_ADXL345(0x2E,0x10);       ////使能 DATA_READY 中断和 活动中断
  Single_Write_ADXL345(0x2D,0x08);       //选择电源模式   参考pdf24页
急求!!谢谢~~

回帖(4)

张博

2019-3-4 12:05:29
您好。Single_Write_ADXL345(0x2F,0xff); 中断输出在int2引脚,不是int1
请使用示波器检查中断引脚的状态,控制器对中断的响应和中断操作。可以先尝试使用data ready中断
举报

李雨晨

2019-3-4 12:21:05
引用: st94wo 发表于 2019-3-4 12:05
您好。Single_Write_ADXL345(0x2F,0xff); 中断输出在int2引脚,不是int1
请使用示波器检查中断引脚的状态,控制器对中断的响应和中断操作。可以先尝试使用data ready中断

请问一下,ADXL345超出量程(±16g)读出的值会是多少?譬如Z轴方向加速度超出量程
举报

李雨晨

2019-3-4 12:26:11
引用: st94wo 发表于 2019-3-4 12:05
您好。Single_Write_ADXL345(0x2F,0xff); 中断输出在int2引脚,不是int1
请使用示波器检查中断引脚的状态,控制器对中断的响应和中断操作。可以先尝试使用data ready中断

我用ADXL345做单振检测,半空下落撞击地面,单振中断输出引脚INT2没有响应。
请问是什么问题?会不会是撞击加速度很大,超出其量程,而不能进入中断?
举报

刘悦竹

2019-3-4 12:44:36
引用: wangrubing 发表于 2019-3-4 12:26
我用ADXL345做单振检测,半空下落撞击地面,单振中断输出引脚INT2没有响应。
请问是什么问题?会不会是撞击加速度很大,超出其量程,而不能进入中断?

超过量程,会是满量程输出,是会产生中断的。
 
Single_Write_ADXL345(0x24,0x01);        //活动加速度阈值 0.12g
阈值没有必要写这么小,你配置的阈值是62.5mg,检测冲击可以配置为>=3g的阈值。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分