⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 file.m

📁 使用C8051F实现脉搏及血氧饱和度测量 包括均值滤波
💻 M
字号:
fid=fopen('c:\record.txt')
Data=fscanf(fid,'%d')
fclose(fid);
datared=Data(1:length(Data)/2)'
dataired=Data(length(Data)/2+1:length(Data))'

datared=(datared-min(datared)).*255/(max(datared)-min(datared))
subplot(4,1,1)
plot(datared)
axis([1 length(datared) 0 255])

% subplot(2,1,2)
% z=fft(datared)
% plot(abs(  z(2:length(z))  ))

x=datared
y=zeros(1,length(x)+7)
for i=0:1:7
    temp=[zeros(1,i),x,zeros(1,7-i)]
    y=y+temp
end
y=round(y./8)
for i=1:1:7
    y(i)=x(i)
end
y=y( 1:length(x) )
subplot(4,1,2)
plot(y)
axis([1 length(y) 0 255])

s=zeros(1,length(y))
H=30
k=7
for i=k+1:length(y)
    if y(i-k)-y(i)>H
        s(i)=y(i-k)-y(i)
    end 
end
subplot(4,1,3)
plot(s)
axis([1 length(y) 0 max(s)+H/2])

d=zeros(1,length(s))
for i=2:length(s)-1
    if s(i)>s(i-1) && s(i)>s(i+1)
        d(i)=200;
    end
end
subplot(4,1,4)
stairs(d)
axis([1 length(d) 0 255])


% x=y
% y=zeros(1,length(datared))
% for n=1:3
% y(n)=x(n);
% end
% for n=4:1:length(datared)-3
% y(n)=( -2*x(n-3)+3*x(n-2)+6*x(n-1)+7*x(n)+6*x(n+1)+3*x(n+2)-2*x(n+3) )/21
% end
% subplot(2,1,2)
% plot(y)
% axis([1 length(y) 0 255])




% dataired=(dataired-min(dataired))*255/(max(dataired)-min(dataired))
% subplot(4,1,4)
% plot(dataired)
% axis([1 length(dataired) 0 255])

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -