Software Library API naibrd 1.62
See all documentation at naii.docs.com
naibrd_sum1553.c File Reference
#include <stdlib.h>
#include <string.h>
#include "functions/naibrd_sum1553.h"
#include "maps/nai_map_sum1553.h"
#include "advanced/naibrd_adv.h"
#include "advanced/nai_ether_adv.h"
#include "naibrd_config.h"
#include "nai_ether.h"
#include "naibrd_ether.h"

Macros

#define NAI_SUM1553_MIN_RAM_ADDR_OFFSET   0x00000000
 
#define NAI_SUM1553_MAX_RAM_ADDR_OFFSET   0x0001FFFE
 
#define NAI_SUM1553_BM_CMDBLKSIZE   8 /* 8 words per command block */
 
#define NAI_SUM1553_BM_DATABLKSIZE   32 /* 32 words max per data block */
 
#define NAI_SUM1553_BM_CMDBLK_CNT   1023 /* Number of BM Command Blocks (8 words/block) */
 
#define NAI_SUM1553_BM_DATABLK_CNT   1023 /* Number of BM Data Blocks (32 words/block) */
 
#define NAI_SUM1553_BM_CMDBLKOFFSET   0x00000 /* Command Block Start Address */
 
#define NAI_SUM1553_BM_DATABLKOFFSET   0x04000 /* Data Block Start Address */
 
#define NAI_SUM1553_BC_CMDBLKSIZE   8 /* 8 words per command block */
 
#define NAI_SUM1553_BC_DATABLKSIZE   32 /* 32 words per data block */
 
#define NAI_SUM1553_BC_CMDBLK_CNT   2048 /* Number of BC Command Blocks (8 words/block) */
 
#define NAI_SUM1553_BC_DATABLK_CNT   1024 /* Number of BC Data Blocks (32 words/block) */
 
#define NAI_SUM1553_BC_CMDBLKOFFSET   0x00000 /* Command Block Start Address */
 
#define NAI_SUM1553_BC_DATABLKOFFSET   0x04000 /* Data Block Start Address */
 
#define NAI_SUM1553_MAX_WAIT_CNT   10 /* Maximum counts to wait for channel to reset */
 
#define NAI_SUM1553_RT_DATABLKSIZE_SA   34 /* 34 words per SubAddress data block */
 
#define NAI_SUM1553_RT_DATABLKSIZE_MC   3 /* 3 words per ModeCode data block */
 
#define NAI_SUM1553_RT_RECV_SA   0x0200 /* SA Recv Bufs (32SA * 16msgs * 34words = 17408) */
 
#define NAI_SUM1553_NUM_MSGS_RSA   36
 
#define NAI_SUM1553_NUM_MSGS_XSA   16
 
#define NAI_SUM1553_NUM_MSGS_MC   8
 
#define NAI_SUM1553_MSG_WORDS_SA   34
 
#define NAI_SUM1553_MSG_WORDS_MC   3
 
#define NAI_SUM1553_RT_DESCRBLKSIZE   4 /* 4 words per descriptor block */
 
#define NAI_SUM1553_RT_DATABLKSIZE   34 /* 34 words per data block */
 
#define NAI_SUM1553_BUFFER_MODE_0_MASK   0x0000
 
#define NAI_SUM1553_BUFFER_MODE_1_MASK   0x0100
 
#define NAI_SUM1553_BUFFER_MODE_2_MASK   0x0180
 
#define NAI_SUM1553_BUFFER_MODE_0   0
 
#define NAI_SUM1553_BUFFER_MODE_1   1
 
#define NAI_SUM1553_BUFFER_MODE_2   2
 
#define NAI_SUM1553_BUFFER_MODE_PP   3
 
#define NAI_SUM1553_RT_DESCR_CONTROL   0x00000
 
#define NAI_SUM1553_RT_DESCR_DATA_A   0x00002
 
#define NAI_SUM1553_RT_DESCR_DATA_B   0x00004
 
#define NAI_SUM1553_RT_DESCR_DATA_BCAST   0x00006
 
#define NAI_SUM1553_RT_BUF_SIZE   34 /* # of words in each buffer */
 
#define NAI_SUM1553_RT_DESCR_BUFA   0x200
 
#define NAI_SUM1553_RT_DESCR_BCAST   (NAI_SUM1553_RT_DESCR_BUFA + (NAI_SUM1553_RT_BUF_SIZE*256))
 
#define NAI_SUM1553_RT_DESCR_RECV_SA   0x00000 /* Descriptor Table Receive SubAddress */
 
#define NAI_SUM1553_RT_DESCR_XMIT_SA   0x00080 /* Descriptor Table Transmit SubAddress */
 
#define NAI_SUM1553_RT_DESCR_RECV_MC   0x00100 /* Descriptor Table Receive Mode Code */
 
#define NAI_SUM1553_RT_DESCR_XMIT_MC   0x00180 /* Descriptor Table Transmit Mode Code */
 
#define NAI_SUM1553_RT_DPA_RECV_SA   0x00200 /* Data Pointer A Receive SubAddress */
 
#define NAI_SUM1553_RT_DPA_XMIT_SA   0x00640 /* Data Pointer A Transmit SubAddress */
 
#define NAI_SUM1553_RT_DPA_RECV_MC   0x00A80 /* Data Pointer A Receive Mode Code */
 
#define NAI_SUM1553_RT_DPA_XMIT_MC   0x00EC0 /* Data Pointer A Transmit Mode Code */
 
#define NAI_SUM1553_RT_DPB_RECV_SA   0x01300 /* Data Pointer B Receive SubAddress */
 
#define NAI_SUM1553_RT_DPB_XMIT_SA   0x01740 /* Data Pointer B Transmit SubAddress */
 
#define NAI_SUM1553_RT_DPB_RECV_MC   0x01B80 /* Data Pointer B Receive Mode Code */
 
#define NAI_SUM1553_RT_DPB_XMIT_MC   0x01FC0 /* Data Pointer B Transmit Mode Code */
 
#define NAI_SUM1553_RT_BP_RECV_SA   0x02400 /* Broadcast Pointer Receive SubAddress */
 
#define NAI_SUM1553_RT_BP_XMIT_SA   0x02840 /* Broadcast Pointer Transmit SubAddress */
 
#define NAI_SUM1553_RT_BP_RECV_MC   0x02C80 /* Broadcast Pointer Receive Mode Code */
 
#define NAI_SUM1553_RT_BP_XMIT_MC   0x030C0 /* Broadcast Pointer Transmit Mode Code */
 
#define CORE1553BRM_CTRL_REG   0
 
#define CORE1553BRM_OPSTATUS_REG   1
 
#define CORE1553BRM_IMASK_REG   3
 
#define CORE1553BRM_IPEND_REG   4
 
#define CORE1553BRM_ILOG_REG   5
 
#define CORE1553BRM_BIT_REG   6
 
#define CORE1553BRM_CMDBLKPTR_REG   8
 
#define CORE1553BRM_STATUS_REG   9
 
#define CORE1553BRM_BM_CMDBLKPTR_REG   11
 
#define CORE1553BRM_BM_DATABLKPTR_REG   12
 
#define CORE1553BRM_BM_CMDBLKCNT_REG   13
 
#define CORE1553BRM_BM_MONFILTERA_REG   14
 
#define CORE1553BRM_BM_MONFILTERB_REG   15
 
#define CORE1553BRM_LEG0_REG   16
 
#define PROC_ENABLE   0x0001
 
#define PROC_HPRIOTX   0x0002
 
#define MSG_INFO_BUSB   (1 << 0)
 
#define MSG_INFO_RTRT   (1 << 1)
 
#define MSG_INFO_BCST   (1 << 2)
 
#define MSG_INFO_MERR   (1 << 3)
 
#define MSG_INFO_ILLE   (1 << 4)
 
#define MSG_INFO_TIMO   (1 << 5)
 
#define MSG_INFO_MANC   (1 << 6)
 
#define MSG_INFO_WCNT   (1 << 7)
 
#define WCSA_SA_SHIFT   5
 
#define WCSA_SA_MASK   0x1F
 
#define WCSA_WC_SHIFT   0
 
#define WCSA_WC_MASK   0x3E0
 
#define WCSA_MODE   (1 << 13)
 
#define WCSA_XMIT   (1 << 14)
 
#define WCSA_BMON   (1 << 15)
 
#define EVENT_FIFO_WCSA_OFF   0
 
#define EVENT_FIFO_INFO_OFF   1
 
#define EVENT_FIFO_RSVD_OFF   2
 
#define EVENT_FIFO_TIME_OFF   3
 
#define EVENT_FIFO_CMD1_OFF   4
 
#define EVENT_FIFO_CMD2_OFF   5
 
#define EVENT_FIFO_STA1_OFF   6
 
#define EVENT_FIFO_STA2_OFF   7
 
#define EVENT_FIFO_DATA_OFF   8
 
#define EVENT_FIFO_HEAD_SIZE   8
 
#define EVENT_FIFO_FRAME_SIZE   (EVENT_FIFO_HEAD_SIZE + 32)
 
#define RESP_FIFO_READSA_HEAD_SIZE   3
 
#define REQ_TX   0x20
 
#define REQ_MC   0x40
 
#define REQ_OP_READSA   0x0000
 
#define REQ_OP_LOADSA   0x0100
 
#define REQ_INT   0x8000
 
#define MINOR_FRAME_TIMER   (15.62625/1000)
 
#define MSG_MSG_TIMER   (20)
 
#define CORE_REGISTER(channel, reg)   (mil_1553_reg_corereg[(channel)-1]+((reg)<<1))
 

Typedefs

typedef struct nai_sum1553_cmdblock nai_sum1553_cmdblock_t
 
typedef struct nai_sum1553_bmmsg nai_sum1553_bmmsg_t
 

Functions

