Software Library API naibrd 1.62
See all documentation at naii.docs.com
Buffer and Channel Status Functions

Functions

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetTxBufferCnt (int32_t cardIndex, int32_t module, int32_t channel, int32_t *outcount)
 Returns the number of 32-bit words in the transmit FIFO of the specified channel.

 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetRxBufferCnt (int32_t cardIndex, int32_t module, int32_t channel, int32_t *outcount)
 Returns the number of ARINC messages in the receive FIFO of the specified channel.

 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetTxFifoStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_ar_status_type_t type, nai_ar_status_t *outfifostatus)
 Returns the Transmit FIFO status of the specified channel with the output specified as follows:
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetRxFifoStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_ar_status_type_t type, nai_ar_status_t *outfifostatus)
 Returns the Receive FIFO status of the specified channel with the output specified as follows:
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetTxSendSeqStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_ar_status_type_t type, nai_ar_status_t *outstatus)
 Returns the Transmit status of a channel with the output specified as follows:
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetParityErrorStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_ar_status_type_t type, bool_t *outerror)
 Checks for a Parity Error on a given channel.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetReceiveErrorStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_ar_status_type_t type, bool_t *outerror)
 Checks for a Receive Error on a given channel.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetBITErrorStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_ar_status_type_t type, bool_t *outerror)
 Checks for BIT Error on a given channel.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetSchedInterruptStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_ar_status_type_t type, bool_t *outinterrupt)
 Checks whether the Schedule Interrupt has been triggered.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetAsyncDataAvailStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_ar_status_type_t type, bool_t *outavail)
 Checks whether asynchronous data is available.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_ar_status_type_t type, nai_ar_status_t *outstatusword)
 Returns the channel status Word of the specified channel. Logic 1 is active.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_ClearStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_ar_status_t statusword)
 Clears the interrupt latch status bits. When an interrupt is generated by the core, the bit corresponding to the interrupt generating event (which is set in the Interrupt Enable register) is raised high in the latch register. This must be cleared by writing a '1' to the bit in order to further receive interrupts for the event.
 

Detailed Description


Function Documentation

◆ naibrd_AR_ClearStatus()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_ClearStatus ( int32_t cardIndex,
int32_t module,
int32_t channel,
nai_ar_status_t statusword )

Clears the interrupt latch status bits. When an interrupt is generated by the core, the bit corresponding to the interrupt generating event (which is set in the Interrupt Enable register) is raised high in the latch register. This must be cleared by writing a '1' to the bit in order to further receive interrupts for the event.

Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
statusword: (Input) Status bit(s) to clear. This can be an OR'ed combination of the following:
   AR_RX_DATA_AVAIL    
   AR_RX_FIFO_ALM_FULL 
   AR_RX_FIFO_FULL     
   AR_RX_FIFO_OVERFLOW 
   AR_TX_FIFO_EMPTY    
   AR_TX_FIFO_ALM_EMPTY
   AR_TX_FIFO_FULL     
   AR_PARITY_ERROR     
   AR_RX_ERROR         
   AR_BIT_ERROR        
   AR_SCHED_INTERRUPT  
   AR_ASYNC_DATA_AVAIL 
   AR_TX_COMPLETE      
   AR_TX_RUN           
   AR_TX_PAUSE       
Returns
  • NAI_SUCCESS when the device has been initialized successfully
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetAsyncDataAvailStatus()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetAsyncDataAvailStatus ( int32_t cardIndex,
int32_t module,
int32_t channel,
nai_ar_status_type_t type,
bool_t * outavail )

Checks whether asynchronous data is available.

Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
type: (Input) Status Type (NAI_AR_STATUS_LATCHED or NAI_AR_STATUS_REALTIME).
outavail: (Output) Asynchronous data available (1) or not available (0).
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_INVALID_VALUE when invalid type is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetBITErrorStatus()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetBITErrorStatus ( int32_t cardIndex,
int32_t module,
int32_t channel,
nai_ar_status_type_t type,
bool_t * outerror )

