The purpose of this section is to give the reader a basic introduction to the IIDC (Digital Camera) v1.31 specification and to provide a basic description of how software could be written to communicate with an IIDC-compliant PixeLINK camera.
To make use of the information presented here, please refer to the following related documentation:
IIDC 1394-based Digital Camera Specification (Version 1.31)
IEEE 1394-1995 Serial Bus Specification
IEEE 1394a Supplement
CSR Architecture Specification – ISO/IEC 13212 (ANSI/IEEE 1212)
|
|
|
Note |
If you are using the PixeLINK SDK, you do not need to read this section. The PixeLINK SDK is a high level Application Programming Interface (API) compatible with C, C++ and Visual Basic. It provides low-level drivers and a high-level software interface to the camera that simplifies the task of controlling PixeLINK cameras. |
The IIDC specification was written to act as a design guide for digital camera makers wishing to have cameras that would be interoperable across many different software applications and systems. As a result, it is fairly technical and assumes familiarity with 1394 and the control and status register architecture. This does not make it well suited for developers with little or no 1394 experience who wish to understand how software communicates with an IIDC compliant camera. There are also several sections in the specification that are vague enough that they could be interpreted in several ways. This section will provide an overview of IIDC and help in interpreting the IIDC specification.
CSR – Control and Status Register – A 4 byte control register used in 1394 devices.
Quadlet – A 4 byte value
Configuration ROM – A portion of a 1394 device’s address space that contains configuration information about the device.
Bus Info Block – A portion of a 1394 device’s Configuration ROM that specifies a variety of bus related capabilities.
Root Directory – A portion of a 1394 device’s Configuration ROM that provides information necessary for the device to be identified along with pointers to other directories and data structures.
Unit Directory – A portion of a 1394 device’s Configuration ROM that provides information about a specific function of the device.
Quadlet Offset – This term is used throughout the IIDC specification and means the number of Quadlets from a specified base address. (I.e. if a quadlet offset is determined to be 100h then the actual address offset would be 400h).
IIDC Base Address – The base address of the IIDC address space to which CSRs in the IIDC specification refer.