NAIBRDFUNC int32_t NAIAPI naibrd_SUM1553_GetChannelCount (uint32_t modid)
 Returns the number of channels for the specified 1553 Module ID.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_SetMode (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_opstatus_t mode)
 Sets the 1553 channel mode. Depending on the mode set, this function will set up the Core registers for the specified mode.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_EnableExecution (int32_t cardIndex, int32_t module, int32_t channel, bool_t enabled)
 Sets or clears the Start Execution (STEX) bit in the Control Register (Core Register 0, bit 15).
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Reset (int32_t cardIndex, int32_t module, int32_t channel)
 Resets the 1553 channel.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_IsResetting (int32_t cardIndex, int32_t module, int32_t channel, bool_t *outresetting)
 Reads the Control register Software Reset (SRST) bit (Core Register 0, bit 13) and returns the resetting state based on bit state of this bit. The core automatically clears the Software Reset bit after it resets itself.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_SetBroadcastEnable (int32_t cardIndex, int32_t module, int32_t channel, bool_t enable)
 Sets the Control Register Broadcast Enable (BCEN) bit (Core Register 0, bit 4) state. When broadcast is disables, RT Address 31 can be used as an RT address, otherwise it is used for 1553 broadcast mode.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_GetBroadcastEnable (int32_t cardIndex, int32_t module, int32_t channel, bool_t *outenabled)
 Retrieves the Control Register Broadcast Enable (BCEN) bit (Core Register 0, bit 4) state. When broadcast is disables, RT Address 31 can be used as an RT address, otherwise it is used for 1553 broadcast mode.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_GetOpStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_opstatus_t *outstatus)
 Retrieves the Operation and Status Register (Core Register 1) value. The Operation and Status register reflects pertinent information for the core. If stimulus is applied to the input pins, this register will reflect the actual stimulus in the Remote Terminal Address (RTA) bits (bits 15:11), RT Address Parity (RTPTY) bit (bit 10), Mode Select (MSEL) bits (bit 9:8), 1553A or 1553B Support (A/B STD) (bit 7) and LOCK Status (LOCK) bit (bit 6). When the core is operational (in other words, Control Register Start Execution (STEX) bit is 1 (Core Register 0, bit 15), the Operation and Status Register cannot be written to.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_GetBITStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_bit_status_t *outbit)
 Retrieves the Built-in-Test Register (Core Register 6) value. The BIT register contains the status of the automatic health monitoring of the core. The core does not support the Control register BIT function (Core Register 0, bit 14).
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BC_SetCmdBlockPtr (int32_t cardIndex, int32_t module, int32_t channel, uint32_t blockIndex)
 Sets the Command Block Pointer Register (Core Register 8) to the location to start the command blocks associated with the "blockIndex" passed in. The Bus Controller command blocks are eight-word, contiguous blocks of memory that contains opcodes for controlling the core as well as 1553 command words and associated data locations in memory. After execution begins, this register is automatically updated with the address of the next block.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BC_GetCmdBlockPtr (int32_t cardIndex, int32_t module, int32_t channel, uint32_t *outblockIndex)
 Retrieves the "blockIndex" value associated with the address read from the Command Block Pointer Register (Core Register 8). The Bus Controller command blocks are eight-word, contiguous blocks of memory that contains opcodes for controlling the core as well as 1553 command words and associated data locations in memory. After execution begins, this register is automatically updated with the address of the next block.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BC_LoadCmdBlock (int32_t cardIndex, int32_t module, int32_t channel, uint32_t blockIndex, uint16_t ctrl, uint16_t cmd1, uint16_t cmd2, uint16_t datablock, uint16_t branchblock, uint32_t timerus)
 Loads the BC Command Block. Each command block contains eight-words.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BC_ReadCmdBlock (int32_t cardIndex, int32_t module, int32_t channel, uint32_t blockIndex, uint16_t *outctrl, uint16_t *outcmd1, uint16_t *outcmd2, uint16_t *outdatablock, uint16_t *outstatus1, uint16_t *outstatus2, uint16_t *outbranchblock, uint32_t *outtimerus)
 Retrieves the BC Command Block. Each command block contains eight-words.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BC_ClearBAME (int32_t cardIndex, int32_t module, int32_t channel, uint32_t blockIndex)
 Clears the Command Block's Control Word Block Access Message Error (bit 0) bit. This bit is set when a protocol message error occurred in the RT response. The host or subsystem should reset this bit when writing the control word into memory.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BC_SetCmdBlockDataPtr (int32_t cardIndex, int32_t module, int32_t channel, uint32_t blockIndex, uint16_t datablock)
 Sets the Command Block's Data Pointer (Word 4). The Data Pointer specifies the first location in memory where data associated with the command word(s) is to be stored or fetched from.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BC_ReadCmdBlockDataPtr (int32_t cardIndex, int32_t module, int32_t channel, uint32_t blockIndex, uint16_t *outdatablock)
 Retrieves the Command Block's Data Pointer (Word 4). The Data Pointer specifies the first location in memory where data associated with the command word(s) is to be stored or fetched from.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BC_LoadDataBlock (int32_t cardIndex, int32_t module, int32_t channel, uint32_t blockIndex, const uint16_t datablock[32])
 Loads the BC Data Block. Each data block contains 32-words.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BC_ReadDataBlock (int32_t cardIndex, int32_t module, int32_t channel, uint32_t blockIndex, uint16_t outdatablock[32])
 Retrieves the BC Data Block. Each data block contains 32-words.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_SetAddress (int32_t cardIndex, int32_t module, int32_t channel, uint8_t address)
 Sets the Remote Terminal Address and RT Address Parity in the Operation and Status register (Core Register 1, bits 15:11 for RT Address and bit 10 (RT Address Parity).
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_GetAddress (int32_t cardIndex, int32_t module, int32_t channel, uint8_t *outaddress)
 Gets the Remote Terminal Address in the Operation and Status register (Core Register 1, bits 15:11 for RT Address).
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_SetBusEnable (int32_t cardIndex, int32_t module, int32_t channel, bool_t aenable, bool_t benable)
 Sets the Control Register Bus A Enable (BAEN) and Bus B Enable (BBEN) bits (Core Register 0, bit 12:11) state. When broadcast is disables, RT Address 31 can be used as an RT address, otherwise it is used for 1553 broadcast mode.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_GetBusEnable (int32_t cardIndex, int32_t module, int32_t channel, bool_t *outaenable, bool_t *outbenable)
 Retrieves the Control Register Bus A Enable (BAEN) and Bus B Enable (BBEN) bits (Core Register 0, bit 12:11) state. When broadcast is disables, RT Address 31 can be used as an RT address, otherwise it is used for 1553 broadcast mode.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_ConfigureForCircBuffer (int32_t cardIndex, int32_t module, int32_t channel)
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_ConfigureForPingPong (int32_t cardIndex, int32_t module, int32_t channel)
 Configures the Remote Terminal Descriptor Table to support Ping Pong mode for the specified 1553 channel.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_SetPingPongEnable (int32_t cardIndex, int32_t module, int32_t channel, bool_t enabled)
 Sets the Control Register Ping-Pong Enable (PPEN) bit (Core Register 0, bit 2) state.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_GetPingPongEnable (int32_t cardIndex, int32_t module, int32_t channel, bool_t *outenabled)
 Retrieves the Control Register Ping-Pong Enable (PPEN) bit (Core Register 0, bit 2) state.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_GetPingPongEnabled (int32_t cardIndex, int32_t module, int32_t channel, bool_t *outenabled)
 Retrieves the Control Register Message Time-out (MSGTO) bit (Core Register 0, bit 9) state. For RT operation, when ping-pong buffer mode is enabled, the MSGTO bit set to 1 serves to acknowledge to the host that ping-pong mode has been enabled. When the bit is set to 0 serves to acknowledge to the host that the ping-pong mode has been disabled.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_SetStatusWord (int32_t cardIndex, int32_t module, int32_t channel, uint16_t rtstatus)
 Sets the 1553 A/B Status Word register (Core Register 9) value. For both MIL-STD-1553A and B applications, this register contains the value for the status word. The host or subsystem controls the outgoing MIL-STD-1553 status word by setting the various status bits. If the Immediate Clear function is enabled (bit 15), then the status bits are automatically cleared after status word transmission. The Immediate Clear function does not alter the operation of the Trasmit Status word and Transmit Last Command Word mode codes.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_Legalize (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_samctype_t samctype, uint32_t samcmask, bool_t legal)
 Sets up the legalization registers (Core Register 16-31) which are used by the RT to determine which valid, received commands are legal. A command determined to be illegal if it is supported by neither by the standard nor by additional system requirements. Note, the actual value written to the legalization registers is defined as follows: '1' illegalizes a command and '0' legalizes a command.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_GetControlWord (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_samctype_t samctype, uint16_t samc, uint16_t *outctrl)
 Retrieves the Descriptor Block Control Word. The control word is used by the core in message processing and is initialized by the host or subsystem. The core updates the control word during command post-processing to provide the host or subsystem details about the transaction.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_ClearBlockAccess (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_samctype_t samctype, uint16_t samc)
 Clears Block Accessed bit in the Descriptor Block Control Word (bit 4). The core will set the BAC bit at the end of message processing to indicate processing status to the host or subsystem. The host or subsystem must initialize this bit to 0.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_LoadTxDataBlock (int32_t cardIndex, int32_t module, int32_t channel, bool_t sadatablock, uint16_t addr, const uint16_t datablock[32])
 Sets the 32 Data Words to be transmitted when a RT-BC message is received.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_ReadTxDataBlock (int32_t cardIndex, int32_t module, int32_t channel, bool_t sadatablock, uint16_t addr, uint16_t outdatablock[32])
 Retrieves the 32 Data Words to be transmitted when a RT-BC message is received.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_ReadRxDataBlock (int32_t cardIndex, int32_t module, int32_t channel, bool_t sadatablock, uint16_t addr, uint16_t *outwordcnt, uint16_t *outtimestamp, uint16_t outdatablock[32])
 Retrieves the 32 Data Words received from a BC-RT message.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_LoadTxCircBuffer (int32_t cardIndex, int32_t module, int32_t channel, bool_t sadatablock, uint16_t addr, int32_t wordcount, uint16_t *data)
 Loads the circular buffer with data of size given by the word count. In the buffer, the address, at which the data gets written, is maintained by an internal pointer. This pointer advances by the amount given by 2 + wordcount (message information word + timetag + payload) after the data is written to the buffer. If the pointer advances beyond the end of the buffer region, the pointer goes to the start of the buffer.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_ReadTxCircBuffer (int32_t cardIndex, int32_t module, int32_t channel, bool_t sadatablock, uint16_t addr, int32_t wordcount, uint16_t *outdata)
 Retrieves the data of size given by the word count from the Tx circular buffer for the given subaddress. An internal pointer determines the starting address in the buffer from which to read. Each successful call to naibrd_SUM1553_RT_AdvCircBufInternalPtr() will advance the internal pointer to the next available address.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_ReadRxCircBuffer (int32_t cardIndex, int32_t module, int32_t channel, bool_t sadatablock, uint16_t addr, uint16_t *outwordcnt, uint16_t *outtimestamp, uint16_t *outdata)
 Retrieves the data of size given by the word count from the Rx circular buffer for the given subaddress. An internal pointer determines the starting address in the buffer from which to read. Each successful call to naibrd_SUM1553_RT_AdvCircBufInternalPtr() will advance the internal pointer to the next available address.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_AdvCircBufInternalPtr (int32_t cardIndex, int32_t module, int32_t channel, bool_t sadatablock, uint16_t addr)
 This function advances the circular buffer read internal pointer to the next available address. If the next available address is past the end of the circular buffer, the pointer will be set to the starting address of the circular buffer.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_SetSAMCInterruptMask (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_samctype_t samctype, uint16_t samc, nai_sum1553_sa_irq_t mask)
 Sets the Interrupt when Accessed (IWA) bit (bit 6) or Interrupt Broadcast Received (IBRD) bit (bit 5) in Descriptor Block Control Word. If the IWA bit is set to 1, the core will generate an interrupt when a valid subaddress or mode code command is received. If the IBRD bit is set to 1, the core will generate an interrupt when a valid subaddress or mode code broadcast command is received. The interrupt will be entered into the Pending Interrupt register (Core Register 4) if not masked.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BM_SetMonitorFilter (int32_t cardIndex, int32_t module, int32_t channel, bool_t monitorAll, uint32_t monitorFilter)
 Sets up the Bus Monitor filter registers. If all RTs are to be monitored, the Bus Monitor Control (BMC) bit (Core Register 0 bit 5) will be set to 0, otherwise this bit is set to 1 and the core will only monitor the RTs specified in the Monitor Filter registers (Core Register 14 and 15).
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BM_GetMonitorFilter (int32_t cardIndex, int32_t module, int32_t channel, bool_t *outmonitorAll, uint32_t *outmonitorFilter)
 Retrieves the Bus Monitor filter registers. If all RTs are to be monitored, the Bus Monitor Control (BMC) bit (Core Register 0 bit 5) will be set to 0, otherwise this bit is set to 1 and the core will only monitor the RTs specified in the Monitor Filter registers (Core Register 14 and 15).
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BM_SetMonitorBlockCount (int32_t cardIndex, int32_t module, int32_t channel, uint16_t blockcnt)
 Sets the Monitor Block Count (MBC) register (Core Register 13). The Monitor Block Count register is used to set the number of monitor blocks to be logged. Once execution begins, the value contained in the register will be decremented. Upon reaching 0, an MBC interrupt is generated (Core Register 4 bit 0). The core will restart at the initial address specified in the Monitor Command Pointer register (Core Register 11) and Monitor Data Pointer register (Core Register 12). Note: The Monitor Block Count initial value allows that number of blocks + 1; it is really used as an index. So if the initial count is set to 1023, 1024 blocks will be monitored.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BM_GetMonitorBlockCount (int32_t cardIndex, int32_t module, int32_t channel, uint16_t *outblockcnt)
 Retrieves the Monitor Block Count (MBC) register (Core Register 13). The Monitor Block Count register is used to set the number of monitor blocks to be logged. Once execution begins, the value contained in the register will be decremented. Upon reaching 0, an MBC interrupt is generated (Core Register 4 bit 0). The core will restart at the initial address specified in the Monitor Command Pointer register (Core Register 11) and Monitor Data Pointer register (Core Register 12). Note: The Monitor Block Count initial value allows that number of blocks + 1; it is really used as an index. So if the initial count is set to 1023, 1024 blocks will be monitored.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_BM_ReadDataBlock (int32_t cardIndex, int32_t module, int32_t channel, uint16_t datablock, uint16_t *outinfo, uint16_t *outcmd1, uint16_t *outcmd2, uint16_t *outstatus1, uint16_t *outstatus2, uint16_t *outtimetag, uint16_t outdatablock[32])
 Retrieves the message and associated control words read by the Bus Monitor for the Data Block value read from the Monitor Block Counter register (Core Register 13).
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_SetInterruptMask (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_interrupt_t mask)
 Sets the Interrupt Mask (Core Register 3). An interrupt is masked if the corresponding bit of this register is set to low, allowing the host or subsystem to temporarily disable the service of interrupts. While masked, interrupt notification does not occur. The unmasking of an interrupt after the event occurs does not generate an interrupt for that event.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_SetInterruptVector (int32_t cardIndex, int32_t module, int32_t channel, uint32_t vector)
 Sets the Interrupt Vector for the specified 1553 channel.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_GetInterruptVector (int32_t cardIndex, int32_t module, int32_t channel, uint32_t *outvector)
 Gets the Interrupt Vector for the specified 1553 channel.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_GetInterruptStatus (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_interrupt_t *outpending)
 Retrieves the data in the Pending Interrupt register (Core Register 4). This register identifies interrupt events. The Pending Interrupt register is cleared at the end of a read or write to any other core register.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_GetInterruptLogPtr (int32_t cardIndex, int32_t module, int32_t channel, uint16_t *outaddr)
 Retrieves the data in the Interrupt Pointer register (Core Register 5). The Interrupt Pointer register contains the starting base address and pointer location of the Interrupt Log List. The Interrupt Log List is a 32-word ring-buffer that contains information necessary to service interrupts. The most significant 11 bits designate the base address of the ring buffer (which occurs on a 32-word boundary, i.e., the host must initialize the five least significant bits). Note the naibrd_SUM1553_SetMode() routine initializes Interrupt Pointer register to 0xF000. The core controls the five least significant bits to indicate the pointer location. The host or subsystem reads these five bits to determine the location and number of interrupts within the Interrupt Log List.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_GetInterruptLogEntry (int32_t cardIndex, int32_t module, int32_t channel, uint16_t addr, uint16_t *outstatus, uint16_t *outaddr)
 Retrieves the Interrupt Information Word (IIW) and Interrupt Address Word (IAW) associated with the Interrupt Log List Address. The Interrupt Information Word format is identical to that of the Pending Interrupt register (Core Register 4).
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_InstallLogIDR (int32_t cardIndex, int32_t module, int32_t channel, int32_t slot, nai_ether_upr_type_t uprtype, uint8_t ip[], uint16_t port, uint8_t seqhi, uint16_t vector)
 Sets up a Interrupt Driven Reply (IDR) Unprompted Reply (UPR) that will read the Interrupt Pending Register (Core Register 4) whenever the interrupt associated with the vector passed in occurs.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_ProcessLogIDR (int32_t cardIndex, int32_t module, int32_t channel, uint8_t msg[], nai_ether_typecode_t typecode, nai_ether_gen_t gen, int32_t offset, uint16_t *outlogptr)
 Decodes the UPR Read message that is passed in and returns the data content.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_ReadCoreReg (int32_t cardIndex, int32_t module, int32_t channel, uint32_t corereg, uint16_t *outdata)
 Retrieves the value in the Core Register specified.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_WriteCoreReg (int32_t cardIndex, int32_t module, int32_t channel, uint32_t corereg, uint16_t data)
 Sets the value in the Core Register specified.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Read (int32_t cardIndex, int32_t module, int32_t channel, uint32_t address, uint32_t count, uint16_t outdata[])
 Retrieves the values in the address(es) specified. The page register associated with the address(es) specified is set to window the memory into the module memory space. Note addressing is word-based to match the core's addressing scheme.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Write (int32_t cardIndex, int32_t module, int32_t channel, uint32_t address, uint32_t count, const uint16_t data[])
 Sets the values in the address(es) specified. The page register associated with the address(es) specified is set to window the memory into the module memory space. Note addressing is word-based to match the core's addressing scheme.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_WriteMask (int32_t cardIndex, int32_t module, int32_t channel, uint32_t address, uint16_t mask, uint16_t data)
 Writes a value to the address specified, updating only the bit positions that are set in mask. The resulting value in the register will be (oldData & ~mask) | (data & mask). The mask and value may be truncated or padded with zeros depending on the register width. The page register associated with the address(es) specified is set to window the memory into the module memory space. Note addressing is word-based to match the core's addressing scheme.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Proc_SetCtrl (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_procctrl_t mask)
 Sets the 1553 Processor Control Register for the specified 1553 channel.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Proc_ClearFifo (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_procfifo_t fifos)
 Clears the specified FIFO for the specified 1553 channel by resetting the count register for the FIFO to zero.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Proc_RT_SetEventSAMask (int32_t cardIndex, int32_t module, int32_t channel, int32_t event, uint32_t samask)
 Sets the Subaddresses mask such that only the 1553 messages received from these subaddresses are placed on the "Event" FIFO and retrieved in the Interrupt Driven Reply (IDR) Unprompted Reply (UPR) message.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Proc_SetEventVector (int32_t cardIndex, int32_t module, int32_t channel, int32_t event, uint16_t vector)
 Sets the Interrupt Event Vector for Ethernet Unprompted Replies (UPR) associated with the Event Subaddress Mask. Whenever the Interrupt Event Vector is generated the contents in the Event FIFO are read and sent to the host as a Unprompted Reply (UPR) message.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Proc_RT_LoadDataBlock (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_samctype_t samctype, uint16_t subaddr, const uint16_t datablock[], uint16_t offset, uint16_t count)
 Sets the 32 Data Words to be transmitted when a RT-BC message is received by placing a request on the "Request" FIFO for the 1553 Processor to write to the 1553 Core memory.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Proc_RT_ReadDataBlock (int32_t cardIndex, int32_t module, int32_t channel, nai_sum1553_samctype_t samctype, uint16_t subaddr, uint16_t outdatablock[], uint16_t offset, uint16_t count)
 Retrieves the 32 Data Words for 1553 message by placing a request on the "Request" FIFO for the 1553 Processor to read the data and placing the response on the "Response" FIFO which is then read by this routine.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Proc_SetEventUPR (int32_t cardIndex, int32_t module, int32_t channel, int32_t slot, nai_ether_upr_type_t uprtype, uint8_t ip[], uint16_t port, uint8_t seqhi, uint16_t vector)
 Sets up a Interrupt Driven Reply (IDR) Unprompted Reply (UPR) that will read EVENT_FIFO_FRAME_SIZE words from the "Event" FIFO whenever the interrupt associated with the vector passed in occurs.
 
NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_Proc_ProcessEventUPR (int32_t cardIndex, int32_t module, int32_t channel, uint8_t msg[], nai_ether_typecode_t typecode, nai_ether_gen_t gen, int32_t offset, nai_sum1553_eventtype_t *outevent, nai_sum1553_samctype_t *outtype, uint16_t *outsa, uint16_t *outwordcount, uint16_t *outinfo, uint16_t *outtimestamp, uint16_t outcmd[2], uint16_t outstatus[2], uint16_t data[32])
 Decodes the UPR Read message that is passed in and returns the data content.
 

Macro Definition Documentation

◆ CORE1553BRM_BIT_REG

#define CORE1553BRM_BIT_REG   6

◆ CORE1553BRM_BM_CMDBLKCNT_REG

#define CORE1553BRM_BM_CMDBLKCNT_REG   13

◆ CORE1553BRM_BM_CMDBLKPTR_REG

#define CORE1553BRM_BM_CMDBLKPTR_REG   11

◆ CORE1553BRM_BM_DATABLKPTR_REG

#define CORE1553BRM_BM_DATABLKPTR_REG   12

◆ CORE1553BRM_BM_MONFILTERA_REG

#define CORE1553BRM_BM_MONFILTERA_REG   14

◆ CORE1553BRM_BM_MONFILTERB_REG

#define CORE1553BRM_BM_MONFILTERB_REG   15

◆ CORE1553BRM_CMDBLKPTR_REG

#define CORE1553BRM_CMDBLKPTR_REG   8

◆ CORE1553BRM_CTRL_REG

#define CORE1553BRM_CTRL_REG   0

◆ CORE1553BRM_ILOG_REG

#define CORE1553BRM_ILOG_REG   5

◆ CORE1553BRM_IMASK_REG

#define CORE1553BRM_IMASK_REG   3

◆ CORE1553BRM_IPEND_REG

#define CORE1553BRM_IPEND_REG   4

◆ CORE1553BRM_LEG0_REG

#define CORE1553BRM_LEG0_REG   16

◆ CORE1553BRM_OPSTATUS_REG

#define CORE1553BRM_OPSTATUS_REG   1

◆ CORE1553BRM_STATUS_REG

#define CORE1553BRM_STATUS_REG   9

◆ CORE_REGISTER

#define CORE_REGISTER ( channel,
reg )   (mil_1553_reg_corereg[(channel)-1]+((reg)<<1))

