From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

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,531 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,424 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,300 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,130 Views)