sensorlib.c

来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· C语言 代码 · 共 75 行

C
75
字号
/*********************************************************************** * 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 + =
减小字号Ctrl + -
显示快捷键?