2303848_ja-JP

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

2303848_ja-JP

2303848_ja-JP

FLXIO SENT IP ドライバー

こんにちは、

4 つの SENT チャネルを設定し、添付ファイルに示すようにチャネルを割り当てました。SENT RX および DMA 転送用に Timer0、1、2、3 が構成されることを期待しています。タイマー 5、6、7、8 は SPCO 用に設定されています。SPCO で SENT フレームが表示されています。タイマー比較フラグのビット 0 と 1 が設定され、DMA 転送が開始されてフラグがクリアされることが予想されます。S32K388 コントローラーを使用しています。

参考までに - ソフトウェアは現在 2 つの SENT のみを使用しています。つまり、SPCO はチャネル 0 と 1 に対してのみ送信されます。

1 つの観察結果は、TIMERSDEN レジスタが 0x0C の値を示していることです。4 つの SENT がすべて構成されている場合、0x0F の値が表示されるのではないでしょうか。また、2 つの SENT のみが使用されている場合、このレジスタには 2 つのビット セットのみが表示されるのでしょうか?2 ビットだけなら、ビット 0 と 1 はタイマー 0 ビットとタイマー 1 ビットではないでしょうか?TIMERSDEN レジスタへのタイマー マッピングに不一致があると思われます。

構成の詳細とソフトウェア バージョンについては、添付のスクリーン ショットをご覧ください。

ビルドバージョン: S32K3_RTD_6_0_0_D2506_ASR_REL_4_7_REV_0000_20250610

* プロジェクト: RTD AUTOSAR 4.7
* プラットフォーム: CORTEXM
* 周辺機器: FLEXIO_SENT_IP

Re: FLXIO SENT IP driver

こんにちは、

S32DS 内の Sent_Receiver_S32K344 RTD デモ例を使用して構成を模倣しようとしました。
FlexIO チャネル 0、1、2、3 を SENT RX および DMA 転送用に構成し、チャネル 5、6、7、8 を SPC 用に構成することを選択しました。
Sent_init が呼び出された後、TIMERSDEN=0xF が表示されますが、これはチャネル マッピングと一致しているようです。

直接確認できるように、完全な構成と簡略化されたプロジェクトを共有していただけますか?

BR、ペトル

Re: FLXIO SENT IP driver

私たちは S32K388 コントローラを使用しています。プロジェクト用の添付構成ファイルをご覧ください。フィードバックをお待ちしています。

Re: FLXIO SENT IP driver

こんにちは、

最新の構成を添付します。

Re: FLXIO SENT IP driver

こんにちは、

私は EB Tresos をあまり使用していないため、SW チームに設定ファイルの確認を依頼しました。
SW エンジニアの返信 (コールバックの使用法を示す) を直接転送しましたが、ここに掲載するのを忘れました。それでも解決しない場合はお知らせください。再度質問させていただきます。

ありがとうございます

ペトル

Re: FLXIO SENT IP driver

こんにちは@annappa

通話中に話し合ったように、最新の構成とコードの変更をアップロードしていただけますか?

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

Re: FLXIO SENT IP driver

こんにちは、

チャネル 0 Flexio_Sent_Ip_DmaTimerValue_0_0配列に割り当てられた DMA バッファの値は12です。データプロセッシング中に、SPC を含むデータの数を計算しています (Func: Flexio_Sent_Ip_DmaHandler行: NumberOfData = レシーバ->ChnlCfg[ChannelId].DmaBufferDepth * (レシーバ->ChnlCfg[ChannelId].NibbleCnt + 3U + (uint8)((レシーバ->ChnlCfg[ChannelId].SpcMode == FALSE) ? 0U : 1U));生成されたバッファー配列は12ではなく14になる必要があります。また、Ch0 の DMA バッファー値が Ch1 バッファーにオーバーフローしていることがわかります。

以下は説明が添付されたスクリーンショットです。

DMA_BufferSize12_WithOverFlow : DMA バッファ サイズ 12 では、データは Ch1 バッファにオーバーフローします。

DMA_BufferSize14_WithOutOverFlow : DMA バッファ サイズ 14 では、Ch1 へのデータのオーバーフローは発生しません。

Buffer_comparison_Srouce_Code : Flexio_Sent_Ip_Cfg.cファイルでバッファ サイズを手動で 14 に編集した後のコード比較。

よろしくお願いします。

Re: FLXIO SENT IP driver

ありがとう@annappa

また、最新の構成を共有していただけますか?


よろしくお願いします!

Re: FLXIO SENT IP driverこんにちは、アナッパ
構成の更新をありがとうございます。DMA の問題については既に RTD チームに報告しており、チームはこの問題についてさらに調査中ですが、FlexIO ISR は有効になっていますが、DMA ISR は有効になっていないことがわかりました。

ドライバーでは、DMA の DMA 割り込みを使用して処理することが推奨されています。

DMA バッファについては、RTD チームからフィードバックが得られ次第、更新しますので、よろしくお願いいたします。
Re: FLXIO SENT IP driver

こんにちは@annappa


SENT 一時停止パルスを有効に変更してみませんか?

 

2026-03-03_11-26-19.png2026-03-03_11-26-19.png2026-03-03_11-26-19.png

ありがとう。よろしく。

アクセル


Re: FLXIO SENT IP driverまた、DMAバッファに関するアップデートも必要です。Re: FLXIO SENT IP driver

こんにちは、アクセルさん。

MCLでDMA論理チャネルとFlexioコールバック関数を設定しました。添付のスクリーンショット(DMA_Channel_config)をご覧ください。また、SENT処理タイプはDMAに設定されています。添付のスクリーンショット(SENT_DMA_Process)をご覧ください。

DMA割り込みをDMAで処理するためにドライバがどのように使用するのか教えてください。


よろしくお願いします。

アンナッパ

Re: FLXIO SENT IP driver

こんにちは、アンナパさん。数週間前に私が投稿した「一時停止」チェックボックスは試してみましたか?


また、SENTからのプロセッシングは通知を通じて行われます。

Screenshot 2026-03-18 095735.pngScreenshot 2026-03-18 095735.pngScreenshot 2026-03-18 095735.png

ポーズパルスを有効にすることでDMAバッファの問題が解決するか確認してください(バッファの要素数が12から14に増加します)。


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

アクセル

Re: FLXIO SENT IP driver

こんにちは、アクセルさん。

ポーズパルスを有効にすると、パルスバッファのサイズが増加する可能性がありますが、この設定はセンサの設定と一致しません。センサの設定では、ポーズパルスは無効になっています。一時停止なしのパルスアレイは、バッファサイズ14で生成される必要があります。


よろしくお願いします。

アンナッパ



Re: FLXIO SENT IP driver

こんにちは、アクセルさん。
この件に関して何か最新情報はありますか?
これはドライバの不具合でしょうか?

よろしくお願いいたします
ラフル

Re: FLXIO SENT IP driver

こんにちは、

ドライバーの変更が必要であることは確認されています。Jira チケットは次のとおりです: [SRTDCCOM-3401] [SENT]SPC モード使用時に Dma バッファがオーバーフローします - NXP JIRA

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

ジョン

标记 (1)
无评分
版本历史
最后更新:
1 周之前
更新人: