Multi Source Translation Content

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Multi Source Translation Content

ディスカッション

ソート順:
S32K311引导加载程序移植 我目前正在将一个可运行的 Bootloader 项目从 S32K312 移植到 S32K311。我正在使用 S32 Design Studio、NXP RTD 4.9.0 和 GCC 编译器。我遇到了两个与矢量表和复位处理程序相关的严重问题,这些问题似乎是 S32K311 / RTD 4.9 环境特有的。 问题 1:立即使用调试器 RESET 故障 启动 PEMicro 调试器时,内核在 RESET 脚本执行期间立即崩溃,甚至在到达 main() 之前就崩溃了。 重置脚本(……)已完成。 UsageFault:执行指令时使用了无效的 EPSR.T 或 EPSR.IT 字段。 硬故障:故障已升级为硬故障。 我们检查了 startup_cm7.s和 Vector_Table.s。我们注意到 Reset_Handler 缺少 .type。Reset_Handler 的 %function 指令导致 ELF 入口点为偶数地址(例如,0x00402420 而不是 0x00402421),这自然会导致 Cortex-M7 上出现 ARM 模式 UsageFault。 即使在修复了 .type 指令并确保向量表已为 Thumb 模式设置了 LSB 之后,PEMicro 调试器仍然偶尔会在复位后立即抛出此 UsageFault。 问题 2:中断跳转到 0x0(未初始化的 RAM 向量表)当我们成功绕过复位问题并到达 main() 时,一旦硬件中断(如 FlexCAN 或 SWT)触发,系统就会崩溃。PC跳转到0x00000000。 在检查内存时,我们发现 __interrupts_ram_start (0x20000000) 处的 RAM 向量表完全未初始化(填充为零)。我们发现: startup_cm7.s在初始化结束时将 VTOR 设置为 __RAM_INTERRUPT_START,但从未从 ROM 复制该表。 IntCtrl_Ip_Init(&IntCtrlConfig_0)(由平台元器件生成)在启用 INT_CTRL_IP_ENABLE_VTOR_CONFIG 时设置 VTOR,但它也不会将默认向量表从闪存复制到 RAM。 为了解决这个问题,我们不得不在 main.c 中编写一个手动 for 循环,将向量表从 __interrupts_init_start 物理复制到 __interrupts_ram_start,并在调用 IntCtrl_Ip_InstallHandler() 之前更新 S32_SCB->VTOR。 基础代码来自统一引导加载程序演示 有人知道哪里有移植并发布了适用于带 CAN 总线的 S32K311 的引导加载程序吗? Re: S32K311 bootloader porting 你好@ujwal12 对于 Cortex-M7,向量表中的复位处理程序条目必须通过使用 LSB 已设置的地址来指示 Thumb 模式。如果 Reset_Handler 符号没有正确生成为函数符号,链接器可能会在向量表中放置偶数地址,这可能会导致启动期间出现 UsageFault。因此,我们通常不建议修改 startup_cm7.s 文件。或 Vector_Table.s。 S32K3 RTD 采用基于 RAM 的可重定位中断向量表设计。启动时,向量表从闪存复制到 RAM,并且 VTOR 更新为指向基于 RAM 的表。 关于 S32K311 引导加载程序示例的可用性,目前还没有专门针对 S32K311 的官方引导加载程序示例。最接近的参考资料是Example S32K312 Bootloader to Application Jump DS3.5 RTD300和您已经在使用的 Unified Bootloader Demo。 另外请注意,统一引导加载程序是 NXP 的非官方演示程序,仅发布在社区论坛上,因此 NXP 技术支持不提供任何支持。 BR,VaneB
記事全体を表示
S32K3で異なるリセットイベントを認証のためにトリガーする方法 検証目的で評価ボード上の各リセットソースをトリガーする推奨方法はありますか? 例: デバッグ宛先 SW_DEST HSE_SNVS_RST ...... レジスタDESとFESに対応するすべてのビットを知りたい Re: How to trigger different reset events on S32K3 for verification それは少し難しい質問ですね。これらのリセットイベントに直接注入する仕組みはなく、FCCU部分をカバーするSAF/eMCEMのAPIを除き、提供できる専用のテストコードやスクリプトもありません。とはいえ、可能な選択肢を調べたところ、以下は実際にうまくいくはずのスケッチされた方法です。 S32K3のリセットイベントは、検証のためにトリガーされる方法によって2つのカテゴリーに分かれます。ソフトウェアインジェクト可能とハードウェアのみで、DESとFESの2つのMC_RGMステータスレジスタに分かれています。 ソフトウェアインジェクタブルリセットはコードから直接トリガーできます: 直接SWコマンド — MC_ME.MODE_CONFにDEST_RSTまたはFUNC_RSTを書き込み、MODE_UPDをトリガーします。それぞれDES[SW_DEST]またはFES[SW_FUNC]にマッピングされます。 ウォッチドッグの有効期限切れ — SWT サービス ループを停止して、タイムアウトごとに機能リセットをトリガーし、FREC をインクリメントします。FREC が FRET に達すると、次のリセットは破壊的になり、DES[MC_RGM_FRE] が設定されます。 FCCUフォールト注入 — eMcem_InjectFault()またはFNCFCフェイクフォールトレジスタを使用して、NCFチャネル構成に応じて機能的または破壊的反応をトリガーします。設定されたNCFセットに含まれていないフォールトを注入すると、FOSUの破壊的リセットパスが特定にトリガーされます CMUしきい値操作 — CMU_FC_x.LTCR/HTCRを実際の動作周波数外に書き込むことで、CMU周波数障害リセットが発生し、反応タイプ(機能的または破壊的)はDCM構成によって制御されます。 ハードウェアのみのリセットは物理的な刺激を必要とし、ソフトウェアによる注入経路はありません: STCU_URFでは、ライブLBISTまたはMBISTシーケンス中にPLLのロック喪失が発生する必要がある。 HSE_TMPR_RSTとHSE_SNVS_RSTはセキュリティ改ざんイベントであり、暗号資料を保護するため、意図的にソフトウェアを通じて注入できないものです FXOSC_FAIL、PLL_LOL、およびLVDフラグは、ハードウェアレベルで水晶発振器、PLL分周器、または電源レールを乱すことを必要とします。 Re: How to trigger different reset events on S32K3 for verification こんにちは、デイビッド: わかりました。ありがとう! 徹底的な調査を実施します。
記事全体を表示
5V or 3.3V I/O supply for S32k3 Hello everyone, I'm currently designing an automotive ECU based on the NXP S32K3 family and I'm evaluating the best configuration for the MCU I/O supply domains. As I understand, the device allows different supply options for I/O Domain A and Domain B, such as: Domain A = 5 V, Domain B = 5 V Domain A = 3.3 V, Domain B = 3.3 V Domain A = 5 V, Domain B = 3.3 V I'm trying to understand the main design trade-offs and selection criteria for each configuration. Specifically: What are the key advantages and disadvantages of using 5 V versus 3.3 V on the I/O domains? In which automotive applications is a mixed-voltage configuration (5 V / 3.3 V) typically preferred? Are there implications regarding EMC/EMI performance, power consumption, signal integrity, robustness, or interface compatibility that should drive this choice? Does NXP provide any application note, hardware design guideline, or reference document explaining the rationale and recommended use cases for each I/O supply option? I would appreciate any design recommendations or lessons learned from previous S32K3 projects. Thank you! Re: 5V or 3.3V I/O supply for S32k3 Hello @DavidSilva, Rather than advantages and disadvantages, this mainly depends on your application's requirements. You can configure VDD_HV_A & VDD_HV_B domains depending on your system's voltage level, as well as your device's interface modules. This means that trade-offs and preferences are based solely on your design. The biggest impacts would be: VREFH should always be equal to or less than VDD_HV_A +0.1. Any positive differential voltage between VREFH and VDD_HV_A i.e., VDD_HV_A < VREFH <= VDD_HV_A + 0.1V) is for RF-AC only. LPCMP0 channels must only be selected/enabled when VDD_HV_A >= VDD_HV_B. These channels must be disabled when VDD_HV_A goes below VDD_HV_B. The internal team has also shared that we do not provide current consumption values for 3.3V specifically, as this is essentially the same as 5V, you can use 5V measurements. We also do not provide an application note specifically discussing voltage domain configurations, however, you can refer to the HW Design Guidelines application note, which goes over all of the requirements and recommendations for S32K3 (including voltage domains). Best regards, Julián
記事全体を表示
セーフティ機構 SM1。INTERCONNECT_EDC _GASKET SM1を有効にする必要があります。INTERCONNECT_EDC_GASKET私のプロジェクトのためのセーフティ機構です。コードを生成するためにAUTOSAR RTD 3.0.0とS32 Design Studio(S32DS)ツールを使っています。 以下の点を明確にしていただけますか? 1. S32DS内にこのセーフティ機構を有効にするオプションはありますか?もしあれば、どうやって有効にするか教えていただけますか? 2. S32DSでこのオプションが利用できない場合、有効にするための推奨される方法は何ですか?可能であれば、サンプルコードを共有してください。 Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET こんにちは、@sandeepSingh18606 さん。 S32K3XXはセーフティ ペリフェラル ドライバを使いましょう。 https://www.nxp.com/docs/en/product-brief/S32K-SPDPB.pdf ドライバはS32K3xx Standard SWパッケージに含まれています: https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K3-STDSW-D S32K3 Safety Peripheral ドライバ バージョン 1.0.3 は RTD 3.0.0 と互換性があります。 eMCEMドライバでは、利用可能なすべての故障を有効化できます。 danielmartynek_1-1789975567252.png SPDパッケージにはEB Tresosのデモが1枚含まれています。 S32DS には、利用可能な SPD の例が 1 つだけあります (SPD 1.0.6、RTD 7.0.0): https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K344-BIST-eMCEM-SPD106-v2-0-S32DS365-RTD700/ta-p/2373113 よろしくお願いいたします。 ダニエル Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET SPDは無料ではなく、パッケージ購入が必要だと思います。 SM1メカニズムはNXPによって実装されているため、ユーザーはこれを有効にするだけで済みます。しかし、NXP RTDはこの機能をサポートしていません。 SPDパッケージがない場合、推奨されるアプローチは何でしょうか? Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET こんにちは、@sandeepSingh18606 さん。 セーフティ ペリフェラル ドライバ (SPD) は無料で利用可能で、RTDの拡張版です。一方、Safety Software Framework(SAF)は有料のプレミアムソフトウェアです。 以下のドキュメントを参照してください: https://www.nxp.com/design/design-center/software/functional-safety-software/s32-safety-software-framework-saf-and-safety-peripheral-drivers-spd:SAF よろしくお願いいたします。 ダニエル Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET こんにちは、@sandeepSingh18606 さん。 リストに載っていないのに、どうやってインストールしたのですか? まず、お使いのRTDリリースと互換性のあるバージョンが必要です。 SPDのリリースノートによると: SPD v1.0.3:このSPDバージョンはS32K3リアルタイムドライバーバージョン3.0.0と互換性がありますおよび 3.0.0P07。 SPD v1.0.4:このSPDバージョンはS32K3リアルタイムドライバーバージョン4.0.0およびS32K3リアルタイムドライバーバージョン3.0.0と互換性がありますP07(S32K324_MAPBGA257派生機種向けのTresosバージョン)。 最新バージョンであるv1.0.5およびv1.0.6は、より新しいRTDリリースとのみ互換性があります。 例えば、更新サイトのZIPパッケージをダウンロードしてください:S32K3_SPD_1.0.3_DS_updatesite.zip その後、S32 Design Studioの拡張機能の下で更新サイトを追加します。 ありがとうございました。 BR、ダニエル Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET それは「前の項目」タブにありますが、あなたのアカウントではそのタブが非アクティブになっているようです。 管理を担当しているチームに確認してみます。 できるだけ早くご連絡いたします。 よろしくお願いいたします。 ダニエル Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET こんにちは、ダニエルさん。 現在、RTS 3.0.0を使用しています。ご提案いただいたように、SPD v1.0.3が必要なのですが、NXPのウェブサイトでこのバージョンを見つけることができません。 どこで見つけられるか、直接リンクを教えていただけませんか? Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET こんにちは、ダニエルさん。 確認ありがとうございます。 S32 Design StudioでSPDドライバーをインストールしようとしましたが、インストール後もS32DSの拡張機能やアップデートで見つかりません。 以下は、現在私のシステムにインストールされているRTDのスクリーンショットです。 Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET こんにちは、サンディープさん。 今すぐアカウントをご確認ください。 お知らせ下さい。 ありがとうございます。 Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET こんにちは、ダニエルさん。 今は以前のバージョンにアクセスできるようになりました。サポートありがとうございます。
記事全体を表示
S32K3XXがローカルIPアドレスを自動的に作成できない問題について。 スクリーンショット 2026-09-18 100140.png スクリーンショット 2026-09-18 100315.png スクリーンショット 2026-09-18 100756.png こんにちは: S32DSで独自のローカルIPアドレスを作成し、LWIPプロトコルスタックでローカルIPアドレスを無効にしましたが、上の右下の画像に示すように、シングルステップデバッグ中に接続確立に失敗するエラーが発生します。何が問題なのでしょうか?設定が不足しているのでしょうか?ローカルIPアドレスの作成は許可されておらず、プロトコルスタックで設定する必要があるということでしょうか? お忙しい中、お返事いただき、改めてありがとうございました! Re: 关于S32K3XX无法自己建立本地IP地址的问题 こんにちは、@sunshine88 さん。 IPv4アドレス自体がこのエラーの原因ではありません。lwIPでは、 netif_add() を介して静的IPv4アドレスを直接提供できます。 デバッガのスクリーンショットによると、 netif_add() はネットワークインターフェースの初期化コールバック ETHIF_INIT が ERR_OK 返さないため、 NULL を返します。したがって、エラーはイーサネットインターフェースまたはその下位ドライバの初期化時に発生し、インターフェースがlwIPに追加される前に発生します。 TCP/IPスタック構成のスクリーンショットでは、 「ifaceを有効にする」オプションが選択されていません。ネットワークインターフェースを有効にし、必要な静的IPv4アドレス、サブネットマスク、ゲートウェイを設定してください。次に、設定を再生成し、対応するS32K3 lwIPの例にある初期化シーケンスを使用します。 アプリケーションで住所を割り当てたい場合は、まず成功 netif_add() 確認してください。 これは初期化の失敗を検出しやすくするだけのものであることにご注意ください。GMAC/イーサネットの基礎設定を修正するわけではありません。 まずは、ネットワーク初期化を変更しずに、あなたのS32K3デバイスとソフトウェアパッケージのバージョンに合わせて元のlwIP例をビルドし実行することをお勧めします。元の例が正常に動作したら、静的IPv4アドレスのみを変更して結果を確認してください。 初期化がそれでも失敗する場合は、以下の情報も提供してください。 正確なS32K3デバイスと評価ボード S32 Design Studio版 RTDおよびTCP/IPスタックパッケージのバージョン ETHIF_INIT の定義と、その関数が返すエラー 変更されていないlwIPの例が同じハードウェアで動作するかどうか 同じ質問が3つの別々のコミュニティ投稿で寄せられたようです。トラブルシューティング情報を一箇所にまとめるため、議論はどちらか一方のフォーラムのみで行ってください。 よろしくお願いいたします。 パベル
記事全体を表示
MAYA-W166 WITH IW416 HOW TO BT_WAKE_HOST BT_WAKE_HOSTをトリガにしてOSレジウムする方法を教えてください Re: MAYA-W166 WITH IW416 HOW TO BT_WAKE_HOST こんにちは、 どのOSとホストを使っているのか教えていただけますか? AN12849をご覧ください。 よろしくお願いいたします。 ダニエル。
記事全体を表示
S32K311ブートローダーの移植 現在、S32K312で動作するブートローダープロジェクトをS32K311に移植しています。私はS32 Design StudioとNXP RTD 4.9.0、GCCコンパイラを併用しています。S32K311 / RTD 4.9環境に特有の、ベクターテーブルとリセットハンドラに関連する2つの深刻な問題に遭遇しています。 問題 1: デバッガーのリセット時にすぐに UsageFault が発生します。PEMicro デバッガーを起動すると、main() に到達する前にリセット スクリプト中にコアがすぐにクラッシュします。 スクリプトのリセット(…)が完了しました。 UsageFault: 無効な EPSR.T または EPSR.IT フィールドで実行された命令。 ハードフォールト:障害がハードフォールトにエスカレートしました。 startup_cm7.sを確認しました。および Vector_Table.s。Reset_Handler に .type が欠落していることに気づきましたReset_Handler、%function指令が出され、ELFのエントリポイントが偶数アドレス(例:0x00402421ではなく0x00402420)となり、自然とCortex-M7でARMモードのUsageFaultが発生します。 .type ディレクティブを修正し、ベクター テーブルで LSB が Thumb モードに設定されていることを確認した後でも、PEMicro デバッガーはリセット直後にこの UsageFault を時折スローします。 問題 2: 割り込みが 0x0 (初期化されていない RAM ベクタ テーブル) にジャンプする リセットの問題を正常に回避して main() に到達すると、ハードウェア割り込み (FlexCAN や SWT など) がトリガーされた瞬間にシステムがクラッシュします。PCは0x00000000にジャンプします。 メモリを調査したところ、__interrupts_ram_start (0x20000000) にある RAM ベクタ テーブルが完全に初期化されていない(ゼロで埋められている)ことがわかりました。私たちは以下のことを発見しました。 startup_cm7.s初期化の最後にはVTORを__RAM_INTERRUPT_STARTに設定しますが、ROMからテーブルをコピーすることはありません。 IntCtrl_Ip_Init(&IntCtrlConfig_0)(プラットフォームコンポーネントによって生成)は、INT_CTRL_IP_ENABLE_VTOR_CONFIGが有効であればVTORを設定しますが、デフォルトのベクターテーブルをフラッシュからRAMにコピーしません。 この問題を回避するために、main.c に手動で for ループを記述し、ベクター テーブルを __interrupts_init_start から __interrupts_ram_start に物理的にコピーし、IntCtrl_Ip_InstallHandler() を呼び出す前に S32_SCB->VTOR を更新する必要がありました。 Unified bootloader Demoからベースコードを取得しました CANのS32K311ブートローダーが移植されて投稿された投稿を知っている人はいますか? Re: S32K311 bootloader porting こんにちは、 @ujwal12さん Cortex-M7の場合、ベクターテーブルのリセットハンドラエントリは、LSBが設定されたアドレスを使ってサムモードを示す必要があります。Reset_Handler記号が関数記号として正しく生成されていないと、リンカーがベクトルテーブルに偶数アドレスを配置し、起動時にUsageFaultが発生することがあります。そのため、一般的にはstartup_cm7.sの変更は推奨しません。または Vector_Table.s。 設計上、S32K3 RTDはRAMベースのリロケーション可能な割り込みベクトルテーブルを使用しています。起動時に、ベクターテーブルがフラッシュメモリからRAMにコピーされ、VTORはRAM上のテーブルを指すように更新されます。 S32K311用ブートローダーのサンプルコードの入手可能性に関してですが、現時点ではS32K311を特に対象とした公式のブートローダーのサンプルコードは存在しません。最も近い参考文献は、 Bootloader to アプリケーション Jump DS3.5 RTD300 S32K312 、すでに使っているUnified Bootloaderデモです。 また、Unified Bootloaderは非公式のNXPデモであり、コミュニティフォーラムでのみ公開されているため、NXPの技術サポートからはサポートされていません。 BR、VaneB
記事全体を表示
USB implementation on m7 core for i.MX 8M Nano processor I need some guideance for implementing usb for i.MX 8M Nano processor m7 core, I used the nxp sdk for it. But the drive is not responding back and the signal from the controller is weak. Re: USB implementation on m7 core for i.MX 8M Nano processor Hello, Unfortunately, there is no driver available for USB in the official i.MX SDK release. It may be possible to port it from other devices for example i.MXRT, but the PHY and USB non-core registers are different, and it will not be straightforward to port but, needs to be implemented in your side. Best regards.
記事全体を表示
MAYA-W166 与 IW416 如何使用 BT_WAKE_HOST 唤醒主机 请问如何使用 BT_WAKE_HOST 触发操作系统注册器? Re: MAYA-W166 WITH IW416 HOW TO BT_WAKE_HOST 您好, 请问您使用的是什么操作系统和主机? 请查看AN12849 。 问候, 丹尼尔。
記事全体を表示
8M Nanoプロセッサ向けのm7コア i.MX USB実装 8M NanoプロセッサのM7コア i.MX USBを実装するための指針が欲しいです。NXP SDKを使いました。しかしドライブは応答せず、コントローラからの信号も弱いです。 Re: USB implementation on m7 core for i.MX 8M Nano processor こんにちは、 残念ながら、公式の i.MX SDKリリースにはUSB用のドライバーは提供されていません。 i.MXRTなどの他のデバイスから移植することは可能かもしれませんが、PHYとUSBの非コアレジスタが異なるため、移植は容易ではなく、お客様側で実装する必要があります。 よろしくお願いいたします。
記事全体を表示
How to trigger different reset events on S32K3 for verification Is there a recommended way to trigger each reset source on the evaluation board for verification purposes? For example: DEBUG_DEST SW_DEST HSE_SNVS_RST ...... I want to know all bits corresponding to the register DES & FES Re: How to trigger different reset events on S32K3 for verification It is a bit tricky question. There is no direct injection mechanism for these reset events, and we do not have any dedicated testing code or scripts we could provide — with the exception of the SAF/eMCEM API covering the FCCU portions. That said, I looked into the possible options and the following are the sketched methods that should work in practice. Reset events on S32K3 fall into two categories based on how they can be triggered for verification — software-injectable and hardware-only — split across the two MC_RGM status registers, DES and FES. Software-injectable resets can be triggered directly from code: Direct SW commands — write MC_ME.MODE_CONF with DEST_RST or FUNC_RST and trigger MODE_UPD, maps to DES[SW_DEST] or FES[SW_FUNC] respectively Watchdog expiry — stop the SWT service loop to trigger a functional reset on each timeout, incrementing FREC; once FREC reaches FRET the next reset escalates to destructive and sets DES[MC_RGM_FRE] FCCU fault injection — use eMcem_InjectFault() or the FNCFC fake fault register to trigger functional or destructive reactions depending on NCF channel configuration; injecting a fault not in the configured NCF set specifically triggers the FOSU destructive reset path CMU threshold manipulation — write CMU_FC_x.LTCR/HTCR outside the actual running frequency to produce a CMU frequency fault reset, with reaction type (functional or destructive) controlled through DCM configuration Hardware-only resets require physical stimulation and have no software injection path: STCU_URF requires a PLL loss-of-lock to occur during a live LBIST or MBIST sequence HSE_TMPR_RST and HSE_SNVS_RST are security tamper events — intentionally not injectable via software as they protect cryptographic material FXOSC_FAIL, PLL_LOL, and the LVD flags require disturbing the crystal, PLL dividers, or supply rails at the hardware level Re: How to trigger different reset events on S32K3 for verification Hi David:         OK. Thank you!         We'll conduct a thorough study.
記事全体を表示
如何触发 S32K3 上的不同复位事件以进行验证 为了验证目的,是否有推荐的方法来触发评估板上的每个复位源? 例如: 调试目标 SW_DEST HSE_SNVS_RST ...... 我想知道与 DES 和 FES 寄存器对应的所有位。 Re: How to trigger different reset events on S32K3 for verification 这是一个有点棘手的问题。对于这些重置事件,没有直接的注入机制,我们也没有任何专用的测试代码或脚本可以提供——除了涵盖 FCCU 部分的 SAF/eMCEM API。也就是说,我研究了各种可能的选择,以下是初步设想的、在实践中应该可行的几种方法。 S32K3 上的复位事件根据其触发验证的方式分为两类——软件注入和仅硬件——分别分布在两个 MC_RGM 状态寄存器 DES 和 FES 上。 软件注入式复位可以直接从代码中触发: 直接软件命令——写入 MC_ME.MODE_CONF,参数为 DEST_RST 或 FUNC_RST,并触发 MODE_UPD,分别映射到 DES[SW_DEST] 或 FES[SW_FUNC]。 看门狗过期 — 停止 SWT 服务循环,在每次超时时触发功能重置,递增 FREC;一旦 FREC 达到 FRET,下一次重置将升级为破坏性重置,并设置 DES[MC_RGM_FRE] FCCU故障注入——使用eMcem_InjectFault()或FNCFC伪故障寄存器,根据NCF通道配置触发功能性或破坏性反应;注入不在已配置NCF集中的故障会触发FOSU破坏性复位路径。 CMU阈值操作——将CMU_FC_x.LTCR/HTCR写入实际运行频率之外,以产生CMU频率故障复位,其反应类型(功能性或破坏性)通过DCM配置控制。 纯硬件重置需要物理刺激,没有软件注入途径: STCU_URF 要求在实时 LBIST 或 MBIST 序列期间发生 PLL 失锁。 HSE_TMPR_RST 和 HSE_SNVS_RST 是安全篡改事件——有意设计为无法通过软件注入,因为它们保护加密材料。 FXOSC_FAIL、PLL_LOL 和 低压检测 标志表示硬件层面的晶振、PLL 分频器或电源轨存在故障。 Re: How to trigger different reset events on S32K3 for verification 嗨,大卫: 好的。谢谢你! 我们将进行全面调查。
記事全体を表示
MAYA-W166 WITH IW416 HOW TO BT_WAKE_HOST Please tell me how to trigger OS Registrar using BT_WAKE_HOST. Re: MAYA-W166 WITH IW416 HOW TO BT_WAKE_HOST Hi, Could you please tell me what OS and host are you using? Please take a look at AN12849. Regards, Daniel.
記事全体を表示
基于 i.MX 8M Nano 处理器的 m7 内核上的 USB 实现 我需要一些关于在 i.MX 8M Nano 处理器 m7 核心上实现 USB 的指导,我使用了 nxp sdk。但是驱动器没有反应,控制器发出的信号很弱。 Re: USB implementation on m7 core for i.MX 8M Nano processor 你好, 遗憾的是,官方 i.MX SDK 版本中没有 USB 驱动程序。 或许可以从其他设备(例如 i.MXRT)移植过来,但是 PHY 和 USB 非核心寄存器不同,移植起来并不容易,需要你自己来实现。 顺祝商祺!
記事全体を表示
S32k3用の5Vまたは3.3VのI/O電源 こんにちは、みんな、 現在、 NXP S32K3 ファミリーをベースにした自動車用ECUを設計しており、MCUのI/O供給領域に最適な構成を評価しています。 私の理解では、このデバイスはI/OドメインAとドメインBに対して、以下のような異なる電源供給オプションに対応しています。 ドメインA = 5V、ドメインB = 5V ドメインA = 3.3V、ドメインB = 3.3V ドメインA = 5V、ドメインB = 3.3V 各構成の主な設計上のトレードオフや選択基準を理解しようとしています。具体的には: 入出力領域において、5Vと3.3Vを使用する場合の主な利点と欠点は何ですか? 一般的に混合電圧構成(5 V / 3.3 V)が好まれる自動車用途はどこですか? EMC/EMIの性能、消費電力、信号の整合性、堅牢性、インターフェースの互換性に関して、この選択を促す影響はあるのでしょうか? NXPは、各I/O供給オプションの理論や推奨ユースケースを説明するアプリケーションノート、ハードウェア設計ガイドライン、または参考文献を提供していますか? これまでのS32K3プロジェクトから得られた設計のアドバイスや教訓があれば、ぜひ教えていただけるとありがたいです。 ご回答をお待ちしています。 Re: 5V or 3.3V I/O supply for S32k3 こんにちは、 @DavidSilva さん、 利点や欠点というより、主にアプリケーションの要件によります。システムの電圧レベルやデバイスのインターフェースモジュールに応じて、VDD_HV_AドメインとVDD_HV_Bドメインを設定できます。つまり、トレードオフや好みはデザインのみに基づいています。 最も大きな影響は以下の通りである。 VREFHは常にVDD_HV_A +0.1以下でなければなりません。VREFHとVDD_HV_A間の正の差電圧、すなわちVDD_HV_A <= VDD_HV_A + 0.1V)はRF-AC専用です。 LPCMP0チャネルはVDD_HV_A >=VDD_HV_Bの場合にのみ選択・有効化が必要です。VDD_HV_AがVDD_HV_Bを下回った場合、これらのチャネルを無効にする必要があります。 社内チームは、3.3Vの電流消費値を特に提供していないことを共有しています。これは基本的に5Vと同じなので、5Vの測定値を使うことができます。 また、電圧領域構成に関する具体的なアプリケーションノートは提供していませんが、S32K3(電圧領域を含む)に関するすべての要件と推奨事項をまとめたハードウェア設計ガイドラインのアプリケーションノートを参照できます。 よろしくお願いします、 ジュリアン
記事全体を表示
S32k3 的 5V 或 3.3V I/O 电源 大家好, 我目前正在设计一款基于NXP S32K3系列的汽车 ECU,并且正在评估 MCU I/O 供电域的最佳配置。 据我了解,该设备允许为I/O 功能域 A 和功能域 B提供不同的供电方式,例如: 功能域 A = 5 V,功能域 B = 5 V 功能域 A = 3.3 V,功能域 B = 3.3 V 功能域 A = 5 V,功能域 B = 3.3 V 我正在尝试了解每种配置的主要设计权衡和选择标准。具体来说: 在 I/O 域上使用 5 V 与 3.3 V 相比,主要优缺点是什么? 在哪些汽车应用中,通常优选混合电压配置(5V/3.3V)? 在电磁兼容性/电磁干扰性能、功耗、信号完整性、稳健性或接口兼容性方面,是否存在影响这一选择的重要因素? NXP 是否提供任何应用笔记、硬件设计指南或参考文档,解释每种 I/O 供电选项的原理和推荐用例? 我非常感谢您能提供任何设计建议或从之前的 S32K3 项目中汲取任何经验教训。 谢谢! Re: 5V or 3.3V I/O supply for S32k3 你好@DavidSilva , 与其说是优缺点,不如说这主要取决于您的应用程序的需求。您可以根据系统的电压等级以及设备的接口模块来配置 VDD_HV_A 和 VDD_HV_B 功能域。这意味着权衡取舍和偏好完全取决于你的设计。 最大的影响将是: VREFH 应始终等于或小于 VDD_HV_A +0.1。VREFH 和 VDD_HV_A 之间的任何正差分电压,即 VDD_HV_A < VREFH < = VDD_HV_A + 0.1V) 仅适用于 RF-AC。 只有当 VDD_HV_A >= VDD_HV_B 时,才能选择/启用 LPCMP0 通道。当 VDD_HV_A 低于 VDD_HV_B 时,必须禁用这些通道。 内部团队还表示,我们不提供 3.3V 的电流消耗值,因为这与 5V 的电流消耗值基本相同,您可以使用 5V 的测量值。 我们也没有提供专门讨论电压域配置的**应用笔记**,但是您可以参考硬件设计指南**应用笔记**,其中涵盖了 S32K3 的所有要求和建议(包括电压域)。 此致, 朱利安
記事全体を表示
Regarding the issue of S32K3XX being unable to automatically create a local IP address. Screenshot 2026-09-18 100140.png Screenshot 2026-09-18 100315.png Screenshot 2026-09-18 100756.png Hello: I've created my own local IP address in S32DS and disabled the local IP address in the LWIP protocol stack, but I get an error during single-step debugging, failing to establish a connection, as shown in the bottom right image above. What could be the problem? Is some setting missing? Is it that creating a local IP address is not allowed and must be configured in the protocol stack? Thank you again for taking the time to reply despite your busy schedule! Re: 关于S32K3XX无法自己建立本地IP地址的问题 Hello @sunshine88   , The IPv4 address itself is not the cause of this error. lwIP allows a static IPv4 address to be provided directly through netif_add() . According to the debugger screenshot, netif_add() returns NULL because the network-interface initialization callback, ETHIF_INIT , does not return ERR_OK . Therefore, the failure occurs during initialization of the Ethernet interface or its lower-level driver, before the interface can be added to lwIP. In your TCP/IP Stack configuration screenshot, the Enable iface option is not selected. Please enable the network interface and configure the required static IPv4 address, subnet mask, and gateway there. Then regenerate the configuration and use the initialization sequence from the corresponding S32K3 lwIP example. If you still want to assign the address in the application, please first verify whether netif_add() succeeds. Please note that this only makes the initialization failure easier to detect. It does not correct the underlying GMAC/Ethernet configuration. I recommend first building and running the original lwIP example for your exact S32K3 device and software-package versions without modifying its network initialization. Once the original example works, change only the static IPv4 address and confirm the result. Please also provide the following information if the initialization still fails: Exact S32K3 device and evaluation board S32 Design Studio version RTD and TCP/IP Stack package versions The definition of ETHIF_INIT and the error returned by that function Whether the unmodified lwIP example works on the same hardware It appears that the same question was submitted in three separate Community posts. To keep the troubleshooting information in one place, please continue the discussion in only one of them. Best regads, Pavel
記事全体を表示
Safety Mechanism SM1.INTERCONNECT_EDC _GASKET I need to enable the SM1.INTERCONNECT_EDC_GASKET safety mechanism for my project. I am using AUTOSAR RTD 3.0.0 and the S32 Design Studio (S32DS) tool to generate the code. Could you please clarify the following: 1.  Is there an option available within S32DS to enable this safety mechanism? If so, could you guide me on how to enable it? 2.  If this option is not available in S32DS, what is the recommended way to enable it? Please share example code if possible. Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET Hello @sandeepSingh18606, Use Safety Peripheral Drivers for S32K3xx. https://www.nxp.com/docs/en/product-brief/S32K-SPDPB.pdf The drivers are included in the S32K3xx Standard SW package: https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K3-STDSW-D S32K3 Safety Peripheral Drivers version 1.0.3 is compatible with RTD 3.0.0. In the eMCEM driver, all available faults can be enabled. danielmartynek_1-1789975567252.png The SPD package contains a single EB Tresos demo. For S32DS, there is just one SPD example available (SPD 1.0.6, RTD 7.0.0): https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K344-BIST-eMCEM-SPD106-v2-0-S32DS365-RTD700/ta-p/2373113 Regards, Daniel Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET Hi @sandeepSingh18606, Safety Peripheral Drivers (SPD) are available free of charge, and it is an extension to RTD. Whereas Safety Software Framework (SAF) is a paid premium SW. Refer to this documentation: https://www.nxp.com/design/design-center/software/functional-safety-software/s32-safety-software-framework-saf-and-safety-peripheral-drivers-spd:SAF Regards, Daniel Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET I believe SPD is not free and requires a package purchase. Since the SM1 mechanism is implemented by NXP, the user only needs to enable it. However, NXP RTD does not support this feature. Without the SPD package, what is the recommended approach? Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET Hello @sandeepSingh18606, How did you install it if it is not listed? First of all, you need a version that is compatible with your RTD release. According to the SPD release notes: SPD v1.0.3: This SPD version is compatible with S32K3 Real-Time Drivers Version 3.0.0 and 3.0.0 P07. SPD v1.0.4: This SPD version is compatible with S32K3 Real-Time Drivers Version 4.0.0 and S32K3 Real-Time Drivers Version 3.0.0 P07 (Tresos version for the S32K324_MAPBGA257 derivative). The newer versions, v1.0.5 and v1.0.6, are compatible only with newer RTD releases. Download the update site ZIP package, for example: S32K3_SPD_1.0.3_DS_updatesite.zip Then add the update site in S32 Design Studio under Extensions. Thank you, BR, Daniel Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET It is available in the Previous tab, which appears to be inactive in your account. Let me check with the team responsible for managing it. I will get back to you as soon as possible. Regards, Daniel Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET Hi Daniel, I am currently using RTS 3.0.0. Per your suggestion, I need SPD v1.0.3, but I am unable to locate this version on the NXP website. Could you please advise on where I can find it or provide a direct link? Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET Hi Daniel, Thanks for the confirmation. I tried to install the SPD drivers in S32 Design Studio, but even after installing, I am still unable to find them under S32DS extensions and updates. Below is a screenshot of the RTDs currently installed on my system: Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET Hello Sandeep, Please check your account now. Let me know. Thank you  Re: Safety Mechanism SM1.INTERCONNECT_EDC _GASKET HI Daniel, I am able to access previous version now. Thanks for support.
記事全体を表示
S32K311 bootloader porting I am currently porting a working Bootloader project from the S32K312 to the S32K311. I am using S32 Design Studio along with NXP RTD 4.9.0 and the GCC compiler. I am encountering two severe issues related to the Vector Table and Reset Handler that seem specific to the S32K311 / RTD 4.9 environment. Issue 1: Immediate UsageFault on Debugger Reset When launching the PEMicro debugger, the core crashes immediately during the reset script before ever reaching main(). Reset script (...) completed. UsageFault: An instruction executed with an invalid EPSR.T or EPSR.IT field. HardFault: A fault has been escalated to a hard fault. We checked startup_cm7.s and Vector_Table.s. We noticed that Reset_Handler was missing the .type Reset_Handler, %function directive, causing the ELF entry point to be an even address (e.g., 0x00402420 instead of 0x00402421), which naturally causes an ARM-mode UsageFault on the Cortex-M7. Even after fixing the .type directive and ensuring the Vector Table has the LSB set for Thumb mode, the PEMicro debugger still occasionally throws this UsageFault immediately upon reset. Issue 2: Interrupts jump to 0x0 (Uninitialized RAM Vector Table) When we successfully bypass the reset issue and reach main(), the system crashes the moment a hardware interrupt (like FlexCAN or SWT) triggers. The PC jumps to 0x00000000. Upon investigating memory, we found that the RAM vector table at __interrupts_ram_start (0x20000000) is completely uninitialized (filled with zeroes). We discovered that: startup_cm7.s sets VTOR to __RAM_INTERRUPT_START at the end of initialization but never copies the table from ROM. IntCtrl_Ip_Init(&IntCtrlConfig_0) (generated by the Platform component) sets VTOR if INT_CTRL_IP_ENABLE_VTOR_CONFIG is enabled, but it also does not copy the default vector table from flash to RAM. To work around this, we had to write a manual for-loop in main.c to physically copy the vector table from __interrupts_init_start to __interrupts_ram_start and update S32_SCB->VTOR before calling IntCtrl_Ip_InstallHandler(). got the base code from Unified bootloader Demo does anyone know a post where the bootloader for S32K311 with CAN was ported and posted?? Re: S32K311 bootloader porting Hi @ujwal12  For the Cortex-M7, the Reset Handler entry in the vector table must indicate Thumb mode by using an address with the LSB set. If the Reset_Handler symbol is not generated correctly as a function symbol, the linker may place an even address in the vector table, which can lead to a UsageFault during startup. For this reason, we generally do not recommend modifying startup_cm7.s or Vector_Table.s. By design, the S32K3 RTD uses a RAM-based relocatable interrupt vector table. During startup, the vector table is copied from Flash to RAM, and VTOR is updated to point to the RAM-based table. Regarding the availability of an S32K311 bootloader example, there is currently no official bootloader example specifically targeting the S32K311. The closest references available are the Example S32K312 Bootloader to Application Jump DS3.5 RTD300 and the Unified Bootloader Demo that you are already using.  Also, please note that the Unified Bootloader is an unofficial NXP demo that has only been published on the community forum, and therefore it is not supported by NXP technical support. BR, VaneB
記事全体を表示
关于S32K3XX无法自己建立本地IP地址的问题 屏幕截图 2026-09-18 100140.png 屏幕截图 2026-09-18 100315.png 屏幕截图 2026-09-18 100756.png 你好:            现在我在S32DS 中中自己建立本机IP地址,设置LWIP协议栈中本地IP地址失效,但是单步调试时会报错,无法建立链接,如上最下面右侧所示,请问问题出在哪里?是缺少什么设置吗?难道时不允许自己建立本地IP,必须在协议栈中配置吗?          再次感谢在百忙之中回复! Re: 关于S32K3XX无法自己建立本地IP地址的问题 你好@sunshine88 , IPv4 地址本身并不是造成此错误的原因。lwIP 允许通过 netif_add() 直接提供静态 IPv4 地址。 根据调试器截图, netif_add() 返回 NULL ,因为网络接口初始化回调函数 ETHIF_INIT 没有返回 ERR_OK 。因此,故障发生在以太网接口或其底层驱动程序初始化期间,在将接口添加到 lwIP 之前。 在您的 TCP/IP 协议栈配置截图中, “启用接口”选项未被选中。请启用网络接口,并在该接口上配置所需的静态 IPv4 地址、子网掩码和网关。然后重新生成配置,并使用相应的 S32K3 lwIP 示例中的初始化序列。 如果您仍然想在应用程序中分配地址,请先验证 netif_add() 是否成功。 请注意,这只是使初始化失败更容易被检测到。它无法修正底层 GMAC/以太网配置。 我建议首先针对您的 S32K3 设备和软件包版本构建并运行原始的 lwIP 示例,不要修改其网络初始化。如果原示例运行正常,则仅更改静态 IPv4 地址并确认结果。 如果初始化仍然失败,请同时提供以下信息: 精确的 S32K3 设备和评估板 S32 设计工作室版本 RTD 和 TCP/IP 协议栈软件包版本 ETHIF_INIT 的定义以及该函数返回的错误 未经修改的 lwIP 示例是否能在相同的硬件上运行 同一个问题似乎在三个不同的社区帖子中被提交了。为了将故障排除信息集中在一个地方,请只在一个地方继续讨论。 此致敬礼, 帕维尔
記事全体を表示