Difference between revisions of "VEYE-MIPI-290/327 i2c/zh"
(→devid) |
|||
Line 52: | Line 52: | ||
-b [i2c bus num] i2c bus number | -b [i2c bus num] i2c bus number | ||
− | support functions: devid,hdver,wdrmode,videoformat,mirrormode,denoise,agc,lowlight,daynightmode,ircutdir,irtrigger | + | support functions: devid,hdver,wdrmode,videoformat,mirrormode,denoise,agc,lowlight,daynightmode,ircutdir,irtrigger,cameramode, notf, capture, csienable |
对于树莓派Pi3B / Pi3B+ / 3A / 4B(1G/2G/4G),使用i2c0, '''对于Compute Module/ CM3,使用i2c1,请添加-b1 选项。''' | 对于树莓派Pi3B / Pi3B+ / 3A / 4B(1G/2G/4G),使用i2c0, '''对于Compute Module/ CM3,使用i2c1,请添加-b1 选项。''' | ||
Line 352: | Line 352: | ||
|1/30 (25) *30 | |1/30 (25) *30 | ||
|} | |} | ||
+ | =====cameramode===== | ||
+ | Requirements:hdver >= 0x3 | ||
+ | |||
+ | <code>./veye_mipi_i2c.sh -r -f cameramode</code> | ||
+ | |||
+ | <code>./veye_mipi_i2c.sh -w -f cameramode -p1 [value]</code> | ||
+ | {| class="wikitable" | ||
+ | !value | ||
+ | !description | ||
+ | |- | ||
+ | |0x0 | ||
+ | |Stream mode | ||
+ | |- | ||
+ | |0x1 | ||
+ | |Capture mode | ||
+ | |} | ||
+ | Stream mode: stream output | ||
+ | |||
+ | Caputre mode: output the next frame each '''capture''' cmd. | ||
+ | |||
+ | ===== notf ===== | ||
+ | Requirements:hdver >= 0x3, effective in Stream mode | ||
+ | |||
+ | Number of dropped frames | ||
+ | |||
+ | It is a method of framerate control, output one frame,discard '''notf''' frames,output next frame, and so on. | ||
+ | |||
+ | ''actual framerate = original framerate /(1+notf)'' | ||
+ | |||
+ | For example,if the original framerate is 30fps, set '''notf''' to 2, then ''actual framerate'' is 10fps. | ||
+ | |||
+ | <code>./veye_mipi_i2c.sh -r -f notf</code> | ||
+ | |||
+ | <code>./veye_mipi_i2c.sh -w -f notf -p1 [value]</code> | ||
+ | |||
+ | '''ntof''' range is [0-0xFF], default 0. | ||
+ | |||
+ | ===== capture ===== | ||
+ | Requirements:hdver >= 0x3, effective in Capture mode | ||
+ | |||
+ | <code>./veye_mipi_i2c.sh -w -f capture</code> | ||
+ | |||
+ | Output the next frame each cmd。This cmd does not interfere the sensor, it just output the next frame (the newest frame). | ||
+ | |||
+ | So it is not trigger mode, there will be a delay[0,1/framerate] between the cmd and the frame exposure. | ||
+ | |||
+ | It is applicable to those that do not require a high level of real-time performance. | ||
+ | |||
+ | ===== csienable ===== | ||
+ | Requirements:hdver >= 0x3 | ||
+ | |||
+ | <code>./veye_mipi_i2c.sh -r -f csienable</code> | ||
+ | |||
+ | <code>./veye_mipi_i2c.sh -w -f csienable -p1 [value]</code> | ||
+ | {| class="wikitable" | ||
+ | !value | ||
+ | !description | ||
+ | |- | ||
+ | |0x0 | ||
+ | |suspend csi output | ||
+ | |- | ||
+ | |0x1 | ||
+ | |enable csi output | ||
+ | |} | ||
+ | default: 0x0 | ||
+ | |||
+ | Note: This is not low power mode, the camera is still working. |
Revision as of 09:05, 16 March 2020
1 介绍
目录下总共4个文件,camera_i2c_config、i2c_read、i2c_write、veye_mipi_i2c.sh。
2 树莓派配置管脚,非树莓派忽略此步
你需要先运行camera_i2c_config
./enable_i2c_vc.sh
./camera_i2c_config
配置管脚,然后执行veye_mipi_i2c.sh
2.1 camera_i2c_config USAGE
连接树莓派Computer Module情况下,运行
./camera_i2c_config [cameranum]
cameranum | description |
---|---|
0 | CAM0 |
1 | CAM1 |
连接树莓派经典版型情况下,直接运行
./camera_i2c_config
3 veye_mipi_i2c.sh USAGE
./veye_mipi_i2c.sh
Usage: ./veye_mipi_i2c.sh [-r/w] [-f] function name -p1 param1 -p2 param2 -b bus
options:
-r read
-w write
-f [function name] function name
-p1 [param1] param1 of each function
-p2 [param1] param2 of each function
-b [i2c bus num] i2c bus number
support functions: devid,hdver,wdrmode,videoformat,mirrormode,denoise,agc,lowlight,daynightmode,ircutdir,irtrigger,cameramode, notf, capture, csienable
对于树莓派Pi3B / Pi3B+ / 3A / 4B(1G/2G/4G),使用i2c0, 对于Compute Module/ CM3,使用i2c1,请添加-b1 选项。
3.1 使用详解
3.1.1 devid
./veye_mipi_i2c.sh -r -f devid
value | description |
---|---|
0x06 | VEYE-MIPI-290/327 |
3.1.2 hdver
./veye_mipi_i2c.sh -r -f hdver
value | description |
---|---|
0xXX | Version |
3.1.3 wdrmode
./veye_mipi_i2c.sh -r -f wdrmode
./veye_mipi_i2c.sh -w -f wdrmode -p1 [value]
value | description |
---|---|
0x00 | Back Light Mode OFF |
0x01 | Back Light Mode ON, LOW |
0x02 | Back Light Mode ON, HIGH |
0x03 | WDR Enable |
3.1.4 videoformat
./veye_mipi_i2c.sh -r -f videoformat
./veye_mipi_i2c.sh -w -f videoformat -p1 [value]
WARNING:THIS FUNCTION MUST BE CALLED BEFORE ANY video applications
value | description |
---|---|
PAL | PAL(50Hz) |
NTSC | NTSC(60Hz) |
3.1.5 mirrormode
./veye_mipi_i2c.sh -r -f mirrormode
./veye_mipi_i2c.sh -w -f mirrormode -p1 [value]
value | description |
---|---|
0x00 | Normal |
0x01 | Mirror |
0x02 | V-Flip |
0x03 | Mirror And V-Flip(180 Degree Rotate) |
3.1.6 denoise
./veye_mipi_i2c.sh -r -f denoise
./veye_mipi_i2c.sh -w -f denoise -p1 [value]
value | description |
---|---|
0x00 | NR 2D Mode = OFF; NR 3D Mode = OFF |
0x01 | NR 2D Mode = OFF; NR 3D Mode = LOW |
0x02 | NR 2D Mode = OFF; NR 3D Mode = MIDDLE |
0x03 | NR 2D Mode = OFF; NR 3D Mode = HIGH |
0x04 | NR 2D Mode = LOW; NR 3D Mode = OFF |
0x05 | NR 2D Mode = LOW; NR 3D Mode = LOW |
0x06 | NR 2D Mode = LOW; NR 3D Mode = MIDDLE |
0x07 | NR 2D Mode = LOW; NR 3D Mode = HIGH |
0x08 | NR 2D Mode =MIDDLE; NR 3D Mode = OFF |
0x09 | NR 2D Mode =MIDDLE; NR 3D Mode = LOW |
0x0A | NR 2D Mode = MIDDLE; NR 3D Mode = MIDDLE |
0x0B | NR 2D Mode = MIDDLE; NR 3D Mode = HIGH |
0x0C | NR 2D Mode =HIGH; NR 3D Mode = OFF |
0x0D | NR 2D Mode =HIGH; NR 3D Mode = LOW |
0x0E | NR 2D Mode = HIGH; NR 3D Mode = MIDDLE |
0x0F | NR 2D Mode = HIGH; NR 3D Mode = HIGH |
3.1.7 agc
./veye_mipi_i2c.sh -r -f agc
./veye_mipi_i2c.sh -w -f agc -p1 [value]
value | description |
---|---|
0x00~0x0F | AGC intensity |
3.1.8 lowlight
./veye_mipi_i2c.sh -r -f lowlight
./veye_mipi_i2c.sh -w -f lowlight -p1 [value]
value | description |
---|---|
0x01 | 1/2*(FRAME RATE) |
0x03 | 1/4*(FRAME RATE) |
0x05 | 1/6*(FRAME RATE) |
0x07 | 1/8*(FRAME RATE) |
0x09 | 1/10*(FRAME RATE) |
0x0B | 1/15*(FRAME RATE) |
0x0D | 1/20*(FRAME RATE) |
0x0F | 1/25*(FRAME RATE) |
0x11 | 1/30*(FRAME RATE) |
0x00 | Fixed frame rate (25/30) |
3.1.9 daynightmode
./veye_mipi_i2c.sh -r -f daynightmode
./veye_mipi_i2c.sh -w -f daynightmode -p1 [value]
value | description |
---|---|
0xFF | Color Mode |
0xFE | Black&White Mode |
0xFC | Trigger Mode |
IR-CUT (Infrared cut-off filter) is a mechanical shutter design. It is placed between the lens and the image sensor, and is controlled by a motor or an electromagnet.
IR-CUT has two status: Block or Deliver the infrared.
- Color Mode
Image is Color Mode and IR_CUT status Block infrared.
- Black&White Mode
Image is Black&White Mode and IR_CUT status Deliver infrared.
- Trigger Mode
Trigger pin : J3 pin1.
Trigger pin High(3.3~12V),Image is Black&White Mode and IR-CUT status Deliver infrared.
Trigger pin Low(GND),Image is Color Mode and IR-CUT status Bolck infrared.
3.1.10 mshutter
close AE, use manual shutter
./veye_mipi_i2c.sh -r -f mshutter
./veye_mipi_i2c.sh -w -f mshutter -p1 [value]
value值与曝光时间(单位:s)
value 大于等于0x4B则进入慢快门模式
value | description |
---|---|
NTSC(PAL) | |
0x40 | auto mode |
0x41 | 1/30 (25) |
0x42 | 1/60(50) |
0x43 | 1/120(100) |
0x44 | 1/240(200) |
0x45 | 1/480(400) |
0x46 | 1/1000 |
0x47 | 1/2000 |
0x48 | 1/5000 |
0x49 | 1/10000 |
0x4A | 1/50000 |
0x4B | 1/30 (25) *2 |
0x4C | 1/30 (25) *4 |
0x4D | 1/30 (25) *6 |
0x4E | 1/30 (25) *8 |
0x4F | 1/30 (25) *10 |
0x50 | 1/30 (25) *15 |
0x51 | 1/30 (25) *20 |
0x52 | 1/30 (25) *25 |
0x53 | 1/30 (25) *30 |
3.1.11 cameramode
Requirements:hdver >= 0x3
./veye_mipi_i2c.sh -r -f cameramode
./veye_mipi_i2c.sh -w -f cameramode -p1 [value]
value | description |
---|---|
0x0 | Stream mode |
0x1 | Capture mode |
Stream mode: stream output
Caputre mode: output the next frame each capture cmd.
3.1.12 notf
Requirements:hdver >= 0x3, effective in Stream mode
Number of dropped frames
It is a method of framerate control, output one frame,discard notf frames,output next frame, and so on.
actual framerate = original framerate /(1+notf)
For example,if the original framerate is 30fps, set notf to 2, then actual framerate is 10fps.
./veye_mipi_i2c.sh -r -f notf
./veye_mipi_i2c.sh -w -f notf -p1 [value]
ntof range is [0-0xFF], default 0.
3.1.13 capture
Requirements:hdver >= 0x3, effective in Capture mode
./veye_mipi_i2c.sh -w -f capture
Output the next frame each cmd。This cmd does not interfere the sensor, it just output the next frame (the newest frame).
So it is not trigger mode, there will be a delay[0,1/framerate] between the cmd and the frame exposure.
It is applicable to those that do not require a high level of real-time performance.
3.1.14 csienable
Requirements:hdver >= 0x3
./veye_mipi_i2c.sh -r -f csienable
./veye_mipi_i2c.sh -w -f csienable -p1 [value]
value | description |
---|---|
0x0 | suspend csi output |
0x1 | enable csi output |
default: 0x0
Note: This is not low power mode, the camera is still working.