lpi2cを使用している際に、プログラムがデバッグモードで停止してしまうという状況に遭遇しました。しかし、PE接続を切断してプログラムを再起動したところ、正常に動作しました。プログラムが実行中にデバッグモードで停止した。
する
ヤージュ
/* マスターがデータを送信する */
Lpi2c_Ip_MasterSend(Instance);
ElapsedTicks += OsIf_GetElapsed(&CurrentTicks, I2C_TIMEOUT_TYPE);
}while ((Lpi2c_Ip_MasterGetTransferStatus(Instance, NULL_PTR) == LPI2C_IP_BUSY_STATUS) && (ElapsedTicks < TimeoutTicks));
この問題を解決する方法はありますか?
こんにちは@zhangyu5454
I2Cデバッグ有効化オプションが選択されているか確認してもらえますか?
MCR[DBGEN] = 1のとき、LPI2CモジュールはMCUのデバッグ中も動作を続けます。
MCR[DBGEN] = 0の場合、アプリケーションをプログラムし、デバッガを接続せずに通常通りボードを動作させた後、LPI2Cは期待通りに動作します。
BR、VaneB
ご返信ありがとうございます。私は.mexを使ってi2cの設定をしていますが、どうやってMCR[DBGEN] =1をコントロールするように設定すればいいですか?
こんにちは@zhangyu5454
参考までに、以下の画像を掲載しました。
VaneB_0-1786396779346.png
こんにちは@zhangyu5454
このオプションは最新のRTDリリースに追加され、ペリフェラルツールから直接設定できるようになりました。
以前のRTDバージョンを使用しているため、アプリケーションコード内でMCR[DBGEN]を設定するのが推奨されます。
zhangyu5454_0-1786418199524.png
ページの表示が異なっていることに気づきました。このオプションが見つかりませんでした。私のバージョンはRTD5.0です。