📄 readecgdata.m
字号:
function [s,sfreq]=ReadECGData(file,lead)
PATH='./';
HEADERFILE=strcat(file,'.hea');
DATAFILE=strcat(file,'.dat');
ATRFILE=strcat(file,'.atr');
SAMPLES2READ=1000000;
%------ LOAD HEADER DATA --------------------------------------------------
signalh= fullfile(PATH, HEADERFILE);
fid1=fopen(signalh,'r');
z= fgetl(fid1);
A= sscanf(z, '%*s %d %d %d',[1,3]);
nosig= A(1); % number of signals
sfreq=A(2); % sample rate of data
clear A;
for k=1:nosig
z= fgetl(fid1);
A= sscanf(z, '%*s %d %d %d %d %d',[1,5]);
dformat(k)= A(1); % format; here only 212 is allowed
gain(k)= A(2); % number of integers per mV
bitres(k)= A(3); % bitresolution
zerovalue(k)= A(4); % integer value of ECG zero point
firstvalue(k)= A(5); % first integer value of signal (to test for errors)
end;
fclose(fid1);
clear A;
%------ LOAD BINARY DATA --------------------------------------------------
signald= fullfile(PATH, DATAFILE); % data in format 212
fid2=fopen(signald,'r');
A= fread(fid2, [12, SAMPLES2READ], 'int16')'; % matrix with 3 rows, each 8 bits long, = 2*12bit
fclose(fid2);
s=A(:,lead);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -