查看: 536|回复: 1

【开源教程9】疯壳·开源蓝牙心率防水运动手环-心率监测

[复制链接]
  • TA的每日心情
    开心
    2022-4-17 15:37
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2022-8-18 13:48:14 | 显示全部楼层 |阅读模式
    分享到:
    开源蓝牙心率防水运动手环
    ——疯壳·智能穿戴开发系列   
    心率监测   




        1心率测量原理简介

        我们手环的心率测量, 采用的是 PPG 光电容积脉搏波描记法原理(PhotoPlethysmoGraphy)。简单来说,就是利用血液中透光率的脉动变化,折算成电信号,对应的就是心率。
        当一定波长的光束照射到皮肤表面时,光束将通过反射方式传送到光电接收器,在此过程中由于受到皮肤肌肉和血液的吸收衰减作用,检测器检测到的广强度将减弱。其中皮肤、肌肉组织等对光的吸收在整个血液循环中是保持恒定不变的,而皮肤内的血液,容积在心脏作用下呈搏动性变化。当心脏收缩时外周血容量最多光吸收量也最大,检测到的反射光强度最小。而在心脏舒张时,检测到的光强度最大,使光接收器接收到的光强度随之呈脉动性变化。最后,我们通过DA14580 的 ADC 采集光接收器的电信号,计算出心率。
        2硬件设计

        我们的心率传感器由两部分组成,如下图所示。

        第一个张图 HY1303 其实是一个 LED 和一个光传感器,将采集到的光强转换成电压,从第 6 引脚输出。然后通过第二张图 HY232 放大电压。

    1.png    
        图 1

    2.png    
        图 2

        3软件设计


        第一步,就是系统的初始化。

    代码1.png    
        代码1

        由于本次要使用串口打印,我们就设置串口管脚,使能串口,对串口进行初

        始化。
        GPIO_ConfigurePin(UART2_GPIO_PORT, UART2_TX_PIN, OUTPUT, PID_UART2_TX, false);
        GPIO_ConfigurePin(UART2_GPIO_PORT, UART2_RX_PIN, INPUT, PID_UART2_RX, false);
        SetBits16(CLK_PER_REG, UART2_ENABLE, 1);
        // Initialize UART component
        uart2_init(UART2_BAUDRATE, UART2_DATALENGTH);
        我们的心率需要的采样周期是 4ms 到 10ms,这里用 的是 10ms,就需要通过 void my_timer_init(void)开启一个定时器。

    代码2.png
        代码2


        每 过 10ms , 定 时 器 0 就 会 产 生 一 次 中 断 , 进 入 回 调 函 数

        timer0_general_user_callback_function,在回调函数中,我们就使用 ADC 采集数据。
        最后通过函数 ADC_CAPTRUE(adc_heart ,&hr_capture)就可以得到心率值。adc_hreat 是 ADC 数字电压,hr_capture 就是心率值了。

    代码3.png    
        代码3

    代码4.png    
        代码4

        4实验现象

        首先,插好 Jlink 和 USB 转串口,然后打开打开串口调试助手。


        (1)选择串口号,我们图中是 COM1,这个根据实际情况选择。

        (2)配置串口参数,波特率为 115200,数据位 8,停止位 1,没有校验位和控制流,与下图一致。
        (3)点击打开串口。

    3.png   
        图 3
        配置完串口之后,打开我们提供的代码。

        (1)点击仿真按键。

    4.png    
        图 4
        (2)点击运行代码。
           
    5.png    
        图5


        完成之后,就能看到串口调试助手接收框信息如下。

    6.png   
        图 6



    配套资料:https://www.fengke.club/GeekMart/su_fkZyGYgrp.jsp
    配套视频:https://www.fengke.club/GeekMart/su_fTSgUL3y3.jsp

    如需定制开发,请通过官网“疯壳”网页底部的“联系我们”进行联系

    文件下载请点击: 7_(100%开源)蓝牙心率防水运动手环_心率监测.pdf (677.56 KB, 下载次数: 1)
    回复

    使用道具 举报

  • TA的每日心情
    开心
    前天 10:25
  • 签到天数: 392 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2022-8-23 09:17:49 | 显示全部楼层
    谢谢楼主分享!!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-4-29 17:32 , Processed in 0.130871 second(s), 21 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.