458633_ja-JP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

458633_ja-JP

458633_ja-JP

MPL3115A2の故障<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

温度、圧力、高度を測定するために MPL3115A2 (M3PR YI0C) を使用します。定期的に高度計モードを気圧計モードに、またその逆に変更します。次のような問題が発生しました: しばらく操作すると、STATUS レジスタ (0x00) の更新が停止し、常に 0x00 になります。高度/気圧と温度のレジスタ (0x01 - 0x05) はゼロに設定されます。構成レジスタを読み取ると、MPL3115A2 が正しく構成されていることが示されます。

以下はクラッシュ前の単一測定におけるレジスタの例です。

ステータス: 0x0e

出力P_MSB: 0x61

OUT_P_CSB: 0xa0

OUT_P_LSB: 0xd0

OUT_T_MSB: 0x1a

OUT_T_LSB: 0x50

SYSMOD: 0x01

INT_SOURCE: 0x00

PT_DATA_CFG: 0x07

CTRL_REG1: 0x39

CTRL_REG2: 0x00

CTRL_REG3: 0x00

CTRL_REG4: 0x00

CTRL_REG5: 0x00

最初に失敗した測定は次のとおりです。

ステータス: 0x00

出力P_MSB: 0x61

OUT_P_CSB: 0xa0

OUT_P_LSB: 0xd0

OUT_T_MSB: 0x1a

OUT_T_LSB: 0x50

SYSMOD: 0x01

INT_SOURCE: 0x00

PT_DATA_CFG: 0x07

CTRL_REG1: 0x39

CTRL_REG2: 0x00

CTRL_REG3: 0x00

CTRL_REG4: 0x00

CTRL_REG5: 0x00

以下は、モードの切り替えを試みたものの失敗した測定 10 件です。

ステータス: 0x00

出力P_MSB: 0x00

OUT_P_CSB: 0x00

OUT_P_LSB: 0x00

OUT_T_MSB: 0x00

OUT_T_LSB: 0x00

SYSMOD: 0x01

INT_SOURCE: 0x00

PT_DATA_CFG: 0x07

CTRL_REG1: 0xb9

CTRL_REG2: 0x00

CTRL_REG3: 0x00

CTRL_REG4: 0x00

CTRL_REG5: 0x00

この問題は、割り込みを使用する場合とポーリングを使用する場合の両方で発生します。MPL3115A2 を通常の動作に戻す唯一の方法は、ソフトウェアを再起動することです。何が問題なのでしょうか?

(翻訳してすみません)

Re: MPL3115A2 fail<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

私たちもこの問題に遭遇しました。徹底的なテストを行った結果、問題を解決することはできませんでしたが、回避策を見つけました。それは、初期化ルーチンでデバイスを「ソフトウェア リセット」(データシートで RST を検索)することでした。

mpl3115a2_write(MPL3115A2_CTRL_REG1,0b00000100);

これがお役に立てば幸いです。

TrackerSense サポート

Re: MPL3115A2 fail<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

こんにちは、アレクサンダー。

ソースコードを確認しましたが、あなたが言及している問題を引き起こす可能性のあるものは何も見つかりませんでした。

問題の原因が見つかったかどうか教えていただけますか?もしそうなら、シェアしていただけますか?

そうでない場合は、コミュニティで言及されている詳細情報があればお知らせください。

よろしくお願いいたします。

ホセ

Re: MPL3115A2 fail<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

シェアしてくれてありがとう、アレクサンダー。

あなたのソースコードをざっと見てみました。特に問題は見つかりませんでした。時間があれば詳しく確認してみます。誰かが答えを知っているなら、遠慮なく返信してください。

ありがとうございます

アンソニー

Re: MPL3115A2 fail<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

こんにちは、アンソニー!

回答ありがとうございます!

MPL3115A2 には独自のドライバを使用します。添付のドライバのソースコード。

それで私はそれを使います:

//

// ...

//

mpl3115a2_init( &mpl3115a2 );

mpl3115a2_set_pwrmode( &mpl3115a2, MPL3115A2_PWRMODE_STANDBY );

mpl3115a2_set_ready_mode(

&mpl3115a2,

MPL3115A2_READY_MODE_POLLING );

mpl3115a2_set_mode(

&mpl3115a2,

MPL3115A2_MODE_ALTIMETER、

MPL3115A2_OSR_128 );

mpl3115a2_set_pt(

&mpl3115a2,

MPL3115A2_PT_DREM |

MPL3115A2_PT_PDEFE |

MPL3115A2_PT_TDEFE );

mpl3115a2_set_pwrmode( &mpl3115a2, MPL3115A2_PWRMODE_ACTIVE );

//

// ...

//

(1)の間 {

//

// ...

//

dev_res = mpl3115a2_update( &mpl3115a2 );

dev_res = mpl3115a2_get_h( &mpl3115a2, &data->alt, NULL );

dev_res = mpl3115a2_get_t( &mpl3115a2, &data->temp, &data->temp_l );

dev_res = mpl3115a2_get_p( &mpl3115a2, &data->ph, &data->pl );

//

// ...

//

// ('mode_change' のタイマーカウンタ値の増分)

if ( mode_change >= 50 ) {

if ( mpl3115a2.mode == MPL3115A2_MODE_ALTIMETER ) {

mpl3115a2_set_pwrmode( &mpl3115a2, MPL3115A2_PWRMODE_STANDBY );

mpl3115a2_set_mode( &mpl3115a2, MPL3115A2_MODE_BAROMETER, MPL3115A2_OSR_128 );

mpl3115a2_set_pwrmode( &mpl3115a2, MPL3115A2_PWRMODE_ACTIVE );

        }

それ以外 {

mpl3115a2_set_pwrmode( &mpl3115a2, MPL3115A2_PWRMODE_STANDBY );

mpl3115a2_set_mode( &mpl3115a2, MPL3115A2_MODE_ALTIMETER, MPL3115A2_OSR_128 );

mpl3115a2_set_pwrmode( &mpl3115a2, MPL3115A2_PWRMODE_ACTIVE );

        }

      

モード変更 = 0;

    }

//

// ...

//

// そして 1 - 2 秒でスリープします...

//

//...

//失敗後に復元

#MPL3115A2_DEBUGの場合

if ( mpl3115a2_get_fail_count( &mpl3115a2 ) > 11 ) {

mpl3115a2_reset(&mpl3115a2);

mpl3115a2_set_pt(

&mpl3115a2,

MPL3115A2_PT_DREM |

MPL3115A2_PT_PDEFE |

MPL3115A2_PT_TDEFE );

mpl3115a2_set_pwrmode( &mpl3115a2, MPL3115A2_PWRMODE_ACTIVE );

mpl3115a2_fail_count_clear(&mpl3115a2);

    }

#endif

}

Re: MPL3115A2 fail<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

こんにちは、アレクサンダー。

質問に答えられるか分かりませんが、モードを切り替える前に MPL3115A2 をスタンバイ モードにしましたか?それは問題になるかもしれません。

Capture.PNG

コードを共有していただけますか?設定を確認したいと思います。

よろしくお願いします。

アンソニー

Tags (1)
No ratings
Version history
Last update:
‎02-04-2026 07:27 AM
Updated by: