| LAT Communication Board Driver: Software Architecture and Interfaces | ||
|---|---|---|
| Prev | Chapter 2. Interrupt Mode Driver | Next |
The LCBD interface presents a public, stable interface to multiple users. All user applications communicate via the LCBD interface. The LCBD interface, in turn depends on the low level hardware interface (Chapter 1) and on several utility services provided by a common LAT Flight Software utility library[1].
The Figure 2-2 below shows the interrupt mode LCB driver library and its dependencies. Note that the user applications only interact with the public interface of the LCBD.
The LCBD will use the following services from the LAT FSW utility library:
LAT FSW Utility Services
The LCBD relies on message queues to buffer communications between the hardware and the user applications[2]. This includes messages sent from the user application (commands) and messages sent from the LCB (responses or unsolicited data).
The LCBD will need wake up timers in order to timeout commands whose responses either never arrive or arrive late.
The LCBD will need to manage a pool of LCB_msg objects, which are all fixed length. These messages are allocated by the LCBD and are freed by user supplied result processing functions.
| [1] | Currently this library is called BBC, but the name is subject to change. |
| [2] | This corresponds to the FORK routines in the BBC package. |