旧接口matlab中的模拟输入读数不正确

旧接口matlab中的模拟输入读数不正确,matlab,nidaqmx,Matlab,Nidaqmx,我试图使用模拟输入信号触发的目的,但我有一个问题,模拟输入读取。例如,当我发送6V时,我只能读取0.5V,链接中显示的信号形式应该是方脉冲,但显然不是。 我的数据采集卡是NI PCI 6120。我使用MAX软件检查它是否是硬件问题,但它给出了正确的值和信号形式,当我尝试使用基于会话的matlab代码只读取一个模拟输入通道时,我可以得到正确的信号。 我的matlab触发代码中应该有错误。有什么建议吗 dig= digitalio('nidaq','Dev1'); line = addline(di

我试图使用模拟输入信号触发的目的,但我有一个问题,模拟输入读取。例如,当我发送6V时,我只能读取0.5V,链接中显示的信号形式应该是方脉冲,但显然不是。 我的数据采集卡是NI PCI 6120。我使用MAX软件检查它是否是硬件问题,但它给出了正确的值和信号形式,当我尝试使用基于会话的matlab代码只读取一个模拟输入通道时,我可以得到正确的信号。 我的matlab触发代码中应该有错误。有什么建议吗

dig= digitalio('nidaq','Dev1');
line = addline(dio,0:1,'Out');

ai = analoginput('nidaq','Dev1');
channel = addchannel(ai,0:1);

set(ai,'SampleRate',fs);
set(ai,'SamplesPerTrigger',N);
set(ai,'Timeout',10000)


set(ai,'TriggerChannel',channel(1));
set(ai,'TriggerType','Software');
set(ai,'TriggerCondition','Rising');
set(ai,'TriggerConditionValue',0.5);
set(ai,'TriggerDelayUnits','Samples');
set(ai,'TriggerDelay',-3000);
set(ai,'LogFileName','file00.daq')
set(ai,'LoggingMode','Disk&Memory')
putvalue(dig,1)

start (ai)

[data t] = getdata(ai);

putvalue(dio,0)


delete(ai); 
delete(dig);

你在哪里阅读?我在代码中没有看到任何读取值的内容。谢谢,我添加了跳过的行。