亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? im8803.c

?? ARM9的攝像頭驅(qū)動(dòng)程序
?? C
字號(hào):
/****************************************	iMagic IM8803	Sensor Driver	***************************************/#include "khead.h"#include "mx1hw.h"#include "im8803.h"#include "i2c.h"////      GPIO control on sensor//////      Enter Standby Mode//void ADS_standby_enable(void){	//PA23 = standby	//Active high	*(U32 *) PTA_GIUS |= 0x00800000;	*(U32 *) PTA_DDIR |= 0x00800000;	//output port	*(U32 *) PTA_OCR2 |= 0x0000C000;	*(U32 *) PTA_DR |= 0x00800000;	return;}void ADS_standby_disable(void){	//PA23 = standby	//Active high	*(U32 *) PTA_GIUS |= 0x00800000;	*(U32 *) PTA_DDIR |= 0x00800000;	//output port	*(U32 *) PTA_OCR2 |= 0x0000C000;	*(U32 *) PTA_DR &= ~0x00800000;	return;}////      Hard Reset//void ADS_sensor_reset(void){	U32 i;	//PB18 = reset	//Active low	*(U32 *) PTB_GIUS |= 0x00040000;	*(U32 *) PTB_DDIR |= 0x00040000;	//output port	*(U32 *) PTB_OCR2 |= 0x00000030;	//assert reset	*(U32 *) PTB_DR &= ~0x00040000;	//delay	for (i = 0; i < 1000000; i++);	//negate reset	*(U32 *) PTB_DR |= 0x00040000;	return;}////      Auto-flickering Control//void ADS_RS_set_level(U32 level){	//PB19 = RS	*(U32 *) PTB_GIUS |= 0x00080000;	*(U32 *) PTB_DDIR |= 0x00080000;	//output port	*(U32 *) PTB_OCR2 |= 0x000000C0;	if (level)		*(U32 *) PTB_DR |= 0x00080000;	else		*(U32 *) PTB_DR &= ~0x00080000;	return;}////      Enter Standby Mode//void standby_enable(void){	//PB16 = standby	//Active high	*(U32 *) PTB_GIUS |= 0x00010000;	*(U32 *) PTB_DDIR |= 0x00010000;	//output port	*(U32 *) PTB_OCR2 |= 0x00000003;	*(U32 *) PTB_DR |= 0x00010000;	return;}void standby_disable(void){	//PA16 = standby	//Active high	*(U32 *) PTB_GIUS |= 0x00010000;	*(U32 *) PTB_DDIR |= 0x00010000;	//output port	*(U32 *) PTB_OCR2 |= 0x00000003;	*(U32 *) PTB_DR &= ~0x00010000;	return;}////      Hard Reset//void sensor_reset(void){	U32 i;	//PB17 = reset	//Active low	*(U32 *) PTB_GIUS |= 0x00020000;	*(U32 *) PTB_DDIR |= 0x00020000;	//output port	*(U32 *) PTB_OCR2 |= 0x0000000C;	//assert reset	*(U32 *) PTB_DR &= ~0x00020000;	//delay	for (i = 0; i < 500000; i++);	//negate reset	*(U32 *) PTB_DR |= 0x00020000;	return;}////      Auto-flickering Control//void RS_set_level(U32 level){	//PB18 = RS	*(U32 *) PTB_GIUS |= 0x00040000;	*(U32 *) PTB_DDIR |= 0x00040000;	//output port	*(U32 *) PTB_OCR2 |= 0x00000030;	if (level)		*(U32 *) PTB_DR |= 0x00040000;	else		*(U32 *) PTB_DR &= ~0x00040000;	return;}////      VGA init (Landscape 640 x 480)//void IM8803_VGA_init(void){	U32 data;	//hard init	standby_disable();	sensor_reset();	RS_set_level(0);	//set '0' for > 15fps	//soft reset	I2C_write(0x01, 0x0004);	//select IC register	I2C_write(0x0D, 0x0001);	//reset IC	I2C_write(0x0D, 0x0000);	I2C_write(0x01, 0x0001);	//select IFP register	I2C_write(0x07, 0x0001);	//reset IFP	I2C_write(0x07, 0x0000);	//read mode control	I2C_write(0x01, 0x0004);	//select IC register	I2C_write(0x20, 0xD0A1);	//read from top to bottom (rotate by 180 deg)	//workaround for read mode control	I2C_write(0x01, 0x0001);	//select IFP register	I2C_write(0x37, 0x0100);	//fix for flickering	//select RGB565 output	I2C_write(0x01, 0x0001);	//select IFP register	I2C_read(0x08, &data);	data |= 0x1000;		//set bit 12	I2C_write(0x08, data);	return;}////      QVGA init (320 x 240)//      Subsampliing by Sensor//void IM8803_QVGA_init(void){	U32 data;	//hard init	standby_disable();	sensor_reset();	RS_set_level(0);	//set '0' for > 15fps	//soft reset	I2C_write(0x01, 0x0004);	//select IC register	I2C_write(0x0D, 0x0001);	//reset IC	I2C_write(0x0D, 0x0000);	I2C_write(0x01, 0x0001);	//select IFP register	I2C_write(0x07, 0x0001);	//reset IFP	I2C_write(0x07, 0x0000);	//decimation control	I2C_write(0x01, 0x0001);	//select IFP register	I2C_write(0x46, 0x0001);	//QVGA	//read mode control	I2C_write(0x01, 0x0004);	//select IC register	I2C_write(0x20, 0xD0A1);	//read from top to bottom (rotate by 180 deg)	//workaround for read mode control	I2C_write(0x01, 0x0001);	//select IFP register	I2C_write(0x37, 0x0100);	//fix for flickering	//select RGB565 output	I2C_write(0x01, 0x0001);	//select IFP register	I2C_read(0x08, &data);	data |= 0x1000;		//set bit 12	I2C_write(0x08, data);	return;}////      QQVGA init (160 x 120)//      Subsampliing by Sensor//void IM8803_QQVGA_init(void){	U32 data;	//hard init	standby_disable();	sensor_reset();	RS_set_level(0);	//set '0' for > 15fps	//soft reset	I2C_write(0x01, 0x0004);	//select IC register	I2C_write(0x0D, 0x0001);	//reset IC	I2C_write(0x0D, 0x0000);	I2C_write(0x01, 0x0001);	//select IFP register	I2C_write(0x07, 0x0001);	//reset IFP	I2C_write(0x07, 0x0000);	//decimation control	I2C_write(0x01, 0x0001);	//select IFP register	I2C_write(0x46, 0x0004);	//QQVGA	//read mode control	I2C_write(0x01, 0x0004);	//select IC register	I2C_write(0x20, 0xD0A1);	//read from top to bottom (rotate by 180 deg)	//workaround for read mode control	I2C_write(0x01, 0x0001);	//select IFP register	I2C_write(0x37, 0x0100);	//fix for flickering	//select RGB565 output	I2C_write(0x01, 0x0001);	//select IFP register	I2C_read(0x08, &data);	data |= 0x1000;		//set bit 12	I2C_write(0x08, data);	return;}////      QVGA init//      (Portrait 240 x 320)////      Window of interest by sensor//      No subsampling//void IM8803_QVGA_init4(void){	U32 data;	//hard init#ifdef MP3DSC	standby_disable();	sensor_reset();	RS_set_level(0);	//set '0' for > 15fps#endif#ifdef ADS	ADS_standby_disable();	ADS_sensor_reset();	ADS_RS_set_level(0);#endif	//soft reset	I2C_write(0x01, 0x0004);	//select IC register	I2C_write(0x0D, 0x0001);	//reset IC	I2C_write(0x0D, 0x0000);	I2C_write(0x01, 0x0001);	//select IFP register//I2C_write(0x0A,0x4);	I2C_write(0x07, 0x0001);	//reset IFP//	I2C_write(0x07, 0x000A);	//reset IFP	I2C_write(0x07, 0x0000);	//Window of Interest (WOI) control	I2C_write(0x01, 0x0004);	//select IC register	I2C_write(0x02, 200);	//first col	I2C_write(0x30, 20);	//first row	I2C_write(0x04, 247);	//240 cols	I2C_write(0x03, 327);	//320 rows	//read mode control	I2C_write(0x01, 0x0004);	//select IC register	//I2C_write(0x20, 0xD0A1);      //read from top to bottom (rotate by 180 deg)	I2C_write(0x20, 0x90A1);	//read from top to bottom (rotate by 180 deg)	//workaround for read mode control	I2C_write(0x01, 0x0001);	//select IFP register	I2C_write(0x37, 0x0100);	//fix for flickering	//select RGB565 output	I2C_write(0x01, 0x0001);	//select IFP register	I2C_read(0x08, &data);	data |= 0x1000;		//set bit 12	I2C_write(0x08, data);	//change saturation to 150%	/*I2C_write(0x01, 0x0001);      //select IFP register	   I2C_read(0x25, &data);	   data |= 0x2800;      //set bit 11-13: 101(150%)	   I2C_write(0x25, data);	 */	//Red gain#if 0	//stop AWB	I2C_write(0x01, 0x0001);	//select IFP register	I2C_read(0x06, &data);	data &= 0xFFFE;		//clear bit 1	I2C_write(0x06, data);	//stop AE	I2C_write(0x01, 0x0001);	//select IFP register	I2C_read(0x06, &data);	data &= 0xBFFF;		//clear bit 14	I2C_write(0x06, data);	//double red gain	I2C_write(0x01, 0x0004);	//select IC register	I2C_read(0x2D, &data);	data |= 0x20;		//set bit 12	I2C_write(0x2D, data);#endif	//BTS settings	I2C_write(0x01, 0x0001);	//select IFP register	I2C_read(0x08, &data);	data |= 0x01;		//clear bit 14	I2C_write(0x08, data);	return;}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久激情综合网| 日韩精品中午字幕| 欧美日韩成人综合在线一区二区| 91在线观看美女| 日本精品视频一区二区三区| 欧美女孩性生活视频| www成人在线观看| 自拍偷拍欧美精品| 奇米影视一区二区三区| 国v精品久久久网| 久久亚洲二区三区| 国产精品久久久久久久久久久免费看 | av在线综合网| 在线播放中文字幕一区| 精品久久久久久久久久久久久久久久久 | 午夜日韩在线观看| 日韩国产欧美在线播放| 国产精品1024| 欧美一区二区免费视频| 国产日韩欧美精品综合| 亚洲国产欧美在线| 国产91精品久久久久久久网曝门| 欧美日韩一区二区三区在线看| 久久综合色一综合色88| 亚洲九九爱视频| 国产精品一区二区三区网站| 欧美剧情片在线观看| 中文字幕免费观看一区| 免费观看在线综合| 欧美熟乱第一页| 亚洲男人的天堂av| 国产精品一区二区三区99| 欧美一区二区三区不卡| 亚洲永久精品大片| 97久久久精品综合88久久| 日韩欧美国产午夜精品| 日本 国产 欧美色综合| 欧美日韩免费一区二区三区视频| 中文字幕不卡一区| 国产精品456露脸| 国产日韩亚洲欧美综合| 大尺度一区二区| 国产日韩影视精品| 成人18视频在线播放| 国产婷婷色一区二区三区四区 | 国产一区二区不卡| 国产欧美日韩在线| 国产成人午夜精品影院观看视频| 欧美一卡二卡三卡| 精品一区二区综合| 国产亚洲精品bt天堂精选| 成人一级视频在线观看| 国产亚洲欧美色| 成人app网站| 亚洲国产wwwccc36天堂| 日韩一级免费一区| 国产一区二区成人久久免费影院| 欧美精品一区二区三区久久久 | 欧美一级理论片| 蜜桃视频免费观看一区| 精品少妇一区二区三区| 国产成+人+日韩+欧美+亚洲| 国产精品嫩草久久久久| 色偷偷久久人人79超碰人人澡| 亚洲一区二区在线观看视频| 91麻豆精品国产综合久久久久久| 久久国产欧美日韩精品| 亚洲特黄一级片| 91精品国产综合久久久久久久| 韩国一区二区三区| 亚洲综合无码一区二区| 久久久久久久网| 在线观看网站黄不卡| 国内久久精品视频| 五月婷婷另类国产| 中文字幕成人在线观看| 欧美一级欧美一级在线播放| 国产成人亚洲精品青草天美| 午夜视频一区二区三区| 国产精品久久久久久久久久免费看| 日韩一区二区三区在线| 欧美在线免费观看视频| 成人性生交大片免费看中文 | 91蜜桃传媒精品久久久一区二区| 久久精品国产第一区二区三区| 亚洲一二三区视频在线观看| 欧美国产日本韩| 久久综合色婷婷| 久久综合av免费| 精品国产伦理网| 欧美一级精品在线| 日韩免费观看2025年上映的电影| 欧美日韩国产影片| 欧美在线观看18| 欧美在线视频全部完| 成人晚上爱看视频| 99精品久久久久久| 色狠狠桃花综合| 91美女福利视频| 99久久精品免费| 91网页版在线| 在线亚洲高清视频| 欧美三区免费完整视频在线观看| 99精品欧美一区二区蜜桃免费 | 国产精品视频一二三| 国产精品乱码一区二三区小蝌蚪| 国产日韩欧美在线一区| 国产精品国产三级国产有无不卡| 成人免费在线播放视频| 亚洲一区二区三区四区五区黄| 一区二区理论电影在线观看| 亚洲成人资源网| 国产黄色精品网站| 99精品国产99久久久久久白柏| 91福利区一区二区三区| 91精品国产91热久久久做人人| www国产精品av| 亚洲精品中文字幕乱码三区| 琪琪一区二区三区| 不卡一二三区首页| 欧美一区二区精品久久911| 国产亚洲综合av| 丝袜亚洲另类欧美综合| 色天天综合久久久久综合片| 日本一区二区三区电影| 国产一区二区精品久久| 欧美一级夜夜爽| 日韩不卡免费视频| av激情亚洲男人天堂| 亚洲精品一区二区三区精华液 | 在线成人免费视频| 亚洲精品乱码久久久久久久久 | 蜜臀av性久久久久av蜜臀妖精 | 欧美一区二区黄| 亚洲一区在线看| 91浏览器在线视频| 国产精品视频一二| 丁香桃色午夜亚洲一区二区三区| 777午夜精品免费视频| 五月天精品一区二区三区| 91丨九色丨国产丨porny| 中文字幕第一区二区| 国产69精品久久777的优势| 国产亚洲福利社区一区| www.日韩大片| 中文字幕在线一区免费| 91丨porny丨国产| 亚洲天堂成人在线观看| 一本一道波多野结衣一区二区| 国产欧美精品区一区二区三区 | www.日韩精品| 亚洲激情成人在线| 精品视频在线看| 久久 天天综合| 中文天堂在线一区| 丁香婷婷深情五月亚洲| 尤物av一区二区| 欧美日韩在线精品一区二区三区激情| 五月天亚洲婷婷| 国产亚洲美州欧州综合国| 一本到三区不卡视频| 性久久久久久久| 久久久精品综合| 色噜噜狠狠色综合中国| 一区二区在线电影| 欧美日韩国产123区| 蜜桃视频在线一区| 久久亚洲一区二区三区四区| 91亚洲大成网污www| 久久精品国产**网站演员| 亚洲丝袜另类动漫二区| 欧美天堂亚洲电影院在线播放| 一区二区三区四区五区视频在线观看| 欧美亚洲动漫制服丝袜| 国产老女人精品毛片久久| 亚洲影视在线观看| 精品久久久久香蕉网| 色综合久久88色综合天天免费| 丝袜亚洲另类欧美综合| 国产精品久线观看视频| 日韩视频免费观看高清在线视频| 成人精品高清在线| 国内精品免费在线观看| 亚洲一区二区三区四区在线观看 | 黄色日韩三级电影| 亚洲午夜电影在线| 亚洲精品免费播放| 日本一区二区三区四区在线视频 | 色一区在线观看| www.欧美日韩国产在线| 国产99久久久国产精品潘金网站| 蜜桃av噜噜一区| 美洲天堂一区二卡三卡四卡视频| 亚洲理论在线观看| 一区二区三区资源| 中文字幕永久在线不卡| 国产欧美日韩亚州综合| 中文一区二区完整视频在线观看| 日韩亚洲欧美综合| 欧美日韩国产精品成人|