这个例子展示了如何在MATLAB继续运行的同时使用回调函数在后台获取数据。
后台获取依赖于回调,以允许您的代码在硬件获取数据时访问数据,并在出现任何错误时作出反应。在本例中,您从带有ID的NI 9205设备获取数据cDAQ1Mod1
使用ScansAvailableFcnCount
属性来触发由ScansAvailableFcn
财产。
创建一个带有模拟输入电压通道的NI数据采集对象cDAQ1Mod1
:
d =采集(“倪”);ch = addinput (d,“cDAQ1Mod1”,“ai0”,“电压”);
创建一个简单的回调函数来绘制获取的数据并将其保存为plotMyData.m
在工作目录中。在文件中输入以下代码:
函数plotMyData (obj evt)% obj是传入的DataAcquisition对象。未使用Evt。data =阅读(obj obj。ScansAvailableFcnCount,“OutputFormat”,“矩阵”);情节(数据)结束
设置回调函数属性以使用函数。
d.ScansAvailableFcn = @plotMyData;
在后台启动采集,运行5秒钟。
开始(d,“持续时间”5))
对着麦克风说话,看情节。它每秒更新10次。