Checks for BIT Error on a given channel.

Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
type: (Input) Status Type (NAI_AR_STATUS_LATCHED or NAI_AR_STATUS_REALTIME).
outerror: (Output) BIT Error (1) or No Error (0).
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_INVALID_VALUE when invalid type is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetParityErrorStatus()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetParityErrorStatus ( int32_t cardIndex,
int32_t module,
int32_t channel,
nai_ar_status_type_t type,
bool_t * outerror )

Checks for a Parity Error on a given channel.

Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
type: (Input) Status Type (NAI_AR_STATUS_LATCHED or NAI_AR_STATUS_REALTIME).
outerror: (Output) Parity Error (1) or No Error (0).
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_INVALID_VALUE when invalid type is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetReceiveErrorStatus()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetReceiveErrorStatus ( int32_t cardIndex,
int32_t module,
int32_t channel,
nai_ar_status_type_t type,
bool_t * outerror )

Checks for a Receive Error on a given channel.

Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
type: (Input) Status Type (NAI_AR_STATUS_LATCHED or NAI_AR_STATUS_REALTIME).
outerror: (Output) Receive Error (1) or No Error (0).
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_INVALID_VALUE when invalid type is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetRxBufferCnt()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetRxBufferCnt ( int32_t cardIndex,
int32_t module,
int32_t channel,
int32_t * outcount )

Returns the number of ARINC messages in the receive FIFO of the specified channel.

Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
outcount: (Output) Number of ARINC messages in the receive FIFO.
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetRxFifoStatus()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetRxFifoStatus ( int32_t cardIndex,
int32_t module,
int32_t channel,
nai_ar_status_type_t type,
nai_ar_status_t * outfifostatus )

Returns the Receive FIFO status of the specified channel with the output specified as follows:

A4/AR1:
   Data Available   AR_RX_DATA_AVAIL
   Almost Full      AR_RX_FIFO_ALM_FULL
   Full             AR_RX_FIFO_FULL
   Overflow         AR_RX_FIFO_OVERFLOW

AR2:
   Data Available   AR2_RX_DATA_AVAIL
   Empty            AR2_RX_FIFO_EMPTY
   Almost Empty     AR2_RX_FIFO_ALM_EMPTY
   Almost Full      AR2_RX_FIFO_ALM_FULL
   Full             AR2_RX_FIFO_FULL
   Read Error       AR2_RX_FIFO_READ_ERROR
   Overflow         AR2_RX_FIFO_OVERFLOW
Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
type: (Input) Status Type (NAI_AR_STATUS_LATCHED or NAI_AR_STATUS_REALTIME).
outfifostatus: (Output) Receive FIFO status.
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_INVALID_VALUE when invalid type is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetSchedInterruptStatus()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetSchedInterruptStatus ( int32_t cardIndex,
int32_t module,
int32_t channel,
nai_ar_status_type_t type,
bool_t * outinterrupt )

Checks whether the Schedule Interrupt has been triggered.

Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
type: (Input) Status Type (NAI_AR_STATUS_LATCHED or NAI_AR_STATUS_REALTIME).
outinterrupt: (Output) Schedule Interrupt triggered (1) or not triggered (0).
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_INVALID_VALUE when invalid type is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetStatus()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetStatus ( int32_t cardIndex,
int32_t module,
int32_t channel,
nai_ar_status_type_t type,
nai_ar_status_t * outstatusword )

Returns the channel status Word of the specified channel. Logic 1 is active.

Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
type: (Input) Status Type (NAI_AR_STATUS_LATCHED or NAI_AR_STATUS_REALTIME).
outstatusword: (Output) Interrupt status word. This word is an OR'ed combination of the following bits:
A4/AR1:
   Bit 15   -  Reserved
   Bit 14   -  Reserved
   Bit 13   -  Reserved
   Bit 12   -  Tx Complete
   Bit 11   -  Async Data Sent
   Bit 10   -  Schedule Interrupt
   Bit 9    -  Built In Test Error
   Bit 8    -  Receive Error
   Bit 7    -  Parity Error
   Bit 6    -  Reserved
   Bit 5    -  Tx FIFO Almost Empty
   Bit 4    -  Tx FIFO Empty
   Bit 3    -  Rx FIFO Overflow
   Bit 2    -  Rx FIFO Full
   Bit 1    -  Rx FIFO Almost Full
   Bit 0    -  Rx Data Available