◆ EVENT_FIFO_CMD1_OFF

#define EVENT_FIFO_CMD1_OFF   4

◆ EVENT_FIFO_CMD2_OFF

#define EVENT_FIFO_CMD2_OFF   5

◆ EVENT_FIFO_DATA_OFF

#define EVENT_FIFO_DATA_OFF   8

◆ EVENT_FIFO_FRAME_SIZE

#define EVENT_FIFO_FRAME_SIZE   (EVENT_FIFO_HEAD_SIZE + 32)

◆ EVENT_FIFO_HEAD_SIZE

#define EVENT_FIFO_HEAD_SIZE   8

◆ EVENT_FIFO_INFO_OFF

#define EVENT_FIFO_INFO_OFF   1

◆ EVENT_FIFO_RSVD_OFF

#define EVENT_FIFO_RSVD_OFF   2

◆ EVENT_FIFO_STA1_OFF

#define EVENT_FIFO_STA1_OFF   6

◆ EVENT_FIFO_STA2_OFF

#define EVENT_FIFO_STA2_OFF   7

◆ EVENT_FIFO_TIME_OFF

#define EVENT_FIFO_TIME_OFF   3

◆ EVENT_FIFO_WCSA_OFF

#define EVENT_FIFO_WCSA_OFF   0

