在Linux中更改I2C速度

时间:2019-04-05 12:51:35

标签: c++ linux i2c

我正在使用基于Linux的工具包,并且在更改i2c速度时遇到问题。 您知道如何在版本3.4.39的linux中进行更改

1 个答案:

答案 0 :(得分:1)

由于使用的是ARM,因此可以在devicetree中定义启动时的I2C速度。 我在这里做出一些假设(例如,您正在使用U-boot作为引导程序),但是嵌入式系统看起来很相似。

  1. 找到您的设备树。它是在引导过程中指定的,可能位于/ boot / (您也可以在U-boot shell中键入 printenv 并查找名为devicetree的变量)
  2. Disassemble将您的设备树转换为dts格式(设备树源)

  3. 更改i2c速度参数(搜索“ i2c”和“ clock-frequency” clock-frequency = ;“

  4. 将其编译回* .dtb(device-tree-blob),并将其存储为/ boot /
  5. 中的 my_devicetree.dtb

在下一次重新引导时,在引导程序菜单中选择 my_devicetree.dtb 作为 devicetree-file ,它应该可以工作。