Hand Held Products 4X00 Series User Manual

Page 20

Advertising
background image

14

IMAGETEAM™ 4X00 Series Hardware Interface Layer Specification

Programming Notes

1.

It is essential that callbacks for Vsync processing and Image Line Data processing not run at the same time, for example,
with 2 separate threads. It is essential that checks are made in the Hardware Interface DLL to ensure that a call to one
callback is complete before a second call to that callback, or a call to the other callback is made. To avoid this, use ISRs
that do not allow nesting. Or, if using ISTs in the Windows CE model, use the same thread to process both callbacks.

2.

It is assumed that an image transfer is initiated on the front edge of Vsync.

InitCaptureICMedia

(see page 10) can be

called at any time during the frame, and the hardware DLL must synchronize it with the hardware. Returning a 1 or 2 from

InitCaptureICMedia

is not mandatory. If a specific hardware system allows for initiation of an image transfer after the front

edge of Vsync, a 2 may be returned when

InitCaptureICMedia

is called because it takes effect for the next frame. But it is

imperative that calls made to

InitCaptureICMedia

from the Vsync callback only take effect on the next Vsync front edge.

3.

If running an Operating System on the target platform, such as Windows CE, processing of the Vsync and Image Data Line
callbacks must be high priority to ensure proper timing.

4.

There are times when the Vsync callback function will have to wait for longer than a single frame time for an event,
resulting in a second Vsync front edge being seen. If, upon returning from the Vsync callback function, another Vsync front
edge has passed,

do not call the callback again. Wait for the next one.

Advertising