⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pixel+ 300k.c

📁 基于Philips LPC2104芯片
💻 C
字号:
#include "config.h"

//------------------------------------------------SAGEM config
const uint8 P2030N_SensorConfig_18fps[211]={
/*reg*//*00,  01,  02,  03,  04,  05,  06,  07,  08,  09,  0A,  0B,  0C,  0D,  0E,  0F*/
/*00*/                     0x03,0x83,0x02,0x20,0x00,0xD0,0x00,0x08,0x03,0x50,0x01,0xE8,
/*10*/ 0xFF,0xFF,0x02,0x02,0xFF,0x00,0x40,0x40,0x40,0x40,0x00,0x80,0x00,0x10,0x4A,0x19,
/*20*/ 0x24,0x00,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x01,0xE6,0x00,0xBD,0x03,0x41,0x38,0x68,
/*30*/ 0x40,0x2B,0x00,0x36,0x00,0x30,0x90,0x00,0x00,0x0A,0x20,0x33,0x06,0x06,0x02,0x00,
/*40*/ 0xC0,0xFF,0x01,0xF3,0x0F,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,0x9C,0x16,0x39,0x12,0x85,
/*50*/ 0xFC,0x38,0x62,0x38,0xC0,0x00,0x42,0xFF,0x02,0x00,0x1A,0x2A,0x37,0x42,0x56,0x68,
/*60*/ 0x87,0xA3,0xBC,0xD4,0xEA,0x40,0xC0,0x44,0x0C,0x00,0x40,0xA0,0x54,0x00,0x00,0x38,
/*70*/ 0xA5,0x0D,0x93,0x2D,0x06,0x83,0xAA,0x4D,0xFF,0xAC,0xFF,0x02,0x00,0x00,0x25,0x25,
/*80*/ 0x00,0x96,0x80,0xB0,0x90,0xA0,0x80,0x00,0x01,0x01,0xE7,0x00,0x01,0x03,0x00,0xFF,
/*90*/ 0x80,0x80,0x34,0x04,0x36,0x06,0xFF,0xFF,0x42,0x03,0xF0,0x10,0x10,0x7C,0x80,0x00,
/*A0*/ 0xFF,0x01,0xA5,0x02,0x7A,0x00,0xA8,0x01,0x48,0x06,0x0F,0xA0,0x48,0x89,0x8E,0x8E,
/*B0*/ 0x2E,0x50,0x5F,0x03,0xEE,0x00,0x12,0x04,0x08,0x04,0xFF,0x02,0x03,0xF3,0x2E,0x03,
/*C0*/ 0xEE,0x00,0x01,0x00,0x00,0x00,0x00,0xFF,0x00,0x1A,0x2A,0x37,0x42,0x56,0x00,0x1A,
/*D0*/ 0x2A,0x37,0x42,0x56,0x00,0x00,0x07};