AR2:
   Bit 31-23 - Reserved
   Bit 22    - Tx FIFO Overflow
   Bit 21    - Reserved
   Bit 20    - Tx FIFO Full
   Bit 19    - Tx FIFO Almost Full
   Bit 18    - Tx FIFO Almost Empty
   Bit 17    - Tx FIFO Empty
   Bit 16    - Tx Busy
   Bit 15-9  - Reserved
   Bit 8     - Rx Frame Error (ARINC-568 Only)
   Bit 7     - Rx Parity Error (ARINC-579 Only)
   Bit 6     - Rx FIFO Overflow
   Bit 5     - Rx FIFO Read Error
   Bit 4     - Rx FIFO Full
   Bit 3     - Rx FIFO Almost Full
   Bit 2     - Rx FIFO Almost Empty
   Bit 1     - Rx FIFO Empty
   Bit 0     - Rx Data Available
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_INVALID_VALUE when invalid type is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetTxBufferCnt()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetTxBufferCnt ( int32_t cardIndex,
int32_t module,
int32_t channel,
int32_t * outcount )

Returns the number of 32-bit words in the transmit FIFO of the specified channel.

Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
outcount: (Output) Number of 32-bit words in the transmit FIFO.
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetTxFifoStatus()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetTxFifoStatus ( int32_t cardIndex,
int32_t module,
int32_t channel,
nai_ar_status_type_t type,
nai_ar_status_t * outfifostatus )

Returns the Transmit FIFO status of the specified channel with the output specified as follows:

A4/AR1:
   Empty          AR_TX_FIFO_EMPTY
   Almost Empty   AR_TX_FIFO_ALM_EMPTY
   Full           AR_TX_FIFO_FULL

AR2:
   Empty          AR2_TX_FIFO_EMPTY
   Almost Empty   AR2_TX_FIFO_ALM_EMPTY
   Almost Full    AR2_TX_FIFO_ALM_FULL
   Full           AR2_TX_FIFO_FULL
   Overflow       AR2_TX_FIFO_OVERFLOW
Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
type: (Input) Status Type (NAI_AR_STATUS_LATCHED or NAI_AR_STATUS_REALTIME).
outfifostatus: (Output) Transmit FIFO status.
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_INVALID_VALUE when invalid type is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.

◆ naibrd_AR_GetTxSendSeqStatus()

NAIBRDFUNC nai_status_t NAIAPI naibrd_AR_GetTxSendSeqStatus ( int32_t cardIndex,
int32_t module,
int32_t channel,
nai_ar_status_type_t type,
nai_ar_status_t * outstatus )

Returns the Transmit status of a channel with the output specified as follows:

   Tx Running     AR_TX_RUN
   Tx Paused      AR_TX_PAUSE     
Parameters
cardIndex: (Input) Logical Card Index assigned to connect with the NAI_BOARD (0 - NAI_MAX_CARDS-1).
module: (Input) Module Number of the module to access (1 - [max modules for board]).
channel: (Input) Channel Number of the channel to access (1 - [max channels for module]).
type: (Input) Status Type (NAI_AR_STATUS_LATCHED or NAI_AR_STATUS_REALTIME).
outstatus: (Output) Transmit status.
Returns
  • NAI_SUCCESS
  • NAI_ERROR_INVALID_CARD when invalid card parameter is specified.
  • NAI_ERROR_INVALID_MODULE when invalid module parameter is specified.
  • NAI_ERROR_INVALID_CHANNEL when invalid channel parameter is specified.
  • NAI_ERROR_INVALID_VALUE when invalid type is specified.
  • NAI_ERROR_NOT_SUPPORTED when function is not supported.