一、电路设计

电路构成:STM32F103C8T6单片机电路+时钟晶振电路+复位电路(上电自复位,手动复位)+LCD1602液晶显示屏电路+ADXL345计步检测传感器电路+DS18B20温度传感器电路+心率光电检测传感器+蓝牙模块+总电源供电电路;

功能介绍:

1.上电完成之后,通过重力角度检测,计算出整个行走的步数,通过步数的换算,得出行走的距离;

2.STM32驱动LCD1602液晶显示屏,实时动态显示步数的数据以及显示行走的距离,第二行数据显示步数,和走路的距离,;

3.DS18B20温度传感器可以检测温度的数据,将温度的数据显示在液晶显示屏上面;

4.心率光电检测传感器实时监测心率脉搏心跳数据,显示在液晶显示屏上面;

5.板载复位开关,重新清零,可以按下复位按键,重新开始计算步数和距离;

6.蓝牙模块可与手机相连接,并将数据上传至APP,实现手机实时监控;

二、原理图

三、部分代码

#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include <stdio.h>
#include "timer.h"
#include "key.h"
#include "exti.h"
#include "adxl345.h"
#include "lcd1602.h"
#include "ds18b20.h"unsigned char ReadAdxl345;                                              /* 定时读取adxl345数据          */
unsigned char ErrorNum=0;                                               /* 记录错误次数                 */
unsigned char CheckNum=0;                                               /* 检测次数                     */char dis0[16];                                                          /* 液晶数组显示暂存             */
char dis1[35];unsigned int xlTab[5];                                                  /* 心率数组                     */
unsigned char count=0;                                                  /* 心率滤波计数                 */
unsigned int xinLater=0;                                                /* 心率延时处理                 */
unsigned int xinLv =0;                                                  /* 心率值                       */unsigned int BuShu=0;                                                   /* 步数                         */
unsigned int Normal_num=0;                                              /* 正常次数                     */
unsigned int Error_num=0;                                               /* 倾斜次数                     */unsigned int disBuShu = 0;                                              /* 显示步数                     */
float disJuLi = 0;                                                      /* 显示距离                     */
float temperature;                                                      /* 温度                         */
unsigned char readTemp = 0;                                             /* 读取温度标志                 */int main(void)
{delay_init();                                                       /* 延时函数初始化               */uart_init(9600);                                                    /* 串口初始化为9600             */TIM3_Int_Init(49,7199);                                             /* 50ms                         */EXTIX_Init();                                                       /* 初始化外部中断               */LED_Init();                                                         /* 初始化与LED连接的硬件接口    */KEY_Init();                                                         /* 初始化按键                   */Lcd_GPIO_init();                                                    /* 初始化lcd引脚                */Lcd_Init();                                                         /* 初始化lcd屏幕                */delay_ms(200);Init_ADXL345();if(Single_Read_ADXL345(0X00)==0xe5){delay_ms(5);}else{delay_ms(3);}while(1){if(ReadAdxl345== 1)                                             /* 定时读取adxl345数据          */{ReadAdxl345= 0;ReadData_x();                                               /* 三轴检测函数                 */CheckNum++;if((temp_Y>450)||(temp_Y<-450))                             /* 查看正常次数                 */{Normal_num++;                                           /* 正常次数++                   */}else{Error_num++;                                            /* 倾斜次数                     */}if((Error_num!=0)&&(Normal_num!=0))                         /* 检测到步数                   */{BuShu++;                                                /* 步数脉冲量++                 */Error_num=0;                                            /* 清除一个周期检测             */Normal_num=0;}}if(disFlag==1)                                                  /* 显示标志                     */{disFlag = 0;readTemp++;                                                 /* 定时计数                     */if(readTemp >= 8)                                           /* 约800ms处理一次数据 温度     */{readTemp =0;                                            /* 重新计数                     */temperature=(float)DS18B20_Get_Temp()/10;               /* 缩小10倍为实际值             */}disBuShu = BuShu/2;                                         /* 显示步数                     */disJuLi = disBuShu*0.45;                                    /* 显示距离                     */sprintf(dis0,"X:%03d/min %4.1f C",xinLv,temperature);       /* 打印                         */Lcd_Puts(0,0,(unsigned char *)dis0);                        /* 显示                         */Lcd_1Put(14,0,0xdf);                                        /* 显示符号                     */sprintf(dis1,"BS:%03d JL:%4.1fm  ",disBuShu,disJuLi);       /* 打印                         */Lcd_Puts(0,1,(unsigned char *)dis1);                        /* 显示                         */}}
}

