DNA/DNR-429-512/566 ARINC 429 Layer
Chapter 2
19
Programming with the High Level API
Tel: 508-921-4600
www.ueidaq.com
Vers:
4.5
Date: December 2013
DNx-429-Chap2x.fm
© Copyright 2013
United Electronic Industries, Inc.
For output channels on the 429-566, no additional parameters are necessary:
2.3
Configuring
the Timing
The application must configure the 429-566 to use the “messaging” timing
mode. Messages are ARINC words, represented in C++ with the structure
tUeiARINCWord
.
The ARINC-566 can be programmed to wait for a certain number of messages
to be received before notifying the session.
It is also possible to program the maximum amount of time to wait for the
specified number of messages before notifying the session.
The following sample shows how to configure the messaging I/O mode to be
notified when 10 words have been received or every second (if the ARINC port
receives less than 10 words per second it will return whatever number of words
is available every second).
// Configure ARINC output ports 0, 2, 5 on device 0
session.CreateARINCOutputPort("pdna://192.168.100.2/Dev0/ATX0,2,5",
UeiARINCBitsPerSecond12500,
UeiARINCParityOdd);
typedef struct _tUeiARINCWord
{
// The label of the word. It is used to determine the data type of the
// Data field, and therefore, the method of data translation to use.
uInt32 Label;
// Sign/Status Matrix or SSM. This field contains hardware equipment
// condition, operational mode, or validity of data content.
uInt32 Ssm;
// Source/Destination Identifier or SDI. This is used for multiple
// receivers to identify the receiver for which the data is destined.
uInt32 Sdi;
// The parity bit.
uInt32 Parity;
// The payload of the word. Its format depends on the label.
// Most common formats are BCD (binary-coded-decimal) encoding,
// BNR (binary) encoding or discrete format where each bit represents
// a Pass/Fail, True/False or Activated/Non-Activated condition.
uInt32 Data;
} tUeiARINCWord;
// configure timing
session.ConfigureTimingForMessagingIO(10, 1.0);