关于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 ...
随机推荐
- 【问题汇总】ScrollView嵌套ListView的问题
因产品的需求,需要在ScrollView中嵌套ListView来达到效果.众所周知,ScrollVIew和ListView都是可滑动的容器,嵌套使用一定会出现一些问题. [html] view pla ...
- Android反编译 -- 错误代码还原
PS:如果阅读体验不好,可以尝试Github版 (<-点左边) 1. setColor(-16777216) 反编译的代码中会有很多setColor(int)的情况,比如setColor(-16 ...
- Java-IO之字符输入输出流(Reader和Writer)
以字符为单位的输入流的公共父类是Reader: 以字符为单位的输出流的超类是Writer: 基于JDK8的Reader的源码: public abstract class Reader impleme ...
- Linux:ssh_config快速访问服务器
在当前用户的根目录下: cd ~/.ssh vi config 编辑config内容为下面: ForwardAgent yes Host 1 Hostname 192.168.1.1 User roo ...
- WIP 投料报 Invalid Serial Number
1.接口表数据检查无误 2.同样数据界面能正常完成 界面做trace SQL ID: b2mw8gjyv7guh Plan Hash: 2015965341 DELETE FROM MTL_SERIA ...
- Mysql SQL Mode详解
Mysql SQL Mode简介 MySQL服务器能够工作在不同的SQL模式下,并能针对不同的客户端以不同的方式应用这些模式.这样,应用程序就能对服务器操作进行量身定制以满足自己的需求.这类模式定义了 ...
- Struts2进阶(一)运行原理及搭建步骤
Struts2进阶(一)运行原理 Struts2框架 Struts2框架搭建步骤 致力于web服务,不可避免的涉及到编程实现部分功能.考虑使用到SSH框架中的Struts2.本篇文章只为深入理解Str ...
- Mac下关于->您不能拷贝项目“”,因为它的名称太长或包括的字符在目的宗卷上无效。<-的删除
打开 Terminal 应用程序. 键入: sudo rm -rf注意:在"-rf"后键入一个空格.没有空格该命令将不能执行.在步骤 6 之前请不要按下 Return 键. 打开您 ...
- 如何启用Oracle EBS Form监控
前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...
- Linux 句柄是什么 ?
1.句柄就是一个标识符,只要获得对象的句柄,我们就可以对对象进行任意的操作. 2.句柄不是指针,操作系统用句柄可以找到一块内存,这个句柄可能是标识符,map的key,也可能是指针,看操作系统怎么处理的 ...