打印

如何使用PSOC3将两种信号分离出来?

[复制链接]
2415|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
打算用PSOC3做血氧饱和度测试,但是红光和红外光透射后产生的信号是在一个通道上的,经过I/V转换后产生的波形在示波器上是这样的。A是红光投过手指后产生的信号,B是红外光投过人体后产生的信号,大概都有7,800mv的直流分量,10——20mv左右的交流分量。现在要把A,B信号分离出来,并且滤除直流分量,只保留交流部分。本来可以用多路输出的模拟开关来实现,但是PSOC3里面没有这个元件,找了两天也没找到合适的模块来实现,不知道在PSOC3中能不能做到分离A,B并且滤除直流信号,用什么模块可以实现,请高手指点。

波形.JPG (37.42 KB )

波形.JPG
沙发
liersong001|  楼主 | 2010-4-16 16:22 | 只看该作者
还有一个问题,在PSOC creator中如何对单个IO口进操作的,使用P1^0;P1_0;P1.0;都报错。

使用特权

评论回复
板凳
god_like| | 2010-4-16 17:06 | 只看该作者
A,B两个信号好像没有大的区别,这个应该比较难分离出来吧

使用特权

评论回复
地板
happytiger2010| | 2010-4-16 17:21 | 只看该作者
分时开断不就可以了吗

使用特权

评论回复
5
淡蓝的天空| | 2010-4-16 17:47 | 只看该作者
穿过手指和穿过人体的信号怎么没有太大的区别啊

使用特权

评论回复
6
liersong001|  楼主 | 2010-4-16 18:05 | 只看该作者
4# happytiger2010 分时开断是可以,不过要在程序里写程序控制,我想应该有模块可以直接实现吧。

使用特权

评论回复
7
liersong001|  楼主 | 2010-4-16 18:06 | 只看该作者
5# 淡蓝的天空 其实A,B都是穿过手指后的信号,不同的是A是红光穿过手指,B是红外光穿过手指。

使用特权

评论回复
8
Apnote| | 2010-4-16 18:22 | 只看该作者
对I/O操作有专门的pin_write()吧

Pin_Write( 1 ); // Turn pin 0 on and pin 1 off
Pin_Write( 2 ); // Turn pin 1 on and pin 0 off

使用特权

评论回复
9
liersong001|  楼主 | 2010-4-16 19:11 | 只看该作者
不能对P0.1;P0.2端口分别操作么?比如拉高P0.1或者查询P0.1的状态。 8# Apnote

使用特权

评论回复
10
llljh| | 2010-4-16 21:39 | 只看该作者
这笑脸多的

使用特权

评论回复
11
liersong001|  楼主 | 2010-4-19 14:31 | 只看该作者
我找到了一种方法,用两个模拟开关,通过定时器设置中断来顺序导通可以实现,不知道谁有更好的方法。

使用特权

评论回复
12
liersong001|  楼主 | 2010-4-19 14:33 | 只看该作者
对单个端口设置的程序我也找到了,是Pin_1_Write(  )和CyPins_ReadPin( Pin_1_RedLED )

使用特权

评论回复
13
juventus9554| | 2010-4-19 22:42 | 只看该作者
觉得你的方案很好了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

74

主题

342

帖子

2

粉丝