基于STM32蓝牙无线手环脉搏心率计步器体温监测设计相关推荐

  1. 基于STM32蓝牙智能手环脉搏心率计步器体温显示设计

    基于STM32蓝牙智能手环脉搏心率计步器体温显示设计 本设计由STM32F103C8T6单片机核心板电路+ADXL345传感器电路+心率传感器电路+温度传感器+lcd1602电路组成. 1.通过重力加 ...

  2. 基于STM32单片机智能手环脉搏心率计步器体温显示设计

    " 基于STM32单片机智能手环脉搏心率计步器体温显示设计." (获取方式:在"智能车杂谈"微信回复:009). 01 材料准备 清单列表 1.ADXL345模 ...

  3. 基于STM32智能手环心率计步器体温显示设计

    目录 一.项目功能 二.原理图 三.实物照片 四.程序 五.文档资料 一.项目功能 本设计由STM32F103C8T6单片机核心板电路+ADXL345传感器电路+心率传感器电路+温度传感器+lcd16 ...

  4. 基于单片机节日彩灯控制器系统设计、基于单片机脉搏检测和体温检测设计、基于单片机可燃气体检测及报警系统、基于单片机可调八路抢答器仿真设计-全套设计资料

    1425基于单片机节日彩灯控制器系统设计-protues仿真资料 以单片机为核心,设计一个节日彩灯控制器: l  K1-开始,按此键则灯开始流动(由上而下). l  K2-停止,按此键则停止流动,所有 ...

  5. 基于STM32人群定位,调速智能风扇设计

    基于STM32人群定位,调速智能风扇设计(论文,源码,流程图,设计报告) 1.本系统采用 STM32 , ATmega16 , AT89S52 三款单片机为控制器, 分为主控台和工 作区两部分. 2. ...

  6. 【全套资料.zip下载】数电课设-脉搏心率测量电路Multisim仿真设计【Multisim仿真+报告+讲解视频.zip下载】

    文章目录 数电课设-脉搏心率测量电路Multisim仿真设计[Multisim仿真+报告+演示视频.zip] 一.Multisim仿真源文件 二.仿真视频原理讲解 三.原理文档报告 资料下载[Mult ...

  7. B45 - 基于STM32单片机的家庭防火防盗系统的设计

    文章目录 设计要求 实物 人脸识别模块的调试 传感器采集与显示 模块设计 温湿度模块 烟雾浓度MQ2 GSM模块 人脸识别模块 语音报警模块 资源占用 源程序 主程序 处理逻辑 AD/DA转换检测烟雾 ...

  8. 基于STM32单片机的智能手环心率计步器体温显示方案原理图程序设计

    硬件电路的设计 (末尾附文件) 3.1系统的功能分析及体系结构设计 3.1.1系统功能分析 本设计由STM32F103C8T6单片机核心板电路+ADXL345传感器电路+心率传感器电路+温度传感器+l ...

  9. 基于51单片机的脉搏心率心跳血压体温测量检测仿真(仿真+原理图+源码+论文)

     资料编号:057 本设计利用红外光电传感器产生脉冲信号,经过放大整形后,输入单片机内进行相应的控制,从而测量出一分钟内的脉搏跳动次数,快捷方便.测量范围限可以用按键调节,并进行声音报警,测量结果以数 ...

最新文章

  1. Android onAttach 的使用
  2. python快速编程入门教程-终于懂得python快速编程入门教程
  3. DEDE模板教程【Mytag 标记】
  4. 【中级软考】前驱图是什么?(貌似又名“前趋图”)
  5. Deep Compression阅读理解及Caffe源码修改
  6. twitter api使用_使用P2创建自己的Twitter风格的组博客
  7. 官宣了!受疫情影响,程序员可免费领这些!
  8. 传文件 华为云桌面_怎么避免亚马逊账号关联(二)?阿里云华为云ECS远程桌面教程...
  9. multiprocessing.queue取数据要加锁么_秒杀抢购思路以及高并发下数据安全
  10. 计算机百科丨存储介质发展史
  11. monodepth2训练细节
  12. macOS safari安装第三方插件
  13. 挖掘数百万参与的IMVU用户
  14. 我的世界服务器无限耐久护甲,我的世界无限耐久指令 | 手游网游页游攻略大全...
  15. CSS复合选择器---后代选择器、子选择器、并集选择器、伪类选择器
  16. MacOS 开发 — App多开
  17. 解决Google Chrome浏览器字体模糊的问题
  18. linux_网络配置
  19. 从SQLserver中导出表数据到Access
  20. LED的高显指是什么意思?

热门文章

  1. 用友BIP对接外部旺店通企业版奇门系统
  2. iOS开发- ios学习资源(持续更新)
  3. 关于ceph的一些问题及解决
  4. 不小心删除文件夹怎么恢复,怎么恢复误删文件?
  5. Atcoder TOYOTA SYSTEMS Programming Contest 2021(AtCoder Beginner Contest 228) B - Takahashi‘s Secret
  6. Android反模拟器的总结
  7. 计算机网络常用相关术语大全
  8. [Halcon] WriteImage保存图像崩溃问题
  9. CSS和CSS3选择器
  10. 这5个PNG免抠素材网站,可商用,赶紧马住了