2147650_ja-JP

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

2147650_ja-JP

2147650_ja-JP

MPC5744P & AUTOSAR (MPC574XP_MCAL4_0_RTM_2_0_2)

こんにちは専門家の皆様

AUTOSAR MCAL パッケージ MPC574XP_MCAL4_0_RTM_2_0_2 をインストールしましたが、MPC5744P では動作しません。問題を切り分けるために、main() 内のすべてのアプリケーション コードをコメント アウトし、最小限のテスト CASE に置き換えました。

BoardInit(); GPIOInit(); CAInit();

このテスト コード (レジスタ値がハードコードされ、レジスタ アドレスのみが初期化されている) は信頼されており、複数の MPC5744P S32 プロジェクトで動作しています。ただし、AUTOSAR プロジェクトでは、デバッガーはレジスタが正しく設定されていることを確認しますが、CAN ペリフェラルは機能しないままになります。

質問:

MPC574XP_MCAL パッケージは、ブランドが共通しているにもかかわらず、MPC5744P と互換性がない可能性がありますか?

他の場所では動作しているにもかかわらず、テスト コードが AUTOSAR コンテキストで失敗する可能性があるのはなぜですか?

AUTOSAR スタートアップ コード (クロックの初期化、MPU 構成、例外処理など) が MCAL またはハードウェアと競合する可能性がありますか?


前もって感謝します。

Re: MPC5744P & Autosar (MPC574XP_MCAL4_0_RTM_2_0_2)

こんにちは、

SW チームからのフィードバックは次のとおりです。

この問題は起動時に発生するようです。何かが間違っています。メモリ領域に Can_ControllerStatuses、キャッシュなどが保存されている可能性があります。このパッケージにはサンプルが添付されているので、それを実行して自分の起動時と比較することができます。

例を実行して自分のコードと比較してください。

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

ピート

Re: MPC5744P & Autosar (MPC574XP_MCAL4_0_RTM_2_0_2)

こんにちは、

Diab バージョンは次のとおりです:

MElGreatly_2-1756717042635.png


Can_FlexCan_InitVariables 関数の Can_ControllerStatuses 値:

MElGreatly_0-1756716576199.png

Can_FlexCan_ChangeBaudrate関数のCan_ControllerStatuses値:

MElGreatly_1-1756716753480.png

CTRL1値を設定する前のCan_ControllerStatusesの値は同じです

ありがとう


Re: MPC5744P & Autosar (MPC574XP_MCAL4_0_RTM_2_0_2)

こんにちは、

SW チームからのフィードバックは次のとおりです。

リリース ノートに従って、このリリースでサポートされている diab バージョンが次のとおりであることを確認してください。

petervlna_0-1756451008573.png

Can_ControllerStatuses を読み取り、以下のようにいくつかの時点でこの構造体内のすべての要素の値を表示できますか。

petervlna_0-1756451160473.png

このようになります:

petervlna_1-1756451172867.png

RM が述べたように、CTRL1 の一部のビットはフリーズ モードで CAN 書き込む。

petervlna_2-1756451184079.png

したがって、CTRL1の値を設定する前に、CANコントローラがフリーズモードになっていることを確認してください。これはレジスタMCRを通じて確認できます。

petervlna_3-1756451193728.png

この設定とチェックは関数Can_FlexCan_ChangeBaudrate()で行われます。

petervlna_4-1756451205056.png

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

ピーター

Re: MPC5744P & Autosar (MPC574XP_MCAL4_0_RTM_2_0_2)

こんにちは、

私は CAN ドライバに精通していないため、あなたの問題を SW チームに転送しました。

回答が得られ次第、お知らせします。

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

ピーター

Re: MPC5744P & Autosar (MPC574XP_MCAL4_0_RTM_2_0_2)

直接書き込みを試みたところ、うまくいきました。問題は、「Can_ControllerStatuses[CAN_MAXCTRL_CONFIGURED]」という構造体のグローバル配列が、個々のFlexCANコントローラの現在のステータス/実行時構成を保持するこの構造体のどのメンバーの直接書き込みにも影響を受けないことに気付きました。

MElGreatly_1-1756345218005.png


