Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
Power Optimization Strategies for NXP MCUs in Edge AI Applications Hello everyone, I’m currently designing a low-power edge computing device based on an NXP microcontroller and wanted to get some advice from the community. The system performs intermittent sensor sampling and local inference, then sends summarized results to a host system for further analysis. During development and testing, I’m using an ai enabled laptop to profile performance, validate inference output, and monitor power consumption patterns over extended runs. My main challenge is optimizing power usage on the MCU side while maintaining acceptable response time for inference tasks. Are there recommended low-power modes, clock scaling techniques, or SDK features in MCUXpresso that work well for this kind of workload? Any real-world experiences with balancing performance and power on NXP MCUs would be very helpful. Thanks in advance for your insights.
記事全体を表示
在 i.MX9 板上为扩展接头启用 3.3 V 和 5 V 稳压器 该补丁系列支持 i.MX93-QSB、i.MX93-FRDM 和 i.MX91-FRDM 板上的树莓派扩展连接器使用的外部 3.3 V 和 5 V 电源轨。 这些调节器已在设备树中定义,但默认情况下处于禁用状态。通过激活它们,兼容 RPI 的扩展接头可以正确地为外部模块、HAT 和附加板供电。 董事会变更: i.MX93-QSB 启用 RPI 连接器使用的 3.3 V 和 5 V 外部供电线路。 i.MX93-FRDM 启用 RPI 连接器使用的 3.3 V 和 5 V 外部供电线路。 i.MX91-FRDM 启用 RPI 连接器使用的 3.3 V 和 5 V 外部供电线路。 目的是 为兼容 Raspberry Pi 的扩展端口提供适当的电源。 为连接外部 HAT 或模块的用户提高硬件兼容性。 对齐所有 i.MX9 参考板,为 RPI 连接器使用一致的电源树配置。
記事全体を表示
EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 这个McuPGOOD_POLARITYControl配置项在该路径下找不到 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 Hi@WeiCh 我不确定你是否可以下载,你可以尝试一下,如果不可以,请联系你的代理商或者FAE来获取评估权限。 https://www.nxp.com/design/design-center/software/automotive-software-and-tools/real-time-drivers-rtd:AUTOMOTIVE-RTD Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 在哪可以下载30.0.0吗?30.0.0能打开29.0.0的工程吗? Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 Hi@WeiCh 我看这个版本适配的EB Tresos版本应该是30.0.0,不是你所使用的版本。 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 Hi@WeiCh 你这界面的风格不对阿,新版本的风格和之前旧的完全不一样的,你的界面还是老版本的风格。 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 Hi@WeiCh ok,不客气 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 Hi@WeiCh 在下载界面有这样的提示,你要修改后缀 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 好像有点问题,运行setup提示没有安装包,可以解压EBtresosStudio_EBtresosStudio.zip后直接打开应用,但应用界面还是旧的: Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 这是30.0.0的界面,好像还是没有这个配置项。 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 已经可以了,感谢!
記事全体を表示
RW612 MCUBoot + TF-M が起動しない こんにちは、 TF-M + MCUBoot の例を使用して、FRDM-RW612 に非常によく似たカスタム ボード セットアップをフラッシュする際に問題が発生しています。 nxp-zephyr リポジトリの最新バージョン (v4.3.0) では、チュートリアルの一部のファイルが変更されているようです。できる限り従おうとしましたが、ボードがまだ正しく起動しません。 MCUBoot ブートローダーだけをフラッシュすると、予想どおりの出力エラー「起動可能なイメージが見つかりません」が表示されます。ガイドの指示に従って PSA 暗号サンプルをフラッシュすると、ターミナルに何も出力されず、MCUBoot テキストも表示されなくなります。端末の問題だけの場合に備えて、点滅サンプルでもテストしましたが、そのCASEはボードの LED も点滅しません。 これらのサンプルは両方とも、MCUBoot なしで TF-M だけをフラッシュすると起動して実行されます ( west build -b frdm_rw612//ns samples/basic/blinky --pristine && west flash )。 このCASE、私は奇妙な癖にも気づきました。ペリフェラルとしてflexcomm3を使用する必要があるため、Zephyrコンソールを別の出力に切り替えたいと考えました。デバイス ツリーを編集すると、さまざまな問題が発生します。   1. zephyrコンソールをFlexcomm3からFlexcomm2に切り替える boards/nxp/frdm_rw612/frdm_rw612_common.dtsi に次の編集を加えました。 i2c-0エイリアスを削除しました ambient-temp0 エイリアスを削除しました chose/zephyr,console を &flexcomm2 に置き換えました flexcomm2 ノードを追加しました: &flexcomm2 { compatible = "nxp,lpc-usart"; status = "okay"; current-speed = <115200>; pinctrl-0 = <&pinmux_flexcomm2_usart>; pinctrl-names = "default"; wakeup-source; }; nxp_pmod_touch_panel_i2c、arduino_i2c、mikrobus_i2cノードを削除しました そして、 boards/nxp/frdm_rw612/frdm_rw612-pinctrl.dtsi に flexcomm2 pinctrl を追加しました: &pinctrl { pinmux_flexcomm2_usart: pinmux_flexcomm2_usart { group0 { pinmux = ; slew-rate = "normal"; bias-pull-up; }; }; }; そしてその後、FC3 をコンソールとして使用したときに動作したのとまったく同じ点滅コードをフラッシュすると、FC3 でブートローダーの出力が表示されます (下記)。ただし、FC2 では何も出力されず、LED も点滅しません。 [INF] Starting bootloader [WRN] This device was provisioned with dummy keys. This device is NOT SECURE [INF] PSA Crypto init done, sig_type: EC-P256, using builtin keys [INF] Image index: 1, Swap type: none [INF] Image index: 0, Swap type: none [INF] Bootloader chainload address offset: 0x20000 [INF] Image version: v0.0.0 [INF] Jumping to the first image slot Booting TF-M v2.2.0+g3b3595f16 [WRN] This device was provisioned with dummy keys. This device is NOT SECURE [Sec Thread] Secure image initializing! [INF][PS] Encryption alg: 0x5500100 [INF][Crypto] Provision entropy seed... [INF][Crypto] Provision entropy seed... complete. 2. ZephyrコンソールをFlexcomm3からFlexcomm14に切り替える chose/zephyr,console を &flexcomm14 に置き換えました flexcomm14 ノードを追加しました:   &flexcomm14 { compatible = "nxp,lpc-usart"; status = "disabled"; current-speed = <115200>; pinctrl-0 = <&pinmux_flexcomm14_usart>; pinctrl-names = "default"; wakeup-source; }; そして、 boards/nxp/frdm_rw612/frdm_rw612-pinctrl.dtsiにflexcomm14 pinctrlを追加しました: &pinctrl { pinmux_flexcomm14_usart: pinmux_flexcomm14_usart { group0 { pinmux = ; slew-rate = "normal"; }; }; }; これらの編集により、FC3 または FC14 に出力が表示されなくなり、LED もまったく点滅しなくなりました。 TF-M + MCUBoot で発生している問題が TF-M のみのコンソール出力の問題に関連しているかどうかはわかりませんが、念のためそれを含めておこうと思いました。私の最終目標は、起動後にファームウェアのアップデートを実行できるように MCUBoot と TF-M を用意することです。また、ペリフェラルとして Flexcomm3 を使用する必要があるため、FRDM-RW612 が使用するものとは異なるコンソール出力が必要です。 また、TF-M も MCUBoot も使用していない場合でも、ボードをフラッシュして FC14 でコンソールに印刷できることにも注意してください。これらのサブシステムを有効にした後でのみ、フラッシュ/ブートに関する問題が発生しました。 どのようなご助力も大歓迎です、ありがとうございます! Re: RW612 MCUBoot + TF-M Not Booting proj.conf をいろいろ試してみたところ、問題はフラッシュ サブシステムに関連するものであることがわかりました。 現在、TF-M なしで MCUBoot をテストしていますが、実行されるアプリと行Iで停止するアプリの違いは、最初のイメージ スロットにジャンプすることが、次の KConfig オプションの 1 つ以上であることです。   CONFIG_FLASH_FILL_BUFFER_SIZE=32 CONFIG_FLASH=y CONFIG_FLASH_MCUX_FLEXSPI_XIP_MEM="RAM" CONFIG_FLASH_INIT_PRIORITY=50 CONFIG_FLASH_HAS_DRIVER_ENABLED=y CONFIG_FLASH_HAS_EXPLICIT_ERASE=y CONFIG_FLASH_HAS_PAGE_LAYOUT=y CONFIG_FLASH_JESD216=y CONFIG_FLASH_MCUX_FLEXSPI_NOR=y CONFIG_MEMC_MCUX_FLEXSPI=y MCUBoot と NXP のフラッシュ ファイルを調べてきましたが、正しい方向に進んでいるかどうかわかりません。次の行のようになります: (( void ( * )( void )) vt ->リセット)(); MCUBoot の Zephyr main.c の do_boot() 関数は、GDB でデバッグできる最後の場所です。そのリセット「関数」が呼び出された後、PC は 0x20005840 にあり、続行/ステップ実行では何も行われず、プログラムはハングするだけです。   繰り返しになりますが、この問題をデバッグするにはどこを参照すればよいかという助言やヒントがあれば、ぜひ教えてください。ありがとうございます! Re: RW612 MCUBoot + TF-M Not Booting こんにちは、リカルドさん。元の投稿が散漫になっていたらごめんなさい。 TF-M + MCUBoot ガイドを最初から完全に開始して、問題点をリストアップすることができました。通常の開発では VSCode 用の MCUXpresso を使用しますが、ガイドでは west コマンドライン ツールを使用しているため、ここでもそれを使用しました。 TF-M + MCUBoot ガイドの問題 (nxp_zephyr タグ nxp-v4.3.0) - 「セキュア イメージの変更」の手順 6 の「ダウンストリームから TF-M をビルドしてフラッシュする」では、M_BOOT_FLASH_CONF_START は BOOT_FLASH_ACT_APP と同じである必要があると記載されています。リポジトリ内のどこにも BOOT_FLASH_ACT_APP が見つかりませんでした。何に設定されているか確認する方法がわかりません。#define M_BOOT_FLASH_CONF_START (0x18020000)を使用しました - 「セキュア イメージの変更」の手順 8 では、ガイドでは hardware_init.c の SystemInitHook に VTOR 構成を追加するように指示されていますが、そのコードはすでに存在しているようです。そのままにしておいた。 - 「非セキュア イメージの変更」セクションでは、 nxp_zephyr\Zephyr\build\tfm\api_ns\platform\partitionフォルダー内のファイルを編集するようにガイドで指示されていますが、 nxp_zephyr\Zephyr\build はデフォルトでは存在しません。この時点では、ガイドでは何も構築するように指示されていません。後でアプリをビルドした後、手順 2 ~ 6 のファイルはすでに正しい値に変更されていました。 - 「非セキュア イメージの変更」の手順 7 に、 nxp_zephyr/zsdk/boardsディレクトリがありません。これはnxp_zephyr/Zephyr/boardsであると想定しているので、そのパスで手順 8 に従いました。 - ガイドに従ってnxp_zephyr/zephyr/boards/nxp/frdm_rw612/frdm_rw612_rw612_ns.dtsを編集した後、次のビルド エラーが発生します:必要なノードラベルが見つかりません: slot0_partition 。その編集を行う代わりに、デフォルトのデバイス ツリー ファイルを使用してビルドすると、サンプルはほぼ完全にビルドされますが、最後のステップでエラーが発生します。 トレースバック(最新の呼び出しが最後): ... intelhex.AddressOverlapError: アドレス 0x18020000 でデータが重複しています 上記の例外の処理中に、別の例外が発生しました: ... intelhex.AddressOverlapError: /nxp_zephyr/zephyr/build/zephyr/tfm_s_signed.hex にマージの問題があります 私はこのエラーを無視してガイドを続行しました。 - 最後に発生した問題は、手順 3 の「バイナリのマージ」セクションで、 「エラー: このようなコマンド 'merge' はありません」というエラーが発生したことです。私にとっては同様の機能があるように見えたので、merge の代わりに「export」コマンドを使用しました。 これらの調整を行い、ガイドの指示に従ってフラッシュした後でも、次のターミナル出力が得られます。 *** Booting MCUboot v2.2.0-192-g96576b341ee1 *** *** Using Zephyr OS build nxp-v4.3.0 *** I: Starting bootloader I: Image index: 0, Swap type: perm I: Image index: 0, Swap type: perm I: Primary image: magic=bad, swap_type=0x0, copy_done=0x2, image_ok=0x2 I: Secondary image: magic=good, swap_type=0x1, copy_done=0x3, image_ok=0x1 I: Boot source: none I: Image index: 0, Swap type: perm I: Image index: 0, Swap type: perm I: Image index: 0, Swap type: perm I: Image index: 0, Swap type: perm E: Image in the primary slot is not valid! E: Unable to find bootable image ガイドの指示に対して行った調整のいずれかが問題の原因なのか、更新された Zephyr リポジトリのその他の違いなのかはわかりません。ご返信ありがとうございます。 Re: RW612 MCUBoot + TF-M Not Booting こんにちは、 あなたの調子が良いといいのですが。セットアップの詳細を教えていただけますか? VSCode で MCUXpresso を使用していますか? flexcomms に関連するすべての変更を実装する前に、投稿をフォローできるかどうかを明確にしていただけますか?(それぞれのバージョンの変更あり) よろしくお願いいたします。 リカルド Re: RW612 MCUBoot + TF-M Not Booting こんにちは@jm-streametric さん、お元気ですか。 あなたが参照しているガイド ( RW612 を使用した Zephyr MCUboot + TFM デモ) は、4.2.0 より前のバージョンの Zephyr にのみ適用されます。この場合、Zephyr v4.3.0 (NXP のダウンストリーム リポジトリ) の例をビルドしてフラッシュする手順は、FRDM-RW612 の方が簡単です。psa_crypto の例をビルドしてフラッシュするには、以下の手順を参照してください。 リポジトリから例をインポートをクリックします。 NXP のダウンストリーム リポジトリ V4.3.0 を選択します。FRDM-RW612 の TF-M サポートがメインの Zephyr リポジトリに完全には追加されていないため、これは重要です。次に、FRDM-RW612 の非セキュア バージョンを選択します。 psa_crypto の例を選択し、[インポート] ボタンをクリックします。 最後に、サンプルをビルドしてボードにフラッシュします (必要に応じてデバッグ セッションを開くこともできます)。すべてが正しく実行された場合、シリアル端末のログは次の画像のようになります。 現時点では、この手順はFRDM-RW612 ボードにのみ適用されます。RW612をカスタム ボードで使用しているため、ボードに TF-M サポートを追加するには、必要な変更を確認して行う必要があります。考慮すべき主なポイントは、使用しているフラッシュ デバイスです。したがって、この点に違いがある場合は、より大きなポートを動作させる必要がある場合があります。 Zephyr コンソールに使用される Flexcomm インスタンスの変更で発生した問題に関しては、 boards/nxp/frdm_rw612/frdm_rw612_common.dtsiファイルで直接変更しないでください。この変更はビルド時にデフォルトに書き換えられるため、代わりにfrdm_rw612.overlayファイルを使用して変更を追加してみてください。このオーバーレイは Zephyr のデフォルトのデバイス ツリー ファイルに優先され、変更が維持されます。 情報が役に立つかどうかお知らせください。 Re: RW612 MCUBoot + TF-M Not Booting こんにちは、ローマン。 ご返信ありがとうございます!あなたの指示に従って、ボード上で作業を行うことができました :)。私のカスタム ボード上のフラッシュ レイアウトは FRDM-RW612 と同じなので、幸いなことにそこで変更する必要はありません。 オーバーレイを追加するのは良い点ですが、以前はそれを試してみようとは思いませんでした。 続いて、TF-M secure + BL2 システムの FlexComm 出力を変更することは可能ですか?ペリフェラルが搭載されているため、デフォルトの Flexcomm3 インターフェイスを使用できません。現在、デバッグ出力を無音にしていますが、BL2 + S ビルドを変更して、たとえば FC3 ではなく FC14 USART に出力できる場所はありますか? ありがとう! Re: RW612 MCUBoot + TF-M Not Booting こんにちは@jm-streametric 。 Flexcomm に関するご質問について: 現在の実装では、TF-M はUSART3 を使用するように「ハードコード」されています。別の USART インスタンスに切り替える必要がある場合は、次の場所にある TF-M プラットフォーム ファイルを確認して変更します。 /modules/tee/tf-m/trusted-firmware-m/platform/ext/target/nxp/frdmrw612 まず、 platform_base_address.hを確認することをお勧めします。ファイルの場所: frdmrw612/Device/Include このファイルは、TF-M で使用される USART インスタンスを含む、プラットフォーム レベルのベース アドレスを定義します。 さらに、同じ TF-M ターゲット ディレクトリ内の project_template フォルダーには、USART の初期構成コードがあります。これらの初期化により、USART3が現在どのように設定されているか、また、別のUSARTインスタンスに切り替えるためにどこに変更を適用するかが明確になります。 この情報がお役に立てれば幸いです! Re: RW612 MCUBoot + TF-M Not Booting こんにちは@jm-streametric さん、お元気ですか。 デバイス ツリーで、Flexcomm14 を参照するノードが正しく構成され、アクティブ化されているかどうかを確認してください。次の例のように、ステータス プロパティが「okay」に設定されていることを確認します。 flexcomm14: flexcomm@126000 { status = "okay"; }; これが役に立つことを願います! Re: RW612 MCUBoot + TF-M Not Booting こんにちは、ローマン。 TF-M システムで使用される USART を切り替えようとしました。すべての定義をtarget/nxp/frdmrw612/project_template/* board.hに切り替えるとおよび pin_mux.cFC3/USART3 -> FC2/USART2 への変更は機能します。 ただし、同じ手順を実行しても、FC14/USART14 に変更すると、BL2 プログラムがハングします。bl2.elf を使って addr2line でハングしているアドレスを実行したところ、プログラムは target/nxp/frdmrw612/Native_Driver/drivers/fsl_reset.c でループしたままになっているようです。51行目。FC14 ペリフェラルのリセットは 67 行目のスイッチ CASE を使用する必要があると思うので、これは正しくないように思えますが、addr2line に問題がある可能性があります。 いずれにしても、TF-M システムを USART14 に印刷するように切り替えた場合、BL2 プログラムがハングし、Zephyr アプリが起動しなくなります。これまでにこの問題を見たことがありますか? また、なぜこの問題が発生するのかの手がかりはありますか? Re: RW612 MCUBoot + TF-M Not Booting こんにちは、ローマン。 はい、flexcomm14 ノードを「正常」ステータスに設定しました。私の質問は BL2/Secure Environment のログ記録に関するものです。これら 2 つのバイナリは別々にビルドされるため、zephyr デバイスツリーは適用されないと思いますか?
記事全体を表示
PN7160とnRF52840 こんにちは、 カスタムPCB上のnRF52840モジュール(Raytac MDBT50Q-1MV2)にI2C経由でコネクテッドされた外付けNFCリーダ/コントローラ(NXP PN7160A1HN/C100E)を使用しています。(プログラミングは、nRF52840 DKをデバッグプローブとして使用し、SWD経由で行います。) 現在のソフトウェア環境は、VS Code(Windows 11)のnRF Connect SDK(NCS)v3.2.0とZephyr RTOS v4.2.99です。目標は、PN7160(NCI-over-I2C)を使用して、RF検出を開始し、13.56MHzパッシブカードのUIDを読み取ることです。 私はPN7160を「典型的なZephyrの方法」で統合しようと試みました。 ソース/メイン.c ボード/nrf52840dk_nrf52840.オーバーレイ prj.conf I2C ピンと PN7160 GPIO (VEN/IRQ) を設定できますが、初期化が失敗します (プローブ中または最初のコマンド中の I2C -EIO/NACK)。その結果、RF 検出全体が機能せず、統合アプローチが正しいかどうかわかりません。 質問: NCS/Zephyrでは、`main.c`を変更するだけでPN7160をプログラムすることは可能ですか?+ `nrf52840dk_nrf52840.overlay` + `prj.conf`、それともPN7160には適切なカスタムドライバが必要であると予想されますか? ドライバが必要な場合、NCS でドライバを追加するための推奨アプローチは何ですか (デバイスツリー バインディング YAML + Kconfig + CMake + ドライバ ソース)。また、外部 Zephyr モジュール (zephyr/module.yml + EXTRA_ZEPHYR_MODULES) としてパッケージ化する必要がありますか?これを行う方法のサンプル コードはありますか (パブリック github リポジトリのようなものですが、見つけることができませんでした)? プローブ/最初の書き込み時に -EIO を引き起こす可能性のある、別の方法で処理する必要がある既知の NCS v3.2.0 / Zephyr 4.2.99 I2C/TWIM 動作はありますか? 他に役立つコメントがありましたら、ぜひ教えてください。 ご協力ありがとうございます!
記事全体を表示
FRDM-KL25Z 错过 U7 MMA8451Q 新版 FRDM-KL25Z 缺少 U7 MMA8451Q 芯片。这个芯片是这个板的重要元器件,但我不明白为什么它被拆除了。因此,我无法使用板,但是尽管芯片已被移除,价格还是上涨了。我需要那块旧板。请检查一下,你移除了芯片但没有更改板型号,所以当我订购时,我本来想要的是旧板,但我收到了新的。 Re: FRDM-KL25Z miss U7 MMA8451Q 几年前,恩智浦将大部分 Accel/Gyros 的现有库存全部卖给了罗彻斯特电子公司。如今,意法半导体或模拟设备是寻找微机电的更好去处。 如果您要开始新的设计,Kinetis 产品线并不适合。 https://www.rocelec.com/global-search/MMA8451Q Re: FRDM-KL25Z miss U7 MMA8451Q 你好@王建兵 感谢您与我们联系。很抱歉,我们只提供新版本(Rev.I),旧版本将不再生产。正如 FRDM-KL25Z 主页上所指出的那样:"新设计不再推荐使用 MMA8451Q 加速计。 你可以尝试联系代理商或其他第三方平台,检查他们是否还有先前版本的库存。 感谢您的理解。 BR 爱丽丝 Re: FRDM-KL25Z miss U7 MMA8451Q 好吧,我明白了。我遇到了一个问题,请查看如何解决。此版本更改只删除了 U7?如果我把这个 U7 MMA8451Q 焊接到板上。是否可以像旧版本一样使用?现在我需要一个解决方案来处理它。谢谢!
記事全体を表示
MCXN947 I3C IBI 有效载荷问题 您好, 我遇到了一些关于 I3C 接收 IBI 有效载荷的问题。希望你们能提供帮助。欣赏。 当我使用 NXP974 作为 I3C 主站时,我们能收到多少个包含 MDB 的有效载荷数据?在我的测试中,似乎最大值为8字节。(一个 MDB 和七个有效载荷数据)。但是从规范来看,它表明支持 9 字节的支持包括 MDB。您能帮忙确认一下吗? 规格:控制器在 9 字节(包括必填数据字节)后自动停止 IBI 数据。 我遇到的另一个问题是,当我将有效载荷设置为8字节时,我确实收到了来自fifo的8字节,但是即使我们没有从i3c目标发送新的IBI,它也会再次进入IBI并导致系统卡住。当有效载荷大小于 8 字节时,它运行良好。 我检查了 SDATACTRL 的 RX FIFO 计数,是 8。我认为这是正确的。而 irq 的状态似乎是正确的,与正常情况下的状态(0x2e00)相同。所以我想这也是正确的。 然后,我尝试捕获洛杉矶的波形。我发现正确和不正确的情况有些不同。 在正常情况下(有效载荷< 7),最后一个 T 位的整个时钟周期为低电平,然后产生一个停止信号。 在错误的情况下,SDA将在T位时钟的上升沿处于高位。然后,重新发送时钟(开漏)。 你知道恩智浦发生了什么事吗?为什么有效载荷大小不同时会有不同的行为? MCX N Re: MCXN947 I3C IBI payload issue 嗨,杰姬! 我们过去也遇到过这个问题,并向恩智浦报告过。我们得到确认,这是恩智浦 I3C IP 模块中的一个错误。IBI 有效负载长度不能大于 8 字节,此外,I3C 目标应使用 T-Bit 来表示最后一个字节中的数据结束(T-Bit LOW)。I3C IP 块作为控制器时,如果 T 位为高电平,则不能发出 STOP 条件。 Re: MCXN947 I3C IBI payload issue 你好@JackieZhu 是的,你说得对。I3C 目标支持在强制数据字节之后最多七字节的扩展 IBI 数据。 因此,包括 MDB,最大值为 8 字节。(一个 MDB 和七个有效载荷数据)。 BR 哈利
記事全体を表示
Unable to flash S32K146EVB-Q144 board as D1 glowing red I have a S32K146EVB-Q144 evaluation board which was working fine initially. During a debug session where I had implemented Lin stack, it stopped working. When i reset my controller i see a continuous Red light on D1 and other two green lights are still there. I've used J10 and J107 at position 2-3 to select power from USB source and J104 at position 2-3 to select OpenSDA app flash mode. Now my controller is not getting detected at all by S32DS. I tried following the steps mentioned in below post as symptom seems exactly same. Re: S32K144 D2 RED LED is ON always - NXP Community Here I was able to halt the processor in OpenSDA using P&E Kinetics Recovery Tool but still not able to flash any new application. Even if halt is achieved, i am not able to flash it again and red light is still on. Controller is able to go into bootloader mode as well by adjusting jumper J104 and i was actually able to flash ne bootloader app in it as well. But somehow I am not able to write the flash again, and if i try flashing any example .srec file, D2 keeps on flashing periodically (usually in successful flashing it blinks once and then app starts running). So in a nutshell : -Controller is not able to reach main or getting continuous resets -Controller is not able to write the flash again (could be security issue). I did tried mentioned techniques in above thread except the one involving SEGGER-JLINK as I dont have that debug probe. I do have a PE Multilink Universal with me but its not able to recover/erase the flash as well. Here are the details of board : Board Name is: S32K146EVB-Q144 MicroBoot Kernel Version is: 1.08 Bootloader Version is: 1.13 Installed Application: PEMicro EVB-S32K144 Mass Storage/Debug App Application Version is: 1.25 DUID is: 39A33939-91818199-37539805-F97AE678 EUID is: 4141A238-1BDB8733-1854BA22-D38368D6 TUID is: 74823938-47328196-8576CC9B-0242983E TOA is: 86B6E505-56F042E0-79B2A114-62BA758F TOA2 is: 86B6E505-EB1A8A7C-AF6E54B6-43532420 SUID is: 86B6E505-5BA18877-37239804-8003EC65 Is MCU locked permanently ? If not how can i recover my board ? Is there any h/w failure I am looking at ? (Just FYI D2 and D3 glows green which i think means my 5V and 3.3V power rails are working fine) Is there a physical way to mass erase ? (Cant use S32DS emergency kinetics option as board is not detectable there at all).  Can grounding any pin of OpenSDA chip leads to erase of flash memory ? Re: Unable to flash S32K146EVB-Q144 board as D1 glowing red Please note that during the Christmas holiday period, our support response times may be longer than usual. In some cases, your request might be addressed after the New Year. Thank you for your understanding. Re: Unable to flash S32K146EVB-Q144 board as D1 glowing red Hi After the P&E Recovery Utility halt MCU, close the tool. Then follow the Step 3 or Step 4 to reprogram the S32K146. I'm not sure if this is due to the Application Version is: 1.25 . Please press and hold the reset button SW5, then insert the USB cable and place MSD-DEBUG-S32K146EVB-Q144_Pemicro_v121.SDA into the BOOTLOADER drive. This will update the Application Version to 1.21. I've also attached lpit_periodic_interrupt_s32k146.srec. By the way, you don't need external Segger J-Link. If you follow Step6:Inserting J7 while holding down SW5 puts OpenSDA into BOOTLOADER mode. And then drop SEGGER J-Link application firmware into it(OpenSDA_V1.bin).  The onboard debugger will then become J-Link.  Best Regards, Robin ------------------------------------------------------------------------------- Note: - If this post answers your question, please click the "ACCEPT AS SOLUTION" button. Thank you! - We are following threads for 7 weeks after the last post, later replies are ignored Please open a new thread and refer to the closed one, if you have a related question at a later point in time. ------------------------------------------------------------------------------- Re: Unable to flash S32K146EVB-Q144 board as D1 glowing red Hello Robin, Thank you for your prompt response, well I tried rolling it back to MSD-DEBUG-S32K146EVB-Q144_Pemicro_v121.SDA,  Its behaving the same way, bootloader app is flashed but D1 still glowing red and I am not able to flash .srec file after halting it using kinetis recovery tool. I see that controller is trying to flash the srec but fails since D2 blinks periodically(usually it blinks only 3-4 times and app is flashed). I then tried switching the bootloader to  OpenSDA_V1.bin, I tried attempting connection using J-Link commander afterwards and I see following logs : SEGGER J-Link Commander V8.94 (Compiled Dec 10 2025 14:50:47) DLL version V8.94, compiled Dec 10 2025 14:49:54 Connecting to J-Link via USB...O.K. Firmware: J-Link OpenSDA compiled Jan 31 2023 13:42:36 Hardware version: V1.00 J-Link uptime (since boot): 0d 00h 00m 28s S/N: 621000000 VTref=3.300V Type "connect" to establish a target connection, '?' for help J-Link>connect Please specify device / core. : S32K146 Type '?' for selection dialog Device>S32K146 Please specify target interface: J) JTAG (Default) S) SWD T) cJTAG TIF>SWD Specify target interface speed [kHz]. : 4000 kHz Speed>100 Device "S32K146" selected. Connecting to target via SWD ConfigTargetSettings() start ConfigTargetSettings() end - Took 22us InitTarget() start SWD selected. Executing JTAG -> SWD switching sequence. Timeout while halting CPU. InitTarget() end - Took 392ms Found SW-DP with ID 0x2BA01477 DPv0 detected CoreSight SoC-400 or earlier Scanning AP map to find all available APs AP[2]: Stopped AP scan as end of AP map has been reached AP[0]: AHB-AP (IDR: 0x24770011, ADDR: 0x00000000) AP[1]: JTAG-AP (IDR: 0x001C0000, ADDR: 0x01000000) Iterating through AP map to find AHB-AP to use AP[0]: Core found AP[0]: AHB-AP ROM base: 0xE00FF000 CPUID register: 0x410FC241. Implementer code: 0x41 (ARM) Found Cortex-M4 r0p1, Little endian. FPUnit: 6 code (BP) slots and 2 literal slots CoreSight components: ROMTbl[0] @ E00FF000 [0][0]: E000E000 CID B105E00D PID 000BB00C SCS-M7 [0][1]: E0001000 CID B105E00D PID 003BB002 DWT [0][2]: E0002000 CID B105E00D PID 002BB003 FPB [0][3]: E0000000 CID B105E00D PID 003BB001 ITM [0][4]: E0040000 CID B105900D PID 000BB9A1 TPIU Initializing 126976 bytes work RAM @ 0x1FFF0000 Reset type: NORMAL (https://kb.segger.com/J-Link_Reset_Strategies) Reset: Halt core after reset via DEMCR.VC_CORERESET. Reset: Reset device via AIRCR.SYSRESETREQ. Reset: S_RESET_ST never gets cleared. CPU seems to be kept in reset forever. Reset: Using fallback: Reset pin. Reset: Halt core after reset via DEMCR.VC_CORERESET. Reset: Reset device via reset pin Reset: VC_CORERESET did not halt CPU. (Debug logic also reset by reset pin?). Reset: Reconnecting and manually halting CPU. Found SW-DP with ID 0x2BA01477 DPv0 detected CoreSight SoC-400 or earlier AP map detection skipped. Manually configured AP map found. AP[0]: AHB-AP (IDR: Not set, ADDR: 0x00000000) AP[0]: Core found AP[0]: AHB-AP ROM base: 0xE00FF000 CPUID register: 0x410FC241. Implementer code: 0x41 (ARM) Found Cortex-M4 r0p1, Little endian. CPU could not be halted Reset: Core did not halt after reset, trying to disable WDT. Reset: Halt core after reset via DEMCR.VC_CORERESET. Reset: Reset device via reset pin Reset: VC_CORERESET did not halt CPU. (Debug logic also reset by reset pin?). Reset: Reconnecting and manually halting CPU. Found SW-DP with ID 0x2BA01477 DPv0 detected CoreSight SoC-400 or earlier AP map detection skipped. Manually configured AP map found. AP[0]: AHB-AP (IDR: Not set, ADDR: 0x00000000) AP[0]: Core found AP[0]: AHB-AP ROM base: 0xE00FF000 CPUID register: 0x410FC241. Implementer code: 0x41 (ARM) Found Cortex-M4 r0p1, Little endian. CPU could not be halted Reset: Failed. Toggling reset pin and trying reset strategy again. Found SW-DP with ID 0x2BA01477 DPv0 detected CoreSight SoC-400 or earlier AP map detection skipped. Manually configured AP map found. AP[0]: AHB-AP (IDR: Not set, ADDR: 0x00000000) AP[0]: Core found AP[0]: AHB-AP ROM base: 0xE00FF000 CPUID register: 0x410FC241. Implementer code: 0x41 (ARM) Found Cortex-M4 r0p1, Little endian. Reset: Halt core after reset via DEMCR.VC_CORERESET. Reset: Reset device via AIRCR.SYSRESETREQ. Reset: S_RESET_ST never gets cleared. CPU seems to be kept in reset forever. Reset: Using fallback: Reset pin. Reset: Halt core after reset via DEMCR.VC_CORERESET. Reset: Reset device via reset pin Reset: VC_CORERESET did not halt CPU. (Debug logic also reset by reset pin?). Reset: Reconnecting and manually halting CPU. Found SW-DP with ID 0x2BA01477 DPv0 detected CoreSight SoC-400 or earlier AP map detection skipped. Manually configured AP map found. AP[0]: AHB-AP (IDR: Not set, ADDR: 0x00000000) AP[0]: Core found AP[0]: AHB-AP ROM base: 0xE00FF000 CPUID register: 0x410FC241. Implementer code: 0x41 (ARM) Found Cortex-M4 r0p1, Little endian. CPU could not be halted Reset: Core did not halt after reset, trying to disable WDT. Reset: Halt core after reset via DEMCR.VC_CORERESET. Reset: Reset device via reset pin Reset: VC_CORERESET did not halt CPU. (Debug logic also reset by reset pin?). Reset: Reconnecting and manually halting CPU. Found SW-DP with ID 0x2BA01477 DPv0 detected CoreSight SoC-400 or earlier AP map detection skipped. Manually configured AP map found. AP[0]: AHB-AP (IDR: Not set, ADDR: 0x00000000) AP[0]: Core found AP[0]: AHB-AP ROM base: 0xE00FF000 CPUID register: 0x410FC241. Implementer code: 0x41 (ARM) Found Cortex-M4 r0p1, Little endian. CPU could not be halted CPU could not be halted CPU could not be halted ****** Error: Failed to halt CPU. Memory zones: Zone: "Default" Description: Default access mode Cortex-M4 identified. J-Link> Re: Unable to flash S32K146EVB-Q144 board as D1 glowing red Please use an oscilloscope to observe the waveform of the reset pin, send me the waveform and tell me the reset period and high-level width. In some cases, it may be impossible to recover, and you may have to replace the S32K1 chip.   Connection strategies & recovery steps: Goal: give the debugger a chance to halt the core and neutralize problematic firmware. A. Lower SWD speed + “connect under reset” In J‑Link Commander: J-Link> device S32K146 J-Link> if SWD J-Link> speed 1000 ; start at 1 MHz; if still failing, drop to 100 kHz J-Link> connect If it still fails, use manual connect‑under‑reset: Hold RESET_b low externally, power the board. Run connect in Commander. Release reset and immediately: J-Link> r J-Link> h J-Link> halt Try several times, especially with 100 kHz SWD speed—timing can be critical. B. Change J‑Link reset strategy Different Reset Strategy values behave differently. In Commander (exact IDs may vary by version): J-Link> SetResetType = 3 ; a common “connect under reset / halt after reset”; Try 2 / 4 / 12 etc. depending on your J-Link version J-Link> r J-Link> halt Alternatively, try selecting "Connect under reset" in J-Link Commander. Re: Unable to flash S32K146EVB-Q144 board as D1 glowing red According to the S32K146EVB-SPF-29844-RB.pdf: J104 1-2 Reset signal from OpenSDA J10 2-3 P5V0 If you have an external 9V or 12V power supply, you can also try connecting J107 1-2 P5V_SBC. If you happen to have an external debugger, such as PEMicro Multilink, try using it to see if it can download programs for the S32K146. What was the last project downloaded? Is CSEc enabled? Please answer my previous questions and provide me with the reset signal measured using an oscilloscope.
記事全体を表示
针对同步动态随机存取存储器(SDRAM)版本构建的 RT1170 调试 您好, 我正在使用 MCUXpresso 及其 SDK 为 RT1170 开发一个应用程序。 所提供的示例项目似乎都是使用 “DTC” RAM 版本的。与许多其他用户一样,我的应用程序太大了,无法容纳在那里,所以我正在尝试使用“同步动态随机存取存储器(SDRAM)”。 在尝试了论坛上其他一些帖子(尤其是https://community.nxp.com/t5/i-MX-RT/MCUXpresso-and-RT1050-download-and-debug-in-SDRAM/m-p/896979)中提出的解决方案后现在,我可以执行我的程序,如果应用程序已闪存,我还可以调试程序。 但是,如果我使用 “将应用程序链接到RAM” 进行版本和执行,那么一旦遇到断点,应用程序通常会卡在那里。 我的假设是这是因为我没有正确初始化同步动态随机存取存储器(SDRAM)。上述文章使用 “rt1050_SDRAM_init.scp 作为调试器初始化 同步动态随机存取存储器(SDRAM) 控制器的连接脚本”。如果我使用这个文件,失败也就不足为奇了。 我不知道如何调整这个脚本才能在 RT1170 上运行。有没有人这样做过,或者能提供如何生成的建议? 感谢您提供的任何帮助。 Re: RT1170 debugging when application is built for SDRAM 你好@ Jingpan 按照提供的步骤,使用 RT1170_BriefOverview_v210.pdf 中提到的修改刷新 hello world,我可以在调试模式下使用同步动态随机存取存储器(SDRAM)。 但是在这种变化之后,同步动态随机存取存储器(SDRAM)也用于存储代码。 在我的应用程序中,我希望代码存储在闪存中,而 BOARD_SDRAM 仅用于堆和堆栈部分。 我将把我的应用程序闪存到闪存中,该应用程序的堆和栈部分将使用 BOARD_SDRAM。 请指导我进行所需的更改。 Re: RT1170 debugging when application is built for SDRAM 谢谢@ Jingpan、 我只需要添加 .scp文件,结果成功了。 我已经掌握了第 5、第 6 和第 8 步,但我会试试其他步骤。 如果有帮助我还在 board.c 中做了以下更改,我认为这等同于<https://community.nxp.com/t5/i-MX-RT/MCUXpresso-and-RT1050-download-and-debug-in-SDRAM/m-p/896979>中描述的 RT1170_SDRAM_NOT_CACHED: #ifdef USE_SDRAM #ifndef RT1170_SDRAM_NOT_CACHED /* 区域 9 设置:内存为普通类型,不可共享,外部/内部回写 */ MPU->RBAR = ARM_MPU_RBAR(9, 0x80000000U); MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 0, 0, 1, 1, 0, ARM_MPU_REGION_SIZE_64MB); #else MPU->RBAR = ARM_MPU_RBAR(9, 0x80000000U); MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 1, 0, 0, 0, ARM_MPU_REGION_SIZE_64MB); #endif /* RT1170_SDRAM_NOT_CACHED */ #endif Re: RT1170 debugging when application is built for SDRAM 你好@robert_s、 此脚本适用于 RT1050/60,但不适用于 RT1170/60。您可以使用附带的脚本。除脚本文件外,您还需要执行其他步骤。 在 C/C++ 版本 > MCU 属性设置中的内存详细信息中,将 BOARD_SDRAM 移至 SRAM_DTC_M7 上方。 连接脚本使用 RT1170_connect_M7_wake_M4_SDRAM_init.scp。 在附加选项中添加 --cachelib libm7_cache.so。 如果使用 USB/以太网/SDHC,请将 DMA 缓冲区放入非缓存区。 在 MCU C 编译器> 预处理器中添加 USE_SDRAM。 在属性中选择链接到 ram->设置->受管链接器脚本 如果项目与 USB 关联,则在 MCU C 编译器> 预处理器中添加 DATA_SECTION_IS_CACHEABLE=1。 如果项目与不带 freertos 的 USB 主机相关联,则将堆放入 DTCM 或不可缓存区域 (bm) 此致, 景
記事全体を表示
关于CANFD中二次采样点偏移SSP Offset的设置问题 在ISO 11898-1 2015,SSP要求是在普通采样点SP之前,但是公司规范中定义了 SSP offset 等于TSEG1,相当于SSP和SP在同一个位置。那么这个就失去了SSP的快速检测错误的功能。请问这个规范中固定的SSP offset是否合理。 例如:规范中要求CANFD采样点配置建议,其中SSP Offset =TSEG1   Re: 关于CANFD中二次采样点偏移SSP Offset的设置问题 您好, 我不知道 ISO 11898-1 2015 的确切措辞,也不知道您的图片来自何处。也许这只是误读。 符合 ISO 标准的 CAN FD 控制器使用 TDC 来测量回路延迟,并使用可配置的 SSP 使发射器能够在更高的数据速率下正确检测数据错误。省略 TDC/SSP 会使这一机制失效,从而降低错误检测的鲁棒性。 图示 TX 输出:代表控制器传输的 CAN FD 位。 RX 输入:代表收发器延迟后的接收比特。 TDC 测量:控制器测量 TX 和 RX 之间的环路延迟。 TDC 偏移:用户可配置的值,添加到测量的延迟中。 SSP 位置:计算公式为 SSP = TDC 测量值 + TDC 偏移。 SSP 不应该在 TX 功能域中的主 SP 之前。相反,在对 RX 信号进行采样时,它的位置应在考虑收发器延迟后与正确的比特中心对齐。从 TX 的角度看,SSP 出现的时间比正常 SP 晚,因为 RX 信号由于物理延迟而滞后于 TX。将 TDC 偏移量设置为等于标称 SP 可确保 RX 采样点与接收位处于同一时间,但可以自由设置,即位于位中间,这对于错误检测和数据完整性是最佳选择。 ISO 11898‑1 要求 SSP 进行发射器延迟补偿,而不是 TX 功能域中的早期错误检测。目标是确保发射器在延迟后能够正确验证自己的位。 BR, Petr Re: 关于CANFD中二次采样点偏移SSP Offset的设置问题 再次感谢
記事全体を表示
S32K3 SAF - sCheck_ExecuteStartupTests 运行到 HardFault Execption 您好,技术支持、 客户分享了 一个问题,即在启动时调用 sCheck_ExecuteStartupTests(),之后在执行 ECC 测试时会跳转到硬故障异常。 您能帮忙检查一下这一点吗? MCU: S32K314 SAFETY_SW Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 你好@marcuslim, 对于每个 sCheck 测试,都必须遵循 sCheck UM 章节中描述的所有条件: L1 CACHE ECC 测试 在这种情况下,很可能是内存部分的位置和适当的 MPU 设置有误,这对正确执行该测试非常重要。 更多详情,请参阅 sCheck UM 章节: 内存分配(将内存分配到具有正确的可缓存或不可缓存 MPU 属性的部分至关重要) ,您还可以在 SAF 演示示例中探索链接器文件和 MPU 设置。 亲切的问候, Radoslav Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨,拉多斯拉夫、 Cusotmer 将恩智浦示例中的 sCheck_ExecuteRuntimeTests() 替换为 sCheck_ExecuteStartupTests(),结果遇到了类似的错误。 能否请您明确说明我可以在哪里检查? Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨 @marcuslim 不,你不能通过在专用的用于运行时测试的循环中替换 sCheck 启动测试来使用。 启动测试只应在应用程序启动过程开始时执行一次。 此外,SAF 演示示例不支持 K314,因此,如果您重复使用了某些链接器文件,它很可能不会遵循 K314 设备的内存映射,需要进行更新。 SAF 不容易内置,需要认真学习 sCheck 手册并了解软件功能安全概念。 亲切的问候, Radoslav Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨,拉多斯拉夫、 客户反馈: 不过,我们目前遇到了与 ECC 检查有关的问题。您可能已经注意到,恩智浦示例中也出现了类似的 ECC 检查问题。 内置SAF软件包非常具有挑战性,因此,我们将感谢恩智浦专家在这方面的支持。 您能否就我们需要遵循和验证的与链接器相关的具体要点或要求提出建议,以便正确内置 ECC 检查? 提前感谢您的帮助。 Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 你好,Marcus, ,所有信息都应该从 sCheck UM 中清楚地了解到,至少我通常不会遇到这类问题,所以 SAF 团队认为 sCheck UM 在这方面是清楚的。 您能否询问客户 sCheck UM 到底有哪些不清楚的地方,以便我们改进? 谢谢, Radoslav Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨,拉多斯拉夫、 客户将 *(.ramcode_no_cacheable) 从 int_sram_no_cacheable 移至 int_sram,结果运行正常。 如有任何意见,请随时提出。 根据 表 55.sCheck 模块中的 MemMap 部分, 以下部分必须放在特定的闪存区域中: s32_saf_const_flash_0 → 代码闪存 0 s32_saf_const_flash_1 → 代码闪存 1 s32_saf_const_flash_2 → 代码闪存 2 s32_saf_const_flash_3 → 代码闪存 3 不过,在我的系统中,我使用的是 A/B 交换因此,在任何时候都只有 闪存 0 和 闪存 1 被应用程序激活/使用。 放置 s32_saf_const_flash_2 和 s32_saf_const_flash_3 和 32_saf_const_flash_3 可能会干扰未使用的闪存区域(例如,为其他闪存组或 OTA 更新预留的闪存区域)。 我的问题是 是否有办法配置 sCheck,使其只在 Flash 0 和 Flash 1 上执行测试? 或者 是否有安全的方法来测试所有四个闪存块(闪存 0-3),而不影响 A/B 交换使用的非活动库的内容? 的内容? Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨,拉多斯拉夫、 除了上一篇文章中提出的问题外,客户还分享说,在执行sCheck_ExecuteStartupTests和sCheck_ExecuteRuntimeTests 之后,系统始终报告同一组与 ECC 相关的错误: scheck_err_dcache_ecc_cm7_0 scheck_err_icache_ecc_cm7_0 SCHECK_ERR_ITCM_M7_0_ECC SCHECK_ERR_DTCM_M7_0_ECC 在每次测试执行过程中,这些错误都会反复出现。 能否请您协助我们调查并确定这种行为的根本原因? 敬上, 马库斯 Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨 @marcuslim, 将 *(.ramcode_no_cacheable)从 int_sram_no_cacheable 移至 int_sram 起作用可能有点巧合。 我怀疑如果客户将 HFNMIENA 设置为 0,则在触发信号时可能会造成麻烦。 请检查一下 MPU_CTRL.HFNMIENA 的值是多少。 如果该值为零,则已针对即将发布的 1.0.6 版本进行了以下修复: [ASFT-19327] [sCheck] 不支持 Arm M7 HFNMIA - 恩智浦 JIRA sCheck 闪存测试不能仅缩减为 Flash_0 和 Flash_1,但已对即将发布的 1.0.6 版本进行了更改,无需将特定的闪存部分放入链接器文件中,而是使用配置的闪存地址,其中地址的内容不会被修改,这也可以解决 A/B 交换客户的问题。 https://jira.sw.nxp.com/browse/ASFT-19738 此致, 拉多斯拉夫 Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 你好@marcuslim ,我认为有一个共同的根源。 内存部分需要根据可缓存/不可缓存 MPU 属性正确放置,上一篇文章中提到的 HFNMIENA 位也会造成问题。 亲切的问候, Radoslav Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨,拉多斯拉夫、 客户尝试重新定位 *(.ramcode_no_cacheable)。 到 int_sram_noo_cacheable 而不是 内存 并将 HFNMIENA = 0。 此外,还对 MPU 进行了适当配置,以允许从不可缓存 RAM 区域执行代码。 经过进一步调查,发现在 sCheck_Tcm_RunEccTest 中的函数 sCheck_Tcm_MemTestEccCorrError 和 sCheck_Tcm_MemTestUncorrError 函数将被执行。 这两个函数都调用 sCheck_ErrRead(pParams,&result)。 但是,当 sCheck_Tcm_MemTestEccCorrError 成功完成、 scheck_tcm_memtestuncorrerRror 在 调用 scheck_errRead(PParams,& 结果)(附图中的第 1 点)时会 触发 HardFaul t, 系统随后卡在 BusFault 处理程序 (所附图像中的第 2 点) 中。 能否请您帮助调查一下这一点? Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨 @marcuslim, 对不起我错了,你的 SAF 版本中的正确设置应为 HFNMIENA = 1,以避免在异常中更改 MPU 设置,这可能会进一步导致缓存之后刷新一些变化。这就解释了为什么 TCM correctable 可以通过,而 Uncorrectable 不能通过,因为它使用异常来测试正确的反应。 亲切的问候, Radoslav Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨,拉多斯拉夫、 客户反馈: >>>>>>>> 配置HFNMIENA = 1 后,我发现sCheck_ExecuteStartupTests()可以正常运行。此时,我不再观察到任何与 ECC 相关的错误。我将进行额外的压力测试,以进一步验证这种行为。 但是,当调用 sCheck_ExecuteRuntimeTests() 并随后调用 sCheck_Tcm_MemTestUncorrError() 时,系统会在设置 INVSTATE(无效状态)标志的情况下触发信号 UsageFault 异常。 请问sCheck_ExecuteStartupTests()和sCheck_ExecuteRuntimeTests()之间是否存在任何设计上的差异或特定的使用条件,会导致这种行为? 此致, 马库斯 Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 您好@marcuslim, 如果启用了 FPU,这可能表明存在参数问题,我们需要进一步调查。 您能否尝试禁用 FPU 并重新进行测试? 现在结果如何? 启用 FPU 后,能否在 Watch 窗口的异常跟踪中使用这些变量: sCheck_ErrRead_ExceptionContext.bAbortFlag sCheck_DetectedFaults[0] 并再次粘贴截图? FCCU NCF_2 通道的配置反应是什么? , Radoslav。 Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨,拉多斯拉夫、 请在此提供所需的信息: 要点 1:禁用 FPU - 同样的错误。 要点 2:启用 FPU 第 3 点:FCCU NCF_2 反应 此致, 马库斯 Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 你好,马库斯、 最新截图显示,它产生的是内存管理故障,而不是使用故障(如原帖所示)。因此,我认为我们需要澄清我们面临的例外情况是什么。 请检查/共享 MPU 配置。 你能检查一下异常是否由"LDRD R0,R1,[R1]\n" 指令(来自 sCheck_Lib_ARMv7M.c 或其他指令)引起的吗? 亲切的问候, Radoslav Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨,拉多斯拉夫、 附上客户的 MPU 配置和链接器文件。他希望我们对其进行审查。 此致, 马库斯 Re: S32K3 SAF - sCheck_ExecuteStartupTests run to HardFault Execption 嗨 @marcuslim, 我看到他们重复使用了 RTD 示例 systemInit () 中的 MPU 配置。 请注意,这只是 RTD 的短截线,未经验证,即使对于某些 RTD 驱动程序来说也可能不够,更不用说 SAF 了。 同样,对于链接器文件,我可以看到来自RTD链接器文件的来源,以及额外的SAF和SCST内存部分。 关于 MPU 配置,我强烈建议使用 RTD Platform 插件配置 MPU。 在 SAF 演示示例中,我们还提供了 K344 的 MPU 配置示例(不是 K314,但只需修改 TCM 的正确内存大小)。 但它也只是 SAF Demo 设置的示例代码(短截线),未经过验证的交付内容。 按照人工智能的要求,他们的 MPU 配置应该代表这种设置: 地区 RBAR 地址 大小 类型/缓存政策 可共享 门禁系统 说明 0 0x00000000 覆盖整个地址空间(RASR = 0x1004003F ) 强烈订购,无缓存 是 无访问 背景区域阻挡一切 1 __INT_ITCM_START 来自链接器 正常,无缓存 无 RW/RW 用于 CM7 的 ITCM 2 __ROM_CODE_START 来自链接器 正常,WB/WA(内侧& 外侧) 无 RO/RO 主程序闪光 3 __ROM_DATA_START 来自链接器 正常,WB/WA 是 RO/RO 数据闪存 4 0x1B000000 8 KB ( 0x160B0019 ) 正常,WB/WA 是 RO/RO UTEST 地区 5 __INT_DTCM_START 来自链接器 正常,无缓存 无 RW/RW CM7 的 DTCM 6 __INT_SRAM_START 来自链接器的大小 ( __RAM_CACHEABLE_SIZE ) 正常,WB/WA 无 RW/RW 可高速缓存 SRAM(禁用子区域 6 和 7) 7 __RAM_NO_CACHEABLE_START 来自链接器 正常,无缓存 是 RW/RW 非缓存 RAM 区域 8 __RAM_SHAREABLE_START 来自链接器 正常,无缓存 是 RW/RW 可共享内存 9 0x40000000 6MB 强烈订购,无缓存 是 RW/RW AIPS0-2 外围空间(禁用第 6/7 分区) 10 0x40600000 S32K314 已禁用 — — — AIPS3;仅在 S32K39x 上有效 11 0x67000000 128 MB 强烈建议 是 RW/RW QSPI RX 12 0x68000000 128 MB 正常,WB/WA 无 RW/RW QSPI AHB 映射区域 13 0xE0000000 默认 ARM PPB 大小 强烈建议 是 RW/RW 私人外围总线(SCB、NVIC 等) 14 __ROM_CODE_START + 0x400000 S32K314 为 0 — — — 附加程序闪光灯(仅对其他衍生产品有效) 15 0x44000000 S32K314 为 0 — — — ACE 区域仅在 S32K388 上活跃 这是 K344 的 SAF 演示示例中的 MPU 配置: 简单比较这两个 MPU 配置 + 链接器文件可以看出: -这些内存部分的位置不正确:* (.s32_saf_const_flash_1) * (.s32_saf_const_flash_2) * (.s32_saf_const_flash_3) * (.s32_saf_const_flash_4) * (.s32_saf_const_const_flash_4) * (.s32_saf_const_const_flash_4) * (.s32_saf_const_const_flash_4) * (.s32_flash_5)-看不到不可缓存的 SRAM 的可执行属性,但这不是 sCheck 所要求的,这可能是 SAF 示例 MPU 设置中的冗余属性——考虑到客户正在运行操作系统,我预计操作系统及其需要一些特定的 MPU 设置和内存部分 应用程序(只是猜测,并不是说这可能是某些问题的根本原因) 无论如何,客户应遵循 SAF 用户手册和 RTD 手册第 " 章内存分配 " 进行正确的 MPU 和链接器文件设置,重复使用恩智浦示例中的短截线不是一个好做法。 特别是当操作系统在 sCheck 测试期间运行时,还需要按照 sCheck 章节" Exclusive Areas(在 BSW Scheduler" 中定义的专属区)进行测试。eMcem 和 RTD 驱动程序中也有类似的排他性区域。 亲切的问候, Radoslav
記事全体を表示
FS26 无法 RESET S32K3 我正在使用 RTD 层在带有 FS26 的 S32K314 上进行开发。 目前,我遇到 FS26 无法 RESET MCU 的问题。 FS26 成功进入正常状态,但是当我故意停止为看门狗供电时,RSTB 引脚没有被拉至低电平,也没有 RESET MCU。 您能帮我检查一下可能出了什么问题吗?谢谢。 有关我的配置设置和初始化步骤,请参阅所附的图片。 Re: FS26 CAN'T NOT RESET S32K3 嗨,彼得、 感谢您的回复。 我正在定制板上开发,我可以确认硬件已经退出调试模式。 我尝试刷新一个没有进行任何 FS26 初始化的版本,在那个版本中,FS26 会持续 RESET MCU。 但是,当我闪回我提供给你的版本(包含 FS26 初始化的软件)时,FS26 不再 RESET MCU。 此外,你还可以看到我的配置,如附件所示,我选择了调试模式退出。 请帮助检查 FS26 初始化过程中是否有任何错误。谢谢。 Re: FS26 CAN'T NOT RESET S32K3 你好 你能分享一下你使用的是恩智浦评估板还是定制主板吗? 确保 FS26 未处于调试模式。在这种情况下,WDOG 将被禁用,超时时不会有任何反应。 顺祝商祺! Peter Re: FS26 CAN'T NOT RESET S32K3 你好 好的,谢谢你的解释。 此外,你还可以看到我的配置,如附件所示,我选择了调试模式退出。 好的,这只是配置图形用户界面中的复选框。 如果从 FS26 读回,它真的处于正常模式吗? 我尝试刷新一个没有进行任何 FS26 初始化的版本,在那个版本中,FS26 会持续 RESET MCU。 如果 FS26 未初始化,WDOG 将发出 RESET 命令,RESET 阶段将自动重新开始。 初始化阶段必须在 256 毫秒超时前通过良好的看门狗刷新关闭。如果在初始化阶段没有发送监视器刷新或监视程序不正确,则会生成 RSTB 脉冲,故障错误计数器将增加 1。当 RSTB 版本发布时,新的初始化阶段会自动启动。 但调试模式也是通过调试引脚激活来保持的。但是由于RESET是在没有完成初始化的情况下进行的,我预计你没有激活调试引脚。 但是,当我闪回我提供给你的版本(包含 FS26 初始化的软件)时,FS26 不再 RESET MCU。 因此,在我看来,这与代码直接相关。 因此,我认为可能只有两种选择。 1. 您的 WDOG 未激活 2. 您已进入调试模式。 否则,FS26 将发出 RESET。 可以添加 FS26 模式调试模式检测检查,以确保 SBC 启动后不处于调试模式。 同时检查 FS_I_WD_CFG 顺祝商祺! Peter Re: FS26 CAN'T NOT RESET S32K3 嗨,彼得、 请看我蓝色字体的回复。谢谢。 仍未找到监视程序未触发信号 MCU RESET 的根本原因。 如果从 FS26 读回,它真的处于正常模式吗? Wade : 是的,我通过 spi 读取了 FS_STATES,它返回 1011(正常)。 1. 您的 WDOG 未激活 韦德:我用 spi读取了FS_I_WD_CFG 并返回了 0101 1010 0001 0000,与我的配置相同。 2. 您已进入调试模式。 Wade : 没有,我通过 spi 读取 FS_STATES,它返回 1011(不在 DEBUG 模式下)。 Re: FS26 CAN'T NOT RESET S32K3 嗨,彼得、 我在上一篇文章中漏掉了一张图片。 请一并参阅。谢谢。 Re: FS26 CAN'T NOT RESET S32K3 你好 这就奇怪了。 我检查过你们的登记簿: 如果从 FS26 读回,它真的处于正常模式吗? Wade : 是的,我通过 spi 读取了 FS_STATES,它返回 1011(正常)。 1. 您的 WDOG 未激活 韦德:我用 spi读取了FS_I_WD_CFG 并返回了 0101 1010 0001 0000,与我的配置相同。 wd_fs_reaction[1:0] 如果设备未处于调试模式,则此类配置将触发信号RESET。 2. 您已进入调试模式。 Wade : 没有,我通过 spi 读取 FS_STATES,它返回 1011(不在 DEBUG 模式下)。 这说明是正常模式。 我不清楚你那边发生了什么。 你能不能通过示波器检查RESET线,看看RESET没有被拉出。另外,你在恩智浦评估板上看到同样的行为吗? 那调试引脚呢,不是激活的吗? 默认情况下,在没有任何SBC配置的情况下,RESET会被触发信号,因此您的SBC配置中必须有一些内容,防止从SBC向uC执行RESET。 您是否尝试过 RTD 软件包提供的 FS26 示例软件? 顺祝商祺! Peter
記事全体を表示
S32K144 CAN通讯异常 各位大佬:   我发现个异常的现象,我基于S32K144的CAN通讯DEMO整改了一下,在DEMO板可以正常外发报文通讯,我的CAN模块的时钟使用的内部48M的,移植到自制板子通讯也正常,但是我们我把时钟源切换到外部晶振,一旦倍频数值大于28,CAN通讯外发报文功能就消失了,不是特别理解原因,有什么需要特别注意的地方么?   回复: S32K144 CAN通讯异常 我的IDE是S32 for platform 3.5,SDK是4.0.1,我同事的是S32 for ARM 2.2,SDK是4.0.1,SDK是3.0.0,他修改clockout也没有用 你如果倍频输配置到28可以么?工程传不上来,一直加载 回复: S32K144 CAN通讯异常 仅供参考 回复: S32K144 CAN通讯异常 Hi@NanMo 我没看懂,你能详细的解释下嘛 回复: S32K144 CAN通讯异常 更新状态,发现通过S32K144配置时钟树选择配置一下clockout这一路的配置后状态就正常了,大家小心工具,痛并快乐着......   Re: S32K144 CAN通讯异常 Hi@NanMo 我复现了该问题,我也没在数据手册中看到有这样的限制要求,所以我创建了一个内部帖子等待设计团队的人给我一个回复,请你耐心等待。 回复: S32K144 CAN通讯异常 原理未知,可靠性未知,望答复 回复: S32K144 CAN通讯异常 红色框图部分原来我没有修改,默认状态下去生成代码后CAN功能在我使用不同时钟源的状态下功能不一致,后面把这两个选择点开配置成spll sclock,编译烧录发现通讯正常了,再把这里的配置依照印象改回去(不一定和原来一模一样奥),编译烧录发现通讯一直正常,我想知道为啥,折磨了我两天半了 回复: S32K144 CAN通讯异常 Hi@NanMo1 你可以分享这些第三方代码给我,我可以看看。 这个问题我已经在和内部的设计团队进行确认了,这个需要点时间。如果你的项目有需求,你现在FLEXCAN完全可以使用外部的晶振时钟,这个应该是没有问题的。 回复: S32K144 CAN通讯异常 这个账号是我使用公司邮箱注册的账号,这个问题还在困扰着我,但是我发现有部分第三方代码可以实相同配置下的CAN通讯,这个具体原因是什么? 回复: S32K144 CAN通讯异常 Hi@NanMo 我测试将PLL倍频设置为40是工作不OK的,我已经提交了case至设计团队来询问时钟的限制,因为我在数据手册中没看到有这样的限制要求。 其次你说了改了CLKOUT又可以,但是我改了也没用,你要是有成功的例程,你可以发送给我测试一下。 回复: S32K144 CAN通讯异常 Hi@NanMo 如果PLL倍频设置为40,PE时钟选择为外设时钟,我的CAN通信也异常。 回复: S32K144 CAN通讯异常 仅供参考 回复: S32K144 CAN通讯异常 Hi@NanMo1 你提供的工程所使用的时钟是外部晶振时钟,这个有什么问题?这和你的问题不一样吧 回复: S32K144 CAN通讯异常 CAN的PE模块一直都是用的外部时钟,发现如果系统使用外部倍频的时钟有时候CAN不正常,而且在不同板子上现象不一样。 回复: S32K144 CAN通讯异常 我第一次上传的例程就是 回复: S32K144 CAN通讯异常 Hi@NanMo1 上传你的demo 回复: S32K144 CAN通讯异常 我的demo板是100pin的,我的自制板子是64pin的,我在100PIN的基础上直接切换成64PIN会有问题,但是如果切换完后删掉所有的配置重新走配置流程功能就正常了 Re: S32K144 CAN通讯异常 谢谢您的答复。我现在明白了问题的原因。 Re: S32K144 CAN通讯异常 Hi@NanMo 抱歉,让您久等了。 这是 S32 DS IDE 的一个错误。 我发现这是 S32 DS 工具中的一个错误,我录制了一个视频供你参考。 问题在于,我们修改 SPLL 因子后,并没有更新生成的代码,从而导致 FLEXCAN 配置错误。 在"clock_config.c" 中,"SCG_SPLL_CLOCK_MULTIPLY_BY_28" 不会改变,即使我们尝试改变 修改 SPLL 因子。 .spllConfig = { .initialize = true, .monitorMode = SCG_SPLL_MONITOR_DISABLE,/* Monitor disabled */ .locked = false, /* unlocked */ .prediv = (uint8_t)SCG_SPLL_CLOCK_PREDIV_BY_1,/* Divided by 1 */ .mult = (uint8_t)SCG_SPLL_CLOCK_MULTIPLY_BY_28,/* Multiply Factor is 28 */ .src=0U, .div1 = SCG_ASYNC_CLOCK_DIV_BY_2, /* System PLL Clock Divider 1: divided by 2 */ .div2 = SCG_ASYNC_CLOCK_DIV_BY_4, /* System PLL Clock Divider 3: divided by 4 */ }, 1.直接修改底层配置代码。 2.我发现先将运行模式切换到 HSRUN,然后再切换回 RUN,并在此过程中修改 SPLL 因子,这样就能正常生成代码。
記事全体を表示
PN7642 RF Design-in Tips and Tricks Prerequities:  PN7642 design-in recommendations   1// Impedance tuning  PN76 family antenna design guide The target impedance is chosen based on the target application. If full power is required (e.g., POS terminals). The target impedance of 15-17 Ω is recommended. For lower power applications using ULPCD, the higher impedance is typically preferred, 30-50 Ω (symmetrical tuning).   2// Dynamic power control  PN7642 - Basic RF power limitation using DPC   3// H-Field check  There are given limits, especially for the maximum H-field radiated by the reader. Exceeding these limits might lead to destroying the NFC Card/NFC Tag.   The H-Field can be measured with the help of test equipment, as  ISO 10373-6 Test PICC EMVCo 3.0 Test PICC  For indication only, the customers can use "smart" Field Strength Probes as shown below :    Note: The most critical position occurs when the card is placed directly on the NFC antenna . In this case, if the H-field exceeds the maximum allowed level, the output power must be reduced using DPC settings. 4// HF Attenuator value  Turn on the RF Field with the DPC set and enabled from the previous step  Read the CLIF_RXCTRL_STATUS register and check the HF_ATT_VAL as shown below.  The value for the "unloaded" condition with full power shall be approximately 35-45dec.  If the value is out of this range, the customer is required to adjust the Rx resistors to reach this value.  5// Receiver settings  Check the "Power" range and Communication Range with the default settings provided by NXP.  Power Range -> The distance at which the NFC Tag can still generate its answer, but the NFC Reader does not see it  Communication Range -> The distance at which the NFC Tag can still communitate with the NFC Reader  Ideally, Power Range ≈ Communication Range Also, the NFC Reader should not generate any false communications as e.g., "HAL COLLISION ERROR".  The optimisation of the receiver can be done in the following way:  Enter DPC Calibration  Go to the "ARC" menu and "disable" the ARC algorithm This will force the IC to use the RX settings from the following Register/EEPROM SIGPRO_RM_TECH_REG DGRM_RSSI_REG   5.1// SIGPRO_RM_TECH_REG (RM_MF_GAIN parameter) This parameter basically defines the gain of the input amplifier.  Select SIGPRO_RM_TECH_REG  Switch "operation" to EEPROM and choose the required technology  Increase the RM_MF_GAIN to 0x02 (it depends on the setup).     5.2// DGRM_RSSI_REG (DGRM_SIGNAL_DETECT_TH_OVR_VAL parameter) This parameter defines a threshold from which the internal logic starts to decode the incoming signal.  If the threshold is too low or very close to the noise floor, the system can detect the noise as an NFC Communication.  It is therefore,  Threshold + margin > noise floor The best routine is to perform "Signal Detection Threshold" analysis. This can be done with the help of the NFC Cockpit (described in PN7642 design-in recommendations) As a result, the user can obtain the mean value of the "Noise," and suggested "DGRM_SIGNAL_DETECT_TH_OVR_VAL" threshold based on the inserted "Margin."  Maring (m) + Noise mean value (μ) = Threshold  6+16=23 Then this value shall be written in "DGRM_RSSI_REG" EEPROM as shown below.    6// ULPCD Settings  We recommend the following ULPCD Settings as a starting point.  ULPCD VDDPA should be chosen in such a way that the HF Attenuator value is not 0x00! The typical value for HF Attenuator in ULPCD is around 0x05-0x0B.   6.1// RSSI Threshold evaluation  For a proper RSSI Threshold selection, it is recommended to perform the ULPCD Calibration, e.g., 20 times, and check the "jitter" of the RSSI signal for your device.  If you see that the RSSI value is jittering, e.g., 1 unit as shown above. The absolute minimum threshold for this case is 2. However, it is always recommended to include adequate margin (To prevent false wake-ups).   Generally, the margin of 2 units is sufficient. So in this case, the optimum threshold will be 4. 
記事全体を表示
访问 nxp.com 您好。 如果不使用VPN,就无法访问nxp.com功能域的所有站点。 我收到了错误信息: Access Denied You don't have permission to access "http://mcuxpresso.nxp.com/en/dashboard" on this server. Reference #18.977a7b5c.1754475329.7d13ec17 https://errors.edgesuite.net/18.977a7b5c.1754475329.7d13ec17 也许这些都是按 IP 地址设置停止列表的错误。 恩智浦公司有谁能解决这个问题? Re: Access to nxp.com   同样的问题 您没有权限访问该服务器上的"http://www.nxp.com/" 。 参考 #18.633c655f.1754500173.c79a737 https://errors.edgesuite.net/18.633c655f.1754500173.c79a737
記事全体を表示
PN7220 配备一个主机,用于 EMVCo 轮询和 NFC Forum 轮询 大家好, 我计划使用带有 PN7220 的主机 SoC 来支持 EMVCo 和 NFC Forum 轮询。我不确定是否应该使用 I2C、SPI 接口或两者来实现此功能。 读取符合 EMVCo 标准的 MasterCard/Visa 卡是否需要 SPI? 虽然我不需要 PCI 认证,但我确实需要通过万事达卡/维萨卡作为虚拟 POS 接受付款。我可以仅使用 I2C 接口进行 EMVCo 和 NFC 操作吗? 或者,考虑到我的硬件中只有一个运行 Android 的 SoC,我是否应该使用单独的接口,使用 SPI 进行 EMVCo 轮询,使用 I2C 进行 NFC? 您能否建议将 PN7220 连接到基于 Android 的主机的最佳方法?我是否应该动态切换 MODE 引脚以同时支持 EMVCo 和 NFC Forum?我是否需要同时使用 SPI 和 I2C 接口? 谢谢! 回复:PN7220 配备一个主机,用于 EMVCo 轮询和 NFC 论坛轮询 你好@mcihangir ,祝你有个愉快的一天! 非常感谢您对我们的产品感兴趣。 关于使用 PN7220 支持 EMVCo 和 NFC Forum 技术,考虑到您的设置中只有一个 Android 主主机,您可能只使用 PN7220 HIF1 来实现 I2C 通信,因为在单主机模式下 PN7220 支持使用这两种技术,只需切换Mode_Switch_GPI 即可选择这两种技术。 请参阅PN722X NFC 控制器用户手册第 4 节,以深入了解单主机模式的通信流程,并考虑查看表 8。同一文档中的 PN722X GPI 使用情况,以了解Mode_Switch_GPI 的信号处理。 谨致问候, 丹尼尔。
記事全体を表示
哪种内存性能高?OCRAM 还是 SDRAM 我通过 16 个引脚的 semc 端口将 sdram( W9825G6KH-5i )连接到 rt1176。 我想知道哪种内存性能较高。 板上的片上 RAM 或 SDRAM。 回复:哪种内存性能高?OCRAM 还是 SDRAM 在内存方面,ITCM 和 DTCM 将是最快的,因为它们以与核心相同的速度运行并且不使用缓存。OCRAM 速度较慢(对于 memcpys 来说慢 3-4 倍,IIRC),因为它必须经过 AXI 总线和缓存。SEMC 可能无法比 OCRAM 更快(因为它使用相同的 AXI 总线和缓存),但确切的速度取决于设置。
記事全体を表示
S32G-VNP-RDB32 (SJA1110) 交换机中的寄存器访问 你好, 我想把值写进寄存器你能不能给我一个完整的地址来 读写地址 名称访问RESET描述 8Ch DYN_BE_LKP_ ENTRY0 R/W 0h (ffffFFe h) 8ch 之前的基址是什么?比如它会有 0x3fc0008c 所以在这个动态入口表中我们会有完整的地址你能不能给我 8Ch DYN_BE_LKP_ ENTRY0 R/W 0h (fffffF eh) 90h DYN_BE_LKP_ ENTRY1 R/W 0h 94h DYN_BE_LKP_ ENTRY2 R/W 0h 98h DYN_BE_LKP_ R/W 0h 98h DYN_BE_LKP_ ENTRY3 R/W 0h 9Ch DYN_BE_LKP_ ENTRY4 R/W 0h a0h a0h DYN_BE_LKP_ ENTRY5 R/W 0h A4H DYN_BE_LKP _CTRL R/W 0h (ff800000H) 你能不能给我提供在寄存器中配置动态条目的完整地址? 以及需要在 SJA1110 Switch 中实现此功能的地方 Re: Register Access in S32G-VNP-RDB32 (SJA1110) Switch 你好@Atkinson、 我知道这乍看起来可能并不简单,但实际上这个概念非常简单。 最终的寄存器地址取决于访问方法--是通过 AHB 在内部访问 M7 内核,还是通过 SPI_AP 接口从外部访问。基本地址因接入点而异。 寄存器地址使用 UM11107 表 2 中提供的基地址计算。例如,对于交换机子系统,SPI_AP 访问的基地址为0x00000000 ,AHB 访问的基地址为0xFF000000 。 在这种情况下,通过 AHB 访问寄存器0x8C (DYN_BE_LKP_ENTRY0)时,寄存器会变成0xFF00008C 。 现在,可能会让人感到困惑的地方来了:SDK 驱动程序定义了以下内容: #define SJA1110_L2_ART_LE_ADDR(0x3fc00023) /**< l2ArtLockedEntry 寄存器的地址 *   SWITCH_DRV_Write 例程将地址左移 2 位 (<< 2),用于内部 (AHB) 访问。对于 SPI 传输(级联开关设置中使用),不应用移位。因此,0x3fc00023 << 2 的结果是0xFF00008C。   我希望通过上面的解释,现在有感知了。   顺祝商祺! 帕维尔
記事全体を表示
无法安装S32K3xx开发包和FreeMASTER串行通信驱动程序版本1.3.0 我已经收到了S32K3X4EVB-T172。 问题 1 :当我尝试安装 S32DS 3.5.9 时,我无法通过SW32_S32DS_3.5.9_D2312.zip安装S32K3xx 开发包,仅显示S32 Design Studio 平台包和S32 Design Studio 平台工具包。 2.获取软件:2.2 安装S32K3xx开发包 打开关于 S32 平台的 S32 设计工作室对话框(菜单 → 帮助 → 关于 S32 平台的 S32 设计工作室)显示以下内容: 面向 S32 平台的 S32 设计工作室 版本:3.5 版本号:231219(更新 9) 问题 2 :我已经在步骤“2.4获取运行时调试工具”,但我无法在S32DS 扩展和更新对话框(菜单 → 帮助 → S32DS 扩展和更新)上安装“FreeMASTER 串行通信驱动程序版本 1.3.0”。 错误信息如下: 操作详情 正在安装的软件:com.nxp.s32ds.s32k3.sdk.freemaster.feature.feature.group 1.3.0.202312191400缺少要求:com.nxp.s32ds.s32k3.sdk.freemaster.feature.feature.group 1.3.0.202312191400 需要“org.eclipse.equinox.p2.iu;com.nxp.s32ds.s32k3.dev.feature.feature.group 1.0.0”但找不到。 安装详情: 软件包:适用于 Arm 嵌入式处理器 12.1 Build 1702 的 GDB 客户端;版本:1702;构建 ID:202309251304 软件包:S32 Design Studio 平台软件包;版本:3.5.9;版本号:202312191958 软件包:S32K3 RTD AUTOSAR R21-11 版本 3.0.0;版本:3.0.0;版本号:202303311831 软件包:S32K3.P01 RTD AUTOSAR R21-11 版本 3.0.0;版本:3.0.0;版本号:202304031555 软件包:GNU ARM PEMicro 接口调试支持;版本:5.1.7;版本号:202112141853 软件包:S32 Design Studio 平台工具包;版本:3.5.9;版本号:202312191958 软件包:NXP GCC for Arm Embedded Processors Build 1620;版本:1620;版本号:202005201521 软件包:S32 Design Studio Debugger Core;版本:3.5.9;版本号:202312191723 回复:无法安装S32K3xx开发包和FreeMASTER串行通信驱动程序版本1.3 我已经安装了FreeMASTER 1.3.0 RTM (FMASTERSW32.exe),之后我从 SW32K3xx_S32DS_3.5.0_D2303.zip 安装了 S32K3xx 开发包(从以前的版本 S32DS 3.5.3 上传)。
記事全体を表示
在GUI GUIDER 1.7.0上经常出现collect2.exe': CreateProcess: No such file or directory 1、编译软件为V1.7.0 2、JAVA版本为:22.0.1 2024-04-16 3、增加imgbtn的新图片时,会出现如下问题 问题信息如下: "Compiling E:/UI_test/p1_prj-psh/p1_prj/lvgl-simulator/../custom/custom.c" "Linking simulator.exe" gcc: fatal error: cannot execute 'd:/nxp/gui-guider-1.7.0-ga/environment/mingw/bin/../libexec/gcc/mingw32/9.2.0/collect2.exe': CreateProcess: No such file or directory compilation terminated. mingw32-make: *** [default] Error 1 @Alex_Wang  Re: 在GUI GUIDER 1.7.0上经常出现collect2.exe': CreateProcess: No such file or directory Hi Alex,     非常感谢你的回复,此问题已解决! Best regards, Elisen Re: 在GUI GUIDER 1.7.0上经常出现collect2.exe': CreateProcess: No such file or directory Hi, @ElisenChen  编译报错问题原因:gcc命令行长度有32K的限制,您应用最后链接的时候,命令长度超过了限制。 解决办法:把.o先编译成静态库,然后使用静态库生成最后的可执行文件。下面对 \lvgl-simulator\Makefile的修改可以解决这个问题。 将Makefile中default替换以下内容: default: $(OBJS) $(GEN_OBJS)   @echo "Linking $(SIMULATOR_EXE)"   @ar -csr libgenerated.a $(GEN_OBJS)   @$(CC) -o $(BIN_DIR)$(SIMULATOR_EXE) $(OBJS) -L. -lgenerated $(LDFLAGS) 非常感谢您提到的问题,我们会在GUI Guider 1.8.0修复这个问题。 Best regards, Alex Re: 在GUI GUIDER 1.7.0上经常出现collect2.exe': CreateProcess: No such file or directory Hi Alex,      感谢,期待你与团队的回复 Re: 在GUI GUIDER 1.7.0上经常出现collect2.exe': CreateProcess: No such file or directory Hi, @ElisenChen  我对您的工程进行了检查,工程看起来没有什么问题,我已交给GUI Guider开发团队进行分析,正在积极查找问题原因。当我删掉了您指的所有控件,复制控件(不要新建)使用是没有问题的,您可以进行尝试。可参考附件中的视频,如有任何更新,我会第一时间回复您。 Best regards, Alex (view in My Videos) Re: 在GUI GUIDER 1.7.0上经常出现collect2.exe': CreateProcess: No such file or directory Hi everyone,     如下问题是否有其他解法或是建议吗?
記事全体を表示