//--------------------------------------------------modified
const uint8 P2030N_SensorConfig2_18fps[211]={
/*reg*//*00,  01,  02,  03,  04,  05,  06,  07,  08,  09,  0A,  0B,  0C,  0D,  0E,  0F*/
/*00*/                     0x03,0x83,0x02,0x20,0x00,0xD0,0x00,0x08,0x03,0x50,0x01,0xE8,
/*10*/ 0xFF,0xFF,0x02,0x02,0xFF,0x00,0x40,0x40,0x40,0x40,0x00,0x80,0x00,0x10,0x4A,0x19,
/*20*/ 0x24,0x00,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x01,0xE6,0x00,0xBD,0x03,0x41,0x38,0x68,
/*30*/ 0x40,0x2B,0x00,0x36,0x00,0x30,0x90,0x00,0x00,0x0A,0x20,0x33,0x06,0x06,0x02,0x00,
/*40*/ 0xC0,0xFF,0x01,0xF3,0x0F,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,0x9C,0x16,0x39,0x12,0x85,
/*50*/ 0xFF,0x38,0x40,0x28,0xC0,0x00,0x42,0xFF,0x02,0x00,0x1A,0x2A,0x37,0x42,0x56,0x68,		//50h,52h,53h
/*60*/ 0x87,0xA3,0xBC,0xD4,0xEA,0x40,0xC0,0x44,0x0C,0x00,0x40,0xA0,0x54,0x00,0x00,0x38,
/*70*/ 0xA5,0x0D,0x93,0x2D,0x06,0x83,0xAA,0x4D,0xFF,0xAC,0xFF,0x02,0x00,0x00,0x25,0x25,
/*80*/ 0x00,0x96,0x80,0xB0,0x90,0xA0,0x80,0x00,0x01,0x01,0xE7,0x00,0x01,0x03,0x00,0xFF,
/*90*/ 0x80,0x80,0x34,0x04,0x36,0x06,0xFF,0xFF,0x42,0x03,0xF0,0x10,0x10,0x7C,0x80,0x00,
/*A0*/ 0xFF,0x01,0xA5,0x02,0x7A,0x00,0xA8,0x01,0x48,0x06,0x0F,0xA0,0x48,0x89,0x8E,0x8E,
/*B0*/ 0x2E,0x50,0x5F,0x03,0xEE,0x00,0x12,0x04,0x08,0x04,0xFF,0x02,0x03,0xF3,0x2E,0x03,
/*C0*/ 0xEE,0x00,0x01,0x00,0x00,0x00,0x00,0xFF,0x00,0x1A,0x2A,0x37,0x42,0x56,0x00,0x1A,
/*D0*/ 0x2A,0x37,0x42,0x56,0x00,0x00,0x07};

/*********************************************************************************************************
** 函数名称: TargetInit
** 功能描述: 目标板初始化代码,在需要的地方调用,根据需要改变
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/
void InitCam(uint8 Param[],uint8 n, uint8 StartReg);			//将初始化参数全部灌一遍
void StartI2C(void);		//
void StopI2C(void);			//

void main()
{
PINSEL0=0x00000055;		//Uart0 and I2C selected
PINSEL1=0x00000000;		//all others are GPIO
IODIR=CamMCLK;			//(0 input ;1 output)P0.15-MCLK
IOCLR=0x0ffffffff;		//all port low

//------------------------------------I2C config
I2SCLH=0x30;
I2SCLL=0x30;
StartI2C();
InitCam(P2030N_SensorConfig_18fps,211,0x04);



StopI2C();			//




}
/*********************************************************************************************************
** 函数名称: InitCam()
** 功能描述: 目标板初始化代码,在需要的地方调用,根据需要改变
** 输 入: Param[] 初始化参数;n 参数数组长度;参数在camera寄存器中的起始位置
** 输 出: 无
** 全局变量: 无
** 调用模块: StartI2C();SendByte();
********************************************************************************************************/
void InitCam(uint8 Param[],uint8 n, uint8 StartReg)
{
	int i;
	SendByte(CamWr);		//select the camera as slave
	SendByte(StartReg);		//the register to be start at
	for(i=0;i<n;i++)
	{
		SendByte(Param[i]);	//send all the parameters
	}
}
/*********************************************************************************************************
** 函数名称: StartI2C()
** 功能描述: 启动I2C总线
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/
void StartI2C(void)
{
	I2CONCLR=0xff;		//clear all bits
	I2CONSET=0x40;		//set as master
	I2CONSET=0x60;		//master and start up	AA=0, no response
	while(I2CONSET&0x08==0);	//(SI=I2STAT.3)wait while start up not finished
}
/*********************************************************************************************************
** 函数名称: StopI2C()
** 功能描述: 停止I2C总线
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/
void StopI2C(void)
{
	I2CONCLR=0x28;			//Clear start and other flag
	I2CONSET=0x50;			//STO=1, stop I2C bus
}
/*********************************************************************************************************
** 函数名称: SendByte()
** 功能描述: 发送一个字节
** 输 入: SData 要发送的数据(地址或数据)
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/
void SendByte(uint8 SData)
{
	I2DAT=SData;
	I2CONCLR=0x28;			//Clear start and other flag
	while(I2CONSET&0x80==0);	//wait while no ack
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -