こんにちは、
現在、MBDT 1.8上でXS32K3X8EVB-Q289を使用しており、提供されているADC-DMAのサンプルを試しています。
私が抱えている問題は、以前のチケットで述べたものと同じです。
アプリケーションの動作をFreemaster上で確認したところ、ADC_POT0の値はADCによって一度だけ更新されることがわかりました。ポテンショメータの位置を変更してボードをリセットすると、ADC_POT0の新しい値が設定されますが、それ以上更新されません。
S32DSでデバッグモードに入り、Adc_StartGroupConversion呼び出しにブレークポイントを設定すると、式タブでADC_POT0の値がポテンショメータの位置に応じて変化することが確認できます。
プログラムをブレークポイントなしで実行すると、freemaster の ADC_POT0 の値が更新されません。
この動作は、何らかの理由で ADC_POT0 の値を更新できない freemaster に関連していると考えましたが、ハードウェア割り込みコールバックの最初の行にブレークポイントを設定しても、デバッグモードで Resume を実行しても ADC_POT0 の値が更新されません。
また、ADC値が10000より大きい場合にRGBLED0_BLUEを反転させるという単純なIf文をSimulinkに追加しようとしました。これは、想定されるフリーマスターの問題を回避するためのものですが、この場合はどちらも機能しませんでした...つまり、フリーマスターが問題の原因ではありません。
アイデアが尽きてしまいました。どなたかこの問題について助けていただけませんか?
更新済みのプロジェクトファイルを添付します。
ありがとうございます
サイモン