MMA8451を使用します。割り込みが発生すると、ソース レジスタから正しいデータを読み取りますが、割り込みは 1.5 秒間クリアされません。
1.5 秒のタイムフレームは自動的に発生し、割り込みソース レジスタの読み取りに関係なくクリアされます。
私は x パルス イベントのみを有効にし、イベントが発生したことと、それが正しい極性の X パルスであったことを正しく読み取りました。割り込みが最終的に消えると、パルス ソース レジスタにはイベント情報がないことが正確に表示されます。
また、同じセットアップのツールボックスをセットアップするデモ ボードも調べました。ツールボックス デモのパルス ソース レジスタ (ボードと同じアドレスとデータ) を読み取ると、割り込みがクリアされることがわかります。
ソース レジスタの読み取りによる割り込みのクリアを有効にするために設定する必要があるものはありますか?
ありがとうございます
Dave
こんにちは、デイブ。
はい、以下に示すように、INT_SOURCE レジスタ (0x0C) の SRC_PULSE ビットをクリアし、PULSE_SRC レジスタ (0x22) の読み取りによって割り込みをデアサートするには、PULSE_CFG レジスタ (0x21) の ELE ビット (ラッチの有効化) を設定する必要があります。
お役に立てれば幸いです。
よろしくお願いいたします。
トーマス
追伸: 私の回答が質問の解決に役立った場合は、「正解」とマークしてください。ありがとう。
こんにちは、デイブ。
私の理解が正しければ (違っていたら訂正してください)、ボードとデモボードでまったく同じ設定 (レジスタ構成) を使用しているのですか?ハードウェアのセットアップが異なりますか?
コードサンプル、ハードウェア回路図、その他の情報を共有していただけますか?
それは本当に奇妙です。1 つのCASEでのみ機能しますが、わずかな違いがある可能性があります... それを捕まえましょう。
ありがとうございます
アンソニー