📄 sensorlib.c
字号:
/*********************************************************************** * Common CMOS camera sensor interface (INGENIC) ***********************************************************************/#include "camera.h"#include "i2c.h"static unsigned int i2c_addr = 0x42;static unsigned int i2c_clk = 100000;/* * Set sensor i2c clock */void sensor_set_clk(unsigned int clk){ i2c_clk = clk;}/* * Set sensor i2c address */void sensor_set_addr(unsigned int addr){ i2c_addr = addr;}/* * Set sensor register through i2c bus */int sensor_write_reg(unsigned char reg, unsigned char val){ int ret; i2c_open(); i2c_setclk(i2c_clk); ret = i2c_write(i2c_addr >> 1, &val, reg, 1); i2c_close(); return ret;}int sensor_write_reg16(unsigned short reg, unsigned char val){ int ret; i2c_open(); i2c_setclk(i2c_clk); ret = i2c_write_16(i2c_addr >> 1, &val, reg, 1); i2c_close(); return ret;}/* * Get sensor register through i2c bus */unsigned char sensor_read_reg(unsigned char reg){ unsigned char val; i2c_open(); i2c_setclk(i2c_clk); i2c_read(i2c_addr >> 1, &val, reg, 1); i2c_close(); return val;}/* * Get sensor register through i2c bus */unsigned char sensor_read_reg16(unsigned short reg){ unsigned char val; i2c_open(); i2c_setclk(i2c_clk); i2c_read_16(i2c_addr >> 1, &val, reg, 1); i2c_close(); return val;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -