【单片机毕业设计】基于STM32单片机ADXL345三轴加速器的无线数据采集与运动状态监测

22 篇文章 1 订阅
10 篇文章 1 订阅

1、前言

 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉小洪学长自己做的项目系统达不到老师的要求。为了大家能够顺利以及最少的精力通过毕设,小洪学长分享优质毕业设计项目,今天要分享的是基于STM32单片机ADXL345三轴加速器的无线数据采集与运动状态监测

2、简介

基于STM32单片机ADXL345三轴加速器的无线数据采集与运动状态监测

1、利用单片机STM32F103C8T6单片机采集ADXL345加速度计数据;
2、OLED液晶屏实时显示当前三轴加速器模块XYZ轴数据。
3、 将采集到的三轴加速器模块XYZ轴数据通过wifi模块上传到app实时显示
4、对实时采集的数据进行处理分析并在app上显示行走、站立、跌倒、跳跃等运动状态。

3、组成

本设计由STM32F103C8T6单片机最小系统+wifi模块+ADXL345三轴加速器模块+OLED液晶显示屏+电源电路组成。

4、实现效果

整体展示

5、设计原理

5.1DXL345倾角传感器模块简介

        本设计选择倾角传感器ADXL345模块实时检测相关的状态信息。ADXL345是一款小而薄的超低功耗3轴加速度计,分辨率高(13位),测量范围达± 16g。数字输出数据为16位二进制补码格式,可通过SPI(3线或4线)或I2C数字接口访问。ADXL345非常适合移动设备应用。它可以在倾斜检测应用中测量静态重力加速度,还可以测量运动或冲击导致的动态加速度。其高分辨率(3.9mg/LSB),能够测量不到1.0°的倾斜角度变化。该器件提供多种特殊检测功能。活动和非活动检测功能通过比较任意轴上的加速度与用户设置的阈值来检测有无运动发生。敲击检测功能可以检测任意方向的单振和双振动作。自由落体检测功能可以检测器件是否正在掉落。这些功能可以独立映射到两个中断输出引脚中的一个。正在申请专利的集成式存储器管理系统采用一个32级先进先出(FIFO)缓冲器,可用于存储数据,从而将主机处理器负荷降至最低,并降低整体系统功耗。低功耗模式支持基于运动的智能电源管理,从而以极低的功耗进行阈值感测和运动加速度测量。

实物图

5.2 STM32F103C8T6简介

  1. STM32系列处理器是意法半导体ST公司生产的一种基于ARM 7架构的32位、支持实时仿真和跟踪的微控制器。选择此款控制芯片是因为本系统设计并非追求成本的最低或更小的功耗,而是在实现本设计功能的前提下能够提供更丰富的接口和功能以便于设计实验系统各实验项目所需的外围扩展电路。此款控制芯片在完成单片机课程的学习后上手较为容易,在医疗器械中应用广泛,具有很好的学习、实验研究价值。
  2. 一、STM32的主要优点:
  3. (1)使用ARM最新的、先进架构的Cortex-M3内核
  4. (2) 优异的实时性能
  5. (3) 杰出的功耗控制
  6. (4) 出众及创新的外设
  7. (5) 最大程度的集成整合
  8. (6) 易于开发,可使产品快速将进入市场
  9. 二、STM32——最佳的平台选项
  10. 对于使用同一平台进行多个项目开发而言,STM32是最
  11. 佳的选择:
  12. (1) 从仅需少量的存储空间和管脚应用到需要更多的存储空间和管脚的应用
  13. (2) 从苛求性能的应用到电池供电的应用
  14. (3) 从简单而成本敏感的应用到高端应用
  15. (4) 全系列脚对脚、外设及软件的高度兼容性,给您带来全方位的灵活性。您可以在不必修改您原始框架及软件的条件下,将您的应用升级到需要更多存储空间或精简到使用更少存储空间/ 或改用不同的封装的规格。
  16. STM32F103C8T6单片机核心板接口电路图如下图所示。

STM32单片机核心板接口原理图

6、部分核心代码

void TCPsend(short x,short y, short z , uint8_t s);   //
uint8_t STATE_Dear(short x,short y, short z);         //
 
 int main(void)
 {	
	uint8_t stateee = 0;                              
	
    char DevIP[120];
    delay_init();                                    
	uart1_init(115200);                                
	uart2_init(115200);
	YHGUI_Config();                                   
	ADXL345_Init();                                    
	YHGUI_DispString(0,0,DevIP,16,1);
	while(1)
	{
		if(WIFI_OPEN == 1)
		{
			YHGUI_DispString(120,0,(char*)socket,16,0);	
			
   			ADXL345_Read_Average(&x_AXIS,&y_AXIS,&z_AXIS,10);  
		    ADXL_Show_num(0,16,x_AXIS);                       
            ADXL_Show_num(0,32,y_AXIS);                      
            ADXL_Show_num(0,48,z_AXIS);                       

  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: ADXL345三轴数字加速度传感器,AMTEL公司设,并广泛应用于当今市场最流行的许多电子产品。STM32是一种高性能单片机,具有高效性能和低功耗特点。本设基于STM32ADXL345步器主要分为两个部分:其一是硬件部分,其二是软件部分。 硬件部分: 该设的硬件由三部分组成,即中央处理器,ADXL345传感器和显示屏。中央处理器使用STM32产品,ADXL345传感器插入到中央处理器的I2C总线上,连接传感器以开始采集数据,最后使用显示器显示观测结果。 软件部分:主处理器上需要安装适当固件,以便正确与ADXL345通信。依据模拟结果通过算法处理来获得足够精确的暴露时间以及依据数器达到步数的功能。代码首先读取ADXL345,并将数据作为3轴数值传输到主处理器,主处理器读取此数据,使用算法算暴露时间,并根据该时间增加步数数器。 总之,这个基于STM32ADXL345步设能够实时地有效的记录用户的运动步数,而且能够通过I2C环境与其他传感器结合进一步扩展功能。 ### 回答2: ADXL345是一款三轴数字加速度传感器,可以测量加速度、倾斜度和震动等信息。而STM32是一款单片机,具备强大的算和处理能力,在工业控制、智能家居、医疗监测等领域具有广泛的应用。结合ADXL345STM32,可以实现一个高精度的步设。 在该设中,ADXL345传感器通过I2C总线与STM32单片机进行通信,传输加速度数据。STM32通过加速度数据来识别用户的步态,并实现步功能。具体操作过程可参考以下步骤: 1. 配置ADXL345传感器,设置传感器的参数和采样率等,以实现高精度的加速度检测。 2. 初始化STM32单片机,设置相关参数和模块,实现与ADXL345的通信,并接受加速度数据。 3. 对接受的加速度数据进行处理,通过加速度的变化量,结合阈值判断,确定用户的步态,从而实现步的功能。 4. 设一定的界面,显示步数和相关数据,提高用户的使用体验。 5. 最后,优化算法和程序,提高步的准确度和可靠性。 总之,基于STM32ADXL345步设,充分发挥了单片机算和处理能力,实现了高精度的步功能,具有广泛的应用前景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值