Callback function pointer in Matlab
8 ビュー (過去 30 日間)
古いコメントを表示
I am trying to call a function from Matlab NI daqmx toolbox:
function [status, callbackData] = DAQmxRegisterEveryNSamplesEvent(uint64 task, int32 everyNsamplesEventType, uint32 nSamples, uint32 options, DAQmxEveryNSamplesEventCallbackPtr callbackFunction, void* callbackData)
This function requires a callbackFunction pointer as input but I have no idea how to create that in Matlab and matlab function handle doesn't work for it. Could anyone help me with this issue?
0 件のコメント
回答 (1 件)
Image Analyst
2019 年 12 月 23 日
You put an @ symbol in front of the argument when you call it. For example calling it might look like
[status, callbackData] = DAQmxRegisterEveryNSamplesEvent(task, everyNsamplesEventType,...
nSamples, options, DAQmxEveryNSamplesEventCallbackPtr, @MyCallbackFunction, callbackData)
where you've assigned values for the other arguments. Then you'd define that MyCallbackFunction() function somewhere, like
function results = MyCallbackFunction()
% code...
% The function needs to know what will be given to it when DAQmxRegisterEveryNSamplesEvent() gives stuff to it
% and what kind of data DAQmxRegisterEveryNSamplesEvent() expects to get back after MyCallbackFunction has been executed.
3 件のコメント
Image Analyst
2019 年 12 月 23 日
Then I don't know. Try calling NI tomorrow and asking for sample code.
参考
カテゴリ
Help Center および File Exchange で Instrument Control Toolbox Supported Hardware についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!