GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > CTDB / V5-5-2
Constituent: sumt_rt_pmc1553     Tag: mv2304
#include "vxWorks.h"
#include "wdLib.h"
#include "sysLib.h"
#include "intLib.h"
#include "CTDB/SUMT_rt.h"
#include "CTDB/CO1553_rt.h"
#include "PBS/FPA.h"
#include "PBS/FORK.h"
#include "PBS/WUT.h"
#include "PBS/TOV.h"
#include "MSG/MSG_pubdefs.h"
#include "SUMT_rt_private.h"
#include "SUMT_rt_board.h"
#include "SUMT_private.h"
Include dependency graph for SUMT_rt_msg.c:
Functions | |
static WUT_cb_status | SUMT_rtMsgTimeout (SUMT_RT *rt, WUT_tmr *timer) |
void | SUMT_rtIntr (SUMT_RT *rt) |
The driver interrupt handler. | |
void | SUMT_rtMsg (SUMT_RT *rt) |
Process a Summit 1553 bus data message. |
|
The driver interrupt handler. Handles Summit remote terminal device interrupts. The device interrupt status register is read, which clears the interrupt condition on the device side. The interrupt is also cleared at the board level and on the I/O bus. The contents of the interrupt status register are examined to determine which event caused the interrupt. For telecommand receive and error reports, the response is handled directly here in the interrupt handler. Telecommand receive packets are handled by the CCSDS interface library. Error reports are translated to the appropriate MSG code and signaled. For telemetry and telecommand transmit events, a descriptor is allocated from the interrupt pool. A status code is saved to the interrupt descriptor indicating that a device event needs servicing. The descriptor is placed on a queue to be handled by SUMT_rtTask() at a later time.
|
|
Process a Summit 1553 bus data message. Responds to a Summit device interrupt indicating that a 1553 bus data message has been transferred. The RT descriptor table is polled to find the sub- address, and the appropriate CCSDS interface library function is called to handle the data. The data wrap notification is handled directly here. The CCSDS interface library handles the telemetry and telecommand transmit subaddresses.
|
|
Handles timeouts for no new messages arriving on a subaddress. An error message is queued.
|