◆ MINOR_FRAME_TIMER

#define MINOR_FRAME_TIMER   (15.62625/1000)

◆ MSG_INFO_BCST

#define MSG_INFO_BCST   (1 << 2)

◆ MSG_INFO_BUSB

#define MSG_INFO_BUSB   (1 << 0)

◆ MSG_INFO_ILLE

#define MSG_INFO_ILLE   (1 << 4)

◆ MSG_INFO_MANC

#define MSG_INFO_MANC   (1 << 6)

◆ MSG_INFO_MERR

#define MSG_INFO_MERR   (1 << 3)

◆ MSG_INFO_RTRT

#define MSG_INFO_RTRT   (1 << 1)

◆ MSG_INFO_TIMO

#define MSG_INFO_TIMO   (1 << 5)

◆ MSG_INFO_WCNT

#define MSG_INFO_WCNT   (1 << 7)

◆ MSG_MSG_TIMER

#define MSG_MSG_TIMER   (20)

◆ NAI_SUM1553_BC_CMDBLK_CNT

#define NAI_SUM1553_BC_CMDBLK_CNT   2048 /* Number of BC Command Blocks (8 words/block) */

◆ NAI_SUM1553_BC_CMDBLKOFFSET

#define NAI_SUM1553_BC_CMDBLKOFFSET   0x00000 /* Command Block Start Address */

