How do I return a pointer for the Aardvark API?

1 view (last 30 days)
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 Comment
Philip Borghesani
Philip Borghesani on 14 Jul 2014
libpointer objects are only for use with the calllib command. No .net or other method will recognize them.

Sign in to comment.

Accepted Answer

Michael
Michael on 14 Jul 2014
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 Comment
Jeff Baker
Jeff Baker on 17 Jan 2018
I have the oppositie problem- the counts are simply returned but the values are passed by reference. Did your code successfully return the values?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!