MT9V022
www.onsemi.com
15
Chip Version
Chip version registers R0x00 and R0xFF are read−only.
Window Control
Registers R0x01 column start, R0x02 Row Start, R0x03
window height (row size), and R0x04 Window Width
(column size) control the size and starting coordinates of the
window.
The values programmed in the window height and width
registers are the exact window height and width out of the
sensor. The window start value should never be set below
four.
To read out the dark rows set bit 6 of R0x0D. In addition,
bit 7 of R0x0D can be used to display the dark columns in
the image.
Blanking Control
Horizontal blanking and vertical blanking registers
R0x05 and R0x06 respectively control the blanking time in
a row (horizontal blanking) and between frames (vertical
blanking).
•Horizontal blanking is specified in terms of pixel
clocks.
•Vertical blanking is specified in terms of numbers of
rows.
The actual imager timing can be calculated using Table 4
and Table 5 which describe “Row Timing and
FRAME_VALID/LINE_VALID signals.” The minimum
number of vertical blank rows is 4.
Pixel Integration Control
Total Integration
R0x0B Total Shutter Width (In Terms of Number of Rows)
This register (along with the window width and horizontal
blanking registers) controls the integration time for the
pixels.
The actual total integration time, tINT, is:
tINT = (Number of rows of integration × row time) +
Overhead, where:
The number of rows integration is equal to the result of
automatic exposure control (AEC) which may vary from
frame to frame, or, if AEC is disabled, the value in R0x0B
Row time = (R0x04 + R0x05) master clock periods
Overhead = (R0x04 + R0x05 – 255) master clock periods
Typically, the value of R0x0B (total shutter width) is
limited to the number of rows per frame (which includes
vertical blanking rows), such that the frame rate is not
affected by the integration time. If R0x0B is increased
beyond the total number of rows per frame, it is required to
add additional blanking rows using R0x06 as needed. A
second constraint is that tINT must be adjusted to avoid
banding in the image from light flicker. Under 60 Hz flicker,
this means frame time must be a multiple of 1/120 of a
second. Under 50 Hz flicker, frame time must be a multiple
of 1/100 of a second.
Changes to Integration Time
With automatic exposure control disabled (R0xAF, bit 0
is cleared to LOW), and if the total integration time (R0x0B)
is changed via the two−wire serial interface while
FRAME_VALID is asserted for frame n, the first frame
output using the new integration time is frame (n + 2).
Similarly, when automatic exposure control is enabled, any
change to the integration time for frame n first appears in
frame (n + 2) output.
The sequence is as follows:
1. During frame n, the new integration time is held in
the R0x0B live register.
2. At the start of frame (n + 1), the new integration
time is transferred to the exposure control module.
Integration for each row of frame (n + 1) has been
completed using the old integration time. The
earliest time that a row can start integrating using
the new integration time is immediately after that
row has been read for frame (n + 1). The actual
time that rows start integrating using the new
integration time is dependent on the new value of
the integration time.
3. When frame (n + 1) is read out, it is integrated
using the new integration time. If the integration
time is changed (R0x0B written) on successive
frames, each value written is applied to a single
frame; the latency between writing a value and it
affecting the frame readout remains at two frames.
However, when automatic exposure control is
disabled, if the integration time is changed through
the two−wire serial interface after the falling edge
of FRAME_VALID for frame n, the first frame
output using the new integration time becomes
frame (n+ 3).