20240629在飞凌的OK3588-C开发板的Linux R4系统下使用i2cdetect确认I2C总线

root@ok3588:/# i2cdetect -y -r 0
root@rk3588-buildroot:/# i2cdetect -l
root@rk3588-buildroot:/# i2cdetect -F 0


20240629在飞凌的OK3588-C开发板的Linux R4系统下使用i2cdetect确认I2C总线
2024/6/29 15:37


在CAM1、CAM2挂载OV13850。
在CAM3、CAM4和CAM5挂载OV5645了。


input-event-daemon: Start listening on 6 devices...
done
root@ok3588:/# [15:13:18.643] Detected a monitor change on head 'HDMI-A-1', not bothering to do anything about it.
[15:13:18.644] Detected a monitor change on head 'DSI-1', not bothering to do anything about it.
[15:13:18.644] Detected a monitor change on head 'DSI-2', not bothering to do anything about it.

root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# i2c
i2c-stub-from-dump  i2cdump             i2cset
i2cdetect           i2cget              i2ctransfer
root@ok3588:/# i2cdetect -y -r 0
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- UU UU -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         
root@ok3588:/# 
root@ok3588:/# i2cdetect -y -r 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- UU -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: 50 51 -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         
root@ok3588:/# 
root@ok3588:/# i2cdetect -y -r 2
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- UU UU -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         
root@ok3588:/# 
root@ok3588:/# i2cdetect -y -r 3
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- UU -- -- -- 
10: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         
root@ok3588:/# 
root@ok3588:/# i2cdetect -y -r 4
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- UU -- -- -- 
10: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         
root@ok3588:/# 

root@ok3588:/# i2cdetect -y -r 5
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- UU -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         
root@ok3588:/# 
root@ok3588:/# i2cdetect -y -r 6
Error: Could not open file `/dev/i2c-6' or `/dev/i2c/6': No such file or directory
root@ok3588:/# 
root@ok3588:/# i2cdetect -y -r 7
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- UU -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         
root@ok3588:/# 

root@ok3588:/# 


root@ok3588:/# 
root@ok3588:/# v4l2-ctl --list-devices
rk_hdmirx (fdee0000.hdmirx-controller):
    /dev/video58

rkisp-statistics (platform: rkisp):
    /dev/video47
    /dev/video48
    /dev/video56
    /dev/video57

rkcif-mipi-lvds (platform:rkcif):
    /dev/media0
    /dev/media1
    /dev/media2
    /dev/media3
    /dev/media4

rkcif (platform:rkcif-mipi-lvds):
    /dev/video0
    /dev/video1
    /dev/video2
    /dev/video3
    /dev/video4
    /dev/video5
    /dev/video6
    /dev/video7

rkcif (platform:rkcif-mipi-lvds1):
    /dev/video8
    /dev/video9
    /dev/video10
    /dev/video11
    /dev/video12
    /dev/video13
    /dev/video14
    /dev/video15

rkcif (platform:rkcif-mipi-lvds2):
    /dev/video16
    /dev/video17
    /dev/video18
    /dev/video19
    /dev/video20
    /dev/video21
    /dev/video22
    /dev/video23

rkcif (platform:rkcif-mipi-lvds4):
    /dev/video24
    /dev/video25
    /dev/video26
    /dev/video27
    /dev/video28
    /dev/video29
    /dev/video30
    /dev/video31

rkcif (platform:rkcif-mipi-lvds5):
    /dev/video32
    /dev/video33
    /dev/video34
    /dev/video35
    /dev/video36
    /dev/video37
    /dev/video38
    /dev/video39

rkisp_mainpath (platform:rkisp0-vir0):
    /dev/video40
    /dev/video41
    /dev/video42
    /dev/video43
    /dev/video44
    /dev/video45
    /dev/video46
    /dev/media5

rkisp_mainpath (platform:rkisp0-vir1):
    /dev/video49
    /dev/video50
    /dev/video51
    /dev/video52
    /dev/video53
    /dev/video54
    /dev/video55
    /dev/media6

root@ok3588:/# 


