OpenEdv-开源电子网

 找回密码
 立即注册

扫一扫,访问微社区

正点原子新作:阿波罗STM32F767&F429&探索者STM32F4开发板&赶快来下载资料哦。

楼主: 空心杯

移植Arduino的max30100心率传感器模块函数

[复制链接]

  离线 

1

主题

7

帖子

0

精华

新手上路

Rank: 1

积分
22
金钱
22
注册时间
2016-11-22
在线时间
2 小时
发表于 2016-12-3 10:54:12 | 显示全部楼层
正点原子公众号
楼主楼主,你上拉电阻是在模块上加的还是在max上加的呀。
模块上好像自带4.7k电阻,不过供电时1.8v的,stm32的供电是3.3v。
所以我现在很纳闷这个上拉电阻的电源到底应该是多少伏的。
现在用的模块自带的上拉电阻,1.8v供电,你们的代码都认真参考了,温度可以正常显示,但是fifo死活读不出来,读出来的都是1.
不知道是硬件问题还是时序问题。
所以想问下楼主现在的硬件是模块外又加了3.3v 4.7k的上拉电阻还是在max外加的3.3v 4.7k上拉电阻呀
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2016-12-3 16:02:22 | 显示全部楼层
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2016-12-3 16:03:00 | 显示全部楼层
空心杯 发表于 2016-12-3 16:02
我是在外部加4.7K上拉电阻3.3V电压

硬件模块并没有更新,这的确,,,有点坑的感觉
回复

使用道具 举报

  离线 

1

主题

11

帖子

0

精华

新手上路

Rank: 1

积分
48
金钱
48
注册时间
2016-12-1
在线时间
4 小时
发表于 2016-12-5 16:28:36 | 显示全部楼层
谁能帮个忙啊,读出了数据后,如何计算出心率血氧呢
回复

使用道具 举报

  离线 

1

主题

6

帖子

0

精华

新手上路

Rank: 1

积分
31
金钱
31
注册时间
2016-11-30
在线时间
3 小时
发表于 2016-12-12 10:01:17 | 显示全部楼层
这款芯片除了能在手指读出心率和血氧,手腕能读出来吗?
回复

使用道具 举报

  离线 

2

主题

10

帖子

0

精华

新手上路

Rank: 1

