*[[CentOSからIIC(I2C)デバイスへのアクセス]] [#l58a9915] *[[CentOSからIIC(I2C)デバイスへのドライバー経由のアクセス]] [#l58a9915] **はじめに [#kb25150a] > >Raspberry Pi 3のCentOS7から、IIC(I2C)デバイスへのアクセス方法を改めてまとめました。~ >Raspberry Pi 3のCentOS7から、IIC(I2C)デバイスへのドライバ経由のアクセス方法を改めてまとめました。 < **ドライバー経由のアクセスの準備 [#t728c7da] ***ドライバーのロード [#oe505827] > >インストールデフォルトでは、ドライバーがイネーブルにならないようで /boot/config.txt にドライバを読み込む設定が必要です。~ 以下の2行を追加します。 dtparam=i2c_arm=on dtparam=i2c1=on < > >これにより、起動時にドライバーを読み込んでくれるようになります。 # lsmod (中略) i2c_dev 6913 0 i2c_bcm2708 5994 0 (以下省略) < > # ll /sys/class/i2c-dev 合計 0 lrwxrwxrwx 1 root root 0 8月 12 09:28 i2c-1 -> ../../devices/platform/soc/3f804000.i2c/i2c-1/i2c-dev/i2c-1 # < ***i2c-tools [#xd01997d] > >i2cドライバー経由でアクセスするツール(i2c-tools)をインストールします。~ このパッケージには以下が含まれます。~ このパッケージには以下が含まれます。 |~ファイル|~概要| |/usr/bin/decode-dimms|メモリモジュールのSPDEEPROMの内容をデコード、表示するツール| |/usr/bin/decode-vaio|VAIO用のEEPROM情報の読み出し&デコードするツール| |/usr/sbin/i2c-stub-from-dump|IICデバイスの応答をエミュレートさせるツール| |/usr/sbin/i2cdetect|IICバス上のIICデバイスを検出するツール| |/usr/sbin/i2cdump|IICバス上の特定のアドレスに0x00から0xffまで、Read命令を連続的に送出するツール| |/usr/sbin/i2cget|IICデバイスのレジスタから読み込みをするツール| |/usr/sbin/i2cset|IICデバイスのレジスタへの書き込みをするツール| < > -インストール < > # yum install i2c-tools 読み込んだプラグイン:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: ftp.yz.yamagata-u.ac.jp * centos-kernel: ftp.yz.yamagata-u.ac.jp * extras: ftp.yz.yamagata-u.ac.jp * updates: ftp.yz.yamagata-u.ac.jp base | 3.6 kB 00:00:00 centos-kernel | 2.9 kB 00:00:00 extras | 2.9 kB 00:00:00 updates | 2.9 kB 00:00:00 依存性の解決をしています --> トランザクションの確認を実行しています。 ---> パッケージ i2c-tools.armv7hl 0:3.1.0-13.el7 を インストール --> 依存性解決を終了しました。 依存性を解決しました ===================================================================================================================================== Package アーキテクチャー バージョン リポジトリー 容量 ===================================================================================================================================== インストール中: i2c-tools armv7hl 3.1.0-13.el7 base 69 k トランザクションの要約 ===================================================================================================================================== インストール 1 パッケージ 総ダウンロード容量: 69 k インストール容量: 182 k Is this ok [y/d/N]: y Downloading packages: i2c-tools-3.1.0-13.el7.armv7hl.rpm | 69 kB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction 警告: RPMDB は yum 以外で変更されました。 ** Found 7 pre-existing rpmdb problem(s), 'yum check' output follows: gettext-common-devel-0.19.8.1-2.el7.noarch は gettext-common-devel-0.18.2.1-4.el7.noarch の複製です hunspell-en-0.20121024-6.el7.noarch は hunspell-en-0.20121024-5.el7.noarch の複製です hunspell-en-GB-0.20121024-6.el7.noarch は hunspell-en-GB-0.20121024-5.el7.noarch の複製です hunspell-en-US-0.20121024-6.el7.noarch は hunspell-en-US-0.20121024-5.el7.noarch の複製です ncurses-base-5.9-14.20130511.el7.noarch は ncurses-base-5.9-13.20130511.el7.noarch の複製です raspberrypi2-firmware-4.9.50-v7.1.el7.armv7hl は raspberrypi2-firmware-4.9.13-v7.1.el7.armv7hl の複製です raspberrypi2-kernel-firmware-4.9.50-v7.1.el7.armv7hl は raspberrypi2-kernel-firmware-4.9.13-v7.1.el7.armv7hl の複製です インストール中 : i2c-tools-3.1.0-13.el7.armv7hl 1/1 検証中 : i2c-tools-3.1.0-13.el7.armv7hl 1/1 インストール: i2c-tools.armv7hl 0:3.1.0-13.el7 完了しました! # < -試しにコマンドを実行 > # i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- # < お疲れ様でした。