腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
视频
沙龙
1
回答
为什么ififd的pci实现使用"platform_driver“而不是"pci_driver"?
、
、
、
、
pci_driver实现了linux内核(是使用platform_driver结构而不是pci_driver结构)的驱动程序/net/ CAN。 我很难区分这两种结构。为此,我告诉自己: 根据第一消息来源: 与PCI或USB设备不同,在硬件级别(运行时)不枚举I2C设备。相反,软件必须知道(在编译时)在每个I2C总线段上连接哪些设备。因此,和PCI并不是平台设备。 如果是这样的话,为什么PCI ififd实现使用platform_driver结构? 此外,有人如何使用这个驱动程序的pci卡使用ififd?
浏览 1
提问于2018-09-26
得票数 1
回答已采纳
1
回答
Linux I2C自定义消息帧发送
、
是否有可能从Linux上在I2C dev上发送自定义消息帧?我使用的是一个i.MX7D板,我想使用"/dev/i2c-0“设备,就像一个简单的”串行tty“来”写(fd,字节,计数)“。我的目标是在I2C上发送一个字节,例如0xAB,没有任何特定的从地址,也没有在我的帧中插入自动停止/启动位。 因此,我喜欢做我的全部定制I2C框架,然后从Linux发送出去。是否可能,在C/C++、Python或Linux中是否有任何用户空间编程技术?
浏览 7
提问于2022-07-09
得票数 0
1
回答
linux内核的AM335x - i2c从站
、
、
、
我需要有TI AM335x的i2c从Linux内核驱动程序。我用谷歌搜索了一下,没有找到准确的信息。我是不是应该从头开始做所有的事情,或者也许有人对此有一些参考?甚至是一块补丁 谢谢 Avner
浏览 2
提问于2019-03-01
得票数 0
1
回答
Linux -在使用i2c设备之前需要注册(实例化)它们吗?
、
、
我对使用Linux的i2c dev接口的用户空间程序如何能够注册(实例化?)感到困惑。i2c设备。 根据我的理解,通过阅读:,我们似乎需要: 使用i2c_board_info设备的名称和地址定义i2c结构,执行i2c_register_board_info() 有一个装置树条目,如: i2c1: i2c@400a0000 { /* .主属性跳过. */时钟频率= <100000>;flash@50 {兼容= "atmel,24c256";reg = <0x50>;};pca9532: gpio@60 {兼容= "nxp,pca9532
浏览 5
提问于2016-12-22
得票数 0
回答已采纳
5
回答
Raspberry PI,如何将其他GPIO配置为I2C
、
、
、
我正在为我的一个项目使用树莓派。 在这个项目中,我需要两个不同的I2C接口来同时运行。我知道如何将GPIO-0和GPIO-1设置为I2C (到处都有教程,例如:)。 另外,在这个链接中,说任何GPIO都可以作为I2C工作。 我如何配置其他GPIO的作为I2C工作,以便我可以并行到不同的接口。(我知道我需要添加上拉电阻,但我不知道如何在Linux shell或C中配置它)。有人能用简单的步骤给我解释一下这是怎么做到的吗? 谢谢你,禤浩焯。
浏览 2
提问于2013-02-13
得票数 2
2
回答
I2C linux驱动程序
、
、
、
我需要为我的芯片组中的几个控制器编写我自己的驱动程序,我使用SDK在SoC上工作,它不提供"linux i2c兼容“驱动程序。它为i2c提供简单的char驱动程序。我想使用一些标准的i2c RTC驱动程序。 我假设我需要将文件添加到/busses文件夹中,并实现标准接口。仅此而已。这个文件应该与i2c核和i2c-dev?合作,哪个驱动程序是最好的基础?我有9位32位寄存器可以使用。从第一眼看,i2c-ibm_iic.c对我来说似乎相当友好。 I2C是这个SoC的SPI和USB设备驱动程序之前的热身版。你知道这类任务的人/小时估计值吗? 我会感激任何暗示。 布尔巴特罗米·格里泽科维奇
浏览 4
提问于2011-07-23
得票数 2
回答已采纳
1
回答
pandaboard上的linux i2c驱动程序
、
、
、
、
我正在尝试为omap4460 panda board编写linux i2c驱动程序。通过i2c接口将Hmc5883l传感器与omap接口。我是否只需要编写客户端驱动程序,还是同时编写客户端和总线驱动程序。我在panda board上使用linux ubuntu。亲切地给我指点,我该从哪里开始。 谢谢。
浏览 6
提问于2013-02-22
得票数 0
3
回答
Linux中的I2C驱动程序
、
、
我知道I2C在一个非常基本的层次上,它依赖于linux内核,但对于实现一个基本的I2C驱动程序却毫无头绪。 试图在I2C设备驱动程序中启动。请您推荐任何初学者教程的源代码映射!!
浏览 14
提问于2013-05-24
得票数 14
回答已采纳
1
回答
何时最好在Linux中实现I2C驱动程序模块
、
我目前正在处理运行I2C的嵌入式系统中连接到Linux总线的两个设备。我使用的是第一个设备的现有驱动程序,即摄像头。对于第二台设备,我已经成功地实现了一个用户空间程序,通过它我可以与第二台设备通信。到目前为止,这两种设备似乎很好地共存。然而,几乎所有的I2C设备都有自己的驱动程序模块。因此,我想知道驱动程序模块的优点是什么。我看了一下下面的帖子。 ..。但没有结论。 因此,与用户空间实现相比,编写I2C驱动程序模块有什么优势? 向你致敬,斯特凡
浏览 2
提问于2010-04-13
得票数 3
回答已采纳
3
回答
Linux I2C驱动程序移植问题
、
我正在将I2C驱动程序移植到Linux-4上。该设备同时为不同功能提供多个I2C地址。 例如: address 0xAA is for access of SPI flash. address 0xA0 is for access of EEPROM. address 0x60 is for normal access (control purpose). 是否可以在单个I2C设备驱动程序中支持对不同I2C地址的访问? 感谢您的帮助,谢谢
浏览 2
提问于2018-12-03
得票数 1
回答已采纳
1
回答
如何通过SMBus/I2C访问VPD?
类似于IPMI正在查询的内容,我将如何通过SMBus/I2C访问目标服务器中每个设备的VPD?我需要一个驱动程序吗?还是i2c-dev模块就足够了?如果我有多个存储设备连接到服务器上,如何验证目标总线上的哪一个? 我正在使用i2cdetect来验证i2c总线,但是,我无法验证我的设备连接了哪条总线,或者它最初是否有总线。我知道,我需要一个i2c总线/适配器来确定实际的i2c设备。创建i2c客户机可以做到这一点,但我仍然需要验证它的总线连接,而创建i2c客户端使其仅限于定义id_table中列举的i2c设备。我尽可能希望它检测所有的存储设备,不管它是否有i2c设备。 如有任何答复,将不胜感激。非
浏览 0
提问于2018-01-25
得票数 2
2
回答
在linux中与无微控制器的I2C设备对话
、
、
、
、
如果我不想使用Raspberry或Arduino,我如何访问I2C总线来与设备对话。我看到了很多关于raspberry的例子和很多关于Arduino的例子,但它们都没有使用下面显示的代码。下面的代码探测并使用struct i2c_driver。代码还可以在使用module_init的内核中进行初始化 #include <linux/module.h> #include <linux/init.h> #include <linux/errno.h> #include <linux/kernel.h> #include <linux/inter
浏览 1
提问于2018-11-11
得票数 0
1
回答
I2C SCL线,STM32F4上的时钟问题
、
、
、
在I2C接口中, 即使总线上没有设备,时钟线也会发送时钟信号? 我们如何调试I2C?
浏览 3
提问于2016-07-21
得票数 0
回答已采纳
3
回答
如何访问i2c设备驱动程序节点
、
情景1: 我有一个i2c芯片驱动程序作为linux内核的一部分。我可以从内核引导消息中验证i2c芯片驱动程序是否在内核中(我的芯片驱动程序是mma8450) dmesg: mma8450 0-001c: uevent 我也可以在(0x1c是芯片的i2c地址)中看到这个驱动程序。 cat /sys/bus/i2c/devices/0-001c/name mma8450 我在/dev界面中看不到这个驱动节点。我的问题是,如何在/dev中创建此设备的节点,以便可以在用户程序中访问此设备? 情景2: 我创建了相同芯片驱动程序的模块,并且没有使其成为内核的一部分。我可以使用insmod mma8450加
浏览 2
提问于2011-05-19
得票数 1
2
回答
是什么让SPI比I2C协议更快?
、
、
、
我知道I2C和SPI通信的基础知识。因为两者都是同步协议。我想知道是什么让SPI比I2C更快。如果我没记错的话,使用I2C我们可以使用400kbps,而在SPI中我们也可以达到10 10mbps。它会因为硬件的改变而改变吗?这个问题是在一次面试中问到我的。如果我错了,请纠正我。
浏览 2
提问于2014-02-18
得票数 12
回答已采纳
2
回答
使用开发适配器重置冻结的I2C总线
、
、
、
我正在使用kontron嵌入式计算机通过I2C与ST微控制器通信。我使用描述的简单的read()和write()函数,使用开发适配器与I2C进行交互。 问题是,如果从机由于任何原因未能确认一个字节,I2C总线就会冻结,主机不能发送或接收任何信息(即使程序关闭并重新启动!)。目前我可以重置I2C总线的唯一方法是重启,这是很不理想的。 有没有人对我能做什么有什么建议?有没有一种方法可以使用其他方法在I2C上进行通信,可以优雅地处理通信失败而不会冻结?或者任何可以重置I2C的方法?
浏览 24
提问于2018-02-20
得票数 3
1
回答
在linux下与i2c设备对话时遇到的问题
、
我在linux下与i2c设备交谈时遇到了问题。设备连接到通常显示为/dev/i2c-0的SMBus。我的驱动程序的初始化函数正在被调用,并且驱动程序是通过i2c_add_driver注册的,但是驱动程序从未被探测过。 在我的硬件板的初始化函数中,我调用了i2c_register_board_info(n,i2c_board_info,array_size)。如果要在SMBus上注册设备,这里的n应该为0,但是,无论我将n设置为什么,都会导致SMBus显示为/dev/i2c-(n + 1)。 有什么想法吗?
浏览 1
提问于2011-05-26
得票数 1
2
回答
动态更改linux设备驱动程序的I2C地址
、
我有两个摄像头连接到我的linux系统上。摄像头是通过I2C控制的。单个摄像头的设备驱动程序基于i2c-core设备驱动程序。我想在两台照相机之间切换。因此,我想动态更改I2C地址以控制一个或另一个摄像头。 这是否合理呢?如果是,有没有一个函数可以做到这一点,或者是否有必要分别分离并连接带有i2c_detach_client和i2c_attach_client的客户端? 谢谢你的建议,斯特凡
浏览 2
提问于2010-08-24
得票数 0
2
回答
如何将/dev/中的设备与实际驱动程序关联
、
、
我试图了解设备驱动程序是如何在linux中工作的。 我有一个设备节点,如下(主编号89,设备名i2c-0) crw-r-r-1 0 0 89,0 9月29 01:36 /dev/i2c-0 我有一个名为i2c的i2c.ko驱动程序,我将在启动时执行insmod i2c.ko。 在驱动程序中,将在初始化过程中调用以下函数: register_chrdev(89,"i2c",&i2chtv_fops)<0 //不是"i2c-0“ 我的问题是:当用户调用open("/dev/i2c-0", O_RDWR)时,内核如何知道使用哪
浏览 9
提问于2009-10-06
得票数 4
回答已采纳
1
回答
SMBus通讯不工作。埋伏.h
我试图在SMBus 8.0上与CentOS设备进行通信。我已经安装了i2C工具和libi2c。正在做什么 find / -name "smbus.h" 2>/dev/null 不会返回任何结果。正在运行 i2cdump 不起作用。 i2cdump 4 0x12 sp "Error: Block read failed, return code -6" 命令 i2cget 返回“错误:读取失败” 我试着自己编译一个c程序,以便从本指南后面的块读取,但是当我试图编译它时,它说 “致命错误: i2c/smbus.h:没有此类文件或目录” yum whatp
浏览 0
提问于2020-03-23
得票数 1
1
回答
I2C设备linux驱动程序
、
、
、
、
如何制作一个字符设备为i2c设备,具有打开,关闭,ioctl等功能?我过去两周一直在寻找关于它的信息,但找不到任何有用的东西。我在Essential Linux设备驱动程序中找到了一些信息,但它是为2.6内核编写的,我使用的是3.4.79 (我正在尝试在cubian发行版上为cubieboard2编写这个驱动程序)所以这本书有很多不推荐使用的函数,我试着像那里一样编写我的驱动程序,但它仍然不能工作(给我内核错误,而我是真的猫字符设备)。有没有人能给我解释一下该怎么做,或者至少给我一个有效的例子。 下面是我的代码: 我只是尝试让i2c总线工作,但是在我的示波器上我看不到i2c线路上的任何东西,当
浏览 3
提问于2014-06-01
得票数 9
回答已采纳
1
回答
i2c子系统如何将设备与驱动程序匹配?
、
、
、
我对这件事的理解很少,所以请原谅我。根据我到目前为止收集的信息,Linux上的i2c子系统识别了附加的设备,然后以某种方式将它们与加载的驱动程序模块相匹配。在识别匹配的地方,它调用驱动程序的探测函数,该函数实际上启动了驱动程序设置。 我很难调试一个非功能摄像头;我可以看到i2c子系统看到了它的存在,并在/sys/bus/i2c/i2c-7中为它构建了目录,而且我可以判断这个驱动程序的.probe_new()函数没有被调用,因为我向它添加了一堆调试消息。因此,我猜想设备连接到驱动程序的步骤已经丢失,但是我不知道它是如何工作的。 有人能解释i2C子系统是如何执行设备->驱动程序匹配的吗? 编
浏览 0
提问于2020-08-05
得票数 3
回答已采纳
2
回答
设备驱动程序与/dev + glibc接口的比较
、
、
我希望从I2C中读取处理器,并将数据存储在嵌入式系统中。当我一直在研究解决方案时,我已经被介绍给Linux设备驱动程序以及GNU C库。对于许多操作,您可以使用基本的Linux驱动程序执行,也可以使用基本的glibc系统调用来执行。我有点搞不懂什么时候应该用一个而不是另一个。这两个接口都可以从用户空间访问。 什么时候应该使用内核驱动程序来访问像I2C或USB这样的设备,以及何时应该使用GNU库系统功能?
浏览 5
提问于2017-10-24
得票数 1
回答已采纳
6
回答
Linux设备驱动程序,程序是从哪里开始的?
、
我已经开始学习Linux驱动程序,但我发现它有点难。 我一直在研究i2c驱动程序,我对驱动程序的入口点感到非常困惑。驱动程序是否在MOUDULE_INIT()宏中启动? 我还想知道如何才能知道驱动程序如何运行的过程。我拿到了“Linux设备驱动程序”这本书,但我仍然很困惑。你能帮我一下吗?非常感谢。 我将以i2c驱动程序为例。它里面有这么多函数,我想知道如何才能得到i2c驱动程序中函数之间的协调关系?
浏览 2
提问于2012-10-16
得票数 1
回答已采纳
2
回答
如何在linux下访问IIO设备驱动程序
、
我是Linux设备驱动程序的新手。 我有一个IIO驱动程序(用于OPT3001环境光传感器),它在I2C总线上运行,它已经在内核(版本3.18)中成功编译。修改设备树以匹配驱动程序中的compatible字段。 问题是我如何访问这个驱动程序来获取用户空间中的一些数据? 驱动程序在一个结构中注册了一些读写回调函数。我应该在我的C文件中直接调用它们吗?
浏览 21
提问于2018-06-22
得票数 0
1
回答
未检测到OMAP 3 Linux I2C SMBUS SmartBattery (SBS)
、
、
、
、
我正在用OMAP3730做一个嵌入式Linux项目。我们使用的是3.2.23版本的内核。I2C工作正常,我可以在总线#2上看到电路板上的各种传感器。I2C总线#3只连接了一个智能电池,我可以拔下电源线,电池可以保持电路板运行。问题是我无法检测或以其他方式扫描智能电池。我尝试过i2ctools中的各种程序,但都没有成功。我们将电路板挂到示波器上,可以看到3号总线上的活动。我还在内核中的Device Drivers > I2C Support下启用了每个相关选项。 如何在i2c总线上查看我的智能电池?我是否需要在内核中启用其他功能? Standard SMBus slave address
浏览 1
提问于2012-08-25
得票数 0
回答已采纳
2
回答
Linux中的I2C写确认轮询
、
、
这里反应平淡,让我不禁纳闷。 我得到了一个设备,它(来自数据表,pg 16): 在内部EEPROM写入循环期间禁用I2C接口。 这似乎不公平,就像“我现在要从沙发上下来,所以暂时不要用它,因为我让一个人在坐垫上裂开了”。老实说,这怎么会是我的问题? 无论如何,数据表表明确认轮询是答案-输入Linux内核.是否为Linux位的I2C驱动程序提供了一种执行此操作的机制?实际上是发送一个具有写入位集的地址,并一直这样做直到ACK出现。 我正在使用2.6.14在一个臂上的背后移植的GPIO位猛击驱动程序(从2.6.19我认为)。
浏览 3
提问于2009-07-28
得票数 7
回答已采纳
1
回答
ENXIO对i2c ioctl意味着什么?
、
、
我有一个i2c适配器,它以/dev/i2c-0的形式公开给用户空间。当我从适配器上的i2cdetect包中使用时,我看到这个适配器上列出了我的设备,并且我能够从命令行对它执行get、set和dump操作。 我有一些C代码试图使用ioctl I2C_RDWR操作对其执行写操作。 下面是我正在使用的精简代码(只为上下文提供,运行它对于回答问题并不重要)。 fd = open ("/dev/i2c-0", O_RDWR | O_NONBLOCK); /* other stuff happens here */ if (ioctl (fd, I2C_FUNCS, &func
浏览 7
提问于2016-07-15
得票数 4
回答已采纳
1
回答
在Linux i2c驱动程序中进行芯片特定初始化的正确功能是什么?
、
、
我正在尝试初始化ADT746x芯片的状态寄存器。Linux内核有这个芯片的hwmon驱动程序,但是它没有配置。 当设备准备好通过sys接受i2c命令时,我需要初始化几组寄存器。这些寄存器将温度和电压传感器配置为有效,并将它们标记为监视。 有这些init代码的正确位置是什么?探测()或检测()或其他任何地方的用户?
浏览 2
提问于2019-09-12
得票数 0
回答已采纳
2
回答
我可以用纯软件进行协议(i2c)分析吗?
、
、
最近我正在调试一个用I2C总线连接的光传感器问题。为了获得原始数据,我们对电路板进行了重新加工,将I2C数据放到I2C分析仪上。但是板子太小了,所以返工过程很难做。总之,我们完成了工作。但是我想到了一个想法,那就是修改I2C总线驱动程序,让它将所有内容都记录到一个文件中。稍后我们可以使用这个日志文件来做分析器。这个是可能的吗?在Windows上怎么样(如果MSFT可以做一个糟糕的临时驱动程序)。
浏览 2
提问于2017-09-05
得票数 0
回答已采纳
1
回答
I2C内核驱动程序绑定
、
嗨,我是新的内核驱动程序开发。我使用raspberry pi作为我的hostI,试图为自定义板创建一个I2C驱动程序。定制板将充当奴隶。我对如何输入设备从地址感到困惑。据我所知 你要么需要一个板设置文件,但我没有,因为它是一个自定义板。 您可以编辑设备树。 也可以在用户空间应用程序中完成。 我不知道在哪里确切地编辑设备树,如果我去第二个选项。此外,我想以某种方式在I2C驱动程序本身中注册从地址。这样我就不需要重建内核了。我正在研究的一种方法是从驱动程序代码中设置i2c客户端,但我不知道为什么。任何帮助都将不胜感激。
浏览 1
提问于2018-01-04
得票数 0
2
回答
当通过sysfs动态添加I2C设备时。是否也可以定义I2C设备附带的GPIO引脚?
、
、
我有两个I2C设备,我想连接到我的Linux设备。温度传感器,TMP117,通过将它写入/sys/bus/i2c/devices/i2c-x/new_device,工作得很好。此外,我想添加一个加速度计,ADXL343。但是,当使用与TMP117相同的方法时,我在dmesg中收到一个错误,即找不到用于中断的GPIO。这也会影响GPIO扩展程序,它需要我的应用程序的中断信号。 是否可以动态添加附加信号(如中断)的I2C设备?
浏览 0
提问于2023-01-18
得票数 1
回答已采纳
2
回答
如何使用linux i2c驱动程序闪存二进制文件
、
我被告知使用通过I2C将二进制文件闪存到某个芯片上。 我对自定义驱动程序或以任何方式进行修改并不感兴趣,我只是希望能学到足够多的知识来使用函数: max77958_update_action_mtp(struct max77958_dev *max77958, const u8 *action_bin, int fw_bin_len) 将二进制文件(action_bin)闪存到某个i2c设备(max77958)。 我是嵌入式开发和c++编程的完全新手,但据我所知,我需要管理以下内容: 将此驱动程序包括在其他c文件中,并解决缺少的依赖项(已完成) 创建一些max77958
浏览 25
提问于2022-07-26
得票数 2
2
回答
/sys/bus/ i2c /./i2c文件是只读的。
、
、
、
、
我有一个X86 CPU与自定义I2C主硬件。我的Linux是Ubuntu14.04,内核3.13。 我为我的自定义I2c主硬件编写了一个I2C驱动程序。 当我加载驱动程序时,会创建设备/sys/bus/i2c/设备/i2c-11。 连接到我的I2C总线上有一个I2C eeprom内存。 当我加载linux驱动程序时,eeprom驱动程序会自动创建sys文件/sys/bus/i2c/设备/i2c-11/11-0050/ eeprom。 问题:此文件/sys/bus/i2c/设备/i2c-11/11-0050/eeprom是只读的。 从eeprom文件读取工作正常,例如
浏览 3
提问于2018-09-25
得票数 1
2
回答
Linux I2C内核驱动程序绑定
、
、
我正在学习如何开发Linux内核驱动程序,并在下面的网站上学习。 ..。 接下来,我找到了一个示例,它展示了如何实现I2C触摸屏驱动程序,但它确实让我感到困惑。 我的问题是,Linux内核如何将这个驱动程序绑定到正确的设备上? 此驱动程序不提供“检测”回调,不通过i2c_driver.address_list指定i2c_driver.address_list从地址,而且似乎没有任何人调用i2c_board_info来注册地址信息(I grep是整个Linux代码库)。 我认为驱动程序必须指定从地址或提供“检测”回调,就像 或 (它将由i2c_board_info注册) 请告诉我我错过了
浏览 9
提问于2017-11-07
得票数 0
回答已采纳
3
回答
平台设备/驱动程序与i2c设备/驱动程序
、
、
、
、
由于我是嵌入式领域的新手,我在理解i2c设备/驱动程序和平台设备/驱动程序之间的明显区别方面遇到了困难。 我读过这个链接: 它说,平台设备/驱动程序用于不可发现的设备,就像连接在i2c总线上的设备一样,平台设备通过匹配的名称绑定到驱动程序。 我已经看过一个板文件,其中连接在i2c总线上的音频编解码器(无法发现的设备)是使用i2c API (i2c_register_board_info,omap_i2c_add_bus等)注册的,所以我的问题是 i2c设备/驱动程序和平台设备/驱动程序有什么区别? 何时使用i2c相关API,何时使用平台相关API(platform_driver_re
浏览 5
提问于2015-01-02
得票数 3
2
回答
I2C linux驱动程序找不到设备
、
、
、
、
我只为测试目的编写了一个小型i2c驱动程序。 我使用的是一个Rasperry 3,我已经将两个连接到GPIO引脚头上的I2C引脚上。我能够连接到它,使用i2c-工具使用嵌入0x3c和0x3d。 我能够使用i2c-set将数据发送到显示器: i2cset -y 1 0x3c [data] i2cset -y 1 0x3d [data] 命令 i2cdetect -y 1 给出以下输出: 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 1
浏览 6
提问于2017-04-07
得票数 0
回答已采纳
2
回答
i2c "master_xfer“函数的一般定义在哪里?
、
struct i2c_algorithm为master_xfer提供了i2c总线实现的函数指针模板。在linux内核源代码中,我可以在哪里找到master_xfer的默认函数例程。请有人指引我..。
浏览 2
提问于2013-08-01
得票数 1
回答已采纳
1
回答
通过I2C总线控制多个设备的Pythonic设计
、
、
、
我正在用python编写一个软件,它将通过I2C总线与许多设备通信。这些设备中的每一个都需要某种模块或类来以某种合理的方式处理通信和数据转换。每个设备模块所执行的操作完全不同。 我主要关心的是I2C总线控制。我担心共享总线(例如,让每个设备模块实例化一个新的I2C总线控制对象)会产生难以理解的代码,而且我不确定如果总线中存在中断,这些对象将如何通信。但是,如果不共享它,我恐怕会有一个很大的控件类,很难维护和扩展。 如果我倾向于控件类,那么每个设备模块都将包含一个操作映射,比如一个OrderedDict或带有预期结果值或范围的函数元组列表。然后,I2C控件对象可以迭代该字典,从总线中写入和读取结
浏览 0
提问于2014-02-18
得票数 0
回答已采纳
2
回答
多个i2c无法与arduino uno一起工作
、
我正在尝试连接两个I2C模块到arduino uno。GY86(HMC5883L,MS5611,MPU6050)和BMP085或任何其他I2C模块。当我分别测试每一个时,它的工作正常,但当两者都连接到I2C总线端口时,每件事都会崩溃。当我连接BMP模块时,GY86开始输出错误的数字。我还用GY86模块测试了我的DS1307。同样的事情发生了,当我连接它们的时候,DS开始输出错误的随机输出。我试着为SDA和SCL应用一个拉起电阻,但是没有工作。有什么问题吗?
浏览 7
提问于2016-05-04
得票数 0
1
回答
Linux上的I2C多路复用器
、
我正在尝试理解如何处理I2C Mux背后的设备,比如linux中的PCA9548。如果拓扑结构类似于 CPU->I2C_A Controller->PCA9548->Channel 0->RTC CPU->I2C_A Controller->PCA9548->Channel 1->Temp Sensor CPU->I2C_B Controller->PCA9548->Channel 0->Voltage Sensor CPU->I2C_B Controller->PCA9548->Channel 1-&
浏览 1
提问于2015-05-16
得票数 2
2
回答
I2C和UART的自动合成孔径雷达规范
有为CAN、LIN和以太网定义好的autosar规范。为什么这些规范不适用于UART和I2C?串口和I2C不在汽车上使用吗?
浏览 0
提问于2019-05-20
得票数 2
2
回答
i2c_register_board_info符号未定义
、
、
、
我正在尝试为BeagleBone黑编写一个内核模块,该模块将与我的自定义I2C从设备进行通信。我试着遵循几个内核模块开发教程,它们在某个时候看起来都不完整,或者假设我知道一些我显然不知道的东西.我现在的问题是Makefile看不到i2c_register_board_info符号。我把这个驱动程序写成一个单独的模块,它不是在内核编译期间编译的。此外,我在使用buildroot构建时启用了I2C工具。使用I2C工具,我能够检测到并与我的设备进行接口。我的Makefile看起来如下: MODULE_NAME = PowerManagerDriver PWD := $(shell pwd) SRC
浏览 0
提问于2019-01-08
得票数 2
回答已采纳
1
回答
填充/sys和/dev目录的内容
、
、
、
、
我的理解是,/sys目录包含解释不同设备信息的文件。如何以及何时填充该目录? 例如,在这里探索一个Linux系统,我看到/sys/bus/i2c/devices目录包含一些用于I2C设备的文件。 在本例中,创建这些文件是I2C设备驱动程序/模块的工作吗? 那么关于/dev目录,设备驱动程序/模块是否也填充了这个目录呢?提前谢谢。
浏览 0
提问于2022-09-01
得票数 0
1
回答
I2C与Atmega168
、
、
、
、
我试图控制几个伺服使用adafruit PWM伺服控制器。它使用i2c接口与单片机进行通信。 我使用Atmega 168试图使用一个简单的i2c库向微控制器发送i2c指令。 #include "i2c.h" void initI2C(void) { TWBR = 32; /* set bit rate, see p. 242 */ /* 8MHz / (16+2*TWBR*1) ~= 100kHz */ TWCR |= (1 <&
浏览 2
提问于2017-09-12
得票数 1
回答已采纳
2
回答
控制器的工作是什么?
、
、
、
我有以下图片: 所以,有一个现场可编程门阵列,里面有一个I2C和一个CAN控制器。I2C和CAN控制器的作业/任务是什么? 我需要这些做什么? 他们在干什么呢?
浏览 3
提问于2017-04-10
得票数 1
1
回答
I2C总线上的传感器设备树条目
如果传感器连接到I2C总线,那么以下两个设备树条目都将工作,或者只有entry1才能工作。 entry1: ------- i2c { clock-frequency = <200000>; sensor1@addr { compatible = "sensor1" }; }; entry2: ------- i2c { clock-frequency = <200000>; } sensor1@addr { compatible = "sensor1" };
浏览 4
提问于2015-01-08
得票数 0
回答已采纳
1
回答
当一个I2C设备连接到Raspberry时,如果没有驱动程序,它会被检测到吗?
、
、
、
即使没有设备驱动程序和与之相关的DTS文件,在raspberry pi中检测到I2C设备也会让我感到困惑。 当我们使用以下命令时,它会出现吗? ls /dev/i2c-* 当我尝试用 i2cdetect -y bus_number
浏览 21
提问于2022-09-26
得票数 0
3
回答
低功耗/低成本嵌入式设备硬件
、
、
我是嵌入式设备世界的新手,但我有一个想法,我想尝试实现。我找到了一个集成电路,可以给我输入我想要的,现在我需要找到一个设备来记录来自电路的数据(几个浮点数字/每几秒钟),并通过一个网络接口显示数据。IC通过SPI或I2C接口工作。 我的背景是Python和Linux,能够在设备上使用这些将是很好的,但是低成本/功耗的要求比工具包更高。我希望能找到低于100美元的东西,这排除了Gumstix和Beagle的可能性。
浏览 0
提问于2010-08-06
得票数 0
2
回答
如何在Linux中编程使用GPIO驱动程序?
、
、
、
、
我试图将Yocto发行版配置为安装两个车载I2C GPIO扩展程序,并记录如何以编程方式(即从C用户应用程序)访问它们。GPIO扩展器都是NXP PCA9557,由内核驱动程序支持。 我了解如何将这个驱动程序编译到内核中(使用CONFIG_GPIO_PCA953X配置选项)并加载它(使用modprobe)。我还理解可以在设备树中实例化这两个I2C设备(这是一个嵌入式设备,因此GPIO扩展器是静态的和不变的): gpio@20 { compatible = "nxp,pca9557"; reg = <0x1a>; gpio-controller
浏览 13
提问于2021-02-08
得票数 3
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
安捷伦示波器在I2C总线信号测试中的应用
汽车驱动总线是什么
罗德与施瓦茨示波器测量I2C总线波形
microbit的I2C方式 LCD1602驱动
Linux驱动系列-PWM驱动
热门
标签
更多标签
云服务器
ICP备案
实时音视频
对象存储
云直播
活动推荐
运营活动
广告
关闭
领券