STM32+ADXL计步器(中断唤醒+串口调试)

本文通过STM32F103C8T6和ADXL345传感器,实现计步器功能。利用ADXL345中断唤醒停机模式,通过串口记录中断源和数据,中断由ACTIVITY触发,主循环读取数据计算步数。
摘要由CSDN通过智能技术生成

本文介绍了利用ADXL345中断唤醒停止模式下的STM32F103C8T6,为进一步开发计步器做准备。
从上位机串口通讯记录了整个过程, 代码中有关OLED显示屏可以不接。

1. ADXL345寄存器, 有好多,为了观察明显,这里设置了ACTIVITY和INACTIVITY模式,都能触发INT2:(ADXL345.c)

        Single_Write_ADXL345(THRESH_ACT,0x20);      //检测活动的阈值为2g时产生中断,认为是开始活动了
        Single_Write_ADXL345(THRESH_INACT,0x01);    //0.1875g,小于它,就认为是不活动
        Single_Write_ADXL345(TIME_INACT,0x02);      //不活动2秒,就认为是不活动中断触发
        Single_Write_ADXL345(ACT_INACT_CTL,0xEE);   //使能X、Y、Z三轴的Activity和Inactivity功能
        Single_Write_ADXL345(INT_MAP,0x18);         //00011000, Activity和Inactivity 活动都映射到INT2        Single_Write_ADXL345(INT_ENABLE,0x18);    //80 DATA_READY中断开启, 10 Activity 08 inactivity   

2.    观察中断是哪个活动触发的:访问寄存器:INT_SOURCE (main.c)

        printf("\r\n INT_SOURCE: 0X30= %lX  After Read\r\n",  Single_Read_ADX

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值