VeriStand

cancel
Showing results for 
Search instead for 
Did you mean: 

How to evaluate 64 bit return code from realtime sequence

Hello,

 

I'm using the ExecuteAsync method of the StimulusProfile Class to execute a stimulus profile. The stimulus profile only contains one entry: A call to a realtime sequence.

 

After the profile has finished executing I retrieve the return code of the realtime sequence by opening the result XML-File. 

 

The xml-node of intrest might light look this:

<TestResult ID="ReturnValue">
   <TestData>
          <Datum xsi:type="unsignedInteger" value="2147516544" xmlns="http://www.ieee.org/ATML/2006/Common" />
    </TestData>

...

 

My problem is that the "value" attribute seems to be limited to 32 Bit. The upper 32 Bit of my 64 Bit return code are simply cutoff. How do I get the complete return code?

 

After I ran into this problem when using the .NET API, I tried to do a "NumericBoundsCheck" evaluation using the Stimulus Profile Editor. As expected, it doesn't work correctly when working with values > 2^32 - 1.

 

I'm using VeriStand 2012.

 

Thanks

0 Kudos
Message 1 of 4
(5,513 Views)

Hi Krid,

 

could you post a small piece of example code, that we can execute and see the behaviour? 

 

 

0 Kudos
Message 2 of 4
(5,406 Views)

Hello Gregor,

 

I don't think it's necessary to post example code. Just return a value >= 2^32 from a realtime sequence and you will see that the evaluation in the realtime stimulus editor does not work correctly. Also, in the resulting XML-File, the return value will be truncated to 32 Bit.

 

Meanwhile I have found that this this issue has already been discussed on this board (http://forums.ni.com/t5/NI-VeriStand/ATML-return-value-does-not-return-Uint64/m-p/2848796#M3649), but no solution was proposed so far.  

 

I now run my realtime sequence using the ClientAPI. This allows me to evaluate the full 64Bit.

 

Regards

Krid

0 Kudos
Message 3 of 4
(5,282 Views)

This has been reported to R&D under CAR# 495124 for further investigation.

 

This issue is due to the fact that VeriStand is using an older version of the ATML test results schema that does not support the 64-bit long data type, only the 32-bit int data type. Therefore Stimulus Profile results data cannot contain 64-bit integers.

Jarrod S.
National Instruments
0 Kudos
Message 4 of 4
(5,112 Views)