Can_Flexcan.cのCan_FlexCan_InitVariables関数すべてのコントローラのすべてのグローバル変数/ステータスを初期化します。

MElGreatly_0-1756344921400.png

このスクリーンショットは、構造体のこのメンバーに 0 を書き込んだ後の 1111 の値を示しています。
なぜこのようなことが起こるのでしょうか?私は diab コンパイラと S32 を使用しています。これは添付のプロジェクトです。何か解決策があれば教えてください。

よろしくお願いします。

Re: MPC5744P & Autosar (MPC574XP_MCAL4_0_RTM_2_0_2)

こんにちは、

CTRL1レジスタへのアクセスには制限はありません。

petervlna_0-1756278769900.png

petervlna_1-1756278799648.png

アセンブリ デバッグにスイッチして、コア上の命令実行をチェックし、レジスタが実際に変更されるかどうかを確認します。デバッガー経由の直接書き込みも試してください。

ここではハードウェアに問題はないと確信しています。

ペリフェラルがクロックされていない状態で書き込みをしようとしているか、またはソフトウェアがレジスタ アドレスへの書き込みを実行していないかのいずれかです。

このペリフェラルにバグはありますか?

すべての問題はエラッタシートに記載されています。しかし、私はその問題が MCU にあるとは思っていません。あなたのSWを疑っています。

デバッガー経由でレジスタに書き込んでみてください。

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

ピーター

Re: MPC5744P & Autosar (MPC574XP_MCAL4_0_RTM_2_0_2)

ピーターさん、ご回答ありがとうございます。

まず、私の開発ボードはhttps://www.nxp.com/design/design-center/development-boards-and-designs/DEVKIT-MPC5744Pです。

以下のパッケージをダウンロードしました: Autosar バージョン 4.0.3

MElGreatly_4-1756184394400.png

2 つ目: CAN0 を使用する CAN タスクをテストする必要がありますが、動作しなかったSO、EB tresos を使用して別の構成ファイルを生成しました。
生成された構成のこの部分を見てください: Can_PBcfg.cファイル:
FlexCanコントローラの構成

MElGreatly_5-1756185281810.png

MElGreatly_8-1756185570117.png

CTRL1レジスタは設定変更の影響を受けなかった。
スクリーンショットのCASE - 例えば -
PSEG1 =2
PSEG2 =2
プロプセグ =5
RJW =2
しかし、CTRL1レジスタの値は1です(CAN.cのCAN_Init関数の戻り後)
MElGreatly_7-1756185457690.png

CAN_FlexCAN_ChangeBaudrate 関数のこの部分の後に記入されるもの - CAN_FlexCAN.c 内- Can_Init 関数で呼び出されます。

MElGreatly_9-1756186502784.png

このペリフェラルにバグはありますか?

これらのパッケージを使用して CAN ペリフェラルを操作するソリューションはありますか?

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

 

 


Re: MPC5744P & Autosar (MPC574XP_MCAL4_0_RTM_2_0_2)

こんにちは、

MPC574XP_MCAL パッケージは、ブランドが共通しているにもかかわらず、MPC5744P と互換性がない可能性がありますか?

いいえ。MPC574xP デバイスで完全に互換性があり、テスト済みです。

petervlna_0-1754556341415.png

petervlna_1-1754556466226.png


AUTOSAR スタートアップ コード (クロックの初期化、MPU 構成、例外処理など) が MCAL またはハードウェアと競合する可能性がありますか?

いいえ。MCAL は AUTOSAR に準拠しています。(AUTOSAR 標準に従って開発されています)。

他の場所では動作しているにもかかわらず、テスト コードが AUTOSAR コンテキストで失敗する可能性があるのはなぜですか?

わからない。サンプルコードはインポート後すぐに動作するはずです。

petervlna_2-1754556586042.png

MPC574XP_MCAL パッケージは、ブランドが共通しているにもかかわらず、MPC5744P と互換性がない可能性がありますか?

常に SW パッケージのリリース ノートを参照してください。

petervlna_3-1754556659044.png

したがって、おそらく autosar 4.0 以外のバージョンをお持ちでしょう。

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

ピーター



Tags (1)
No ratings
Version history
Last update:
‎11-21-2025 06:12 PM
Updated by: