Difference between revisions of "MV Series MIPI Camera Register Map"

From wiki_veye
Jump to navigation Jump to search
Line 26: Line 26:
 
A: Read and write at any time.
 
A: Read and write at any time.
  
S: Running state is readable only.
+
S: Read only at Running state.
  
 
=== Basic Parameters ===
 
=== Basic Parameters ===
Line 44: Line 44:
 
|RO
 
|RO
 
|<nowiki>-</nowiki>
 
|<nowiki>-</nowiki>
|
+
|manufacturer
 
|-
 
|-
 
|0x0004
 
|0x0004
Line 52: Line 52:
 
|RO
 
|RO
 
|<nowiki>-</nowiki>
 
|<nowiki>-</nowiki>
|
+
|model
 
|-
 
|-
 
|0x0008
 
|0x0008
Line 76: Line 76:
 
|RO
 
|RO
 
|<nowiki>-</nowiki>
 
|<nowiki>-</nowiki>
|
+
|version
 
|-
 
|-
 
|0x0014
 
|0x0014
|System reset
+
|Factory Param
 
|
 
|
 
|bool
 
|bool
 
|WO
 
|WO
 
|A
 
|A
|
+
|factoryparam
 
|-
 
|-
 
|0x0018
 
|0x0018
Line 92: Line 92:
 
|WO
 
|WO
 
|A
 
|A
|
+
|paramsave
 
|-
 
|-
 
|0x001C
 
|0x001C
Line 100: Line 100:
 
|WO
 
|WO
 
|A
 
|A
|
+
|reboot
 
|-
 
|-
 
|0x0020
 
|0x0020
Line 108: Line 108:
 
|RO
 
|RO
 
|<nowiki>-</nowiki>
 
|<nowiki>-</nowiki>
|
+
|timestamp
 
|-
 
|-
 
|0x0024
 
|0x0024
Line 116: Line 116:
 
|RO
 
|RO
 
|<nowiki>-</nowiki>
 
|<nowiki>-</nowiki>
|
+
|errcode
 
|}
 
|}
 
=== Image Acquisition ===
 
=== Image Acquisition ===
Line 128: Line 128:
 
!script function
 
!script function
 
|-
 
|-
 +
|0x0400
 +
|Image  Acquisition
 
|
 
|
 +
|bool
 +
|WO
 +
|A
 +
|imgacq
 +
|-
 +
|0x0404
 +
|Trigger Mode
 
|
 
|
 +
|enum
 +
|RW
 +
|S
 +
|trgmode
 +
|-
 +
|0x0408
 +
|Trigger Source
 
|
 
|
 +
|enum
 +
|RW
 +
|S
 +
|trgsrc
 +
|-
 +
|0x040C
 +
|Trigger Number
 
|
 
|
 +
|uint
 +
|RW
 +
|S
 +
|trgnum
 +
|-
 +
|0x0410
 +
|Trigger  Interval
 
|
 
|
 +
|uint
 +
|RW
 +
|S
 +
|trginterval
 +
|-
 +
|0x0414
 +
|Trigger  Software
 
|
 
|
 +
|bool
 +
|WO
 +
|A
 +
|trgone
 +
|-
 +
|0x0418
 +
|Trigger Count
 
|
 
|
 +
|uint
 +
|RW
 +
|A
 +
|trgcount
 
|-
 
|-
 +
|0x041C
 +
|I2C ADDR
 
|
 
|
 +
|uint
 +
|RW
 +
|A
 +
|i2caddr
 +
|}
 +
=== Image Features ===
 +
{| class="wikitable"
 +
!Address
 +
!Name
 +
!Description
 +
!Data Type
 +
!R/W
 +
!Update timing
 +
!script function
 +
|-
 +
|0x0800
 +
|Test  Image Selector
 
|
 
|
 +
|uint
 +
|RW
 +
|A
 +
|testimg
 +
|-
 +
|0x0804
 +
|Pixel Format
 
|
 
|
 +
|enum
 +
|RW
 +
|A
 +
|pixelformat
 +
|-
 +
|0x0808
 +
|Sensor Width
 
|
 
|
 +
|uint
 +
|RO
 +
| -
 +
|maxwh
 +
|-
 +
|0x080C
 +
|Sensor Height
 
|
 
|
 +
|uint
 +
|RO
 +
| -
 +
|maxwh
 +
|-
 +
|0x0810
 +
|MaxFrame Rate
 
|
 
|
 +
|uint
 +
|RO
 +
| -
 +
|maxfps
 +
|-
 +
|0x0814
 +
|Framerate
 
|
 
|
 +
|uint
 +
|RW
 +
|S
 +
|fps
 
|-
 
|-
 +
|0x0818
 +
|ROI Width
 
|
 
|
 +
|uint
 +
|RW
 +
|S
 +
|roi
 +
|-
 +
|0x081C
 +
|ROI Height
 
|
 
|
 +
|uint
 +
|RW
 +
|S
 +
|roi
 +
|-
 +
|0x0820
 +
|ROI Offset X
 
|
 
|
 +
|uint
 +
|RW
 +
|S
 +
|roi
 +
|-
 +
|0x0824
 +
|ROI Offset Y
 
|
 
|
 +
|uint
 +
|RW
 +
|S
 +
|roi
 +
|-
 +
|0x0828
 +
|Image Direction
 
|
 
|
 +
|enum
 +
|RW
 +
|A
 +
|imgdir
 +
|-
 +
|0x0830
 +
|Black Level
 
|
 
|
|
+
|uint
 +
|RW
 +
|A
 +
|blacklevel
 
|}
 
