各フェーズには、PHASE_STATUS フラグのビットマスクを含むステータスフィールド (gMetrologyWorkingData.phases[0].status) があります。
次のリストに、metrology_defines.h ファイルで定義されている便利なフラグ値を示します。
- PHASE_STATUS_NEW_LOG (0x0001) – バックグラウンドで測定ウィンドウが完了しましたが、フォアグラウンドではまだ測定を処理していません。
- PHASE_STATUS_V_OVERRANGE (0x0010) – 電圧 ADC 入力が飽和しました (クリッピングを検出)。
- PHASE_STATUS_I_OVERRANGE (0x0020) – 電流 ADC 入力が飽和しました。
- PHASE_STATUS_ZERO_CROSSING_MISSED (0x4000) – 想定されたゼロ交差が有効なウィンドウ内で発生しませんでした (範囲外の周波数または信号の喪失)。
フラグがセットされているかどうかを確認するには、ステータス フィールドを 16 進数形式で表示するか、ビット単位の AND 式を使用します。ゼロ交差が検出されなかった場合、gMetrologyWorkingData.phases[0].status と 0x4000 はゼロ以外になります。
注: 停止せずに真のリアルタイム監視を実現するには、CCS 連続リフレッシュ モードを有効にします (リアルタイム メモリ アクセス機能を備えた XDS デバッグ プローブが必要)。連続リフレッシュ モードを有効にするには:
- 「Expressions」ウィンドウで右選択し、「Continuous Refresh」、「Enable」の順に選択します。
- これにより、CPU が動作を継続している間、ターゲット メモリが定期的にポーリングされます。
- これにより、バス トラフィックが増加し、リアルタイムのパフォーマンスに影響を与えるおそれがあります。したがって、このモードは限定的に使用してください。