MT9M034
www.onsemi.com
19
Mirror
Column Mirror Image
By setting R0x3040[14] = 1, the readout order of the
columns is reversed, as shown in Figure 13. The starting
Bayer color pixel is maintained in this mode by a 1pixel
shift in the imaging array.
When using horizontal mirror mode, the user must
retrigger column correction. Please refer to the column
correction section to see the procedure for column
correction retriggering. Bayer resampling must be enabled,
by setting bit 4 of register 0x306E[4] = 1.
Figure 13. Eight Pixels in Normal and Column Mirror Readout Modes
G0[11:0] R0[11:0] G1[11:0] R1[11:0] G2[11:0] R2[11:0]
G3[11:0] R3[11:0] G2[11:0] R2[11:0] G1[11:0] R1[11:0]
D
OUT [11:0]
LV
Normal readout
D
OUT [11:0]
Reverse readout
G3[11:0] R3[11:0]
G0[11:0]
R0[11:0]
Row Mirror Image
By setting R0x3040[15] = 1, the readout order of the rows
is reversed as shown in Figure 14. The starting Bayer color
pixel is maintained in this mode by a 1pixel shift in the
imaging array. When using horizontal mirror mode, the user
must retrigger column correction. Please refer to the column
correction section to see the procedure for column
correction retriggering.
Figure 14. Six Rows in Normal and Row Mirror Readout Modes
Row0[11:0] Row1[11:0] Row2[11:0] Row3[11:0] Row4[11:0] Row5[11:0]
DOUT [11:0]
FV
Normal readout
D
OUT [11:0]
Reverse readout
Row0[11:0]Row1[11:0]Row2[11:0]Row3[11:0]Row4[11:0]Row5[11:0]
Maintaining a Constant Frame Rate
Maintaining a constant frame rate while continuing to
have the ability to adjust certain parameters is the desired
scenario. This is not always possible, however, because
register updates are synchronized to the read pointer, and the
shutter pointer for a frame is usually active during the
readout of the previous frame. Therefore, any register
changes that could affect the row time or the set of rows
sampled causes the shutter pointer to start over at the
beginning of the next frame.
By default, the following register fields cause a “bubble”
in the output rate (that is, the vertical blank increases for one
frame) if they are written in video mode, even if the new
value would not change the resulting frame rate. The
following list shows only a few examples of such registers;
a full listing can be seen in the MT9M034 Register
Reference.
x_addr_start
x_addr_end
y_addr_start
y_addr_end
frame_length_lines
line_length_pclk
coarse_integration_time
fine_integration_time
read_mode
The size of this bubble is (Integration_Time × t
ROW
),
calculating the row time according to the new settings.
The Coarse_Integration_Time and Fine_Integration
_Time fields may be written to without causing a bubble in
the output rate under certain circumstances. Because the
shutter sequence for the next frame often is active during the
output of the current frame, this would not be possible
without special provisions in the hardware. Writes to these
registers take effect two frames after the frame they are
written, which allows the integration time to increase
without interrupting the output or producing a corrupt frame
(as long as the change in integration time does not affect the
frame time).
MT9M034
www.onsemi.com
20
Synchronizing Register Writes to Frame Boundaries
Changes to most register fields that affect the size or
brightness of an image take effect on two frames after the
one during which they are written. These fields are noted as
“synchronized to frame boundaries” in the MT9M034
Register Reference. To ensure that a register update takes
effect on the next frame, the write operation must be
completed after the leading edge of FV and before the
trailing edge of FV.
Fields not identified as being framesynchronized are
updated immediately after the register write is completed.
The effect of these registers on the next frame can be difficult
to predict if they affect the shutter pointer.
Restart
To restart the MT9M034 at any time during the operation
of the sensor, write a “1” to the Restart register (R0x301A[1]
= 1). This has two effects: first, the current frame is
interrupted immediately. Second, any writes to
framesynchronized registers and the shutter width registers
take effect immediately, and a new frame starts (in video
mode). The current row completes before the new frame is
started, so the time between issuing the Restart and the
beginning of the next frame can vary by about t
ROW
.
Image Acquisition Modes
The MT9M034 supports two image acquisition modes:
video(master) and single frame.
Video
The video mode takes pictures by scanning the rows of the
sensor twice. On the first scan, each row is released from
reset, starting the exposure. On the second scan, the row is
sampled, processed, and returned to the reset state. The
exposure for any row is therefore the time between the first
and second scans. Each row is exposed for the same
duration, but at slightly different point in time, which can
cause a shear in moving subjects as is typical with electronic
rolling shutter sensors.
Single Frame
The singleframe mode operates similar to the video
mode. It also scans the rows of the sensor twice, first to reset
the rows and second to read the rows. Unlike video mode
where a continuous stream of images are output from the
image sensor, the singleframe mode outputs a single frame
in response to a high state placed on the TRIGGER input pin.
As long as the TRIGGER pin is held in a high state, new
images will be read out. After the TRIGGER pin is returned
to a low state, the image sensor will not output any new
images and will wait for the next high state on the TRIGGER
pin.
The TRIGGER pin state is detected during the vertical
blanking period (i.e. the FV signal is low). The pin is level
sensitive rather than edge sensitive. As such, image
integration will only begin when the sensor detects that the
TRIGGER pin has been held high for 3 consecutive clock
cycles. If the trigger signal is applied to multiple sensors at
the same time, the single frame output of the sensors will be
synchronized to within 1 PIXCLK if is PLL disabled or 2
PIXCLKs if PLL is enabled.
During integration time of singleframe mode and video
mode, the FLASH output pin is at high.
Continuous Trigger
In certain applications, multiple sensors need to have their
video streams synchronized (E.g. surround view or
panorama view applications). The TRIGGER pin can also
be used to synchronize output of multiple image sensors
together and still get a video stream. This is called
continuous trigger mode. Continuous trigger is enabled by
holding the TRIGGER pin high. Alternatively, the
TRIGGER pin can be held high until the stream bit is
enabled (R0x301A[2] = 1) then can be released for
continuous synchronized video streaming.
If the TRIGGER pins for all connected MT9M034 sensors
are connected to the same control signal, all sensors will
receive the trigger pulse at the same time. If they are
configured to have the same frame timing, then the usage of
the TRIGGER pin guarantees that all sensors will be
synchronized within 1 PIXCLK cycle if PLL is disabled, or
2 PIXCLK cycles if PLL is enabled.
With continuous trigger mode, the application can now
make use of the video streaming mode while guaranteeing
that all sensor outputs are synchronized. As long as the initial
trigger for the sensors takes place at the same time, all
subsequent video streams will be synchronous.
Temperature Sensor
The MT9M034 sensor has a builtin PTATbased
temperature sensor, accessible through registers, that is
capable of measuring die junction temperature.
The temperature sensor can be enabled by writing
R0x30B4[0] = 1 and R0x30B4[4] = 1. After this, the
temperature sensor output value can be read from
R0x30B2[10:0].
The value read out from the temperature sensor register is
an ADC output value that needs to be converted downstream
to a final temperature value in degrees Celsius. Since the
PTAT device characteristic response is quite linear in the
temperature range of operation required, a simple linear
function in the format of listed in the equation below can be
used to convert the ADC output value to the final
temperature in degrees Celsius.
Temperature + slope R0x30B2[10 : 0] ) T
0
(eq. 5)
For this conversion, a minimum of 2 known points are
needed to construct the line formula by identifying the slope
and yintercept “T
0
”. These calibration values can be read
from registers R0x30C6 and R0x30C8 which correspond to
value read at 70
°C and 55°C respectively. Once read, the
slope and yintercept values can be calculated and used in
the above equation.
MT9M034
www.onsemi.com
21
For more information on the temperature sensor registers,
refer to the MT9M034 Register Reference.
Automatic Exposure Control
The integrated automatic exposure control (AEC) is
responsible for ensuring that optimal settings of exposure
and gain are computed and updated every other frame. AEC
can be enabled or disabled by R0x3100[0].
When AEC is disabled (R0x3100[0] = 0), the sensor uses
the manual exposure value in coarse and fine shutter width
registers and the manual gain value in the gain registers.
When AEC is enabled (R0x3100[0] = 1), the target luma
value in linear mode is set by R0x3102. For the MT9M034
this target luma has a default value of 0x0800 or about half
scale. For HDR mode, the luma target maximum auto
exposure value is limited by R0x311C; the minimum auto
exposure is limited by R0x311E. These values are in units of
linetimes.
The exposure control measures current scene luminosity
by accumulating a histogram of pixel values while reading
out a frame. It then compares the current luminosity to the
desired output luminosity. Finally, the appropriate
adjustments are made to the exposure time and gain. All
pixels are used, regardless of color or mono mode. In HDR
mode, the coarse and fine integration time is the longest
integration time of the three integration, the other two
shorter integration are generated automatically base on the
predefined exposure ratios. When using nondefault HDR
exposure ratios, auto_dg_en should not be enabled
(R0x3100[4] = 0) due to required digital gains as
documented in Table 9, “Digital Gain Setting for Each T1 /
T2 and T2 / T3 Ratio”.
Embedded Data and Statistics
The MT9M034 has the capability to output image data
and statistics embedded within the frame timing. There are
2 types of information embedded within the frame readout:
1. Embedded Data: If enabled, these are displayed on
the 2 rows immediately before the first active pixel
row is displayed
2. Embedded Statistics: If enabled, these are
displayed on the 2 rows immediately after the last
active pixel row is displayed
NOTE: Embedded data and embedded statistics must be
enabled or disabled together.
Figure 15. Frame Format with Embedded Data Lines Enabled
Image
Register Data
Status & Statistics Data
HBlank
VBlank
Embedded Data
The embedded data contains the configuration of the
image being displayed. This includes all register settings
used to capture the current frame. The registers embedded
in these rows are as follows:
Line 1:
Registers R0x3000 to R0x312F
Line 2:
Registers R0x3136 to R0x31BF, R0x31D0 to R0x31FF
NOTE: All nondefined registers will have a value of 0.
In parallel mode, since the pixel word depth is
12bits/pixel, the sensor 16bit register data will be
transferred over 2 pixels where the register data will be
broken up into 8msb and 8lsb. The alignment of the 8bit data
will be on the 8MSB bits of the 12bit pixel word. For
example, if a register value of 0x1234 is to be transmitted,
it will be transmitted over 2, 12bit pixels as follows: 0x120,
0x340.
The first pixel of each line in the embedded data is a tag
value of 0x0A0. This signifies that all subsequent data is 8
bit data aligned to the MSB of the 12bit pixel.
The figure below summarizes how the embedded data
transmission looks like. It should be noted that data, as
shown in Figure 16, is aligned to the MSB of each word:

MT9M034I12STCH-S213A-GEVB

Mfr. #:
Manufacturer:
ON Semiconductor
Description:
Optical Sensor Development Tools 1.2 MP 1/3" CIS HB
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union