Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
VOL for I2C lines at IOL 3mA Hello, This is Arumugam. May I know the VOL max voltage to consider for I2C lines. Should I consider as 0.7V @1mA or 3mA Thanks Arumugam Re: VOL for I2C lines at IOL 3mA Hi @Arumugam1982  The VOL/VOH levels for the I2C lines depend on the pad supply rail and the corresponding electrical specification of the selected pin configuration. The LPI2C pads can be supplied from either VDD_HV_A or VDD_HV_B, depending on the pin muxing and pad assignment, so this should be verified using the device IOMUX information. The datasheet defines the input thresholds (VIH/VIL) directly in the GPIO DC electrical characteristics tables. However, VOH/VOL are usually defined indirectly through the output drive current conditions, such as IOH and IOL. In practice, the recommended approach is to rely on the VOH/VOL conditions linked to the corresponding IOH/IOL parameters for the selected pad configuration, rather than assuming a specific current value (mA). A specific current should only be used if it is explicitly defined in the datasheet for that electrical characteristic. BR, VaneB Re: VOL for I2C lines at IOL 3mA Should I consider the same VOL for IOL -1mA /3mA /8mA. I need this number for my WCA calculation. Re: VOL for I2C lines at IOL 3mA Hello, Which Symbol are you using in the data sheet from Table 27 (ex. IOL_33_S)? Regards, John
查看全文
LX2160A XSPI in Single Mode - Unused pins HI, It is not clear what would be the configuration of the DAT2-DAT7 signals when configuring the XSPI to operate in a Singl Mode. Can they be left unconnected? Noam Re: LX2160A XSPI in Single Mode - Unused pins Hi, The thing is that pins are configured in groups, in particular: XSPI1_A_DATA30_PMUX: configures XSPI_A_DATA[3:0] for either SPI or GPIO Is it still safe to leave DAT[3:2] floating when using single mode spi? Re: LX2160A XSPI in Single Mode - Unused pins Hello, On LX2160A XSPI Single mode, DAT2–DAT7 may be left unconnected, with the documented recommendation that unused XSPI data pins be configured as GPIO outputs and left as no-connect. Regards
查看全文
ISP 对 iMX95 FRDM 评估套件的支持 大家好, 我正在尝试将拜耳传感器移植到 i.MX95 FRDM 平台上。按照下面的软件设置指南,我能够使用 NXP 网站上提供的 NXP 支持的 OS08A20 摄像头模块连接并传输视频。 现在,我想移植并传输另一个拜耳传感器的数据。是否有相关文件解释以下内容: 如何获取 libcamera 源代码以及如何为 i.MX95 平台制作版本? 如何为新的拜耳传感器生成特定于 ISP 的 YAML 和配置文件? 要在 i.MX95 FRDM 平台上支持拜耳传感器,需要哪些相机驱动程序参数和控制? 将新型拜耳传感器集成到 NXP ISP 流水线中的完整软件流程是什么? 请您尽早告知。谢谢 Re: ISP support for iMX95 FRDM Evaluation kit 你好, 请参考以下指南: https://www.nxp.com/docs/en/user-guide/UG10215.pdf 此致敬礼/Saludos, 阿尔多。
查看全文
T1024 RESET_REQ without any cause registered Hi, there are some months we have a problem with T1024 CPU. Thank you in advance. PROBLEM DESCRIPTION: We use T1024NSE7KQA CPU inside our industrial PLC. Until last year were using MQX OS (single-core implementation), then we had it ported to a dual-core Linux implementation using SDKLINUX (the OS has been mostly implemented by a third-party). The HW is physically the same of the previous MQX OS version. All units show a problem during Linux startup: the MCU get stuck (the MCU itself asserts RESET_REQ_B). The event is not deterministic: only 10% of startup cycles are affected but it happens always in the same OS startup phase. We replicated the problem with a periodic startup/power down sequence. If the event appears after powerup, it happens always ~40 s after HW startup/initialization and 5-8 s after the OS startup has completed (the time from the startup to the event slightly changes due to a slight variability in the OS process schedule). Otherwise, the event won’t show up again and we need to wait for some power cycles for it to happen. The RCW is correct and the PBL phase completes correctly. With oscilloscope we checked the O1VDD, OVDD, G1VDD, VDD, VDDC rail voltage before the event but they are stable and inside CPU tolerances. During the event we measured a RESET_REQ_B:H->L transition. We interrupted any on-board connection from RESET_REQ_B to onboard circuitry (so that RESET_REQ_B does not force a transition of HRESET_B nor PORESET_B) in order to read the DCFG_CCSR_RSTRQSR1 register in the same startup cycle or in the following one but it results to be always 0x0 value. We are sure that CPU is internally requesting the reset but we cannot find its reason. We set the max verbosity to the OS log but just before the event during a problematic startup we cannot see nothing different (compared to a startup without the issue): no kernel messages, no process message, no exceptions, … We are logging periodically the DCFG_CCSR_RSTRQSR1 register via UART: after the event the CPU cannot write anything more. We tried to mask all reset causes (set to 1 all non-reserved bit of DCFG_CCSR_RSTRQMR1) but the issue keeps happening. QUESTIONS: • Are there any RESET_REQ_B causes not mapped to DCFG_CCSR_RSTRQSR1? I remind that we masked all non-reserved bits in DCFG_CCSR_RSTRQMR1 but without luck; • How could we dig down to understand which CPU mechanism requested the RESET_REQ_B? • Could the CPU enter in a low consumption Power management state and therefore assert the RESET_REQ_B ? Thank you for clarification, Giacomo Gasparini. Re: T1024 RESET_REQ without any cause registered by the way I cannot access to my official account: which is your reference mail to support these type of issues? thank you Re: T1024 RESET_REQ without any cause registered Hello, For your three questions: 1) Are there any RESET_REQ_B causes not mapped to DCFG_CCSR_RSTRQSR1 ? Yes: CPU/core watchdog timer reset-request causes are not mapped in RSTRQSR1 ; they are captured in DCFG_CCSR_RSTRQWDTSR when configured for watchdog reset request mode. The T1024 RM explicitly says RSTRQSR1 excludes core watchdog timer sources, and RSTRQWDTSR is the dedicated watchdog status register. For the documented non-watchdog causes, RSTRQSR1 includes at least: IFC_RR , WDT_RR (summary indicating at least one watchdog bit is set in RSTRQWDTSR ), SW_RR , CCM_RR , PBL_RR , SFP_RR , SEC_RR , SDC_RR , MBEE_RR , RPTOE_RR , and SRDS_RST_RR . 2) How can you dig down further? The most useful next step is to capture a broader reset snapshot in the same failing boot cycle, not just RSTRQSR1 . In a prior T1024 support case, the recommended register set was: DCFG_CCSR_RSTCR , DCFG_CCSR_RSTRQPBLSR , DCFG_CCSR_RSTRQMR1 , DCFG_CCSR_RSTRQSR1 , DCFG_CCSR_RSTRQWDTMR , and DCFG_CCSR_RSTRQWDTSR . Given your symptom timing—Linux fully boots, then the fault occurs about 5–8 s later—the likely fields to pay attention to are: RSTRQWDTSR for per-thread watchdog expiration detail RSTRQSR1[SW_RR] in case software is writing DCFG_CCSR_RSTCR[RESET_REQ] (bit 30) directly or through some reset path RSTRQSR1[RPTOE_RR] for an RCPM timeout reset request event associated with core halt/stop/reset request handling RSTRQSR1[MBEE_RR] for platform internal memory multi-bit ECC RSTRQSR1[SRDS_RST_RR] for enabled SerDes PLL not locking A few source-grounded debugging observations: RESET_REQ_B may assert at any time , and once asserted it stays asserted until PORESET_B is asserted. The design checklist recommends keeping an option to disconnect RESET_REQ_B from PORESET_B or HRESET_B specifically for debug/RCW override scenarios, because otherwise recurring reset loops prevent diagnosis. NXP support guidance in similar cases says a CPLD is generally not a practical logger of RSTRQSR1 after a catastrophic internal event ; a debugger reading the reset registers with minimal SoC involvement is considered more practical. So, with the documentation I found, the most direct debug approach is: Keep RESET_REQ_B from causing an immediate POR path during debug. Capture both RSTRQSR1 and RSTRQWDTSR , plus RSTCR , RSTRQPBLSR , and the mask registers. If possible, halt with JTAG immediately after RESET_REQ_B asserts but before any external reset propagates. 3) Could the CPU enter a low-power state and therefore assert RESET_REQ_B ? For the standard T1024 power-management states—PH10/doze, PH15/nap, LPM20/sleep—the retrieved T1024 documentation does not describe entry into those states as a cause of RESET_REQ_B . Those modes are entered through RCPM control and exited by wakeup events, interrupts, hard reset, or other documented wake mechanisms. Deep sleep is different: on deep sleep wakeup , the EPU finite-state machine explicitly requests a warm device reset during exit ( Exit.2: XTRIG[9]: Request warm device reset ). Also, the white paper’s Linux suspend/deep-sleep flow says the EPU issues a device warm reset as part of deep-sleep wakeup before boot code resumes. However, that is a deep-sleep restore mechanism , not a normal consequence of entering PH10/PH15/LPM20 during ordinary runtime.   regards Re: T1024 RESET_REQ without any cause registered First of all, thank you for the detailed and quick reply! 1) Basing on your reply we tried to mask also the watchdog reset causes with DCFG_CCSR_RSTRQWDTSR register value 0x3 but the issue remains. 2) We were able to read the registers via JTAG using the CodeWarrior TAP. Just after the event we gave the “Suspend” command and read the following register values: It seems that the cause is a Software reset (DCFG_CCSR_RSTRQSR1[SW_RR]=1). It is coherent with the fact that this cause of RESET_REQ_B is not maskable via the DCFG_CCSR_RSTRQMR1 register; here’s why the issue is keeping showing up.... We are investigating about this reset cause. 3) in my original question the cause and effect were reversed: may the CPU enter into a low-power state and THEN causing a RESET_REQ_B assertion? If you could help, at the end I'm adding a related question about a connection issue from CPU to JTAG TAP during the CPU register read trials we did today: After giving the Suspend command to CodeWarrior with the CodeWarrior TAP connected to the CPU, only 1 time we could read the CPU registers; every other times we tried we saw this error (see photo) and we lost connection with CPU. Is it a CodeWarrior configuration issue? How could we solve it? Thank you again. Giacomo.
查看全文
iMX95 FRDM評価キットに対するISPサポート こんにちは、チームのみなさん。 i.MX95 FRDMプラットフォームにBayerのセンサを移植しようとしています。以下のソフトウェアセットアップガイドに従い、NXPのウェブサイトに提供されているNXP対応のOS08A20カメラモジュールを使って動画を接続しストリーミングできました。 今、別のBayerセンサを移植してストリーミングしたいと思っています。以下を説明するドキュメントはありますか? libcameraのソースコードはどこで入手でき、i.MX95プラットフォーム向けにどう構築すればよいですか? 新しいBayerセンサのISP固有のYAMLや設定ファイルを生成するにはどうすればいいですか? i.MX95 FRDMプラットフォーム上でバイエルセンサーをサポートするには、どのようなカメラドライバーのパラメータやコントロールが必要ですか? 新しいBayerセンサをNXP ISPパイプラインに統合するための完全なソフトウェアフローは? できるだけ早く教えていただけますか?ありがとう Re: ISP support for iMX95 FRDM Evaluation kit こんにちは、 以下のガイドをご参照ください。 https://www.nxp.com/docs/en/user-guide/UG10215.pdf よろしくお願いいたします。 アルド。
查看全文
LX2160A XSPI 单模式 - 未使用的引脚 您好, 当配置 XSPI 以单路模式运行时,DAT2-DAT7 信号的配置尚不明确。 它们可以不连接吗? 诺姆 Re: LX2160A XSPI in Single Mode - Unused pins 你好, 在 LX2160A XSPI 单模式下,DAT2–DAT7 可以保持未连接状态,文档建议将未使用的 XSPI 数据引脚配置为 GPIO 输出,并保持未连接状态。 此致 Re: LX2160A XSPI in Single Mode - Unused pins 您好, 问题在于引脚是成组配置的,具体来说: XSPI1_A_DATA30_PMUX:配置 XSPI_A_DATA[3:0] 为 SPI 或 GPIO 模式 使用单模式 SPI 时,让 DAT[3:2] 浮空是否仍然安全?
查看全文
由 MCUBOOT 启动的调试应用程序 各位亲爱的朋友们, 我们使用的电路板是 IMXRT1176。 我想调试一下由 MCU-Boot 启动的应用程序。我希望调试器能够烧录一个已签名的应用程序,然后再进行调试。让我来给你展示一下我做了什么: 1. 原始版本生成了一个 app.elf 文件。 2. 我将 app.elf 文件转换为 app.bin 文件,并使用 imgtool 对其进行签名,生成 app_signed.bin 文件。 3. 我使用 arm-none-eabi-objcopy 将 app_signed.bin 封装成 app_signed.bin.elf。 4. 我使用了这份 launch.json 配置 ``` { "type": "mcuxpresso-debug", "name": "调试引导加载程序应用程序", "请求": "启动", "cwd": " ${workspaceFolder} ", "可执行文件": " /app.elf", "isAttach": false, "probeType": "LinkServer", "stopAtSymbol": "main", "skipBuildBeforeDebug": true, "extraSymbolFiles": [ " /app.elf", " /bootloader.elf", ], "postLaunchCommands": [ "加载 /app_signed.bin.elf 0x30100000" ], "gdbInitCommands": [ “设置远程超时时间为 600”, “设置调试文件目录”, “不停地启动”, ], "gdbServerConfigs": { "链接服务器": { “设备”: “MIMXRT1176xxxxx:MIMXRT1170-EVKB” "核心": "cm7", }, "segger": {}, “pemicro”:{} }, }, ``` 它似乎有效,也就是说我可以调试引导加载程序和应用程序,但这感觉像是一种权宜之计。 我最不喜欢的是“flash”这个词写了两遍。一个用于可执行文件,我们写入无符号二进制文件;一个用于加载文件,我们写入有符号二进制文件(显然,它们具有相同的核心代码)。 请问我是否遗漏了什么显而易见的东西?你认为有没有更简洁的方法来实现这个目标? 仅供参考,我知道如何附加到已刷入的镜像,上述过程更多是为了方便一步开始调试,我提到这一点是为了说明我的目标。 非常感谢您的帮助和建议! 此致, 雅库布 Re: Debug application started by the MCUBOOT 你好@jslota13245 , 目前还没有明确的步骤将刷写和调试签名镜像合并到一个工作流程中,因为这些通常是作为单独的流程处理的。通常情况下,你会先将签名后的镜像文件刷写到设备上,然后再连接调试器。作为参考,您可以查看ota_mcuboot_basic示例的“运行演示”部分,其中演示了两种不同的刷写签名镜像的方法,您可以根据自己的设置进行调整。此外,“将数据传输到闪存”部分概述了可用于刷写过程的可用工具。 另一方面,能否请您解释一下将签名镜像转换为 .bin.elf 文件的原因?另外,您能否确认一下您在进行此操作时是否遵循了指南? BR 哈比卜 Re: Debug application started by the MCUBOOT 你好,哈比卜! 谢谢你的回复。 回答你的问题。我按照这个指南在启动时刷写了多个二进制文件。我们使用 mcuxpresso 来替代 vs-code IDE,但基本原理应该是一样的: https://mcuoneclipse.com/2022/11/01/loading-multiple-binary-files-with-gdb/ 这里的想法是,elf 文件包含调试已签名二进制文件的信息,因为已签名二进制文件只是一个附加了头部和尾部的二进制文件。如果 .elf该文件是根据这种布局生成的,应该可以按预期工作。 供以后参考,我在原帖中建议的方法效果不太好,因为调试器会卡在不存在的 0x00000 断点上,而 CPU 仍在运行,所以我怀疑并没有发生真正的崩溃。这里显然存在一些配置/集成调试器问题,但我无法准确指出问题所在。你是否曾遇到过类似的情况? 关于您建议的方法,我找到了以下部分: ``` 使用外部工具(直接方法)将已签名的应用程序映像编程到主应用程序分区 通过调试器启动应用程序,使用签名映像执行映像更新,RESET板并让引导加载程序执行更新(间接方法) 以下分步骤描述中使用的是后一种方法: 打开演示项目并进行构建。已知问题:MDK 链接器发出有关未使用的boot_hdr段的警告。这不会影响示例的功能。 按照mcuboot_opensource SDK 示例的 readme 文件中的说明,从原始二进制文件准备应用程序的签名映像。 如果是 MCUXpresso,则可能不会自动生成原始二进制文件。右键单击“二进制文件/.axf”后,使用二进制工具在项目树中查找要手动生成的文件。 在 IDE 中启动调试器,快速启动应用程序。 在使用 MCUXpresso IDE 时,程序会在引导加载程序中陷入无限循环。暂停调试,使用调试器控制台并发出命令jump ResetISR 。 ``` 但我不太清楚如何使用 VS Code 的扩展程序——很遗憾,我没有 IDE 后端。请您帮我回答以下问题好吗? 假设我确实有一个已签名的二进制文件和一个包含符号的原始 elf 文件。 1.如何让调试器启动已签名镜像? 2. 如何让调试器在不先烧录固件的情况下启动它?第 1 点明确指出要用某种工具刷写固件——我猜第 2 点是另有用途? 3. 调试器不能只烧录基础 elf 文件,因为它没有 mcuboot 头和尾部,会被 mcuboot 丢弃。 4. 第 2.3 点中提到“在 IDE 中启动调试器以快速启动应用程序”,这是否意味着调试器会烧录一些东西?或者它会附加到已经刷入的镜像上? 感谢您提前提供的帮助和时间。 🙂 此致, 雅库布 Re: Debug application started by the MCUBOOT 你好@jslota13245 , 当您提到“很遗憾,我没有 IDE 后端”时,我理解这可能指的是您对 VS Code 的 MCUXpresso 扩展不太熟悉,我的理解正确吗?如果是这样,我建议您查看该扩展程序官方文档中的“探索扩展程序”章节,因为它提供了对其功能的有用概述。 关于您的问题,当您启动调试会话时,该工具默认会将生成的映像编程到闪存中,然后连接调试器,调试器会自动跳转到主函数。这在“启动调试会话”部分有详细描述,您可以在此页面找到有关扩展程序调试功能的更多信息。我还可以建议您查看“调试项目”这一章节,其中介绍了调试代码的步骤。 我强烈建议您先在不使用 MCUboot 或镜像签名的情况下验证和调试您的应用程序,只有在您的应用程序经过全面测试后才引入 MCUboot。为了完成此过程,我们强烈建议使用 MCUxpresso 安全配置工具,该工具能够管理 MCUboot 的密钥生成和映像签名等安全功能,因此它是处理此类应用程序的标准工具。您可以在 7.6.2 节中找到有关如何对镜像进行签名以及如何刷写 MCUboot 的更多信息。安全配置工具用户指南 26.03中的“使用此类处理器手动启动 MCUboot 的步骤”。 另一方面,在集成 MCUboot 时,请确保将其放置在不会被其他镜像覆盖的专用闪存区域中。mcuboot_opensource_cm7 示例提供了一种放置每个镜像的替代方案: | 区域 | 从 | 到 | 大小 | |----------------|------------|------------|--------| | MCU启动代码 | 0x30000000 | 0x3003FFFF | 256kB | | 主插槽 | 0x30040000 | 0x3023FFFF | 2048kB | | 辅助插槽 | 0x30240000 | 0x3043FFFF | 2048kB | 您应该先将 MCUboot 映像编程到其专用闪存区域中,然后将签名的应用程序映像放入主插槽或辅助插槽中。MCUXpresso 安全配置工具可以简化此过程,它能够在一个工作流程中同时处理引导加载程序编程和映像编程,如我之前分享的用户指南第 7.6.2 节所述。 BR 哈比卜
查看全文
IOL 3mA 处 I2C 线的 VOL 你好, 这是阿鲁穆甘。请问I2C线路的最大电压是多少?我应该考虑 0.7V @1mA 还是 3mA 谢谢! 阿鲁穆甘 Re: VOL for I2C lines at IOL 3mA 嗨@Arumugam1982 I2C 线路的 VOL/VOH 电平取决于焊盘供电轨和所选引脚配置的相应电气规格。LPI2C 焊盘可以由 VDD_HV_A 或 VDD_HV_B 供电,具体取决于引脚复用和焊盘分配,因此应该使用设备 IOMUX 信息进行验证。 数据手册直接在 GPIO 直流电气特性表中定义了输入阈值 (VIH/VIL)。然而,VOH/VOL 通常通过输出驱动电流条件(如 IOH 和 IOL)间接定义。 实际上,建议采用与所选焊盘配置的相应 IOH/IOL 参数相关的 VOH/VOL 条件,而不是假设特定的电流值 (mA)。只有当数据手册中明确定义了该电气特性所需的电流时,才能使用该电流。 BR,VaneB Re: VOL for I2C lines at IOL 3mA 我是否应该考虑 IOL -1mA /3mA /8mA 相同的 VOL?我需要这个数字来进行WCA计算。 Re: VOL for I2C lines at IOL 3mA 你好, 您在表 27 的数据表中使用的是哪个符号(例如:IOL_33_S)? 此致, 约翰
查看全文
T1024 RESET_REQ 原因不明で登録 こんにちは。ここ数ヶ月、T1024のCPUに問題が発生しています。 よろしくお願いします。 問題の説明: 私たちはインダストリアルPLC内でT1024NSE7KQA CPUを使用しています。 昨年まではMQX OS(シングルコア実装)を使っていましたが、その後SDKLINUXを使ってデュアルコアLinuxに移植しました(OSは主にサードパーティによって実装されています)。 ハードウェアは、以前のMQX OSバージョンと物理的に同じです。 すべてのユニットがLinuxの起動時に問題を示します:MCUが固まる(MCU自体がRESET_REQ_Bを主張します)。 このイベント情報はデターミニスティックではなく、起動サイクルの10%のみが影響を受けますが、常に同じOS起動フェーズで発生します。 定期的な起動・電源オフのシーケンスを実行することで、この問題を再現することができました。 イベント情報が電源アップ後に発生する場合、それはハードウェアの起動・初期化から常に約40秒後に発生し、OS起動完了から5〜8秒後に発生します(起動からイベント情報までの時間はOSのプロセススケジュールのわずかな変動によりわずかに変わります)。 そうしないとイベント情報は再び表示されず、電源サイクルを待つ必要があります。 RCWは正しく、PBLフェーズも正しく完了します。 オシロスコープでイベント情報前にO1VDD、OVDD、G1VDD、VDD、VDDCのレール電圧を確認しましたが、安定していてCPU許容範囲内です。 イベント情報中にRESET_REQ_B:H->L遷移を測定しました。 RESET_REQ_Bから搭載回路への搭載接続を中断して(RESET_REQ_BがHRESET_BやPORESET_Bの遷移を強制しないように)、同じ起動サイクルまたは次のサイクルでDCFG_CCSR_RSTRQSR1レジスタを読み込みましたが、結果としては常に 0x0 値になります。CPUが内部的にリセットを要求しているのは確かですが、その理由が見つかりません。 OSログに最大字数を設定しましたが、問題のある起動時にはイベント情報直前には何も違いが見られません(問題のないスタートアップと比べて):カーネルメッセージなし、プロセスメッセージなし、例外なし、... 私たちはUARTを通じてDCFG_CCSR_RSTRQSR1レジスタを定期的にログしています。イベント情報終了後、CPUはそれ以上何も書き込めません。 リセットの原因をすべてマスクしようと試みましたが(DCFG_CCSR_RSTRQMR1 の予約されていないビットをすべて 1 に設定)、問題は依然として発生しています。 質問: • DCFG_CCSR_RSTRQSR1にマッピングされていないRESET_REQ_Bの原因はありますか?DCFG_CCSR_RSTRQMR1で非予約の部分はすべてマスキングしましたがうまくいきませんでした。 • どのCPU機構がRESET_REQ_Bを要求したのか、どうやって掘り下げればよいのか? • CPUが低消費電力のパワーマネージメント状態に入り、したがって RESET_REQ_B をアサートできますか? ご説明ありがとうございます。 ジャコモ・ガスパリーニ。 Re: T1024 RESET_REQ without any cause registered ちなみに、公式アカウントにアクセスできませんが、こういった問題をサポートするためのリファレンスメールはどれですか?ありがとう Re: T1024 RESET_REQ without any cause registered こんにちは、 ご 質問 3点 について : 1) DCFG_CCSR_RSTRQSR1 に マッピングされ ていない RESET_REQ_B 原因 は あります か ? はい: CPU/コア ウォッチ ドッグタイマーの リセット要求の 原因は RSTRQSR1 には マッピング されません 。 ウォッチ ドッグ リセット 要求 モード に 設定されている 場合、 それら は DCFG_CCSR_RSTRQWDTSR に キャプチャされ ます 。 T1024 RM に は、 RSTRQSR1 コア ウォッチ ドッグタイマー ソース を除外し 、 RSTRQWDTSR 専用 の ウォッチ ドッグ ステータス レジスタ である と 明記されています 。 文書化されたウォッチドッグ以外の原因については、 RSTRQSR1 は少なくとも次のものが含まれます: IFC_RR 、 WDT_RR ( RSTRQWDTSRで少なくとも1 つのウォッチドッグビットが設定されていること を示す 要約)、 SW_RR 、 CCM_RR 、 PBL_RR 、 SFP_RR 、 SEC_RR 、 SDC_RR 、 MBEE_RR 、 RPTOE_RR 、および SRDS_RST_RR 。 2) どうや ってさらに 掘 り下げるか? 次に 最も 有用な 手順 は 、 RSTRQSR1 だけ でなく 、 同じ 失敗した ブート サイクル で より広範囲の リセット スナップ ショット を取得する こと です 。以前の T1024 サポート ケース では 、 推奨 される レジスタ セット は DCFG_CCSR_RSTCR 、 DCFG_CCSR_RSTRQPBLSR 、 DCFG_CCSR_RSTRQMR1 、 DCFG_CCSR_RSTRQSR1 、 DCFG_CCSR_RSTRQWDTMR 、 DCFG_CCSR_RSTRQWDTSR でした。 症状 の タイミング(Linux が完全に 起動し、 その後 5 〜8 秒 後に 故障 が発生する) を考慮する と、 注目 すべき フィールド は以下の通りです: RSTRQWDTSR スレッドごとのウォッチドッグの有効期限詳細 RSTRQSR1[SW_RR] ソフトウェア が DCFG_CCSR_RSTCR[RESET_REQ]( ビット 30) を直接 または リセット 経路 で 書き込む 場合 RSTRQSR1[RPTOE_RR] コア 停止/停止/リセット 要求 処理 に関連する RCPM タイムアウト リセット 要求 イベント の場合 RSTRQSR1[MBEE_RR] プラットフォーム 内部 メモリ 用マルチ ビット ECC 有効な SerDes PLL の RSTRQSR1[SRDS_RST_RR] が ロックされ ません ソースコードに基づいた デバッグ に関する いくつ かの 考察: RESET_REQ_B いつでも アサート される 可能性があり 、 一度 アサートされると 、 PORESET_B PORESET_B アサートさ れる まで アサートされた まま に なります 。 設計 チェックリスト では 、 デバッグやRCW オーバーライド シナリオのために RESET_REQ_B を PORESET_B または HRESET_B から 切り離 す オプション を 残すこと を推奨 しています 。 なぜなら 、 リセット ループ が繰り返される場合、診断 が困難になる から です。 同様の ケース における NXP のサポート ガイダン スでは、 CPLD は壊 滅的な 内部 イベント情報 後の 実用 的な RSTRQSR1 記録 装置 として は一般的に は存在しない と されています 。 リセット レジ スタ を 読み取 る デバッガ は SoC の関与 を 最小限 に抑える ことが より 実用 的と考えられ ています。 So, with the ドキュメント I found, the most direct debug approach is: デバッグ 中に RESET_REQ_B 即座 に POR パス を引き起こさない ように してください 。 RSTRQSR1 と RSTRQWDTSR 、 さらに RSTCR 、 RSTRQPBLSR 、 および マスク レジスタ の 両方 を取得します 。 可能であれば 、 RESET_REQ_B アサートされた 直後 、 かつ 外部 リセット が伝播する 前 に 、 JTAG を使用して 停止してください 。 3) CPU が 低消費電力 状態 に入 り、 それによって RESET_REQ_B を 主張 できるか? 標準 的な T1024 電源管理 状態(PH10/ドーズ、 PH15/睡眠、 LPM20/睡眠) については 、 取得した T1024 のドキュメント では 、これらの 状態 への 進入 が RESET_REQ_B 原因 として 記載 されていません 。これらの モード は 入力 され RCPM 制御 を通じて 終了します ウェイクアップ イベント情報、 割り込み、 ハード リセット、 または その他の 文書化された ウェイク メカニズムによって。 ディープ スリープ は 異なります。 ディープ スリープ からの復帰時には、EPU 有限 状態 マシン が 終了 時 に ウォーム デバイス リセット を 明示 的に 要求します ( Exit.2: XTRIG[9]: Request warm device reset )。 また、 ホワイト ペーパーの Linux サスペンド/ディープスリー プフロー には 、EPU が ブート コード 再開 前に ディー プスリープ のウェイク アップ の 一環 として デバイス ウォーム リセット を発行 すると 書かれ ています。 しかし、 それ は ディープスリープからの 復帰メカニズム で あり 、 通常 の 実行 中に PH10/PH15/LPM20 に入った 場合の 通常 の 結果で はありません 。   よろしくお願いします。 Re: T1024 RESET_REQ without any cause registered まず、詳細かつ迅速なご回答をありがとうございました! 1) ご回答に基づき、DCFG_CCSR_RSTRQWDTSRレジスタ値0x3を使用してウォッチドッグリセットの原因もマスクしようとしましたが、問題は解決しませんでした。 2) CodeWarrior TAPを使用してJTAG経由でレジスタを読み取ることができました。イベント直後に「Suspend」コマンドを出し、以下のレジスタ値を読みました: 原因はソフトウェアリセット(DCFG_CCSR_RSTRQSR1[SW_RR]=1)のようです。 これは、RESET_REQ_B の原因が DCFG_CCSR_RSTRQMR1 レジスタでマスクできないという事実と一致しています。これが、この問題が繰り返し発生する理由です。 このリセットの原因について調査中です。 3) 私の最初の質問では、原因と結果が逆でした。CPUが低電力状態に入り、その後でRESET_REQ_Bアサーションが発生する可能性はありますか? もしよろしければ、最後に今日行ったCPUレジスタ読み取りの試行中にCPUからJTAG TAPへの接続問題に関する関連質問を追加します。 CodeWarriorのTAPをCPUに接続した状態でCodeWarriorにSuspendコマンドを出した後、CPUレジスタを読み取れたのは1回だけでした。それ以外の試行錯誤は毎回出てしまい(写真参照)、CPUとの接続が切れてしまいました。 CodeWarriorの設定の問題でしょうか?どうすれば解決できるでしょうか? 改めてありがとうございました。 ジャコモ。
查看全文
MCUXpresso IDE v25.6:CMSIS 包安装/导入包选项在哪里? 我正在 MIMXRT1064-EVK 上使用 MCUXpresso IDE v25.6,并尝试将 CMSIS 包(.pack 文件)安装到 IDE 中。 Open-CMSIS-Packs 文档中提到了一个带有“从磁盘导入包”选项的 CMSIS-Pack 管理器,但我在我的安装中找不到它。我怀疑v25.x版本中的菜单可能与旧版11.x文档中的菜单有所不同: - 在“窗口”>“显示视图”>“其他”下搜索“cmsis”或“pack”时,没有任何结果出现。 - 在“窗口”>“透视图”>“打开透视图”>“其他”下没有列出 CMSIS-Pack 管理器。 - 在右键单击项目 > SDK 管理下,我只看到“管理 SDK 元器件”、“刷新 SDK 元器件”和“添加 SDK 部件支持”——没有添加 Open-CMSIS 包的选项。 - 拖动 .pack 文件在“已安装 SDK”视图中,会打开“导入 SDK Git”向导,该向导会要求提供 git 清单文件夹。 MCUXpresso IDE v25.6 中 CMSIS 包安装/“从磁盘导入包”选项在哪里?如何安装本地 .pack 文件?文件,以便其元器件出现在“管理 SDK 元器件”下? Re: MCUXpresso IDE v25.6: where is the CMSIS pack install / Import Packs option? 您好, MCUXpresso IDE 25.06 版本中已移除对 Open-CMSIS 包管理的支持,如 MCUXpresso IDE 25.06 发行说明 (RN00128) 中所述。 一种方法是使用 MIMXRT1064-EVK 的 SDK,其中已经包含了 CMSIS 驱动程序,可以在创建项目时添加。 此致, 巴勃罗
查看全文
MCUXpresso IDE v25.6: where is the CMSIS pack install / Import Packs option? I'm using MCUXpresso IDE v25.6  on a MIMXRT1064-EVK and trying to install a CMSIS pack (.pack file) into the IDE. The Open-CMSIS-Packs documentation refers to a CMSIS-Pack Manager with an "Import Packs from disk" option, but I cannot find it anywhere in my installation. I suspect the menus may have changed in the v25.x release versus the older 11.x documentation: - Nothing appears when I search "cmsis" or "pack" under Window > Show View > Other. - There is no CMSIS-Pack Manager listed under Window > Perspective > Open Perspective > Other. - Under right-click project > SDK Management, I only see "Manage SDK Components," "Refresh SDK Components," and "Add SDK Part Support" — no option to add an Open-CMSIS pack. - Dragging the .pack onto the Installed SDKs view opens the "Import SDK Git" wizard instead, which asks for a git manifest folder. Where is the CMSIS pack installation / "Import Packs from disk" option located in MCUXpresso IDE v25.6, and how do I install a local .pack file so its components appear under Manage SDK Components? Re: MCUXpresso IDE v25.6: where is the CMSIS pack install / Import Packs option? Hi, The support for management of Open-CMSIS packs inside MCUXpresso IDE was removed in version 25.06, as described in the MCUXpresso IDE 25.06 Release Notes (RN00128). One option would be to use the SDK for the MIMXRT1064-EVK, where the CMSIS drivers are already included and can be added when creating a project. Best Regards, Pablo
查看全文
RT1180-EVK上でVS Codeを使用してFreeRTOSをデバッグする evkmimxrt1180_freertos_message_buffers_secondary_core サンプルプロジェクトにおける FreeRTOS の設定は以下のとおりです。 #define configMAX_PRIORITIES 56年 #define configUSE_PORT_OPTIMISED_TASK_SELECTION 0 アプリケーションは通常IDE(MCUXpresso IDE)でデバッグ可能です。しかし、VS Codeでデバッグを行う場合、FreeRTOSがスケジューラを開始した後にデバッガーが終了してしまう。 デバッグセッションは、vTaskStartScheduler() 内の次のコードに実行が到達した時点で終了します。 xNextTaskUnblockTime = portMAX_DELAY; xSchedulerRunning = pdTRUE; xTickCount = ( TickType_t ) configINITIAL_TICK_COUNT; これらの変数が初期化された後、最初のタスクがスケジュールされる前に、デバッガーは切断され、デバッグセッションが終了します。 IDEとVS Codeでテストして解決策を見つけるのを手伝ってもらえますか? MCX C Re: FreeRTOS Debugging in VS Code on RT1180-EVK こんにちは@yanyanwangさん Domainsフォルダでプロジェクトをビルディングした後、このフォルダにはプライマリコアアプリケーションとセカンダリコアアプリケーションの両方が見つかるはずです。 両方の.elfの再生ボタンをクリックするとファイルごとにデバッグセッションが開始されますか? プライマリコアがMCMGR_StartCore関数を通過するまで実行した場合、セカンダリコアのデバッグセッションを一時停止できますか? よろしくお願いします、 パブロ Re: FreeRTOS Debugging in VS Code on RT1180-EVK こんにちは、 セカンダリコアでデバッグセッションを正常に開始でき、FreeRTOSスケジューラが始まる前にすべて正常に動作します。 しかし、FreeRTOSがタスクのスケジューリングを開始すると(vTaskStartScheduler()が呼び出された後)、デバッガはすぐに切断され、デバッグセッションが終了します。 この問題の原因を特定するのを手伝ってもらえますか?確認すべき推奨デバッガー設定やFreeRTOSの設定があれば教えてください。 よろしくお願いします。 よろしくお願いいたします。 ヤンヤン
查看全文
MLB The Show 26 Supercharged Players Breakdown: Royce Lewis vs Logan Webb The community has spoken, and we have a couple of absolute forces entering Diamond Dynasty this week. Royce Lewis and Logan Webb have officially been crowned the newly minted Fan-Voted Supercharged Players of the Week in MLB The Show 26. Thanks to their incredible real-life performances, both cards are receiving massive 7-day attribute boosts that immediately vault them into the top tier of the current meta. For budget-conscious players, Supercharged cards are an absolute lifesaver. They let you field elite-tier Diamond talent capable of competing with the most expensive collection rewards in the game, but at a mere fraction of the cost. If you are grinding through Ranked Seasons or trying to clean up in Events this week, these two cards deserve a serious look for your squad. Supercharged Overview Player Position Supercharged Rating Boost Duration Ends Real-Life Catalyst Royce Lewis 3B / IF 96+ OVR June 22, 2026 Won the weekly hitter fan-vote by batting .455 with 3 HR and a 280 wRC+. Logan Webb SP 96 OVR June 22, 2026 Tossed 8 strong innings allowing 1 run on June 14 to secure the win against the Cubs. The Breakdown: Royce Lewis Royce Lewis secured a commanding 29.97% of the community vote, beating out other incredibly hot hitters like Tyler Soderstrom and Matt Chapman to land this week's offensive Supercharge. He has been on an absolute tear in the real world, and his virtual counterpart reflects exactly that level of dominance. The Attributes: While his base Live Series card can sometimes struggle with consistency depending on the tier you are playing in, this Supercharged version completely changes the equation. The boost elevates his Contact and Power attributes past the crucial 100 threshold against both righties and lefties, turning him into a premier modern threat at the plate. The Meta Fit: Lewis provides immense value anywhere on the left side of the infield. Because his hitting stats are so heavily juiced, he functions perfectly either as a lethal middle-of-the-order run producer or as a high-tier bench bat to counter elite late-game relief pitching. Gameplay Feel: If you haven't used a Royce Lewis card yet this year, you are missing out. He possesses an incredibly fast, smooth swing that frequently results in line-drive power and deep gap shots. On top of that, his boosted speed makes him a legitimate threat on the basepaths, putting extra pressure on your opponent's catcher. The Breakdown: Logan Webb On the pitching side of the weekly fan vote, Logan Webb anchors the rotation by jumping up to a formidable 96 OVR. If you are tired of relying on the same old starters or just need a fresh arm to shake things up, Webb brings a completely different style of pitching to the mound. The Attributes: Webb’s Supercharge gives a massive spike to his Stamina, H/9 (Hits per 9 innings), and Pitching Clutch. This is huge for standard online play, as it allows him to run deep into Ranked Seasons games without suffering from early energy depletion or losing effectiveness when runners get into scoring position. The Arsenal: Webb is notoriously effective in MLB The Show due to his heavy Sinker and Changeup mix. This temporary boost maximizes his control and break, making it incredibly difficult for opponents to get under the ball. Instead of giving up cheap flyball home runs, you'll find yourself forcing a ton of weak, frustrating groundouts. Gameplay Fit: He might lack the pure 102 MPH outlier fastball that defines a lot of the standard meta pitchers, but don't let that fool you. His elite tunneling capabilities—making his sinker, changeup, and slider look identical out of the hand—combined with these enhanced attributes make him a top-tier tactical option for the week. The Verdict: Who Should You Start? Both of these cards bring clear advantages to the table, but your choice ultimately comes down to your playstyle and stadium preferences: Choose Royce Lewis if you frequently play in smaller, high-altitude MLB stadiums (like Laughing Mountain or Shield Woods) where maximum power numbers practically guarantee home runs, or if your current infield lacks an elite right-handed bat who can crush both sides of the plate. Choose Logan Webb if you need a reliable, high-stamina ace for competitive Ranked multiplayer modes to slow down high-powered offenses and prevent opponents from stringing together hits.
查看全文
12世代目のPシリーズは本当にそんなに悪いのでしょうか? 非常にお買い得な中古のT14 Gen 3(i7搭載)を見つけました。この端末は少なくとも3~5年は使い続けるつもりです。 過去の投稿で、誰もが当然の理由でAMDを好むと書いてあったのを読んだのですが、本当にそんなに悪いものなのでしょうか? レビューによると、Pプロセッサはスロットルが非常に強く、性能向上がほとんど役に立たなくなるそうです。それに比べて、AMD R5は5分以上の連続作業で最大限のI7よりも性能が良いようです。 それは本当ですか? Re: Are 12th gen P series really that bad? こんにちは、 NXPのニーズから電子部品に焦点を当てて言い換えますか? よろしくお願いします。
查看全文
S32K3の駆動力は高い S32K3XXのリファレンス・マニュアルには「ドライブ強度の有効化」ビットについて書かれていますが、その意味を明確に定義しているようには見えません。私が見つけた最も近い参考文献は、特定のピンがサポートする最大周波数と相関しているようです(S32K3XXRM/セクション4.4.1の42ページ)。 「drive-strength」を有効にすべきか否かを判断する上で、最大消費電流値やその他の注意点に関して、何か明確な規定はありますか? Re: High Drive Strength on S32K3 GPIO規格:最大10MHzのスイッチングに対応。高駆動強度には対応していません。スルーレート制御はサポートされていません。 — GPIO-Standard plus:最大25 MHzへの切り替え 高い駆動強度をサポートします。スルーレート制御はサポートされていません。 — GPIO-Medium:最大50 MHzまでの切り替えで高いドライブ強度をサポートします。スルーレート制御をサポートします。 — GPIO-Fast:最大120 MHzへの切り替え 高いドライブ強度をサポートします。スルーレート制御をサポートします。 Re: High Drive Strength on S32K3 はい、それはまさに私が質問で引用した箇所の文章です。それではなぜ「ドライブ強度」を有効にするべきか、あるいは有効でないかはわかりません。単に一部のピンがそれをサポートしていること、そして一部の切り替え速度がそれに関連していることを示しているだけです。 もしこれでLEDを駆動する場合、より多くの電流を流すことができるでしょうか?どれくらい最新の情報ですか? これは純粋にスルーレートの変更なのでしょうか? ピンがサポートしているなら、有効にしない理由はありますか?それを有効にすると、チップの放熱量は増えますか? Re: High Drive Strength on S32K3 S32K39x、S32K37x、S32K36xマイクロコントローラのハードウェア設計ガイドライン Re: High Drive Strength on S32K3 ハイ S32K3XXリファレンスマニュアル(S32K3XXRM)では、パッドタイプ「GPIO-Standard」は高駆動強度をサポートしない一方、「GPIO-Standard Plus」、「GPIO-Medium」、「GPIO-Fast」は高駆動力をサポートしていると記載されています。 GPIOパッドタイプについては、S32K3XXRMに付属のExcel添付ファイルS32K344_S32K324_S32K314_IOMUX.xlsxのS32K344_IO信号テーブル、特に列Hを参照してください。 よろしくお願いします、 ロビン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「解決策として承認」ボタンをクリックしてください。ありがとう! - 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。 -------------------------------------------------------------------------------
查看全文
S32K344 SWT reset Hello , I am trying to understand the SWT functionality. I injected stackoverflow to check how SWT reset the controller. Reset happening properly. Reset reason also match with SWT. when i continously trigger stackoverflow error, After 8 times, controller does not power up. I check many times, it working exactly 8 times only, is there any specific reason? or is it configurable? Re: S32K344 SWT reset Hi @nirmal_masilamani  This is caused by reset escalation feature. Take a look at following sections in the reference manual or just search for “reset escalation” keyword in the document for more details: 33.7.7 Functional reset escalation 33.7.8 Destructive reset escalation It can be disabled by FRET and DRET registers in MC_RGM module. Regards, Lukas Re: S32K344 SWT reset Hello @lukaszadrapa  Thank you for your response. I understood that by changing FRET and DRET, we can cfg reset escalation. In Power module there is a parameter for that.  If I keep zero in both, i am able to disable escalation but, if I change the counter between 1 to 15, its not reflecting. Still SWT working only for 8 times.
查看全文
S32K144フラッシュメモリ(P-Flash、FlexNVM、FlexRAM)におけるECCエラー処理のためのリファレンスコード こんにちは、NXPコミュニティの皆さん、 S32K144にセーフティ機構を実装しており、修正不能(ダブルビット)ECCエラーの参照コードと、それらをテスト用に注入する方法が必要です。   1. 2ビット演算 ダブルビットフォルトを検出するためのコード例が必要です。 P-FlashとFlexNVM: FlexRAM (EEE):バックグラウンドコピー中の障害検出。 例外ハンドラ:障害が発生したメモリ アドレスを特定するための、バス障害またはハード障害の ISR ルーチン。   2. エラー注入 フラッシュメモリ配列におけるダブルビット障害をシミュレートする推奨方法は何ですか?   コードスニペットがあれば大変ありがたいです。 Re: Reference code to handle ECC errors in S32K144 Flash Memory (P-Flash, FlexNVM, FlexRAM) こんにちは、 @NJ_NXP さん。 1. RTDドライバを使用している場合は、S32K1/S32M24x FLSドライバ(RTD_FLS_IM.pdf)の統合マニュアルを参照してください。特にセクション10.4.1 – 内部フラッシュに関するECCマネジメント。 この文書はRTDインストールディレクトリで見つけることができます。例えばRTD 3.0.0_QLP02の場合: SW32K1_S32M24x_RTD_4.4_3.0.0_QLP02\eclipse\plugins\Fls_TS_T40D2M30I0R0\doc\ FlexRAMに関しては、ECCは実装されていません。ただし、コピーダウン操作中にダブルビットエラーが検出された場合、EEPROMレコードはすべて1として読み取られます。 詳細については、アプリケーションノートAN11983 – S32K1xx EEPROM機能の利用についてご参照ください。 https://www.nxp.com/docs/en/application-note/AN11983.pdf 2. この故障は、フラッシュコントローラでFERCNFG[FDFD]ビットを設定し、フラッシュ読み取りを行うことでエミュレートできます。 あるいは、既にプログラムされたフラッシュフレーズを再プログラムし、それを読み取ることで故障が発生することもあります。 よろしくお願いいたします。 ダニエル
查看全文
NXH2004評価キット:Bluetooth ® AoBLE認証ボードの詳細とデータシート チームの皆さん、こんにちは。 補聴器アプリケーション用のNXH2004評価キットの詳細を共有してください: Bluetooth® 5.3 AoBLE認定ボードの詳細およびデータシート。 よろしくお願いいたします。 SK Re: NXH2004 Evaluation Kit: Bluetooth® 5.3 AoBLE Certified Board details and datasheet こんにちは、スミットさん。 製品ページをご参照ください: https://www.nxp.com/design/design-center/development-boards-and-designs/NXH2004SDK https://www.nxp.com/products/NXH2004 WIFI製品のドキュメントは特定の条件下でアクセス可能です。お客様にNXP内の営業担当者にお問い合わせするようお願いしてください。彼は彼を直接支援するだろう。ありがとう。 良い1日を。よろしくお願いします パブラ
查看全文
機能リセット後もRAM保持機能が動作しない(S32K3xx) チームの皆さん、こんにちは。 S32K3xx で機能リセット後も変数を保持しようとしていますが、うまくいきません。 実装: カスタムRAMセクションに配置された変数: __attribute__ ((section(".int_sram_results"))) uint32_t retain_var; リセット前に値が更新されます(retain_var=0x11223344 のテスト用)。 リセットタイプ: 機能リセット(ソフトウェアトリガー) 観察された行動: しかし、値は常に0(クリア済み)です。 RAM保持が行われていません 参照情報を確認しました: 既にこの議論を参照し、提案された方法を試しました。 https://community.nxp.com/t5/S32K/S32K311-noinit-ram/td-p/2123035 そこで示した例は私たちのCASEでは通用しませんでした リクエスト: S32K3xxで機能リセット後もRAMを保持するための動作例または最小限のコードスニペットを共有してください。 ありがとうございます ユスアップ S32K3 S32DS-ARM S32K31XEVB-Q100  Re: RAM retention not working across functional reset (S32K3xx) こんにちは、@yusupkhan241 さん。 おそらく、起動コードはリセットのたびにSRAM全体をゼロに初期化する(ECC初期化のため)と思われます。あなたの具体的な起動コードは見ていないので、断言はできません。 リセットが機能するときにECCの初期化をスキップすることも検討できます。 この回答を参照してください。 https://community.nxp.com/t5/S32K/SRAM-ECC-Initialization-for-S32K344/mp/1764143 BR、ダニエル Re: RAM retention not working across functional reset (S32K3xx) こんにちは、@yusupkhan241 さん。 「うまくいかない」とはどういう意味ですか? あなたが投稿したファイルは、最新の変更を反映していないようです。 機能リセット後にスタートアップコードを見てSRAMの変数を観察できますか?これにより、変数がどこで上書きされるかが明確に示されるはずです。 機能リセット後にデバッガーを取り付けるには、スタートコードの冒頭に簡単なループを追加できます。例えば: Loop: mov r0, #1 cmp r0, 0 /* Change r0 to 0 in register view */ bne Loop /* Capture after power-on reset */ よろしくお願いいたします。 ダニエル Any support, information, and technology (“Materials”) provided by NXP are provided AS IS, without any warranty express or implied, and NXP disclaims all direct and indirect liability and damages in connection with the Material to the maximum extent permitted by the applicable law. NXP accepts no liability for any assistance with applications or product design. Materials may only be used in connection with NXP products. Any feedback provided to NXP regarding the Materials may be used by NXP without restriction. Re: RAM retention not working across functional reset (S32K3xx) こんにちは、 @danielmartynek さん。 下記の起動手順を、あなたが共有してくれた変更内容に置き換えてみましたが、うまくいきませんでした。 ご参考までに、関連ファイルをアップロードしました。.s と .ld.c 拡張子のファイルがアップロードされました拡大。内容をご確認いただき、追加情報が必要な場合はお知らせください。 RamInit: /* SRAM ECCを初期化 */ ldr r0, =__RAM_INIT cmp r0、0 /* __RAM_INIT が設定されていない場合はスキップします */ beq SRAM_LOOP_END ldr r0、=MCRGM_DES ldr r1, [r0] ldr r2、=MCRGM_DES_F_POR r1、r1、r2 cmp r1、0 beq NO_INIT_STANDBY_REGION ldr r2, =__INT_SRAM_START ldr r3, =__INT_SRAM_END b ZERO_64B_RAM 上記の手順が更新されました RamInit: /* Check MC_RGM DES register, if it's non-zero, jump to RAMInit_Start. (RAM init is needed if Destructive reset occurred) */ /* To make it work, customer should clear the MC_RGM DES register in application code. */ ldr r4, =MC_RGM_BASE_ADDR /* 0x4028C000 */ ldr r4, [r4, #0x0] cmp r4, #0x0 bne RamInit_Start /* Check MC_RGM FES register, if the F_EXR bit or ST_DONE bit is set, jump to RAMInit_Start. */ /* RAM init is needed if external reset occurred, or BIST Done functional reset occurred. */ /* To make it work, customer should clear the MC_RGM FES F_EXR register bit in application code. */ ldr r4, =MC_RGM_BASE_ADDR ldr r4, [r4, #0x8] ldr r5, =MC_RGM_FES_MASK_RAM_INIT and r4, r4, r5 cmp r4, #0x0 bne RamInit_Start b SRAM_LOOP_END RamInit_Start: /* Initialize SRAM ECC */ ldr r0, =__RAM_INIT cmp r0, 0 /* Skip if __SRAM_INIT is not set */ beq SRAM_LOOP_END ldr r1, =__INT_SRAM_START ldr r2, =__INT_SRAM_END ありがとうございます ユスプ Re: RAM retention not working across functional reset (S32K3xx) こんにちは、 @danielmartynek さん。 RAM保持動作を分離するために、設定を簡略化しました。 私はその変数を専用のSRAM領域に配置し、LED表示とウォッチドッグによるリセット機能を備えた最小限のメイン関数を使用しました。その考え方は次の通りです: 緑色LED → リセット後も値が保持されます 赤色LED → 価値が失われる 以下に、使用されているテストコードを示します。 C __attribute__ ((section(".int_sram_results"), used)) volatile uint32_t retain_var; int main(void) { Clock_Ip_Init(&Clock_Ip_aClockConfig[0]); DIO_Init(); WDT_Init(); if (retain_var == 0xAABBCCDD) { Siul2_Dio_Ip_SetPins(LED_GREEN_PORT, (1UL << LED_GREEN_PIN)); Siul2_Dio_Ip_ClearPins(LED_RED_PORT, (1UL << LED_RED_PIN)); } そうでない場合、 { Siul2_Dio_Ip_SetPins(LED_RED_PORT, (1UL << LED_RED_PIN)); Siul2_Dio_Ip_ClearPins(LED_GREEN_PORT, (1UL << LED_GREEN_PIN)); } retain_var = 0xAABBCCDD; while(1) { /* ウォッチドッグリセット */ } } 表示を減らす 観察: デバッガーを使用して実行した場合、動作は想定どおりです。 しかし、電源投入後のリセット後、LEDが点灯しないため、コードが期待どおりに実行されていない可能性がある。 参考までに、最新のリンカーファイルとスタートアップファイルを添付しました。 起動処理やリセット処理に関して何か不足している点があればお知らせください。 S32DS-ARM S32K31XEVB-Q100  ありがとう、 ユスプ Re: RAM retention not working across functional reset (S32K3xx) テストプロジェクト全体を共有してもらえますか?そうすれば自分の側でも簡単にテストできます。 ありがとうございました。 ダニエル Re: RAM retention not working across functional reset (S32K3xx) こんにちは、 @danielmartynek さん。 以下は、当社のテスト結果から得られた所見です。  デバッグモードの動作: 電源投入リセット(赤色LED): retain_var = 0x5AA55AA5 @ 0x20407B00 ウォッチドッグリセット後(緑色LED): 保持_var = 0xAABBCCDD @ 0x20407B00 これは、デバッガで実行している場合でも、機能リセット後のRAM保持機能が正常に動作していることを確認するものです。 ただし、スタンドアロン(デバッガーなし)で実行する場合: 電源投入後リセットしても、LED表示は点灯しません。 プログラムが実行されていないか、アプリケーションコードに到達していないようです。 この行動の原因を特定する手助けをしてもらえますか?また、完全な.int_sram_resultsを使用する予定です。機能リセット後も複数のパラメータを保持するためのセクション。確実なデータ保持のために、他に何か変更が必要かどうかご提案ください。 さらに、 ウォッチドッグの代替として機能リセットをトリガーするAPIや推奨方法があれば教えていただけますか? 参考までに、スタートアップファイルとリンカーファイルに加えた変更は共有プロジェクトで検証可能です。 起動ファイル(旧コード) RamInit: /* SRAM ECCを初期化 */ ldr r0, =__RAM_INIT cmp r0、0 /* __RAM_INIT が設定されていない場合はスキップします */ beq SRAM_LOOP_END ldr r0、=MCRGM_DES ldr r1, [r0] ldr r2、=MCRGM_DES_F_POR r1、r1、r2 cmp r1、0 beq NO_INIT_STANDBY_REGION ldr r2, =__INT_SRAM_START ldr r3, =__INT_SRAM_END b ZERO_64B_RAM 起動ファイル(新規コード) .equ MC_RGM_BASE_ADDR、0x4028C000 .equ MC_RGM_FES_MASK_RAM_INIT、0xFFFFFFFF RamInit: /* MC_RGM DESレジスタをチェックし、ゼロでない場合はRAMInit_Startにジャンプします。(破壊的リセットが発生した場合は、RAM初期化が必要です) /* 動作させるには、お客様がアプリケーションコードの MC_RGM DES レジスタをクリアする必要があります。*/ ldr r4, =MC_RGM_BASE_ADDR /* 0x4028C000 */ ldr r4、[r4、#0x0] cmp r4、#0x0 bne RamInit_Start /* MC_RGM FESレジスタをチェックし、F_EXRビットまたはST_DONEビットが設定されている場合は、RAMInit_Startにジャンプします。*/ /* 外部リセットが発生した場合、または BIST 完了機能リセットが発生した場合は、RAM 初期化が必要です。*/ /* 動作させるには、お客様はアプリケーションコード内のMC_RGM FES F_EXRレジスタビットをクリアする必要があります。*/ ldr r4、=MC_RGM_BASE_ADDR ldr r4、[r4、#0x8] ldr r5、=MC_RGM_FES_MASK_RAM_INIT r4、r4、r5 cmp r4、#0x0 bne RamInit_Start b SRAM_LOOP_END RamInit_Start: /* SRAM ECCを初期化 */ ldr r0, =__RAM_INIT cmp r0、0 /* __SRAM_INITが設定されていない場合はスキップします */ beq SRAM_LOOP_END ldr r1, =__INT_SRAM_START ldr r2, =__INT_SRAM_END b ZERO_64B_RAM リンカーファイルの変更 古いコード: .int_results (NOLOAD):     { 。= ALIGN(4); KEEP(*(.int_results)) 。+= 0x100; } > int_sram_results 新しいコード: .int_results(NOLOAD):     { 。= ALIGN(4); KEEP(*(.int_results)) } > int_sram_results S32K31XEVB-Q100 ありがとう、 ユスプ Re: RAM retention not working across functional reset (S32K3xx) こんにちは、@yusupkhan241 さん。 デバッグを行った結果、以下のコードに誤りがあることがわかりました。 R2とR3の代わりにR1とR2を使用しました。 R2とR3が必要な理由は以下のとおりです。 この起動コードはどこで入手したのですか? デバッガが接続された状態で、デバッガはSRAM ECCを初期化します。 デバッガーを使用しない場合、0x20400090でハードフォルトが発生しました。 よろしくお願いいたします。 ダニエル Re: RAM retention not working across functional reset (S32K3xx) こんにちは、 @danielmartynek さん。 R2/R3を使うように設定すると、アプリケーションは動作します。 しかし、赤色LEDは常に点滅し、緑色LEDは点灯しないため、リセット後に値が保持されないことを示しています。 共有いただいたリンクから起動時の変更を適用しましたが、保持機能が期待どおりに動作しません。 S32K3 S32DS-ARM  https://community.nxp.com/t5/S32K/SRAM-ECC-Initialization-for-S32K344/mp/1764143 ありがとう、 ユスプ
查看全文
如何使用 NXP MBDT 在 S32K396BMS-EVB 上进入 MSDI MC33CD1030 的 LPM 模式 您好, 我需要一些 MBDT 参考设置或现成模型,以便在 CD1030 中使用 S32K396BMS-EVB 输入 LPM。 请支持。 谢谢!
查看全文