OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 12330|回复: 10

最近在用adxl345,进入不了中断,大家知道有什么问题吗?求解决呀

[复制链接]

2

主题

10

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2013-10-18
在线时间
1 小时
发表于 2014-7-11 11:18:00 | 显示全部楼层 |阅读模式
5金钱
以下是初始化的代码
u8 ADXL345_Init(void)
{                  
    IIC_Init();                            //初始化IIC总线    
    if(ADXL345_RD_Reg(DEVICE_ID)==0XE5)    //读取器件ID
    {  
        ADXL345_WR_Reg(DATA_FORMAT,0X1B);    //高电平中断输出,13位全分辨率,输出数据右对齐,16g量程
        ADXL345_WR_Reg(BW_RATE,0x0A);        //数据输出速度为100Hz
        //ADXL345_WR_Reg(POWER_CTL,0x28);           //链接使能,测量模式
        ADXL345_WR_Reg(INT_MAP,0x00);             //配置到中断引脚1上
        ADXL345_WR_Reg(THRESH_ACK,0x03);     //187.5mg
        ADXL345_WR_Reg(ACT_INACT_CTL,0xEE);    //轴使能
        ADXL345_WR_Reg(INT_ENABLE,0x10);    //activity中断开启

        ADXL345_WR_Reg(POWER_CTL,0x28);           //链接使能,测量模式

         ADXL345_WR_Reg(OFSX,0x00);
        ADXL345_WR_Reg(OFSY,0x00);
        ADXL345_WR_Reg(OFSZ,0x00);

        ADXL345_RD_Reg(0x2B);
        ADXL345_RD_Reg(0x30);

        printf("read ID success");    
        return 0;
    }            
    return 1;                                         
}  

GPIO外部中断引脚我配置成下拉输入,上升沿触发。
187.5/3.9=48,只要X轴的输出有48应该就可以触发外部中断了,可是一直进不去中断,大家知道问什么吗?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

109

主题

1606

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2222
金钱
2222
注册时间
2011-12-15
在线时间
37 小时
发表于 2014-7-11 15:39:42 | 显示全部楼层
没看到你代码有触发中断的地方
专业制作STM32 物联网通信模块板,模块交流群:369840039。
回复

使用道具 举报

2

主题

10

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2013-10-18
在线时间
1 小时
 楼主| 发表于 2014-7-11 17:42:07 | 显示全部楼层
回复【2楼】ST-FAE-SALE:
---------------------------------
我把INT1接到了stm32的一个引脚,如果加速度超过一定的阈值,INT1就会出现一个高电平,stm32就会触发一个外部中断,我写在外部中断0函数里面了,这样对吗?
回复

使用道具 举报

109

主题

1606

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2222
金钱
2222
注册时间
2011-12-15
在线时间
37 小时
发表于 2014-7-11 20:07:31 | 显示全部楼层
你对应的是STM32的哪个端口,不一定是外部中断0的函数
专业制作STM32 物联网通信模块板,模块交流群:369840039。
回复

使用道具 举报

15

主题

106

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
283
金钱
283
注册时间
2014-2-17
在线时间
38 小时
发表于 2014-7-19 16:48:27 | 显示全部楼层
应该是选择直流耦合操作,而不是交流耦合操作。
也就是ADXL345_WR_Reg(ACT_INACT_CTL,0xEE);   这一句的0XEE改为0x60.
还有引脚的配置,应该是初始化为下拉输入,上升沿中断。试试看吧,我也想要这个结果,我自己做敲击中断也没出来结果,很烦躁。
花自飘零水自流,生命不息,奋斗不止
回复

使用道具 举报

17

主题

102

帖子

0

精华

初级会员

Rank: 2

积分
191
金钱
191
注册时间
2014-10-14
在线时间
0 小时
发表于 2014-10-31 21:19:42 | 显示全部楼层
回复【5楼】开荤的唐僧:
---------------------------------
兄弟,你做出来了吗,我用了活动和敲击,2个都没进中断,不知道怎么回事
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2014-10-31 23:05:37 | 显示全部楼层
你可以先测试下ADXL345的中断引脚,有没有波形,再去看MCU的中断配置对不对。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

15

主题

106

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
283
金钱
283
注册时间
2014-2-17
在线时间
38 小时
发表于 2014-11-3 13:46:33 | 显示全部楼层
回复【6楼】名侦探:
---------------------------------
推荐答案,六楼,哈哈,我这边没去整那个了,想搞个小四轴玩玩
花自飘零水自流,生命不息,奋斗不止
回复

使用道具 举报

0

主题

11

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2013-4-5
在线时间
0 小时
发表于 2015-5-31 11:50:16 | 显示全部楼层
回复【3楼】fatiguer:
---------------------------------
怎么样,做出来了吗?我也进不了中断啊……
回复

使用道具 举报

0

主题

11

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2013-4-5
在线时间
0 小时
发表于 2015-5-31 11:50:33 | 显示全部楼层
怎么样,做出来了吗?我也进不了中断啊……
回复

使用道具 举报

0

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
88
金钱
88
注册时间
2021-10-8
在线时间
29 小时
发表于 2021-11-25 11:15:49 | 显示全部楼层
同样进不去中断欸,怎么做呀
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-26 14:59

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表