How do I return a pointer for the Aardvark API?

I'm using Total Phase's Aardvark USB Adapter and I'm wondering how to return a pointer?
I'm trying to use:
dataOut = [0 18];
dataTargetID = NET.createArray('System.Byte',19);
TotalPhase.AardvarkApi.aa_i2c_write_read(aard_device, slaveAddress, ... TotalPhase.AardvarkI2cFlags.AA_I2C_NO_FLAGS, 2, dataOut, write_count, 19, dataTargetID, read_count);
and I want to get write_count and read_count. From the user manual: http://www.totalphase.com/support/articles/200468316-Aardvark-Adapter-User-Manual#s5.5
it says the input is a unsigned short pointer?
I've tried:
read_count = NET.createArray('System.UInt16',1);
read_count = libpointer('UInt16');
read_count = 0;
but I always get the error:
No method 'aa_spi_slave_read' with matching signature found for class
'TotalPhase.AardvarkApi'.
Thanks!
-Mike

1 个评论

libpointer objects are only for use with the calllib command. No .net or other method will recognize them.

请先登录,再进行评论。

 采纳的回答

Use 'methodsview TotalPhase.AardvarkApi' to see what aa_write_read returns. The read_count and write_count is returned so passing by reference isn't needed

1 个评论

I have the oppositie problem- the counts are simply returned but the values are passed by reference. Did your code successfully return the values?

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by