i2c

    3热度

    2回答

    我正在尝试开发嵌入式主板的驱动程序。该驱动程序应该打开一个接口,并使用i2c与2个设备进行通信。司机将充当主人。 我似乎无法理解i2c_device_id数组和i2c_add_driver函数是如何工作的。我在内核源码中阅读文档,但它不会帮助我在多个从属客户端上。 我必须有两个独立的探头功能吗? 我需要拨打i2c_add_driver两次吗? 如果不是我将如何能够保存两个不同的客户端能够发送不同的

    0热度

    1回答

    我正在使用MPLABX 3.10,并使用MSSPI2C主中断功能生成I2C主接口。我能够产生I2C写入事件,在振荡器上看起来没问题。然而,阅读失败。当我查看范围输出时,我可以清楚地看到生成了启动条件,并且设置了读取位的设备ID被生成并确认。接下来,我期待看到寄存器地址出去,但是我看到所有的零。我是否错误地使用生成的代码?我需要做设备写入,然后读取设备吗?我试图减少代码以下: void I2C_In

    -5热度

    1回答

    所以我有一个疯狂的想法,试图跨两个微控制器分离I2C控制器实现。也就是说,一个uC控制SDA,一个uC控制SCL,并在总线,主机或从机上作为一个I2C器件进行通信。我并不想在这里进行基本的I2C通信,我希望两个物理上独立的控制器一起作为一个I2C接口工作。 任何人在这里都会做这样的事情谁可以建议我会怎么做呢? 我假设我的独立SDA和SCL控制器对于初学者来说将不得不被打断,但我不确定其余的。你会使

    0热度

    1回答

    我使用带有i2c库的HMC5883L。我使用这个代码来获取它正面临 from i2clibraries import i2c_hmc5883l hmc5883l = i2c_hmc5883l.i2c_hmc5883l(1) hmc5883l.setContinuousMode() hmc5883l.setDeclination(0,6) print(hmc5883l) 方向但这打印所

    0热度

    1回答

    我试图通过串行通信连接。但我有一个问题。我认为AT命令也可以通过I2C通信给出。但是我在某些时候被卡住了。任何人都可以帮助一步一步的指示来建立连接?谢谢

    0热度

    1回答

    Please clarify above question that i was being asked in interview in one company. And How slave device will communicate to master if at the same time slave device receives request from two or multip

    0热度

    1回答

    我正在开发一个项目,我需要使用GPIO切换引脚的高低,并从I2C外设收集传感器数据。我有每个组件单独工作,使用开放(...,...)和ioctl(...,...,...)使用wiringPi和I2C的GPIO。另外他们工作很好。当我将它们一起运行时,I2C总线处于i2cdetect显示所有可能地址值的状态,并且在重新启动之前我无法再与I2C设备通信。有没有人看过这个或有人知道我能做些什么来解决这个

    1热度

    1回答

    我是ARM新手,尝试在STM32F103x上创建从设备。另外我需要串行线调试和FreeRTOS任务。 我通过STM32CubeMX创建了一个新项目。在NVIC配置中有“使用FreeRTOS功能”的选项。但是我没有找到任何有关如何使用它的文档,参考资料或演示。 编辑1:所以我做出这样的方式,现在: #include <string.h> #define MASTER_REQ_READ 0x44

    0热度

    1回答

    我正尝试从Windows IoT Core上的博世BME280读取数据。我能够重置芯片,读取芯片ID,获取修整值并读取温度/压力/嗡嗡声值(突发模式)。但是,补偿值不正确。这里是我现在得到的价值观。我希望有人可以分享一些我可以用来比较的价值观。将在后发布代码。谢谢。 DT1 0x196e,DT2 0x7e66,DT3 0x3200 DP1 0xc78f,DP2 0xded5,DP3 0xd00b,

    2热度

    2回答

    我试图得到一个基本的握手。以下是C8051F120的SMBus(系统管理总线)的ISR。我试图在其上实现一个I2C器件(ads1115 7addr 0x48对于那些很好奇的人)。请注意,这主要是F120的硅实验室给出的例子。 void SMBUS_ISR (void) interrupt 7 { bit FAIL = 0; // Used by the ISR to flag