关于GPL329A中获取摄像头sensor id的问题
首先我拿到了sensor_id应用程序的源码,我要在上面添加获取ov2685 的 sensor id的代码.
利用find . -name get_sensor_id找到该代码编译之后生成的a.out文件,这个a.out文件也就是get_sensor_id,它的代码如下:
./project/gplus/sampleCode/rootfs/sbin/get_sensor_id(这个是find命令找到这个a.out的路径)
从这段代码看,我们需要有ov2685的驱动作为参考,知道这个sensor的I2C的地址,然后其余的步骤配置就和其它的sensor是一样的啦!
//yangyx -------> 2016.4.20 case 6 : //ov2685 sensor { DEBUG("ov2685\n"); attr.slaveAddr = 0x78; //ov2685 sensor ID attr.clkRate = 0x64; //不用改 system("devmem 0x93007084 32 0");//scuaCsiClkCfg 不用改 usleep(1000); if(IO_Write_Value(0, reset_pin, 0) != STATUS_OK) //set_sensor_reset perror("error set_sensor_reset\n"); usleep(1000); if(IO_Write_Value(0, 12, 0) != STATUS_OK) //set_sensor_power perror("error set_sensor_power\n"); usleep(10000); //power on if(IO_Write_Value(0, 12, 1) != STATUS_OK) //set_sensor_power perror("error set_sensor_power\n"); usleep(10000); if(IO_Write_Value(0, 30, 0) != STATUS_OK) //set_sensor_standby perror("error set_sensor_standby\n"); system("devmem 0x9300703c 32 0x04003004");//scuaUsbPhyCfg system("devmem 0x93007084 32 0");//scuaCsiClkCfg system("devmem 0x93007084 32 0x00010103");//scuaCsiClkCfg usleep(2000); //------------------------------------------------- if(IO_Write_Value(0, reset_pin, 1) != STATUS_OK) //set_sensor_reset perror("error set_sensor_reset\n"); usleep(20000); //不用改 ret = ioctl(fd, I2C_BUS_ATTR_SET, &attr); if(ret < 0) { perror("ioctl set i2c arg\n"); continue; } //------------------------------------------- sensor_info.write_data[0] = 0x30; sensor_info.write_data[1] = 0x0a; sensor_info.write_size = 2; sensor_info.read_size = 2; ret = ioctl(fd, I2C_BUS_WRITE_READ, &sensor_info); if(ret < 0) { perror("ioctl set i2c arg\n"); continue; } readdevice = (sensor_info.read_data[0] << 8) + sensor_info.read_data[1]; if( readdevice == 0x2656) { DEBUG("I2C_BUS_WRITE_READ data = 0x%02x\n", readdevice); i = MAX_DEVICE + 1; deviceno = 2; } else { printf("Error I2C_BUS_WRITE_READ data = 0x%02x\n", readdevice); } break; }
关于GPL329A中获取摄像头sensor id的问题的更多相关文章
- java代码中获取进程process id(转)
另一方面,线程ID=进程ID+内部线程对象ID并不成立, 参考: blog.csdn.net/heyetina/article/details/6633901 如何在java代码中获取进 ...
- jquery中获取iframe的id的方法:
jquery中获取iframe的id的方法: var frameId = window.frameElement && window.frameElement.id || ''; al ...
- 高并发分布式环境中获取全局唯一ID[分布式数据库全局唯一主键生成]
需求说明 在过去单机系统中,生成唯一ID比较简单,可以使用MySQL的自增主键或者Oracle中的sequence, 在现在的大型高并发分布式系统中,以上策略就会有问题了,因为不同的数据库会部署到不同 ...
- Android中获取资源的id和url方法总结
一,获取android工程里面的各种资源的id; 1.1 string型 比如下面: << string name=”OK”>> 客户端请求成功 << / stri ...
- 网络编程中获取域名和id的方法
package com.lanqiao.java.test; import java.net.InetAddress;import java.net.UnknownHostException; pub ...
- 在当前iframe中, 获取Iframe的id
window.frameElement 返回嵌入当前window对象的元素(比如 <iframe> 或者 <object>),如果当前window对象已经是顶层窗口,则返回 ...
- RK3288获取摄像头的Sensor ID【原创】
平台信息:内核:linux3.0.68 系统:android/android6.0平台:RK3288 作者:庄泽彬(欢迎转载,请注明作者) 邮箱:2760715357@qq.com 说明:通过I2C总 ...
- java 从spring容器中获取注入的bean对象
java 从spring容器中获取注入的bean对象 CreateTime--2018年6月1日10点22分 Author:Marydon 1.使用场景 控制层调用业务层时,控制层需要拿到业务层在 ...
- 摄像头ov2685中关于sensor id 设置的相关的寄存器地址
OV2685 : CHIP_ID address : 0x300A default : 0x26 address : 0x300B default : 0x85 address : 0x3 ...
随机推荐
- 13 获取外部数据库 以及数据库游标适配器(SimpleCursorAdapter)
获取外部数据库 API SQLiteDatabase db = SQLiteDatabase.openDatabase(path, factory, flags); 参数详解: path:数据库路径 ...
- Tomcat集群应用部署的实现机制
集群应用部署是一个很重要的应用场景,设想一下如果没有集群应用部署功能,每当我们发布应用时都要登陆每台机器对每个tomcat实例进行部署,这些工作量都是繁杂且重复的,而对于进步青年的程序员来说是不能容忍 ...
- 1.QT中的容器QVector,QList,QSet,QMap,QQueue,QStack,QMultiMap,QSingleList等
1 新建一个项目 在pro文件中只需要加上CONFIG += C++11 main.cpp #include <QMap> int main() { QMap<int,QStrin ...
- java中hashCode()与equals()详解
首先之所以会将hashCode()与equals()放到一起是因为它们具备一个相同的作用:用来比较某个东西.其中hashCode()主要是用在hash表中提高 查找效率,而equals()则相对而言使 ...
- UNIX网络编程——TCP 滑动窗口协议
什么是滑动窗口协议? 一图胜千言,看下面的图.简单解释下,发送和接受方都会维护一个数据帧的序列,这个序列被称作窗口.发送方的窗口大小由接受方确定,目的在于控制发送速度,以免接受方的缓存不够大, ...
- EBS DBA指南笔记(一)
第一章 ORACLE APPLICATIONS 的组件与架构 1.ebs组件的几大构成:客户端,form server,web server,concurrent processor,数据库.每个组 ...
- 我为什么选择go语言
这里,我并不打算引起语言争论的口水仗,我并不是什么大牛,对语言的造诣也不深,只是想通过自己实际的经历,来说说为什么我在项目中选择go. 其他语言的经历 C++ 在接触go之前,我已经有多年的c++开发 ...
- 基于WAMP的Crossbario 安装入门
简单学习和使用WAMP协议,Router 是crossbario, Client是Autobahn, 了解运作的流程. 测试环境是Centos6 虚拟机一台 目录为 /data/wamp/ ,用的是P ...
- TCP的定时器系列 — 超时重传定时器
主要内容:TCP定时器概述,超时重传定时器.ER延迟定时器.PTO定时器的实现. 内核版本:3.15.2 我的博客:http://blog.csdn.net/zhangskd Q:一条TCP连接会使用 ...
- xml作用以及语法
2 XML作用 2.1 描述带关系的数据(软件的配置文件) web服务器(PC): 学生管理系统 -> 添加学生功能 -> 添加学生页面 -> name=eric&email ...