以下就简单的介绍下项目组成:
实现的功能
面板上共四个按键,对应不同的功能:
按键1:按下后,将一分钟内的平均脉搏设为正常脉搏,正常脉博值更新后蜂鸣器隔一秒响一次,正常脉博值未更新时蜂鸣器一秒响4次。这样能知道当前什么状态,报警状态就是一直响。如果已经按下过按键1 ,那再按一次就会蜂鸣器快响,并计算平均值,计算完蜂鸣器再慢响,相当于更新了一次平均值。
按键2:实时检测xyz轴加速度,并且设置对应的三个报警值,超过报警值蜂鸣器报警,需要按按键4手动取消报警,报警值设置程序中采用宏定义的方式,方便用户更改调试,每次更改后需重新下载程序。再按一次按键2加虚度检测停止工作。按键2 相当于只检测加速度。
按键3:脉搏报警值和加速度报警值每两分钟改变一次,超过报警值就报警。并开始计时,到达十分钟触发报警。如果中途发生超过报警值的报警按取消报警停止报警10分钟计时停止也不重新计,第三个按键再按一次,就停止。
按键4:取消报警功能。
硬件组成
项目的硬件总成本可控制在100元以内。
最主要的三个组成是:
1)STM32F103C8T6最小系统;
2)MAX30102血氧手腕心率脉搏检测心跳芯片,原理图是在网上找个画的,led的部分没画。在淘宝买的模块,没有原理图;
3)MPU6050六轴加速度计:参考原子哥的,实际用的是串口输出的MPU6050,接的是单片机的串口3,MPU6050部分电路中串口部分只画了引脚标号,连接到了单片机的串口3。
最后,外壳的盒子也是在淘宝购买的,15元就可以搞定了。
软件代码
详细的代码可以下载,尽量都标了注释,看懂是没问题的。
如果恰巧你也是正在做类似的项目,希望可以帮助到你。
相关文章









