直接i2cハードウェアアクセス

直接i2cハードウェアアクセス

私はカスタムハードウェア、i.mx6qベースのマザーボードを持っており、カスタムストリップバージョンのDebianを実行していますが、一般的なLinuxツールでは簡単には利用できません。

/sys/bus/i2c/devices/[device]ルートアクセス権を持つ標準ツール(例:など)を使用してi2cに直接読み書きできますかecho

ベストアンサー1

このLinux Journalの記事によると、次のようになります。I2Cドライバ、パート2:

すべてのI2Cチップドライバは、I2Cチップデバイスディレクトリのsysfsファイルを介してさまざまなセンサー値をエクスポートします。これらのファイル名と値を表す単位は標準化され、Documentation / i2c / sysfs-interfaceファイルのカーネルツリーに書き込まれます(表1)。

表 1. sysfs ファイルからエクスポートされたセンサー値

  • 最大温度[1-3] 温度最大。固定小数点値は XXXXX 形式で、摂氏温度を得るには 1,000 で割る必要があります。値の読み取り/書き込み。
  • 温度最小値[1-3] 温度最小またはヒステリシス値。固定小数点値は XXXXX 形式で、摂氏温度を得るには 1,000 で割る必要があります。これは、最大値からのデルタではなく絶対温度で報告されるヒステリシス値であることが好ましい。値の読み取り/書き込み。
  • 一時入力[1-3]温度入力値。読み取り専用値です。

表1の情報に示すように、ファイルごとに1つの値しかありません。適切な権限を持つユーザーはすべてのファイルを読み取ることができ、一部のファイルは書き込むことができます。

/sys/bus/i2c/devices/[device]したがって、標準ツール(たとえば)を使用して以下を作成することは可能ですが、echo他のツールではそうでない可能性があります。

引用する

おすすめ記事