积分
42
金钱
42
注册时间
2016-12-21
在线时间
6 小时
发表于 2017-1-3 14:22:42 | 显示全部楼层
小小怪 发表于 2016-11-6 20:21
我的平台不是在STM32上的,工程附上太繁琐。把IIC和MAX30100的驱动加载到你的工程里就行了。
while(MAX3 ...

你好。请问有max30100的中文手册吗?实在看英文有困难。能发我一份吗。非常感谢你。984335200@qq.com
回复

使用道具 举报

  离线 

2

主题

10

帖子

0

精华

新手上路

Rank: 1

积分
42
金钱
42
注册时间
2016-12-21
在线时间
6 小时
发表于 2017-1-3 14:25:36 | 显示全部楼层
你一移植成功了吗?可不可以参考下。我买传感器自带的stm32程序,但还是不行
回复

使用道具 举报

  离线 

3

主题

99

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
493
金钱
493
注册时间
2014-2-24
在线时间
183 小时
发表于 2017-1-3 15:49:30 | 显示全部楼层
HTQ 发表于 2017-1-3 14:22
你好。请问有max30100的中文手册吗?实在看英文有困难。能发我一份吗。非常感谢你。

没有...
回复

使用道具 举报

  离线 

2

主题

10

帖子

0

精华

新手上路

Rank: 1

积分
42
金钱
42
注册时间
2016-12-21
在线时间
6 小时
发表于 2017-1-9 21:44:55 | 显示全部楼层
空心杯 发表于 2016-11-6 20:21
可以啊兄弟,我的加了4.7K,3.3V上拉电阻,现在心率读出来了,SpO2总是100和0,不知道是不是时序的问题

您好,工程文件能不能参考一下。手册看不太懂。谢谢您啦。
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2017-1-13 21:07:07 | 显示全部楼层
HTQ 发表于 2017-1-9 21:44
您好,工程文件能不能参考一下。手册看不太懂。谢谢您啦。

不好意思最近忘了看论坛了
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2017-1-13 21:11:44 | 显示全部楼层
HTQ 发表于 2017-1-9 21:44
您好,工程文件能不能参考一下。手册看不太懂。谢谢您啦。

上了

心率.zip

4.17 MB, 下载次数: 3837

回复

使用道具 举报

  离线 

5

主题

100

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
429
金钱
429
注册时间
2014-10-23
在线时间
141 小时
发表于 2017-1-17 09:54:45 | 显示全部楼层

你这个成功读取心率血氧数据了吗?想借鉴一下。
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2017-2-6 09:55:18 | 显示全部楼层
成功了啊
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2017-2-6 09:55:53 | 显示全部楼层
卡塔之魂 发表于 2017-1-17 09:54
你这个成功读取心率血氧数据了吗?想借鉴一下。

成功了啊,用示波器看过了的
回复

使用道具 举报

  离线 

5

主题

100

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
429
金钱
429
注册时间
2014-10-23
在线时间
141 小时
发表于 2017-2-8 17:23:15 | 显示全部楼层
空心杯 发表于 2017-2-6 09:55
成功了啊,用示波器看过了的

好的,多谢分享,新年快乐!
回复

使用道具 举报

  离线 

6

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
76
金钱
76
注册时间
2013-10-5
在线时间
15 小时
发表于 2017-2-9 14:02:46 | 显示全部楼层

请问一下,工程中算法有关的文件是美信提供的还是自己写的,在搞max30101中,得到了red,ir,green数据,不知道怎么转换为心率血氧
回复

使用道具 举报

  离线 

6

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
76
金钱
76
注册时间
2013-10-5
在线时间
15 小时
发表于 2017-2-10 10:04:24 | 显示全部楼层
小小怪 发表于 2016-11-11 13:41
测脉搏3跳、5跳.....越大  测出的脉搏数/分钟  越准,3跳误差±3内;
血氧只是理 论 的 公式上得出了, ...

算法有代码吗,想参考一下,谢谢啦
回复

使用道具 举报

  离线 

3

主题

99

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
493
金钱
493
注册时间
2014-2-24
在线时间
183 小时
发表于 2017-2-10 10:25:37 | 显示全部楼层
yutiaqnxiang618 发表于 2017-2-10 10:04
算法有代码吗,想参考一下,谢谢啦

再等一个星期,把手头上其他工作弄完再整理出来
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2017-2-10 12:36:24 | 显示全部楼层
yutiaqnxiang618 发表于 2017-2-9 14:02
请问一下,工程中算法有关的文件是美信提供的还是自己写的,在搞max30101中,得到了red,ir,green数据, ...

同学,讲真的我是不懂算法的,我是达到测心率目的就行了
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2017-2-10 12:38:35 | 显示全部楼层
tlpeng 发表于 2016-12-3 10:54
楼主楼主,你上拉电阻是在模块上加的还是在max上加的呀。
模块上好像自带4.7k电阻,不过供电时1.8v的,stm ...

那个模块上面没得4.7K的好像,我之前差点把自己搞疯了,才发现没得上拉电阻,供电没问题的,模块就用3.3的供电,但是你单独搞芯片的话,就得看看模块上面那个稳压芯片的输出了,或者你直接看看MAX30100的芯片数据手册
回复

使用道具 举报

  离线 

0

主题

4

帖子

0

精华

新手上路

Rank: 1

积分
28
金钱
28
注册时间
2017-2-10
在线时间
7 小时
发表于 2017-2-10 14:40:57 | 显示全部楼层
请问楼主,您是怎么样用示波器验证结果的?
回复

使用道具 举报

  离线 

0

主题

4

帖子

0

精华

新手上路

Rank: 1

积分
28
金钱
28
注册时间
2017-2-10
在线时间
7 小时
发表于 2017-2-10 15:01:53 | 显示全部楼层
tlpeng 发表于 2016-12-3 10:54
楼主楼主,你上拉电阻是在模块上加的还是在max上加的呀。
模块上好像自带4.7k电阻,不过供电时1.8v的,stm ...

兄弟,你试过了吗
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2017-2-12 10:23:57 | 显示全部楼层
东风不可逆 发表于 2017-2-10 14:40
请问楼主,您是怎么样用示波器验证结果的?

我用匿名的飞控上位机看的
回复

使用道具 举报

  离线 

1

主题

7

帖子

0

精华

新手上路

Rank: 1

积分
22
金钱
22
注册时间
2016-11-22
在线时间
2 小时
发表于 2017-2-12 10:27:36 | 显示全部楼层

没调通。。。
回复

使用道具 举报

  离线 

0

主题

1

帖子

0

精华

新手上路

Rank: 1

积分
11
金钱
11
注册时间
2017-2-12
在线时间
0 小时
发表于 2017-2-13 15:20:40 | 显示全部楼层
有数据处理算法吗??
回复

使用道具 举报

  离线 

2

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2016-12-5
在线时间
29 小时
发表于 2017-2-14 17:19:18 | 显示全部楼层
楼主,你得到的心率数值是使用串口调试助手看到的吗?我把你的工程移植过去直接printf(“%d\r\n”,HR),打印出来的一直是0
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2017-2-15 21:48:04 | 显示全部楼层
lovezhang 发表于 2017-2-14 17:19
楼主,你得到的心率数值是使用串口调试助手看到的吗?我把你的工程移植过去直接printf(“%d\r\n”,HR),打 ...

你的模块外接上拉电阻没有?
回复

使用道具 举报

  离线 

2

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2016-12-5
在线时间
29 小时
发表于 2017-2-16 11:56:03 | 显示全部楼层
空心杯 发表于 2017-2-15 21:48
你的模块外接上拉电阻没有?

但是模块上有三个472电阻啊,断了原来的1.8v飞线之后测了那三个电阻3.3v左右
回复

使用道具 举报

  离线 

6

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
76
金钱
76
注册时间
2013-10-5
在线时间
15 小时
发表于 2017-2-17 16:21:13 | 显示全部楼层
小小怪 发表于 2016-11-11 13:41
测脉搏3跳、5跳.....越大  测出的脉搏数/分钟  越准,3跳误差±3内;
血氧只是理 论 的 公式上得出了, ...

请问交流分量和直流分量怎么得出来的,现在方便把计算心率和血氧的代码贴出来吗,谢谢!
回复

使用道具 举报

  离线 

0

主题

3

帖子

0

精华

新手上路

Rank: 1

积分
21
金钱
21
注册时间
2017-2-16
在线时间
2 小时
发表于 2017-2-22 19:14:34 | 显示全部楼层
本帖最后由 mzcry 于 2017-2-22 19:17 编辑
lovezhang 发表于 2017-2-16 11:56
但是模块上有三个472电阻啊,断了原来的1.8v飞线之后测了那三个电阻3.3v左右

Max 自己出的一款模块板maxrefdes117里面,使用了自家的一颗电平转换芯片max14595来将1.8V和外部器件的电平进行电平转换,所以它的SDA 和SCL 都是上拉到1.8V 的,然后通过电平转换芯片后的SDA 和SCL 上拉到外部器件的电平上(比如3.3V)。但是MAX30102的规格书里有一个Typical Application Circuit(第31页)里SDA,SCL,INT都是上拉到VDDIO电平上的,图中这个VDDIO是外部主机器件的IO电平,所以不知道是否也可以这样用,经过实测是没问题的,可以用。

所以网上买的那种40块左右的评估板,需要将原来上拉 到1.8V的线割断,然后上来到外部主机的电平上就好了(除非外部器件也正好是1.8V供电)。
回复

使用道具 举报

  离线 

16

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
337
金钱
337
注册时间
2016-8-25
在线时间
33 小时
发表于 2017-2-26 20:41:07 | 显示全部楼层
qingyulv 发表于 2016-12-5 16:28
谁能帮个忙啊,读出了数据后,如何计算出心率血氧呢

你好,可以把读出数据的源程序发一下吗?不胜感激
回复

使用道具 举报

  离线 

16

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
337
金钱
337
注册时间
2016-8-25
在线时间
33 小时
发表于 2017-2-26 21:17:57 | 显示全部楼层
空心杯 发表于 2017-2-12 10:23
我用匿名的飞控上位机看的

请问如何设置开启转换,和关闭转换。谢谢
回复

使用道具 举报

  离线 

16

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
337
金钱
337
注册时间
2016-8-25
在线时间
33 小时
发表于 2017-2-27 18:16:52 | 显示全部楼层
小小怪 发表于 2016-11-11 13:41
测脉搏3跳、5跳.....越大  测出的脉搏数/分钟  越准,3跳误差±3内;
血氧只是理 论 的 公式上得出了, ...

你好,可以分享一下你的源程序吗?不胜感激。现在主要不知道如何控制开始转换
回复

使用道具 举报

  离线 

2

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2017-3-11
在线时间
28 小时
发表于 2017-3-11 12:03:24 | 显示全部楼层
有人下载了,楼主分享的心率工程文件吗?为什么我点不开呢?好像是没有.uvproj 。请指教
回复

使用道具 举报

  离线 

16

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
337
金钱
337
注册时间
2016-8-25
在线时间
33 小时
发表于 2017-3-11 19:23:53 | 显示全部楼层
小小怪 发表于 2016-11-6 11:49
你的时序没有弄好吧,注意标准IIC的地址哦。我的脉搏和血氧都出来了。

请问为什么我的经过滤波器之后波形效果不好,是怎么回事
滤除高频信号脉搏波.png
回复

使用道具 举报

  离线 

3

主题

99

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
493
金钱
493
注册时间
2014-2-24
在线时间
183 小时
发表于 2017-3-13 00:24:24 | 显示全部楼层
mxiaotao 发表于 2017-3-11 19:23
请问为什么我的经过滤波器之后波形效果不好,是怎么回事

这很像静态噪声,估计是手指没有放在上面。
回复

使用道具 举报

  离线 

16

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
337
金钱
337
注册时间
2016-8-25
在线时间
33 小时
发表于 2017-3-13 15:05:56 | 显示全部楼层
小小怪 发表于 2017-3-13 00:24
这很像静态噪声,估计是手指没有放在上面。

这是放了手指之后,去除直流信号和滤波之后的波形
回复

使用道具 举报

  离线 

5

主题

100

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
429
金钱
429
注册时间
2014-10-23
在线时间
141 小时
发表于 2017-3-14 08:44:23 | 显示全部楼层
本帖最后由 卡塔之魂 于 2017-3-14 08:49 编辑
mxiaotao 发表于 2017-3-11 19:23
请问为什么我的经过滤波器之后波形效果不好,是怎么回事

你这个波形是怎么显示出来的,Excel自动描点的么?
回复

使用道具 举报

  离线 

3

主题

99

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
493
金钱
493
注册时间
2014-2-24
在线时间
183 小时
发表于 2017-3-14 09:04:22 | 显示全部楼层
卡塔之魂 发表于 2017-3-14 08:44
你这个波形是怎么显示出来的,Excel自动描点的么?

我自己写的一个绘图窗口,传原始数据到PC,PC端做数据处理
回复

使用道具 举报

  离线 

16

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
337
金钱
337
注册时间
2016-8-25
在线时间
33 小时
发表于 2017-3-14 17:58:57 | 显示全部楼层
卡塔之魂 发表于 2017-3-14 08:44
你这个波形是怎么显示出来的,Excel自动描点的么?

对,也可以用matlab处理
回复

使用道具 举报

  离线 

16

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
337
金钱
337
注册时间
2016-8-25
在线时间
33 小时
发表于 2017-3-14 17:59:28 | 显示全部楼层
小小怪 发表于 2017-3-14 09:04
我自己写的一个绘图窗口,传原始数据到PC,PC端做数据处理

可以请教一下在PC上如何处理的吗?
回复

使用道具 举报

  离线 

3

主题

99

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
493
金钱
493
注册时间
2014-2-24
在线时间
183 小时
发表于 2017-3-14 18:08:07 | 显示全部楼层
mxiaotao 发表于 2017-3-14 17:59
可以请教一下在PC上如何处理的吗?

这贴有说
回复

使用道具 举报

  离线 

16

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
337
金钱
337
注册时间
2016-8-25
在线时间
33 小时
发表于 2017-3-14 20:29:37 | 显示全部楼层

可以再具体说一下吗?
步骤是了解了,但是具体如何实现确实不会弄
回复

使用道具 举报

  离线 

16

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
337
金钱
337
注册时间
2016-8-25
在线时间
33 小时
发表于 2017-3-14 20:36:08 | 显示全部楼层
还有一个问题就是波形处理不好
回复

使用道具 举报

  离线 

2

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2017-3-11
在线时间
28 小时
发表于 2017-3-19 10:49:22 | 显示全部楼层
本帖最后由 ygxdh 于 2017-3-19 10:55 编辑
a514582920 发表于 2016-11-1 09:08
之前温度不对的问题已经解决了,是iic时序不对;现在的主要问题是如何设置红灯和红外灯控制寄存器,采集血 ...

大神。我现在也在用max30102测量心率、血氧饱和度。之前也参考了一下Aruino和楼主的程序,现在移植到stm32里面,读取值要么是0,要么是-999.能不能参考一下你的程序呢?
捕获.JPG
回复

使用道具 举报

  离线 

2

主题

21

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
208
金钱
208
注册时间
2016-6-11
在线时间
42 小时
发表于 2017-3-19 15:32:10 | 显示全部楼层

楼主,我用了楼主的程序,但是数据全是0,在程序里也找不到INT  R0  IR0这三条线接哪?  楼主能告诉下吗?  谢谢你
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2017-3-22 12:47:09 | 显示全部楼层
zach_iot 发表于 2017-3-19 15:32
楼主,我用了楼主的程序,但是数据全是0,在程序里也找不到INT  R0  IR0这三条线接哪?  楼主能告诉下吗 ...

操作那个芯片用不到其他线的,如果用不到低耗电模式的话,只要SDA SCL就可以了
回复

使用道具 举报

  离线 

2

主题

21

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
208
金钱
208
注册时间
2016-6-11
在线时间
42 小时
发表于 2017-3-23 23:11:37 | 显示全部楼层
空心杯 发表于 2017-3-22 12:47
操作那个芯片用不到其他线的,如果用不到低耗电模式的话,只要SDA SCL就可以了

好的    谢谢你  
回复

使用道具 举报

  离线 

12

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
287
金钱
287
注册时间
2016-7-20
在线时间
33 小时
 楼主| 发表于 2017-3-28 22:13:01 | 显示全部楼层

仔细读一读芯片的数据手册,相信会有很大的好处的
回复

使用道具 举报

  离线 

2

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2017-3-11
在线时间
28 小时
发表于 2017-3-30 11:30:42 | 显示全部楼层
本帖最后由 ygxdh 于 2017-3-30 11:32 编辑

请问楼主大人,你分享的程序里面这3个数字2.43,55,20.576是怎么出来的呢?求解释,谢谢啦@空心杯
捕获.JPG
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则





QQ|联系我们|手机版|官方淘宝店|新浪微博|微信公众平台|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2017-10-19 04:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表
/* */