◆ NAI_SUM1553_BC_CMDBLKSIZE

#define NAI_SUM1553_BC_CMDBLKSIZE   8 /* 8 words per command block */

◆ NAI_SUM1553_BC_DATABLK_CNT

#define NAI_SUM1553_BC_DATABLK_CNT   1024 /* Number of BC Data Blocks (32 words/block) */

◆ NAI_SUM1553_BC_DATABLKOFFSET

#define NAI_SUM1553_BC_DATABLKOFFSET   0x04000 /* Data Block Start Address */

◆ NAI_SUM1553_BC_DATABLKSIZE

#define NAI_SUM1553_BC_DATABLKSIZE   32 /* 32 words per data block */

◆ NAI_SUM1553_BM_CMDBLK_CNT

#define NAI_SUM1553_BM_CMDBLK_CNT   1023 /* Number of BM Command Blocks (8 words/block) */

◆ NAI_SUM1553_BM_CMDBLKOFFSET

#define NAI_SUM1553_BM_CMDBLKOFFSET   0x00000 /* Command Block Start Address */

◆ NAI_SUM1553_BM_CMDBLKSIZE

#define NAI_SUM1553_BM_CMDBLKSIZE   8 /* 8 words per command block */

◆ NAI_SUM1553_BM_DATABLK_CNT

#define NAI_SUM1553_BM_DATABLK_CNT   1023 /* Number of BM Data Blocks (32 words/block) */

◆ NAI_SUM1553_BM_DATABLKOFFSET

#define NAI_SUM1553_BM_DATABLKOFFSET   0x04000 /* Data Block Start Address */

◆ NAI_SUM1553_BM_DATABLKSIZE

#define NAI_SUM1553_BM_DATABLKSIZE   32 /* 32 words max per data block */

◆ NAI_SUM1553_BUFFER_MODE_0

#define NAI_SUM1553_BUFFER_MODE_0   0

◆ NAI_SUM1553_BUFFER_MODE_0_MASK

#define NAI_SUM1553_BUFFER_MODE_0_MASK   0x0000

◆ NAI_SUM1553_BUFFER_MODE_1

#define NAI_SUM1553_BUFFER_MODE_1   1

◆ NAI_SUM1553_BUFFER_MODE_1_MASK

#define NAI_SUM1553_BUFFER_MODE_1_MASK   0x0100

◆ NAI_SUM1553_BUFFER_MODE_2

#define NAI_SUM1553_BUFFER_MODE_2   2

◆ NAI_SUM1553_BUFFER_MODE_2_MASK

#define NAI_SUM1553_BUFFER_MODE_2_MASK   0x0180

◆ NAI_SUM1553_BUFFER_MODE_PP

#define NAI_SUM1553_BUFFER_MODE_PP   3

◆ NAI_SUM1553_MAX_RAM_ADDR_OFFSET

#define NAI_SUM1553_MAX_RAM_ADDR_OFFSET   0x0001FFFE

◆ NAI_SUM1553_MAX_WAIT_CNT

#define NAI_SUM1553_MAX_WAIT_CNT   10 /* Maximum counts to wait for channel to reset */

◆ NAI_SUM1553_MIN_RAM_ADDR_OFFSET

#define NAI_SUM1553_MIN_RAM_ADDR_OFFSET   0x00000000

◆ NAI_SUM1553_MSG_WORDS_MC

#define NAI_SUM1553_MSG_WORDS_MC   3

◆ NAI_SUM1553_MSG_WORDS_SA

#define NAI_SUM1553_MSG_WORDS_SA   34

◆ NAI_SUM1553_NUM_MSGS_MC

#define NAI_SUM1553_NUM_MSGS_MC   8

◆ NAI_SUM1553_NUM_MSGS_RSA

#define NAI_SUM1553_NUM_MSGS_RSA   36

◆ NAI_SUM1553_NUM_MSGS_XSA

#define NAI_SUM1553_NUM_MSGS_XSA   16

◆ NAI_SUM1553_RT_BP_RECV_MC

#define NAI_SUM1553_RT_BP_RECV_MC   0x02C80 /* Broadcast Pointer Receive Mode Code */

◆ NAI_SUM1553_RT_BP_RECV_SA

#define NAI_SUM1553_RT_BP_RECV_SA   0x02400 /* Broadcast Pointer Receive SubAddress */

◆ NAI_SUM1553_RT_BP_XMIT_MC

#define NAI_SUM1553_RT_BP_XMIT_MC   0x030C0 /* Broadcast Pointer Transmit Mode Code */

◆ NAI_SUM1553_RT_BP_XMIT_SA

#define NAI_SUM1553_RT_BP_XMIT_SA   0x02840 /* Broadcast Pointer Transmit SubAddress */

◆ NAI_SUM1553_RT_BUF_SIZE

#define NAI_SUM1553_RT_BUF_SIZE   34 /* # of words in each buffer */

◆ NAI_SUM1553_RT_DATABLKSIZE

#define NAI_SUM1553_RT_DATABLKSIZE   34 /* 34 words per data block */

