请问一下各位信号采集领域专家,如何能够实现采样时间的条件控制。
例如:下面的代码是我用MATLAB给NI数据采集卡设置的初始参数,我采集的是方波信号,采样时间设置的是30秒,现在我希望能够采集三十个上升沿就让采样停止,如何实现?
global time;
global T;
s=daq.createSession('ni');
addAnalogInputChannel(s,'Dev1','ai3','Voltage');%添加周期T采样通道
s.Rate=20000;%设置采样率
s.DurationInSeconds=30;%设置采样时间
set(s.Channels,'InputType','SingleEnded');%设置单端输入
set(s.Channels,'Range',[-10 10]);%设置采样范围
[data,time]=s.startForeground;
da_1=data(:,1);
TU=da_1;
dela = TU(2:end)- TU(1:end-1);
aa = dela>3;
dela = TU(2:end)- TU(1:end-1);
aa = dela>3;%aa是代表上升沿;
cnt = sum(aa)/2;
T=30/cnt;%周期代表30秒内方波的个数;