ov9650Peview实现流程图.docVIP

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ov9650Peview实现流程图

OV9650裸机arm9实现过程 具体实现的功能:通过摄像头OV9650采集视频图像,并与arm9的camera interface相连接,把采集到的数据放入内存的某段区域中,将该段区域同时设置成LCD的数据缓存区,这样采集到的数据就可以直接在LCD显示屏上显示了 实现该功能主要完成的工作:设置OV9650的内部寄存器(寄存器很多,最好直接网上下载个对应功能的寄存器设置表),Camera Interface的各个寄存器配置,arm9的LCD各个寄存器配置 实现流程: 初始化摄像头硬件接口和时钟 CamReset(); //摄像软件重启 rCLKCON |= (119); // 设置时钟控制寄存器使能Camera,控制HCLK进入Camera块 CamPortSet(); //配置各个引脚的功能GPJ和GPG ChangeUPllValue(56, 2, 1); // UPLL clock = 96MHz, PLL input 12MHz rCLKDIVN|=(13); //根据UPLL为96MHz设置UCLK为48MHz SetCAMClockDivider(CAMCL; //设置摄像头时钟为24MHz 检测OV9650与arm9接上与否,接上则配置OV9650的寄存器Test_OV9650(void) int ret; CamModuleReset(); //重启外接Camera OV9650_init(); //本程序是模拟IIC,所以GPE14、15两个引脚根据程序情况设置为输入输出模式,而非IIC模式 printk(Check camera ID\n); ret = check_OV9650() ; //通过模拟IIC来读取OV9650摄像头的厂商ID和产品ID的寄存器,来判断是否检测到设备,返回0,则检测到 if (ret) { printk(Cant find camera!\n); return ret; } //Uart_Printf(\nshentuhongfeng test 11\n); printk(Initial Camera now, Please wait several minutes...\n); OV9650_config(); //OV9650的寄存器配置,由于OV9650的寄存器很多,一般下载配置表配置就行 return 0; 由前面的(1)(2)两部分,我们已经把外围摄像头内部的寄存器初始化了,并设置了相应的管脚和时钟。 i = Test_OV9650(); if( i ) { Uart_Printf(\nTest is failed!!!\n); return ; } Uart_Printf(Initializing end...\n); (3)初始化LCD和Camera Interface的相应寄存器Test_CamPreview() Uart_Printf(\nNow Start Camera Preview\n); //camera global variables camTestMode=CAM_TEST_MODE_PVIEW; //CAM_TEST_MODE_PVIEW为10 CAM_TEST_MODE_CODEC为11 camCodecCaptureCount=0; camPviewCaptureCount=0; camPviewStatus=CAM_STOPPED; //CAM_STOPPED为3 camCodecStatus=CAM_STOPPED; flagCaptured_P=0; Lcd_Init(); Lcd_PowerEnable(0, 1); Lcd_EnvidOnOff(1); //turn on vedio Uart_Printf( preview sc control = %x\n , rCIPRSCCTRL ) ;//rCIPRSCCTRL为0,因为寄存器的默认初始值为0 CamInit(320, 240, 320, 240, 100, 100, CAM_FRAMEBUFFER_C, CAM_FR

您可能关注的文档

文档评论(0)

nbc152 + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档