◆ NAI_SUM1553_RT_DATABLKSIZE_MC

#define NAI_SUM1553_RT_DATABLKSIZE_MC   3 /* 3 words per ModeCode data block */

◆ NAI_SUM1553_RT_DATABLKSIZE_SA

#define NAI_SUM1553_RT_DATABLKSIZE_SA   34 /* 34 words per SubAddress data block */

◆ NAI_SUM1553_RT_DESCR_BCAST

#define NAI_SUM1553_RT_DESCR_BCAST   (NAI_SUM1553_RT_DESCR_BUFA + (NAI_SUM1553_RT_BUF_SIZE*256))

◆ NAI_SUM1553_RT_DESCR_BUFA

#define NAI_SUM1553_RT_DESCR_BUFA   0x200

◆ NAI_SUM1553_RT_DESCR_CONTROL

#define NAI_SUM1553_RT_DESCR_CONTROL   0x00000

◆ NAI_SUM1553_RT_DESCR_DATA_A

#define NAI_SUM1553_RT_DESCR_DATA_A   0x00002

◆ NAI_SUM1553_RT_DESCR_DATA_B

#define NAI_SUM1553_RT_DESCR_DATA_B   0x00004

◆ NAI_SUM1553_RT_DESCR_DATA_BCAST

#define NAI_SUM1553_RT_DESCR_DATA_BCAST   0x00006

◆ NAI_SUM1553_RT_DESCR_RECV_MC

#define NAI_SUM1553_RT_DESCR_RECV_MC   0x00100 /* Descriptor Table Receive Mode Code */

◆ NAI_SUM1553_RT_DESCR_RECV_SA

#define NAI_SUM1553_RT_DESCR_RECV_SA   0x00000 /* Descriptor Table Receive SubAddress */

◆ NAI_SUM1553_RT_DESCR_XMIT_MC

#define NAI_SUM1553_RT_DESCR_XMIT_MC   0x00180 /* Descriptor Table Transmit Mode Code */

◆ NAI_SUM1553_RT_DESCR_XMIT_SA

#define NAI_SUM1553_RT_DESCR_XMIT_SA   0x00080 /* Descriptor Table Transmit SubAddress */

◆ NAI_SUM1553_RT_DESCRBLKSIZE

#define NAI_SUM1553_RT_DESCRBLKSIZE   4 /* 4 words per descriptor block */

◆ NAI_SUM1553_RT_DPA_RECV_MC

#define NAI_SUM1553_RT_DPA_RECV_MC   0x00A80 /* Data Pointer A Receive Mode Code */

◆ NAI_SUM1553_RT_DPA_RECV_SA

#define NAI_SUM1553_RT_DPA_RECV_SA   0x00200 /* Data Pointer A Receive SubAddress */

◆ NAI_SUM1553_RT_DPA_XMIT_MC

#define NAI_SUM1553_RT_DPA_XMIT_MC   0x00EC0 /* Data Pointer A Transmit Mode Code */

◆ NAI_SUM1553_RT_DPA_XMIT_SA

#define NAI_SUM1553_RT_DPA_XMIT_SA   0x00640 /* Data Pointer A Transmit SubAddress */

◆ NAI_SUM1553_RT_DPB_RECV_MC

#define NAI_SUM1553_RT_DPB_RECV_MC   0x01B80 /* Data Pointer B Receive Mode Code */

◆ NAI_SUM1553_RT_DPB_RECV_SA

#define NAI_SUM1553_RT_DPB_RECV_SA   0x01300 /* Data Pointer B Receive SubAddress */

◆ NAI_SUM1553_RT_DPB_XMIT_MC

#define NAI_SUM1553_RT_DPB_XMIT_MC   0x01FC0 /* Data Pointer B Transmit Mode Code */

◆ NAI_SUM1553_RT_DPB_XMIT_SA

#define NAI_SUM1553_RT_DPB_XMIT_SA   0x01740 /* Data Pointer B Transmit SubAddress */

◆ NAI_SUM1553_RT_RECV_SA

#define NAI_SUM1553_RT_RECV_SA   0x0200 /* SA Recv Bufs (32SA * 16msgs * 34words = 17408) */

◆ PROC_ENABLE

#define PROC_ENABLE   0x0001

◆ PROC_HPRIOTX

#define PROC_HPRIOTX   0x0002

◆ REQ_INT

#define REQ_INT   0x8000

◆ REQ_MC

#define REQ_MC   0x40

◆ REQ_OP_LOADSA

#define REQ_OP_LOADSA   0x0100

◆ REQ_OP_READSA

#define REQ_OP_READSA   0x0000

◆ REQ_TX

#define REQ_TX   0x20

◆ RESP_FIFO_READSA_HEAD_SIZE

#define RESP_FIFO_READSA_HEAD_SIZE   3

◆ WCSA_BMON

#define WCSA_BMON   (1 << 15)

◆ WCSA_MODE

#define WCSA_MODE   (1 << 13)

◆ WCSA_SA_MASK

#define WCSA_SA_MASK   0x1F

◆ WCSA_SA_SHIFT

#define WCSA_SA_SHIFT   5

◆ WCSA_WC_MASK

#define WCSA_WC_MASK   0x3E0

◆ WCSA_WC_SHIFT

#define WCSA_WC_SHIFT   0

◆ WCSA_XMIT

#define WCSA_XMIT   (1 << 14)

Typedef Documentation

◆ nai_sum1553_bmmsg_t

typedef struct nai_sum1553_bmmsg nai_sum1553_bmmsg_t

◆ nai_sum1553_cmdblock_t

typedef struct nai_sum1553_cmdblock nai_sum1553_cmdblock_t

Function Documentation

◆ naibrd_SUM1553_RT_ConfigureForCircBuffer()

NAIBRDFUNC nai_status_t NAIAPI naibrd_SUM1553_RT_ConfigureForCircBuffer ( int32_t cardIndex,
int32_t module,
int32_t channel )