root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# i2cdetect -l
i2c-0    i2c           rk3x-i2c                            I2C adapter
i2c-1    i2c           rk3x-i2c                            I2C adapter
i2c-2    i2c           rk3x-i2c                            I2C adapter
i2c-3    i2c           rk3x-i2c                            I2C adapter
i2c-4    i2c           rk3x-i2c                            I2C adapter
i2c-5    i2c           rk3x-i2c                            I2C adapter
i2c-7    i2c           rk3x-i2c                            I2C adapter
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# i2cdetect -F 0
Functionalities implemented by /dev/i2c-0:
I2C                              yes
SMBus Quick Command              yes
SMBus Send Byte                  yes
SMBus Receive Byte               yes
SMBus Write Byte                 yes
SMBus Read Byte                  yes
SMBus Write Word                 yes
SMBus Read Word                  yes
SMBus Process Call               yes
SMBus Block Write                yes
SMBus Block Read                 no
SMBus Block Process Call         no
SMBus PEC                        yes
I2C Block Write                  yes
I2C Block Read                   yes
root@rk3588-buildroot:/# 

root@rk3588-buildroot:/# i2cdetect -F 1
Functionalities implemented by /dev/i2c-1:
I2C                              yes
SMBus Quick Command              yes
SMBus Send Byte                  yes
SMBus Receive Byte               yes
SMBus Write Byte                 yes
SMBus Read Byte                  yes
SMBus Write Word                 yes
SMBus Read Word                  yes
SMBus Process Call               yes
SMBus Block Write                yes
SMBus Block Read                 no
SMBus Block Process Call         no
SMBus PEC                        yes
I2C Block Write                  yes
I2C Block Read                   yes
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# i2cdetect -F 2
Functionalities implemented by /dev/i2c-2:
I2C                              yes
SMBus Quick Command              yes
SMBus Send Byte                  yes
SMBus Receive Byte               yes
SMBus Write Byte                 yes
SMBus Read Byte                  yes
SMBus Write Word                 yes
SMBus Read Word                  yes
SMBus Process Call               yes
SMBus Block Write                yes
SMBus Block Read                 no
SMBus Block Process Call         no
SMBus PEC                        yes
I2C Block Write                  yes
I2C Block Read                   yes
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# i2cdetect -F 3
Functionalities implemented by /dev/i2c-3:
I2C                              yes
SMBus Quick Command              yes
SMBus Send Byte                  yes
SMBus Receive Byte               yes
SMBus Write Byte                 yes
SMBus Read Byte                  yes
SMBus Write Word                 yes
SMBus Read Word                  yes
SMBus Process Call               yes
SMBus Block Write                yes
SMBus Block Read                 no
SMBus Block Process Call         no
SMBus PEC                        yes
I2C Block Write                  yes
I2C Block Read                   yes
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# i2cdetect -F 4
Functionalities implemented by /dev/i2c-4:
I2C                              yes
SMBus Quick Command              yes
SMBus Send Byte                  yes
SMBus Receive Byte               yes
SMBus Write Byte                 yes
SMBus Read Byte                  yes
SMBus Write Word                 yes
SMBus Read Word                  yes
SMBus Process Call               yes
SMBus Block Write                yes
SMBus Block Read                 no
SMBus Block Process Call         no
SMBus PEC                        yes
I2C Block Write                  yes
I2C Block Read                   yes
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# i2cdetect -F 5
Functionalities implemented by /dev/i2c-5:
I2C                              yes
SMBus Quick Command              yes
SMBus Send Byte                  yes
SMBus Receive Byte               yes
SMBus Write Byte                 yes
SMBus Read Byte                  yes
SMBus Write Word                 yes
SMBus Read Word                  yes
SMBus Process Call               yes
SMBus Block Write                yes
SMBus Block Read                 no
SMBus Block Process Call         no
SMBus PEC                        yes
I2C Block Write                  yes
I2C Block Read                   yes
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# i2cdetect -F 6
Error: Could not open file `/dev/i2c-6' or `/dev/i2c/6': No such file or directory
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# i2cdetect -F 7
Functionalities implemented by /dev/i2c-7:
I2C                              yes
SMBus Quick Command              yes
SMBus Send Byte                  yes
SMBus Receive Byte               yes
SMBus Write Byte                 yes
SMBus Read Byte                  yes
SMBus Write Word                 yes
SMBus Read Word                  yes
SMBus Process Call               yes
SMBus Block Write                yes
SMBus Block Read                 no
SMBus Block Process Call         no
SMBus PEC                        yes
I2C Block Write                  yes
I2C Block Read                   yes
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# i2cdetect -F 8
Error: Could not open file `/dev/i2c-8' or `/dev/i2c/8': No such file or directory
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# 


可以5个摄像头一起打开

cam1
gst-launch-1.0 v4l2src device=/dev/video40 ! video/x-raw, format=NV12, width=640, height=480, framerate=30/1 ! waylandsink

cam2
gst-launch-1.0 v4l2src device=/dev/video49 ! video/x-raw, format=NV12, width=640, height=480, framerate=30/1 ! waylandsink


gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw, format=NV12, width=640, height=480, framerate=30/1 ! waylandsink
gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw, format=NV12, width=640, height=480, framerate=30/1 ! waylandsink
gst-launch-1.0 v4l2src device=/dev/video8 ! video/x-raw, format=NV12, width=640, height=480, framerate=30/1 ! waylandsink

cam3
gst-launch-1.0 v4l2src device=/dev/video16 ! video/x-raw, format=NV12, width=640, height=480, framerate=30/1 ! waylandsink

cam4
gst-launch-1.0 v4l2src device=/dev/video24 ! video/x-raw, format=NV12, width=640, height=480, framerate=30/1 ! waylandsink

cam5
gst-launch-1.0 v4l2src device=/dev/video32 ! video/x-raw, format=NV12, width=640, height=480, framerate=30/1 ! waylandsink


参考资料:
0312-3119192  2软件 4瑞芯微平台  2 RK3588



5.最后编译buildroot就行

i2c7下没设备
所以驱动没匹配  您驱动里的的i2c操作关闭仅仅是不写入东西了
现在您的摄像头没有在正常工作

随便接入一个i2c设备 设备树不描述 i2cdetect 都可以读到地址 
说明设备在正常工作  
变成UU状态说明驱动注册

您驱动里的修改和这个设备本身是否正常运行没有关系  肯定应该读到一个i2c设备的


https://www.elecfans.com/d/2195063.html
i2c detect扫描i2c总线上的设备


https://blog.csdn.net/weixin_42581177/article/details/131158404
Linux下的I2C工具:i2c_tools

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/37920.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring-循环依赖是如何解决的

1、bean被创建保存到spring容器的过程 1、实例化 -> 获取对象; 2、填充属性;这里可能需要依赖其它的bean。 3、AOP代理对象替换; 4、加入单例池; 问题: 循环依赖怎么处理 ServiceA 中有属性ServiceB b&#…

phpMyAdmin | mysqli::real_connect(): (HY000/2002): No such file or directory

法一:第一次安装宝塔 第一次安装宝塔mysql服务是默认关闭的,需要手动打开,打开服务再次进入phpMyAdmin发现可以进入了 法二:第一种方法没解决用这种 出现mysqli::real_connect(): (HY000/2002): No such file or directory错误通…

【数据结构|C语言版】四大排序(算法)

前言1. 插入排序1.1 直接插入排序1.2 希尔排序 2. 选择排序2.1 选择排序2.2 堆排序 3. 交换排序3.1 冒泡排序冒泡排序的步骤 3.2 快速排序快速排序的步骤 4. 归并排序归并排序的步骤:代码解释:归并排序的性能: 上期回顾: 【数据结构|C语言版】…

Python项目开发实战:影视作品分析小程序,案例教程编程实例课程详解

在构建一个影视作品分析小程序时,我们将会涉及到多个方面,包括项目规划、需求分析、设计、开发、测试以及部署等。以下是一个简化的指南,用于实战Python项目开发——一个影视作品分析小程序。 一、项目规划和需求分析 1. 项目背景和目标 随着影视行业的快速发展,观众对于影…

kubuadm 方式部署 k8s 集群

准备三台机器 主机名IP地址CPU/内存角色K8S版本Docker版本k8s231192.168.99.2312C4Gmaster1.23.1720.10.24k8s232192.168.99.2322C4Gwoker1.23.1720.10.24k8s233192.168.99.2332C4Gwoker1.23.1720.10.24 需要在K8S集群各节点上面安装docker,如未安装则参考 …

使用cocos2d-android的常见报错

1. 报错:aused by: java.lang.AssertionError: TMX: unsupported compression method 原因:tmx文件中的图块层压缩格式zlib不被支持 解决方法:使用tiled编辑器修改tmx文件的压缩方式为gzip(不能为无压缩,否则报错&…

【Linux】已解决:Ubuntu虚拟机安装Java/JDK

文章目录 一、分析问题背景二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项结论 已解决:Ubuntu虚拟机安装Java/JDK 一、分析问题背景 在Ubuntu虚拟机上安装Java开发工具包(JDK)是许多开发者的常见任务。然而,在…

第四十三章 在 SOAP 消息中使用数据集

文章目录 第四十三章 在 SOAP 消息中使用数据集关于数据集定义类型化数据集 第四十三章 在 SOAP 消息中使用数据集 本主题讨论 %XML.DataSet,这是一个支持 XML 的数据集,当 Web 服务和客户端都基于 IRIS 数据平台或一方使用 .NET 时,可以在 …

大语言模型LLM基础:推理/不同模型/量化对显存、推理速度和性能的影响

通过本文,你将了解以下几个方面的内容: 要运行一个LLM需要多少显存?(我的GPU可以运行多大LLM?)不同LLM推理速度如何?量化对显存、推理速度和性能的影响?vLLM、DeepSeed等工具的加速…

巴黎成为欧洲AI中心 大学开始输出AI创始人

来自Dealroom 的数据显示,在欧洲和以色列AI创业公司中,法国的AI创业公司资金最充裕。Mistral、Owkin、Hugging Face等法国企业已经融资23亿美元,比英国、德国AI创业公司都要多。 一名大学生走出校门凭借聪明才智和一个黄金点子成为富豪&#…

VUE的基础指令介绍

Vue.js 是一个流行的 JavaScript 框架,用于构建用户界面。它包含了一系列的指令(Directives)来简化在 HTML 模板中操作和渲染数据的过程。以下是一些 Vue.js 中常用的基础指令: v-model: 用于在表单控件元素和应用状态之间创建双…

Profinet IO从站数据 转EtherCAT项目案例

这里是引用 目录 1 案例说明 1 2 VFBOX网关工作原理 1 3 准备工作 2 4 使用PRONETA软件获取PROFINET IO从站的配置信息 2 5 设置网关采集PROFINETIO从站设备数据 5 6 启动ETHERCAT从站转发采集的数据 8 7 选择槽号和数据地址 9 8 选择子槽号 11 9 案例总结 12 1 案例说明 设置…

黑马程序员——Spring框架——day11——redis基础

目录: Redis入门 Redis简介 【1】为什么学习Redis【2】Redis介绍使用Redis能做什么Redis下载与安装 Redis下载Redis安装 在Linux中安装Redis在Windows中安装RedisRedis服务启动与停止 Linux系统中启动和停止Redis掌握 redis启动服务器redis启动客户端停止redisWind…

如何将 qmake 转换为 cmake?

在之前的项目中我使用了 .pro 文件来配置 qmake,但现在我希望将其转换为 CMakeLists.txt 文件。以下是具体的步骤和转换方法。 qmake 配置示例 QT core QT - gui CONFIG c11 TARGET test CONFIG console CONFIG - app_bundle TEMPLATE app QT network SOURC…

黑盒渗透测试技术

知识点:信息收集,漏洞验证,MetaSploit技术,MSF后渗透测试 靶机渗透: 三不知:不知IP,不知用户名,不知密码,只知道获取最高权限是root 靶机渗透通常指的是在网络安全领域…

JavaScript整合SpreadJS业务功能实现案例(附源码)

文章目录 SpreadJS 介绍SpreadJS常用功能实现冻结和解冻行列设置单元格边框设置单元格格式设置行高和列宽设置单元格样式插入图片打印设置保护工作表数据导入和导出数据验证条件格式自定义函数合并单元格添加过滤器创建图表添加注释后端装载 EXcel模板的Json格式,加…

名企面试必问30题(九)——为什么离职/换工作?

1.思路 在面试回答离职和换工作原因时,可以采用三步走策略。 第一步是回顾总结,真诚地阐述自己在前一份工作中的经历和收获。 第二步是提及合理矛盾,比如职业发展路径与个人规划的不匹配,工作内容与自身期望的差异等,但…

Web-HTML-属性

1 需求 2 语法 3 示例 4 参考资料 HTML 全局属性 | 菜鸟教程

Spark查询当前用户下所有账号的余额,如果当天没有余额则使用最近的余额

在使用Apache Spark进行数据分析时,你可能会处理一个包含用户账户和余额信息的数据集。如果你想要查询当前用户下所有账号的余额,并且如果当天没有余额记录,则使用最近的余额,你可以按照以下步骤进行: 数据准备&#x…

Linux内核 -- 物理内存页分页规划之arm v7实现

ARMv7 两级页表初始化与地址规划 在 ARMv7 架构下,页表的地址规划是非常重要的,它直接影响到内存的管理和访问效率。为了更好地理解地址规划的原理,以下是一些关键点和示例。 1. 一级页表和二级页表的规划 对于一个 1GB 大小的 DDR 内存&a…