1604562_ja-JP

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

1604562_ja-JP

1604562_ja-JP

S32K148 FlexCANモジュールのリモートフレーム受信

リモートフレーム送受信機能を検証したいのですが、リモートフレームを受信できません。データフレームを送受信するのは正常です。コード内の赤くマークされた部分を変更して、リモート フレームを送受信できますか?CAN リモート フレーム受信用のコードを提供できます。

can_buff_config_t バフ構成 = {
.enableFD= 偽、
.enableBRS= 偽、
.fdパディング= 0U、
.idタイプ= CAN_MSG_ID_STD、
.isRemote=
};

/* インデックス RX_MAILBOX で RX バッファを構成する */
CAN_ConfigRxBuff(&can_pal1_instance, RX_MAILBOX, &buffCfg, RX_MSG_ID);

ながら(1)
{
/* 受信バッファを定義する */
can_message_t recvMsg ;

/* RX_MAILBOX でデータの受信を開始します。*/
CAN_Receive(&can_pal1_instance, RX_MAILBOX, &recvMsg);

/* 前回のFlexCAN受信が完了するまで待機します */
CAN_GetTransferStatus(&can_pal1_instance, RX_MAILBOX) == STATUS_SUCCESS が継続します。

/* 受信したメッセージIDとペイロードを確認します */
if( recvMsg.id == RX_MSG_ID ) //
{
/* 出力値 LED1 を切り替える */
PINS_DRV_TogglePins(GPIO_PORT、(1 << LED0));

}

Re: Remote frame receiving of the S32K148 FlexCAN moduleこんにちは、
CTRL2[RRS]を使用する場合、どのように設定すればよいですか?
すべての ID のリモート フレームを受信できるかどうかをテストしています。SO、このように構成し、CPU に対応する操作を実行させる必要があります。
CTRL2[RRS]の使用例を教えていただけますか?
ありがとう。
サラン

Re: Remote frame receiving of the S32K148 FlexCAN module

こんにちは、

ご返信ありがとうございます。

Re: Remote frame receiving of the S32K148 FlexCAN module

こんにちは、

デフォルトでは、リモート要求フレームはどの MB にも保存されません。これはCTRL2[RRS]によって決定されます。55.3.10.4章を読む詳細についてはリモート フレームを参照してください。

FLEXCAN_DRV_ConfigRemoteResponseMb 関数を使用して、リモート要求応答用に MB を準備できます。これは一度だけ呼び出す必要があり、毎回 MB を構成する必要はありません。設定された ID を持つリモート要求フレームが受信されると、メッセージ バッファーは TX になり、リモート応答を送信し、RX 1 にスイッチしてリモート要求フレームを再度認識し、応答フレームを送信します。

BR、ペトル

标记 (1)
无评分
版本历史
最后更新:
‎11-21-2025 02:13 AM
更新人: