the user application. The event may be an expected event, such as an indi-
cation that the device driver has completed processing a buffer, or it may
be an unexpected event, such as an error condition generated by the
device. All events are reported back to the application via a callback func-
tion. A callback function is simply a function within the user application
that the device manager calls to pass along event information.
Theory of Operation
The device driver model is built around the concept that a device is used
to move data into and/or out of the system. In most systems, a device is
used to move data into the system (where the data is processed) and
another device that moves the processed data out of the system. Often,
multiple devices run simultaneously in the system. The device manager
provides a simple and straightforward interface, regardless of how many
devices are active at any one point in time and the underlying implemen-
tation details of each device.
Data
Data that is moved into or out of the device is encapsulated in a buffer.
The device manager API defines three different types of buffers:
• One-dimensional buffers called
• Two-dimensional buffers called
•
Circular (autobuffer type) buffers called
BUFFER
Because the physical movement of data uses valuable computing resources
and has very little benefit, only the pointers to buffers are typically passed
between components. The device manager API defines the
data type as a pointer to a union of a one-dimensional buffer, a
BUFFER
two-dimensional buffer, and a circular buffer. Though each of these types
VisualDSP++ 5.0 Device Drivers and System
Services Manual for Blackfin Processors
Device Driver Manager
ADI_DEV_1D_BUFFER
ADI_DEV_2D_BUFFER
ADI_DEV_CIRCULAR_
ADI_DEV_
10-7
Need help?
Do you have a question about the VisualDSP++ 5.0 and is the answer not in the manual?