|}
=== Image Features ===
+
=== ISP ===
 
{| class="wikitable"
 
{| class="wikitable"
 
!Address
 
!Address
Line 162: Line 308:
 
!script function
 
!script function
 
|-
 
|-
 +
|0x0C00
 +
|ISP module ctrl
 +
|
 +
|uint
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C04
 +
|Exposure Mode
 +
|
 +
|enum
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C08
 +
|Target Brightness
 +
|
 +
|uint
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C0C
 +
|Exposure  Time Source
 +
|
 +
|enum
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C10
 +
|ME Time
 +
|
 +
|uint
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C14
 +
|AE MAX Time
 +
|
 +
|uint
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C18
 +
|Exp Time
 +
|
 +
|uint
 +
|RO
 +
|
 +
|
 +
|-
 +
|0x0C1C
 +
|Gain Mode
 +
|
 +
|enum
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C20
 +
|Manual Gain
 +
|
 +
|uint
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C24
 +
|AG Max Gain
 +
|
 +
|uint
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C28
 +
|Cur Gain
 +
|
 +
|uint
 +
|RO
 +
|
 +
|
 +
|-
 +
|0x0C2C
 +
|AAROIOffsetX
 +
|
 +
|uint
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C30
 +
|AAROIOffsetY
 +
|
 +
|uint
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C34
 +
|AAROIWidth
 +
|
 +
|uint
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C38
 +
|AAROIHeight
 
|
 
|
 +
|uint
 +
|RW
 
|
 
|
 
|
 
|
 +
|-
 +
|0x0C3C
 +
|WB Mode
 
|
 
|
 +
|enum
 +
|RW
 
|
 
|
 +
|
 +
|-
 +
|0x0C40
 +
|MWB Rgain
 +
|
 +
|uint
 +
|RW
 
|
 
|
 
|
 
|
 
|-
 
|-
 +
|0x0C44
 +
|MWB Bgain
 +
|
 +
|uint
 +
|RW
 +
|
 +
|
 +
|-
 +
|0x0C48
 +
|AWBROIOffsetX
 +
|
 +
|uint
 +
|RW
 
|
 
|
 
|
 
|
 +
|-
 +
|0x0C4C
 +
|AWBROIOffsetY
 
|
 
|
 +
|uint
 +
|RW
 
|
 
|
 
|
 
|
 +
|-
 +
|0x0C50
 +
|AWBROIWidth
 +
|
 +
|uint
 +
|RW
 
|
 
|
 
|
 
|
 
|-
 
|-
 +
|0x0C54
 +
|AWBROIHeight
 
|
 
|
 +
|uint
 +
|RW
 
|
 
|
 
|
 
|
 +
|-
 +
|0x0C58
 +
|AWB Rgain
 +
|
 +
|uint
 +
|RO
 
|
 
|
 
|
 
|
 +
|-
 +
|0x0C5C
 +
|AWB Bgain
 +
|
 +
|uint
 +
|RO
 
|
 
|
 
|
 
|
|}
 
=== ISP ===
 
{| class="wikitable"
 
!Address
 
!Name
 
!Description
 
!Data Type
 
!R/W
 
!Update timing
 
!script function
 
 
|-
 
|-
 +
|0x0C60
 +
|Gamma
 +
|
 +
|uint
 +
|RW
 
|
 
|
 
|
 
|
 +
|-
 +
|0x0C64
 +
|DPC Start
 
|
 
|
 +
|bool
 +
|WO
 
|
 
|
 
|
 
|
 +
|-
 +
|0x0C68
 +
|DPC Status
 +
|
 +
|enum
 +
|RO
 
|
 
|
 
|
 
|
 
|-
 
|-
 +
|0x0C6C
 +
|DPC Count
 +
|
 +
|uint
 +
|RO
 
|
 
|
 
|
 
|
 +
|-
 +
|0x0C70
 +
|DPC Threshold
 +
|
 +
|uint
 +
|RW
 
|
 
|
 
|
 
|
 +
|-
 +
|0x0C74
 +
|LUT Count
 
|
 
|
 +
|uint
 +
|RO
 
|
 
|
 
|
 
|
 
|-
 
|-
 +
|0x0C78
 +
|LUT Start
 
|
 
|
 +
|bool
 +
|WO
 
|
 
|
 
|
 
|
 +
|-
 +
|0x0C7C
 +
|LUT Done
 
|
 
|
 +
|bool
 +
|WO
 +
|
 +
|
 +
|-
 +
|0x0C80
 +
|AAROI enable
 
|
 
|
 +
|bool
 +
|WR
 
|
 
|
 
|
 
|

Revision as of 17:26, 6 March 2022


查看中文

1 Overview

1.1 Register Features

The register address length is 4 bytes and the data length is 2 bytes.

Register R/W attributes: RW, RO, WO. Only the RW type can be saved to the camera flash.

Register values have several types: uint(unsigned int), bool, enum, ascii.

1.2 I2c communication protocol

The module supports parameter configuration via i2c protocol. The default i2c slave address of the camera is 0x3b which can be modified.
I2c data input order is MSB-first transfer.

We provide open source shell scripts under Linux to help read and write each register.

The script function column in the following table indicates the function name in the shell script corresponding to this register.

1.3 Update timing

The camera has two states, standby and running, after the start of image acquisition into the running state.

In the following table, Update timing is divided into "A" and "S".

A: Read and write at any time.

S: Read only at Running state.

2 Basic Parameters

Address Name Description Data Type R/W Update timing script function
0x0000 Manufacturer Name ascii RO - manufacturer
0x0004 Model Name enum RO - model
0x0008 Sensor Name enum RO -
0x000C Serial Number uint RO -
0x0010 Device Version uint RO - version
0x0014 Factory Param bool WO A factoryparam
0x0018 Param save to flash bool WO A paramsave
0x001C System reboot bool WO A reboot
0x0020 Time stamp uint RO - timestamp
0x0024 Error Code uint RO - errcode

3 Image Acquisition

Address Name Description Data Type R/W Update timing script function
0x0400 Image Acquisition bool WO A imgacq
0x0404 Trigger Mode enum RW S trgmode
0x0408 Trigger Source enum RW S trgsrc
0x040C Trigger Number uint RW S trgnum
0x0410 Trigger Interval uint RW S trginterval
0x0414 Trigger Software bool WO A trgone
0x0418 Trigger Count uint RW A trgcount
0x041C I2C ADDR uint RW A i2caddr

4 Image Features

Address Name Description Data Type R/W Update timing script function
0x0800 Test Image Selector uint RW A testimg
0x0804 Pixel Format enum RW A pixelformat
0x0808 Sensor Width uint RO - maxwh
0x080C Sensor Height uint RO - maxwh
0x0810 MaxFrame Rate uint RO - maxfps
0x0814 Framerate uint RW S fps
0x0818 ROI Width uint RW S roi
0x081C ROI Height uint RW S roi
0x0820 ROI Offset X uint RW S roi
0x0824 ROI Offset Y uint RW S roi
0x0828 Image Direction enum RW A imgdir
0x0830 Black Level uint RW A blacklevel

5 ISP

Address Name Description Data Type R/W Update timing script function
0x0C00 ISP module ctrl uint RW
0x0C04 Exposure Mode enum RW
0x0C08 Target Brightness uint RW
0x0C0C Exposure Time Source enum RW
0x0C10 ME Time uint RW
0x0C14 AE MAX Time uint RW
0x0C18 Exp Time uint RO
0x0C1C Gain Mode enum RW
0x0C20 Manual Gain uint RW
0x0C24 AG Max Gain uint RW
0x0C28 Cur Gain uint RO
0x0C2C AAROIOffsetX uint RW
0x0C30 AAROIOffsetY uint RW
0x0C34 AAROIWidth uint RW
0x0C38 AAROIHeight uint RW
0x0C3C WB Mode enum RW
0x0C40 MWB Rgain uint RW
0x0C44 MWB Bgain uint RW
0x0C48 AWBROIOffsetX uint RW
0x0C4C AWBROIOffsetY uint RW
0x0C50 AWBROIWidth uint RW
0x0C54 AWBROIHeight uint RW
0x0C58 AWB Rgain uint RO
0x0C5C AWB Bgain uint RO
0x0C60 Gamma uint RW
0x0C64 DPC Start bool WO
0x0C68 DPC Status enum RO
0x0C6C DPC Count uint RO
0x0C70 DPC Threshold uint RW
0x0C74 LUT Count uint RO
0x0C78 LUT Start bool WO
0x0C7C LUT Done bool WO
0x0C80 AAROI enable bool WR

6 IO Control

Address Name Description Data Type R/W Update timing script function