こんにちは、
現在、MMA8452Q を使用していますが、I2C インターフェースに問題が発生しています。2つの疑問があります
1. MMA8452Q の I2C 速度 (デフォルト) と、その速度を変更する方法を教えてください。
2. この加速度センサを(ブレークアウト ボードを使用して)Raspberry Pi B+ モデルに接続しましたが、データにアクセスしているとき(I2C を使用して)、設定されたサンプリング レートに基づいて加速度データを取得できません。
たとえば、サンプリング レートが 100 Hz に固定されている場合、1 秒あたり 100 個のサンプルを取得する代わりに、値が繰り返されて 100 個を超えるサンプルを取得します。
AN4076 に記載されているポーリングおよび割り込みベースの方法を試しましたが、問題を解決できませんでした。I2C を使用してデータの書き込みと読み取りを行うために、 WiringPiライブラリを使用しています。
よろしくお願いします
こんにちは、 david_diaz さん、
I2C 速度を変更し、 MMA8451Q - ベア メタル サンプル プロジェクトに示されているようにデバイスの初期化も確認しました。その後も問題は解決されません。
サンプル数がサンプリング レートに応じて生成されるかどうかを確認するために、10 ミリ秒間隔で 3 軸すべての加速度サンプルを取得する実験を実行しました。800 Hz を維持すると、8 つのサンプル (軸あたり) の代わりに、約 10 ~ 11 個のサンプルを取得できました。このタイプの追加サンプルは、他のすべてのサンプリング レートでも同様です。前に言ったように、私はポーリング方法と割り込み方法の両方を使ってみました。
どこが間違っているのか教えてください
よろしくお願いいたします。
サイナス・グプタ
ありがとう、デイビッド。
1. 100KHz の I2C 速度を使用していると思います。400KHzに変更します。
2.ベアメタルのサンプル プロジェクトで宣言されたデバイスの初期化を確認して、お知らせします。
よろしくお願いいたします。
サイナス・グプタ
こんにちは、
1.MMA8452Q デバイスは、I2C 高速モード インターフェイス ( 0 ~ 400kHz) と互換性があります。
SO、マスターが上記のボーレート内で I2C モジュールを使用するように設定されていることを確認してください。
2. この場合は、 MMA8451Q - ベアメタルのサンプル プロジェクトを確認し、それを設計のリファレンスとして使用することをお勧めします。デバイスの初期化機能を確認し、設定と比較してください。
他にご質問がございましたらお知らせください。
よろしくお願いいたします。
デビッド