Multi Source Translation Content

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Multi Source Translation Content

Discussions

Sort by:
How to revert Platform SCP03 keys back to default using se05x_TP_PlatformSCP03keys.c? Hello NXP Community, I am working with the SE051 secure element and would like to ask how to properly revert the Platform SCP03 keys back to their default values using the Plug and Trust Middleware. What I have done so far: I modified demos/se05x/se05x_RotatePlatformSCP03Keys/se05x_TP_PlatformSCP03keys.c by commenting out the key reversion section (between doc:start:revert-scp03-keys and doc:end:revert-scp03-keys). I built and executed the application on my setup. The execution was successful, showing the message: "Congratulations !!! Key Rotation Successful!!!!" To verify the key change, I updated /tmp/SE05X/plain_scp.txt with the new key value (0x4041... for ENC, MAC, and DEK) and successfully connected via ssscli connect. Subsequent operations (ssscli generate rsa, ssscli set aes, and ssscli se05x readidlist) were all completed successfully, confirming that keys were written and IDs were retrieved without issues. Now, I would like to restore the Platform SCP03 keys back to the default keys (defined in sss/ex/inc/ex_sss_tp_scp03_keys.h). Could anyone guide me on how to modify se05x_TP_PlatformSCP03keys.c or what the correct process is to perform this key reversion? Environment: Board: MCIMX8M-WEVK with OM-SE051ARD Plug and Trust MW Version: v04.07.01 OP-TEE OS Version: 3.19.0 Linux Kernel: 6.1.151 OEF ID: A8FA Any advice or code pointers would be greatly appreciated. SE050 Re: How to revert Platform SCP03 keys back to default using se05x_TP_PlatformSCP03keys.c? Hi @Uc_S , If you just need to rotate the keys back to the default, the nano-package example is the recommended simpler path — only the three scp03_* arrays (current keys for auth) and the three NEW_scp03_* arrays (default keys as target) need to be updated, and the revert call within ex_se05x_rotate_scp03_keys() needs to be commented out. Please refer to the following for details. Change 1 — Set the current keys (used to open the SCP03 session) Lines 38–43 are the auth keys passed to ex_set_scp03_keys() . Replace the placeholder 0xABCD... values with your current keys ( 0x4041... 😞 uint8_t scp03_enc_key[AES_KEY_LEN_nBYTE] = { 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F }; uint8_t scp03_mac_key[AES_KEY_LEN_nBYTE] = { 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F }; uint8_t scp03_dek_key[AES_KEY_LEN_nBYTE] = { 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F }; c   Change 2 — Set the NEW target keys (the default SE051C A8FA keys) Lines 45–50 are the keys that will be written into the SE051 via PutKey . Replace the 0x4041... placeholder with the SE051C OEF A8FA default values: uint8_t NEW_scp03_enc_key[AES_KEY_LEN_nBYTE] = { 0xbf, 0xc2, 0xdb, 0xe1, 0x82, 0x8e, 0x03, 0x5d, 0x3e, 0x7f, 0xa3, 0x6b, 0x90, 0x2a, 0x05, 0xc6 }; uint8_t NEW_scp03_mac_key[AES_KEY_LEN_nBYTE] = { 0xbe, 0xf8, 0x5b, 0xd7, 0xba, 0x04, 0x97, 0xd6, 0x28, 0x78, 0x1c, 0xe4, 0x7b, 0x18, 0x8c, 0x96 }; uint8_t NEW_scp03_dek_key[AES_KEY_LEN_nBYTE] = { 0xd8, 0x73, 0xf3, 0x16, 0xbe, 0x29, 0x7f, 0x2f, 0xc9, 0xc0, 0xe4, 0x5f, 0x54, 0x71, 0x06, 0x99 }; c   Change 3 — Comment out the revert block In ex_se05x_rotate_scp03_keys() , comment out lines 85–90 so the code does a single rotation only (current → default) and does not try to rotate back again: /* -- Comment out the revert block below -- */ // SMLOG_I("Reverting SCP03 keys(version - %02x) to OLD KEYS \n", KEY_VERSION); // ret = ex_se05x_change_keys(&se05x_session, &scp03_enc_key[0], &scp03_mac_key[0], &scp03_dek_key[0]); // if (ret != 0) { // SMLOG_E("Error in ex_se05x_change_keys \n"); // return 1; // } c     Have a great day, Kan ------------------------------------------------------------------------------- Note: - If this post answers your question, please click the "Mark Correct" 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: How to revert Platform SCP03 keys back to default using se05x_TP_PlatformSCP03keys.c? @Kan_Li  Thank you for the clarification. In my case, the current keys are known (0x4041... for ENC, MAC, and DEK), and I can successfully establish an SCP03 session using these keys via ssscli. Since I have the current keys available to authenticate, could you please provide details on how to modify se05x_TP_PlatformSCP03keys.c to perform the key rotation back to the default values? Specifically, I would like to know: Which variables or macros should be updated with the current keys (0x4041...) for authentication during session setup. Which variables or structures should hold the target default key values (ex_sss_tp_scp03_keys.h) for the PutKey operation. Any code snippets or specific line references in se05x_TP_PlatformSCP03keys.c (or related boot/auth headers) would be greatly appreciated. Re: How to revert Platform SCP03 keys back to default using se05x_TP_PlatformSCP03keys.c? Hi @Uc_S , Rotating the Platform SCP03 keys back to the default values is only possible when the current keys are known, as a successfully authenticated SCP03 session is required before any key update ( PutKey ) command can be issued to the SE051. If the current keys have been lost or forgotten, it is not possible to authenticate to the SE051 and perform the key rotation. There is no backdoor or override mechanism — this is by design to preserve the security model of the device. Additionally, a factory reset does not help, as Platform SCP03 keys are explicitly unaffected by the factory reset procedure. In this situation, the only option is to replace the SE051 with a new device that still carries the default NXP-provisioned keys.   Have a great day, Kan ------------------------------------------------------------------------------- Note: - If this post answers your question, please click the "Mark Correct" 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: How to revert Platform SCP03 keys back to default using se05x_TP_PlatformSCP03keys.c? @Kan_Li  Thank you for providing the detailed guidance. Following your instructions, I updated the keys, commented out the revert block, and successfully built and executed the nano-package example. However, during execution, the SCP03 key update operation failed with a SW status code 6A80 during the PUT KEY APDU command. Here is the summary of the execution log: Plug and Trust nano package - version: 1.6.1 ... Establish Secure Channel to SE05x ! Sending GP Initialize Update Command !!! ... CardCryptogram verified successfully...Calculate HostCryptogram Sending GP External Authenticate Command !!! APDU Tx> :84 82 33 00 10 ... APDU Rx< :69 82 Authentication Successful!!! Created scp03 Session Changing SCP03 keys(version - 0b) to NEW KEYS APDU Tx> :84 d8 0b 81 58 ... APDU Rx< :6a 80 Error in DoAPDUTxRx Error in ex_se05x_change_keys SE05x Rotate SCP03 keys Example Failed ! Regarding potential root causes, I suspect that either the OpenSSL version (OpenSSL 3.x is used on both the build PC and the target evaluation board) is affecting key derivation/formatting during PutKey, or the DEK value in particular might have been mismatched/rewritten previously. At this moment, I do not have sufficient bandwidth to investigate or address these possibilities further. I will look into them separately if time permits later. Thank you again for your assistance. Re: How to revert Platform SCP03 keys back to default using se05x_TP_PlatformSCP03keys.c? Hi @Uc_S , Thank you for the detailed execution log — it provides exactly what is needed to pinpoint the issue. Your two suspects are both valid and well-reasoned. Here is a breakdown of what is most likely happening. What the 6A80 Error Tells Us SW 6A80 ( SW_WRONG_DATA ) means the SE051 rejected the data field of the PUT KEY APDU as cryptographically invalid. Since your log shows that authentication completed successfully (CardCryptogram verified + External Authenticate passed), the ENC and MAC keys are confirmed correct. The failure is isolated specifically to the PUT KEY step, which points directly to an issue with the DEK key or the AES encryption used to wrap the new key material. Suspect 1: DEK Key Mismatch — Most Likely Primary Cause Inside the PUT KEY command, each new key is encrypted under the current DEK before being sent to the SE. If the DEK value in the host code does not exactly match the DEK stored on the device, the SE decrypts garbage and returns 6A80. A near-identical case from a prior SE051C1 customer concluded: "If the minimal example works with PlatformSCP, then ENC and MAC keys are correct. As key rotation still fails, this means the DEK key needs to be wrong... the DEK key may have been set wrongly in the past." This is the most probable root cause given your history — a prior incomplete or incorrect rotation may have left the SE051's DEK in a state that no longer matches 0x4041... . Confirmation step: Test the same code on a brand-new, factory-fresh SE051 sample. If it succeeds immediately, this confirms that the current device's DEK state is corrupted/unknown, and the chip should be replaced — there is no recovery path without the correct DEK. Suspect 2: OpenSSL 3.x Compatibility — Real Risk, Secondary Cause The nano-package's SCP03 crypto path uses the legacy low-level OpenSSL API: AES_set_encrypt_key((uint8_t *)key, keylen * 8, &AESKey); AES_ecb_encrypt(srcData, destData, &AESKey, AES_ENCRYPT); The nano-package was designed and tested with OpenSSL 1.1.1 only. In OpenSSL 3.x, these APIs are deprecated and require the legacy provider to be explicitly loaded at runtime. If it is not loaded, these calls can silently produce incorrect output — which would corrupt the DEK-encrypted payload and also trigger 6A80. Recommended fix: Switch the nano-package to use mbedTLS as the host crypto backend ( -DEX_SE05X_USE_MBEDTLS=1 ), which does not rely on deprecated OpenSSL APIs and is fully supported for this use case. Alternatively, rebuild against OpenSSL 1.1.1 to test the OpenSSL version hypothesis in isolation. Recommended Action Sequence Test on a fresh SE051 first — this is the fastest way to confirm whether the current device's DEK is the root cause. Switch to mbedTLS for the host crypto backend to eliminate any OpenSSL 3.x risk going forward. If the fresh device also fails with mbedTLS, please share the build environment details (OS, compiler, mbedTLS version) for further investigation. Please note: if the current device's DEK is confirmed to be in an unknown state, there is no way to recover it — a replacement chip with factory-default keys will be required. Please let us know the result of the fresh sample test and we will be happy to assist further. Have a great day, Kan ------------------------------------------------------------------------------- Note: - If this post answers your question, please click the "Mark Correct" 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: How to revert Platform SCP03 keys back to default using se05x_TP_PlatformSCP03keys.c? @Kan_Li  Thank you very much for the detailed explanation and analysis regarding the 6A80 error. The breakdown of the DEK key mismatch and the OpenSSL 3.x compatibility risks (along with the suggestion to use mbedTLS) is helpful and clarifies the exact mechanisms at play. I will keep these suggested options -- such as testing on a fresh sample and considering mbedTLS for the crypto backend -- in mind for future troubleshooting when resources and bandwidth allow.
View full article
LPC5514JBD64EはWS2812用です。 こんにちは、初心者LPC5514JBD64E WS2812の扱いに適していますか?もしそうなら、コードやその他の詳細はどこで入手できますか? よろしくお願いします。 LPC55xx Re: LPC5514JBD64E Use for WS2812. こんにちは、@Kishore02さん 投稿ありがとうございます! LPC551x向けのWS2812の実装については情報がありませんが、プログラマブルロジックユニットを使うことができます。他のデバイスでは、アプリケーションコードハブのMCXA366 https://mcuxpresso.nxp.com/appcodehub?search=an-emulating-ws2812-bus-with-flexio-on-mcx366  また、Kinetisボード向けに実装した同僚の投稿もあります:NXP FlexIO Generator for the WS2812B LED Stripe Protocol( LED Stripe Protocol) この情報が参考になれば幸いです。 Re: LPC5514JBD64E Use for WS2812. LPC5514JBD64E(最大150MHzのARM Cortex-M33コア搭載)は強力なマイクロコントローラですが、WS2812(NeoPixel)アドレッサブルLEDを扱う初心者には理想的な選択肢ではありません。 Re: LPC5514JBD64E Use for WS2812. はい、LPC5514JBD64はWS2812のLEDを駆動するために使用できますが、正確なタイミングを生成するためにタイマー/SCTまたはSPIベースのインターフェースを設定する必要がある場合があります。初心者には、まずNXPのMCUXpresso SDK例やWS2812のドライバー例から始め、それらをLPC5514に適応させることをおすすめします。LPC5514 SDKのドキュメントやサンプルコードはNXPの公式MCUXpressoリソースで入手可能です。
View full article
IMXRT1176 应用程序崩溃,之后 IMXRT 无法启动。 您好, 我正在使用 IMXRT1176 定制板,在应用程序和辅助引导加载程序开发过程中,我的应用程序崩溃了,之后我无法刷写我的应用程序。我尝试进入串口下载器模式,然后擦除FLEXSPI NOR Flash,即使这样它仍然显示: “Flash Driver V.2 启动失败 - rc Ef(55): 动态闪存驱动程序启动未能提供闪存参数。终止 (0x0, 0x0, 0x0) 状态 0x40 - 驱动程序报告初始化失败 - EXTSPIJ 驱动程序 rc 20107 (0x4E8B) 芯片初始化失败 - Ef(55): 动态闪存驱动程序启动无法提供闪存参数。初始化闪存驱动程序 MIMXRT1170_SFDP_QSPI.cfx##" 我尝试通过 USB 将 NXP 启动实用程序连接到 MCU,并看到了以下日志。 "--------MCU设备ROM信息-------- 唯一 ID[31:00] = 0x8295ad77 唯一 ID[63:32] = 0x242cc80e 当前版本 = K3.0.1 目标版本 = T3.0.0 生命周期状态 = HAB 开放 --------MCU Flashloader 信息------- 当前版本 = K2.8.0 目标版本 = T1.0.1 --------MCU 设备 eFusemap-------- (0x940) SYSBT_CFG0 = 0x0 (0x950) SYSBT_CFG1 = 0x0 (0x960) SYSBT_CFG2 = 0x8 BT_FUSE_SEL = 1'b0 当 BMOD[1:0] = 2'b00(从熔丝启动)且引导设备中没有应用程序时,MCU 直接进入串口下载器模式。 当 BMOD[1:0] = 2'b10(内部启动)时,MCU 将根据 BOOT_CFGx 引脚和熔丝 BOOT_CFGx 启动应用程序。 ----------FlexRAM 存储器----------- IOMUXC_GPR->GPR16 = -------- --------MCU设备ROM信息-------- 唯一 ID[31:00] = 0x8295ad77 唯一 ID[63:32] = 0x242cc80e 当前版本 = K3.0.1 目标版本 = T3.0.0 生命周期状态 = HAB 开放 --------MCU Flashloader 信息------- 当前版本 = K2.8.0 目标版本 = T1.0.1 --------MCU 设备 eFusemap-------- (0x940) SYSBT_CFG0 = 0x0 (0x950) SYSBT_CFG1 = 0x0 (0x960) SYSBT_CFG2 = 0x8 BT_FUSE_SEL = 1'b0 当 BMOD[1:0] = 2'b00(从熔丝启动)且引导设备中没有应用程序时,MCU 直接进入串口下载器模式。 当 BMOD[1:0] = 2'b10(内部启动)时,MCU 将根据 BOOT_CFGx 引脚和熔丝 BOOT_CFGx 启动应用程序。 ----------FlexRAM 存储器----------- IOMUXC_GPR->GPR16 = -------- --------MCU设备ROM信息-------- 唯一 ID[31:00] = 0x8295ad77 唯一 ID[63:32] = 0x242cc80e 当前版本 = K3.0.1 目标版本 = T3.0.0 生命周期状态 = HAB 开放 --------MCU Flashloader 信息------- 当前版本 = K2.8.0 目标版本 = T1.0.1 --------MCU 设备 eFusemap-------- (0x940) SYSBT_CFG0 = 0x0 (0x950) SYSBT_CFG1 = 0x0 (0x960) SYSBT_CFG2 = 0x8 BT_FUSE_SEL = 1'b0 当 BMOD[1:0] = 2'b00(从熔丝启动)且引导设备中没有应用程序时,MCU 直接进入串口下载器模式。 当 BMOD[1:0] = 2'b10(内部启动)时,MCU 将根据 BOOT_CFGx 引脚和熔丝 BOOT_CFGx 启动应用程序。 ----------FlexRAM 存储器----------- IOMUXC_GPR->GPR16 = -------- --------MCU设备ROM信息-------- 唯一 ID[31:00] = 0x8295ad77 唯一 ID[63:32] = 0x242cc80e 当前版本 = K3.0.1 目标版本 = T3.0.0 生命周期状态 = HAB 开放 --------MCU Flashloader 信息------- 当前版本 = K2.8.0 目标版本 = T1.0.1 --------MCU 设备 eFusemap-------- (0x940) SYSBT_CFG0 = 0x0 (0x950) SYSBT_CFG1 = 0x0 (0x960) SYSBT_CFG2 = 0x8 BT_FUSE_SEL = 1'b0 当 BMOD[1:0] = 2'b00(从熔丝启动)且引导设备中没有应用程序时,MCU 直接进入串口下载器模式。 当 BMOD[1:0] = 2'b10(内部启动)时,MCU 将根据 BOOT_CFGx 引脚和熔丝 BOOT_CFGx 启动应用程序。 ----------FlexRAM 存储器----------- IOMUXC_GPR->GPR16 = --------" 它显示“MCU 已进入 Flash 加载器,但配置外部存储器失败,请 RESET 板并设置正确的引导设备,然后重试”。 我的 或非 Flash 是 W25Q32JV 四通道SPI。 请您在这件事上帮帮我。 谢谢! 纳根德拉 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot 嗨@Gavin_Jia , 感谢您的回复。 1.我从内存运行示例,得到的 ID 为 0。 2. Flash 连接到 FlexSPI A FlexSPI1 信号 RT1176 球/焊盘名称 FLEXSPI1_A_SCLK GPIO_SD_B2_07 FLEXSPI1_A_DATA0 GPIO_SD_B2_08 FLEXSPI1_A_DATA1 GPIO_SD_B2_09 FLEXSPI1_A_DATA2 GPIO_SD_B2_10 FLEXSPI1_A_DATA3 GPIO_SD_B2_11 FLEXSPI1_A_SS0_B GPIO_SD_B1_06 这块板之前可以正常用于我们的应用程序,我曾用它按照 FlexSPI 示例程序,通过擦除和重新编程闪存,为我们的应用程序实现辅助引导加载程序。但在此期间,应用程序卡住了,从那以后我就无法再刷写闪存了。 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot 你好@Nagendra_Kumar , 日志显示 MCU、ROM 和 Flashloader 都正常(HAB 打开,串行下载器连接)。故障发生在 FlexSPI 到 W25Q32JV 的初始化过程中:工具甚至无法读取 SFDP 参数,因此这是板/配置问题,而不是烧录工具的问题。由于新刷机也失败了,请按以下顺序检查: 首先从内部 RAM 运行 flexspi_nor_polling_transfer_cm7 示例,并读取 W25Q32JV 的 JEDEC ID。如果无法读取 ID,则确认存在硬件/引脚问题——暂时不要关注刷机工具。 确认闪存位于哪个 FlexSPI 实例/引脚组上。默认的 .cfx 文件MCUBootUtility 假定 FlexSPI1 端口 A(EVK 接线)。如果您的 FlexSPI2 或 FlexSPI1 是辅助接口,请修改 option0 中的引脚组字段,并烧录 FLEXSPI_PIN_GROUP_SEL 熔丝(地址 0x9A0[10]);在 MCUBootUtility 中显式选择匹配的实例。 建议使用安全配置工具 (SPT) ,它内置了 W25Q 系列的 FCB 模板和启动内存配置功能,以便首先验证设置。 另外,请确认:这块板之前是否曾通过W25Q32JV成功编程和启动过? 此致, 加文 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot 您好, 我忘了说,我还把 或非 闪存换成了新的。错误依然存在。 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot 你好@Nagendra_Kumar , 谢谢你的更新! 我发现表格显示: FLEXSPI1_A_SS0_B GPIO_SD_B1_06 应该是 GPIO_SD_B2_06。这是笔误还是实际连接状态?RAM 代码返回的 JEDEC ID 为 0,表明闪存硬件完全没有响应。因此,如果您的连接正确,则应检查硬件连接和电源,并使用示波器检查波形。 此致, 加文 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot 嗨@Gavin_Jia , FLEXSPI1_A_SS0_B GPIO_SD_B1_06 GPIO_SD_B1_06 是拼写错误。对此我深感抱歉。实际上它只连接到GPIO_SD_B2_06 。我用示波器检查了表格中的 FLEXSPI 引脚,发现这些引脚上没有任何活动。 此外,当我从 RAM 运行您提到的示例时,SS0_B 信号始终为低电平。我有多个相同类型的板,但在正常工作的板上,我得到的 ID 却是 0xEF。这个问题具体出现在我测试辅助引导加载程序实现的一块电路板上,当时电路板死机了。我不明白软件/应用程序崩溃怎么会导致这种行为,我也不知道是否应该用其他开发板来测试该软件。很遗憾,我无法提供我编写的代码。为了让您有个概念,我使用 SDK 中的 FreeRTOS 示例编写了我的应用程序,并构建了我的应用程序,然后使用 flexspi 轮询示例来实现辅助引导加载程序!我使用了 2 个 LPSPI(采用 DMA)、2 个 UART(采用 DMA)和 2 个 CAN。这是一个小型应用程序。我使用的是SDK版本2.8.1。 期待您的回复。 纳根德拉·库马尔。
View full article
PCA9450 バック電圧の許容範囲外 i.MX8 Nanoへの電源供給にはPCA9450BHNYを使用しています。 生産テスト中に、Buck 1 (V_0V95_SOC) と Buck2 (V_0V85_ARM) の電圧を測定し、0.85V +/- 2% の電圧制限を確認します。 このテスト中は、CPUは停止し、フラッシュメモリはプログラムされていない状態になります。 2026年8月から電圧が上昇し、一部の基板で上限値を超えます。 個々の基板の電圧が上昇するだけでなく、数千枚の基板の平均値も上昇する。 PCN (202502007F01 : PCA9450 / MP90 デュアルウェハ製造ソース拡張) がありました 昨年(2025年4月25日)SSMCからPSMCへ 新しいウェハーファブが問題の原因になり得るのでしょうか? i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: PCA9450 Buck Voltage outside tolerance こんにちは! ご辛抱いただきありがとうございます。現在社内で確認中です。最新情報が入り次第、ご連絡いたします。 Re: PCA9450 Buck Voltage outside tolerance 社内調査の結果、問題の原因は、摩耗したテストプローブがプリント基板上のテストポイントに接触したことにあると判明した。テストプローブを交換したところ、電圧は許容範囲内になりました。
View full article
Gui-guider 2.0的一些建议 希望Gui-guider 2.0在设置中增加一个选项来控制开启或者关闭生成的文件中时间戳. 然后生成的每一个页面(screen)都会有相应的gg_event_screen.c,哪怕我的页面没有使用注册任何事件, 希望在没有注册任何事件的时候不要生成事件的任何内容. 另外希望能有一个机制能选择把一些没有显示的图片或者资源打包进项目,虽然目前可以在幽灵页上放图片和字体的方式包含进工程项目,但是不太优雅. 关于字体,目前在设置中有一个控制所有字体的默认生成范围的设置,希望未来能控制所有字体的生成的范围. 致谢 回复: Gui-guider 2.0的一些建议 Hi @Xu_556678 , 非常感谢您的反馈,这些建议对我们非常宝贵,我们将在未来release中考虑进行相应的优化和改进。 希望GUI Guider 能够帮助到您的工作,未来如有任何问题和建议都欢迎您反馈。 Best Regards, Wenbin
View full article
RT1172 LT8918 LCD 并行 LCDIFV2 小层 + 背景欠载 很遗憾,我无法直接将 mipi 输出连接到这个 LCD,所以添加了 LT8918,但似乎没有出现任何问题。测试图案可以顺利传输到该设备上,我的调试日志也显示它已同步并通过了基本设置。 但是我的输出结果有问题。我目前的代码是为一个非常简单的小型内存缓冲区(128x256)设计的,位于 800x1280 屏幕的中间。无需查看实际输出屏幕,但画面看起来非常失真。另外,在打印的诊断信息中,我遇到了很多欠载错误,就好像 DMA 获取数据的速度不够快,无法完成整行写入一样。 所以,我对液晶显示器或恩智浦寄存器并不精通。我是不是在某个地方犯了什么低级错误?存在诸多不确定因素。SRAM_OC1 真的速度很慢吗?或许可以通过调整 AXI 或 DMA 设置来获得正确的时序?我在 MPU 代码中将其重新配置为非缓存模式,但这可能也是一个错误。很遗憾,我看不出默认区域和 ncache 区域之间有什么区别。还有很多其他事情需要考虑,比如我尝试将步长更改为整个 800 像素行,而不是较小的 128 图层 0 大小。RGB 像素时钟比 MIPI 字节时钟慢,但我预计 MIPI 无论如何都会快得多,因为它只有 2 条线,而 RGB 有 24 个并行连接。 另外,我之所以只创建这么小的第 0 层区域,是因为 同步动态随机存取存储器(SDRAM) 可能会出现错误。为了摆脱这种不确定性,我把它简化成一个更小的、可控的部分,但即使在这里,我似乎也找不到到底哪里出了问题。 能走到这一步固然令人欣慰,但同时也让人很沮丧,因为我不知道该如何才能取得更大的进步。背景单色显示一切正常,测试图案也能显示形状良好的条形区域,所以我认为这不是真正的“LCD”问题,而是RAM缓冲区读取或LCDIFv2将其输出到并行输出时存在一些时序问题。 我该如何调试这个问题?谢谢。 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun 我又尝试了一些方法,现在看来输出确实稳定了,没有出现欠载错误,至少根据我打印的诊断信息来看是这样。我认为最主要的变化是第一个变化,其他变化实际上更难一些,但为了清楚起见,我还是列出来吧。这个设置仍然是 RGB888,我还没想改成 alpha 层绘制来尝试,因为它还不是很好。 1. 将像素时钟频率降低很多,刷新率降至接近 15Hz。DMA或许有额外的工作时间?但正如你所说,OCRAM 的速度应该很快。我在 MPU 配置中也将其设置为该空间中的 NCACHE 区域。 2. 使用的颜色只有黑色和白色。尝试使用绿色背景实际上会引入一些背景问题,绿色可能会偏移到 RGB 图案中,导致每一行都发生变化(偏移 1 个字节?)。 3. 将 RAM 层 0 的宽度更改为 256,以匹配高度 256。实际上,高度为 128 也完全可以,只是这个特定的日志高度为 256,你可以看到步幅也变成了 768。 4. 前廊和后廊的视频设置要大得多。我怀疑这不是主要因素,我也尝试过用更快的速度运行这些设置,但效果并不理想。数据表允许 Hfp + Hbp + Hs 的最大值任意大,有什么理由让总和超过 200 吗?垂直设置总共限制为 250 个。 总之,这很有趣!从技术角度来说,LCD 数据手册上说它应该至少以 22Hz 的频率运行,但我没有看到白色部分出现闪烁。我希望它跑得更快。 我完全没有关注RT1172上的DMA,有什么办法可以加快它的运行速度或者提高它的优先级之类的吗?LCDIFv2还有其他相关设置吗?尤其是考虑到 OCRAM 的速度应该非常快,我很惊讶速度降低这么多竟然会产生这样的效果。 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun 正确的。非常感谢!我们来尝试更多的事情。这是另一条日志。 我还是想坚持使用RGB888。ARGB8888 有什么理由更适合这个用途吗?我或许会找时间试试 alpha 版本。 CTRLDESCL5: 0xD8000260 我查阅了参考手册,BPP 设置位于第 27-24 位,所以“8”表示我已成功将其设置为 RGB888,至少看起来是这样。最后几个字节似乎无关紧要,alpha 设置似乎也无害地关闭了。 屏幕输出看起来不一样,但并不固定。或许有所改进?虽然仍有环绕效果,但没那么夸张了。 我还尝试过提高像素时钟的速度,但不确定这样做是好是坏。 我可以尝试更改更多视频设置吗?我原以为我设置的 25% Hsync 参数已经非常高了,但话说回来,我以前从未这样做过。什么样的场景才算特别好?垂直同步也相关吗?还有一个 LT8918 桥接器也需要获取这些设置输入,不过我也可以处理它。我只能靠猜来填入正确的数字吗? 驱动程序是 JD9365DA-H3,希望这能有所帮助。这是一个带有触摸屏的奇怪设备,但我对此没有任何意见。 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun 嗨@davidpspeedtech , 谢谢你的更新!但是,问题在于您的某些设置不一致。 0xD9000260 → 硬件锁定的格式为 ARGB8888(32 位/像素)。 因此,当您设置步长 = 384 (=128×3, RGB888) 时,硬件仍然会读取 128×4 = 512 字节/行 → 每行未对齐,读取超出缓冲区,并发生下溢。 你每次都只更改了步长或 BPP 宏,但硬件实际上遵循 .pixelFormat ,它仍然是 ARGB8888——这四个值从来都不一致。 请一次性将它们全部统一设置为 32 位 ARGB8888 或 RGB888:   #define SMALL_LAYER_0_BPP 4U #define SMALL_LAYER_0_STRIDE (SMALL_LAYER_0_WIDTH * 4) /* = 512 */ uint8_t smallLayer0_Buffer0[256][512]; .pixelFormat = kLCDIFV2_PixelFormatARGB8888, .strideBytes = SMALL_LAYER_0_STRIDE, /* 512,而不是 3200 */   CTRLDESCL3 现在应该读取 0x200 (512)。32 位帧缓冲区和 24 针 RGB888 输出是独立的——24 针连接不需要 3 字节缓冲区。 此外,这三行代码使用了 eLCDIF 位定义;LCDIFv2 没有 RUN 位,这可能会干扰控制状态:   LCDIFV2->CTRL &= ~LCDIF_CTRL_SFTRST_MASK; LCDIFV2->CTRL &= ~LCDIF_CTRL_CLKGATE_MASK; LCDIFV2->CTRL |= LCDIF_CTRL_RUN_MASK;   Gavin_Jia_0-1788249587860.pngGavin_Jia_0-1788249587860.pngGavin_Jia_0-1788249587860.pngGavin_Jia_0-1788249587860.png 请仅使用标准 API 进行驱动。 为了证实你提出的其他几点: 步长是基于 RAM 缓冲区宽度,而不是屏幕宽度——正确。 背景颜色稳定,因为它是由寄存器生成的(无需内存读取);这证明输出路径正常,并将故障隔离到层读取路径。 颜色缓冲区在原色/辅助色之间闪烁(“就像丢失了一个字节”),这恰恰是欠载丢字节造成的;一旦格式一致,这种情况应该就会消失。 带宽不是瓶颈(OCRAM,128 宽)。如果在此之后仍然存在欠载现象,请降低像素时钟频率或增加 HBP/HFP 以确认。 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun 但这并不能解决问题。实际上,无论是 RGB888 的步长为 128*3,还是 ARGB8888 的步长为 800*4 并尝试将整个屏幕放入 RAM 中,输出看起来都非常相似,屏幕边缘都会出现失真,而且我仍然会遇到欠载错误。我尝试了很多设置,不仅仅是那些文件中的文本! #define SMALL_LAYER_0_HEIGHT 256U #define SMALL_LAYER_0_WIDTH 128U #define SMALL_LAYER_0_BPP 3U /* RGB888 */ #define SMALL_LAYER_0_STRIDE (SMALL_LAYER_0_WIDTH*SMALL_LAYER_0_BPP) /*384*/ ~调试打印~ CTRLDESCL3: 0x 180 (引脚间距/步长 = 384 字节) 这样做也不行。 但我很高兴你能确认我的第 0 层步长设置应该基于 RAM 缓冲区宽度,而不是基于 LCD 屏幕宽度。正确的? 由于 LT8918 的接口是 24 针并联连接,所以它实际上应该是 RGB888。我有时担心 DMA 或其他什么功能跟不上,但由于缓冲区大小太小,SRAM_OC1 已经用完了。或许 RGB565 也能有类似的输出,因为其 RGB 引脚可以正确输出最高有效位。我甚至可能会尝试单色系的作品。 我可能犯了更多错误,如示例代码所示,RGB888 的 BPP 设置为 4 而不是 3。 是否必须将“背景区域”放在不同的层中,并缓冲到其他内存中?我喜欢它的背景设置似乎工作正常,无论我将其设置为哪种纯色,输出颜色都能保持稳定。对非白色 RAM 缓冲区进行一些实验,可以让屏幕在原色(RGB)或二次色之间闪烁,就像丢失了一个字节一样。 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun 嗨@davidpspeedtech , 感谢您对 NXP MIMXRT 系列产品的关注! 我已查看您提供的附件,其中一些设置可能需要调整。 CTRLDESCL3: 0x00000C80(音高/步幅 = 3200 字节) #define SMALL_LAYER_0_BPP 3U /* RGB888 */ #define SMALL_LAYER_0_STRIDE (128 * 3) /* = 384 字节 */ uint8_t smallLayer0_Buffer0[256][384]; -->您编程到 CTRLDESCL3 中的 PITCH 值(3200 字节)与您的实际缓冲区布局不匹配。您的缓冲区在 RGB888 模式下为 128 x 256,因此每行只有 128 x 3 = 384 字节。   当 PITCH = 3200 时,LCDIFv2 每行推进 3200 字节而不是 384 字节,因此每行结束后都会远远超出有效数据。仅仅这一个不匹配就足以产生你看到的两种症状:每行错误的起始地址导致图像失真/倾斜,而每行获取大约 8 倍的(无效的)数据会使输出 FIFO 容量不足,从而引发下溢错误。   请使层描述符与缓冲区保持一致: CTRLDESCL3 (引脚间距) = 384 (0x180),即SMALL_LAYER_0_STRIDE = 128 * 3。 缓冲区基地址 64 字节对齐;保持不可缓存(您当前的设置是正确的),或者在显示之前清除 数据缓存。 此致, 加文 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun 嗨@davidpspeedtech , 描述符现在是自洽的:CTRLDESCL5=0xD8000260(BPP=8=RGB888),CTRLDESCL3=0x300=768=256×3。你没看错。 但根本的不匹配仍然存在;只是被低时钟频率掩盖了。颜色“每行都改变,就像丢失了一个字节”就是证据:你的内存转储全是 0xFFFFFFFF ,而 Center Pixel 将一个像素读取为一个 32 位字——也就是说,内容仍然是 32 位/像素,而硬件获取了 3 个字节。白色在每个字节中都是 0xFF,因此会被隐藏;绿色会逐行漂移。 降低像素时钟“消除”欠载,但这并不是因为 OCRAM 速度慢(OCRAM 速度很快,片上内存不是瓶颈)。欠载取决于 LCDIFv2 作为 AXI 主设备的读取吞吐量。你将刷新率降低到 ~13.5 Hz (18.85 MHz ÷ (1000×1400)),使读取需求减少了 3-4 倍,因此停止了——但这低于面板的最低要求。 为了快速运行而不至于半倒,以下方法可能有所帮助: 切换到 ARGB8888 端到端: .pixelFormat=ARGB8888 ,BPP=4,步长=256×4=1024,缓冲区大小为 4 字节/像素,并确保像素写入代码写入 32 位字。两个原因:(a)它与您现有的 32 位内容匹配 → 修复绿色;(b)RM 指出打包的 RGB888 在总线上发出长度为 15 的突发信号(效率较低,更容易出现欠载),而 ARGB8888 是 32 位对齐的,具有干净的长度为 16 的突发信号。使用绿色转储进行验证:应该是一个干净的重复,而不是逐行漂移。 提高 LCDIFv2 b_clk(时钟根),将像素时钟恢复到 ≥22 Hz——这是提高速度的正确方法,而不是降低时钟频率。LCDIFv2 不使用 eDMA,因此“提高 DMA 优先级”不适用;可用的控制手段有 b_clk、突发长度、未完成的请求和 THRES 动态优先级阈值。 从 JD9365DA-H3 面板数据手册中获取时序——不要猜测——并将 LT8918 输入时序与之匹配。~200 水平消隐是可以接受的;更大的消隐可以缓解欠载,但会增加 htotal(需要更高的像素时钟),所以这是一个权衡——根本的解决方法是更高的 b_clk。垂直同步/垂直门廊必须与面板匹配,但对每行欠载影响很小。 此致, 加文 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun 我是 NXP 的新手,所以一开始就应该正确设置,但实际上解决这个问题的简单方法是将 BUS_CLK_ROOT 增加到 200MHz,而不是默认的 24MHz。我完全忽略了这些默认设置。 之后不仅小窗口显示正常,整个屏幕也恢复正常,而且显示频率也达到了 60Hz(像素时钟频率约为 80MHz)。SDRAM 的设置当然更复杂,但 OCRAM 和 SDRAM 都受到总线时钟的限制,这很合理。 我还调整了其他一些时钟,或许这些调整是必要的。查看 EVK 示例以及时钟外设工具,也会发现他们为这些项目更改了这些内容。查看“clock_config.c”时很难注意到这一点。 总之,非常感谢!
View full article
S32K396 SELCTL 从 FIRC 更新到 PLL 我使用 S32K396-BGGA-DC1 开发板,尝试使用 16MHz 外部振荡器 (Y2) 进行时钟控制。 当我将 MC_CGM Mux 0 CSC 的 SELCTL 设置为 PLL,然后设置 CLK_SW = 1 时,遇到了问题。我收到一个调试错误(Trace32),并且运行的代码崩溃了。我尝试在不连接调试器的情况下运行程序,并在设置 CLK_SW = 1 后打开其中一个用户 LED。LED灯一直不亮,所以我推测是微型芯片卡在了同一个位置。 以下是我的时钟配置的伪代码: PLLCR.PLLPD = 1 设置 PLLDV.MFI、PLLDV.RDIV、PLLDV.ODIV2 和 PLLODIV[0].DIV PLLCR.PLLPD = 0 确认 PLLSR.LOCK = true(while 循环) PLLODIV[0].DE = 1 将闪存等待时间配置为 160MHz 和 RAM // 基于 A+ 模式配置 MUX[0].DIV_TRIG_CTRL.TCTL = 1 MUX[0].DIV_TRIG_CTRL.HHEN = 1 使用相应的时钟分频值配置 MUX[0].DC[0 - 7] MUX[0].DIV_TRIG = 1 等待 DIV_STAT = 0 MUX[0].CSC.SELCTL = 0x8 (PLL_PHI0_CLK) MUX[0].CSC.CLK_SW = 1           << 尝试写入 1 时在此处崩溃 我的操作步骤是不是漏掉了什么?我确保尺寸不超过各个分频器的限制,所以我觉得这不是问题所在。提前感谢您提供的任何指导! Re: S32K396 SELCTL update to PLL from FIRC 找到问题所在了,需要在设置 SELCTL 之前设置 SAFE_SW = 1。
View full article
Configuring imx93 M33 memory via BLK_CTRL_S_AONMIX register M33_CFG[TCM_SIZE] We are reviewing the imx933 and just found the  M33 only has 128KB available in its default config.  Per the imx93 RM we see that BLK_CTRL_S_AONMIX register M33_CFG should allow us to combine the 2x128KB block together by setting 01 for DOUBLE_CODE.  Are there any examples of this?  None of the linker scripts in the SDK (SDK_2_16_000_MCIMX93-EVK) use anything bigger than 128k and I cannot find any references to this in any SDK example/demo.  How do we utilize this?  Is it simply a matter of setting the register at init/reset and modifying the linker script?  HW-Open-Source Re: Configuring imx93 M33 memory via BLK_CTRL_S_AONMIX register M33_CFG[TCM_SIZE] Hello @Manuel_Salas I have read this discussion about using the TCM as code memory. I wanted to ask about the other option: would it be feasible to use the 256 KB TCM as additional data memory instead? This would involve changing m33_cfg[tcm_size] = 0b10. (DOUBLE_DATA_TCM) I patched the m33_prepare() function to change the register and zeroize the 0x20200000 region in order to clear the TCM and initialize it for ECC. U-Boot and the Linux kernel start without any warnings or errors. However, when I start the firmware using remoteproc, it causes the entire system to restart without any error messages. Do you have any advice on how to fix this? Best regards, Re: Configuring imx93 M33 memory via BLK_CTRL_S_AONMIX register M33_CFG[TCM_SIZE] Hi, We are using an NPU for an ML application, which requires Ethos. However, our low-level application runs on an M33 core. We are trying to integrate it into the existing ethous_rpmsg_app, but it already consumes a lot of memory. We need to increase the memory size from 128K to 256K. Please share the method to achieve this. Memory Consumption of Demo example m33_sdk_work/boards/mcimx93evk/demo_apps/ethosu_apps_rpmsg - Screenshot from 2025-03-13 16-48-10.pngScreenshot from 2025-03-13 16-48-10.png Re: Configuring imx93 M33 memory via BLK_CTRL_S_AONMIX register M33_CFG[TCM_SIZE] Hello @TRX_Ivan  I hope you are doing very well. There is an issue with TCM and M33 core because M33 SDK image has to be started from ROM code, which use system TCM to save stack. Unfortunately, there is not workaround to directly use 256KB code TCM. Best regards, Salas.
View full article
BLK_CTRL_S_AONMIXレジスタM33_CFG[TCM_SIZE]を介してimx93 M33メモリを設定します。 imx933をレビューしているのですが、M33のデフォルト設定では利用可能なメモリが128KBしかないことが分かりました。imx93 RMによると、BLK_CTRL_S_AONMIXレジスタM33_CFGのDOUBLE_CODEを01に設定することで、2つの128KBブロックを結合できることがわかります。 この例はありますか?SDK内のリンカースクリプト(SDK_2_16_000_MCIMX93-EVK)は128kを超えるものを使っておらず、SDKの例やデモにもこの点の言及は見つかりません。 これをどのように活用すればよいでしょうか?単にレジスタをinit/resetに設定し、リンカースクリプトを修正するだけでしょうか? HW-Open-Source Re: Configuring imx93 M33 memory via BLK_CTRL_S_AONMIX register M33_CFG[TCM_SIZE] こんにちは、 @Manuel_Salas さん TCMをコードメモリとして使用することに関する議論を読みました。 別の選択肢についてお伺いしたいのですが、256KBのTCMを追加のデータメモリとして使用することは可能でしょうか? これには、m33_cfg[tcm_size] = 0b10 に変更することが含まれます。(DOUBLE_DATA_TCM) TCMをクリアしてECC用に初期化するために、m33_prepare()関数にパッチを適用し、レジスタを変更して0x20200000領域をゼロにしました。 U-BootとLinuxカーネルは警告やエラーなしに起動します。しかし、remoteprocを使用してファームウェアを起動すると、エラーメッセージが表示されることなくシステム全体が再起動してしまいます。 この問題を解決するためのアドバイスはありますか? よろしくお願いいたします。 Re: Configuring imx93 M33 memory via BLK_CTRL_S_AONMIX register M33_CFG[TCM_SIZE] こんにちは、 私たちはMLアプリケーション用にNPUを使っており、Ethosが必要です。しかし、私たちの低レベルアプリケーションはM33コア上で動作しています。既存のethous_rpmsg_appに統合しようとしていますが、既に多くのメモリを消費しています。メモリ容量を128Kから256Kに増やす必要があります。その方法を教えてください。 デモ例 m33_sdk_work/boards/mcimx93evk/demo_apps/ethosu_apps_rpmsg のメモリ消費量 - Screenshot from 2025-03-13 16-48-10.png2025-03-13 16-48-10 のスクリーンショット.png Re: Configuring imx93 M33 memory via BLK_CTRL_S_AONMIX register M33_CFG[TCM_SIZE] こんにちは、 @TRX_Ivan さん。 お元気でお過ごしのことと思います。 TCMとM33コアには問題があります。なぜならM33 SDKイメージはROMコードから起動しなければならず、システムはシステムTCMを使ってスタックを保存しているからです。 残念ながら、256KBのコードTCMを直接使用するための回避策はありません。 よろしくお願いいたします。 サラス。
View full article
PCA9450 Buck Voltage outside tolerance We use a PCA9450BHNY to supply an i.MX8 Nano. During production testing, we measure the Voltage of Buck 1 (V_0V95_SOC) and Buck2 (V_0V85_ARM) an check the voltage Limits of 0.85V +/- 2%. During this test, the CPU stops and the flash is unprogrammed. Beginning in August 2026 the Voltage rises and violates the upper limit at some boards. Not only the individual Voltages of a board rises, also the mean value of thousands of boards. There was an PCN (202502007F01 : PCA9450 / MP90 Dual Wafer Fabrication Source Expansion from SSMC to PSMC) last year (25.04.2025) Can the new wafer fab a possible source of the problem? i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: PCA9450 Buck Voltage outside tolerance Hello! Thank you for your patience. I’m currently checking this internally and will get back to you as soon as I have an update. Re: PCA9450 Buck Voltage outside tolerance An internal investigation revealed that the problem was caused by worn test probes contacting the test points on the printed circuit board. We replaced the test probes, and the voltages are now within the permissible range.
View full article
S32K396 SELCTL アップデートからPLLへの変更(FIRCより) S32K396-BGGA-DC1開発ボードを使用して、16MHz外部発振器(Y2)をクロックとして使用しようとしています。 MC_CGM Mux 0 CSC の SELCTL を PLL に設定してから CLK_SW = 1 に設定すると問題が発生します。デバッグエラー(Trace32)が発生し、実行中のコードがクラッシュします。デバッガを接続せずに、設定CLK_SW = 1を超えた後にユーザーLEDの一つを点灯させてみました。LEDは点灯しないので、マイクロメーターが同じ場所で引っかかっているのだと思います。 以下は、私のクロック設定の擬似コードです。 PLLCR.PLLPD = 1 PLLDV.MFI、PLLDV.RDIV、PLLDV.ODIV2、およびPLLODIV[0].DIVを設定します。 PLLCR.PLLPD = 0 PLLSR.LOCK = true であることを確認します (while ループ) PLLODIV[0].DE = 1 フラッシュ待機時間を160MHzに設定し、RAMを… // A+モード設定に基づく MUX[0].DIV_TRIG_CTRL.TCTL = 1 MUX[0].DIV_TRIG_CTRL.HHEN = 1 MUX[0].DC[0 - 7]をそれぞれのクロック分周器値で設定します。 MUX[0].DIV_TRIG = 1 DIV_STAT = 0 になるまで待機する MUX[0].CSC.SELCTL = 0x8 (PLL_PHI0_CLK) MUX[0].CSC.CLK_SW = 1           << 1 に書き込もうとするとここでクラッシュします 私の手順に何か見落としがあるのでしょうか?個々の仕切りの制限以下に配置したので、それが問題ではないと思います。この件に関してご助言いただければ幸いです。よろしくお願いいたします。 Re: S32K396 SELCTL update to PLL from FIRC 問題の原因が分かりました。SELCTLを設定する前にSAFE_SW = 1を設定する必要がありました。
View full article
IMXRT1176 アプリケーションがクラッシュ、後でIMXRTが起動しない こんにちは、 カスタムボードIMXRT1176を使っていますが、アプリケーションとセカンダリブートローダーの開発中にアプリケーションがクラッシュし、その後、アプリケーションのフラッシュができません。シリアルダウンローダーモードに入ってからFLEXSPI NORフラッシュを消去してみましたが、それでも表示されます 「Flash ドライバ V.2の起動失敗 - rc Ef(55): 動的フラッシュドライバ起動がフラッシュパラメータを提供できません。終了(0x0、0x0、0x0)ステータス0x40 - ドライバーがinit失敗を報告 - EXTSPIJドライバーrc 20107(0x4E8B)チップ初期化失敗 - Ef(55): 動的フラッシュドライバー起動がフラッシュパラメータを提供できません。フラッシュドライバーの初期化に失敗MIMXRT1170_SFDP_QSPI.cfx##」 NXPのブートユーティリティをUSB経由でMCUに接続して、このログを試しました。 「--------MCUデバイスROM情報-------- ユニークID[31:00] = 0x8295ad77 ユニークID[63:32] = 0x242cc80e 現行バージョン = K3.0.1 対象バージョン = T3.0.0 ライフサイクル状態 = HABオープン --------MCUフラッシュローダー情報------- 現行バージョン = K2.8.0 ターゲットバージョン = T1.0.1 --------MCUデバイスeFusemap-------- (0x940)SYSBT_CFG0=0x0 (0x950)SYSBT_CFG1=0x0 (0x960)SYSBT_CFG2=0x8 BT_FUSE_SEL = 1'b0 BMOD[1:0] = 2'b00(ヒューズからの起動)、起動デバイス内にアプリがない場合、MCUは直接シリアルダウンローダーモードに入ります BMOD[1:0] = 2'b10(内部起動)時、MCUはBOOT_CFGxピンとヒューズの両方に基づいてアプリを起動BOOT_CFGx ----------FlexRAMメモリ----------- IOMUXC_GPR->GPR16 = -------- --------MCUデバイスROM情報-------- ユニークID[31:00] = 0x8295ad77 ユニークID[63:32] = 0x242cc80e 現行バージョン = K3.0.1 対象バージョン = T3.0.0 ライフサイクル状態 = HABオープン --------MCUフラッシュローダー情報------- 現行バージョン = K2.8.0 ターゲットバージョン = T1.0.1 --------MCUデバイスeFusemap-------- (0x940)SYSBT_CFG0=0x0 (0x950)SYSBT_CFG1=0x0 (0x960)SYSBT_CFG2=0x8 BT_FUSE_SEL = 1'b0 BMOD[1:0] = 2'b00(ヒューズからの起動)、起動デバイス内にアプリがない場合、MCUは直接シリアルダウンローダーモードに入ります BMOD[1:0] = 2'b10(内部起動)時、MCUはBOOT_CFGxピンとヒューズの両方に基づいてアプリを起動BOOT_CFGx ----------FlexRAMメモリ----------- IOMUXC_GPR->GPR16 = -------- --------MCUデバイスROM情報-------- ユニークID[31:00] = 0x8295ad77 ユニークID[63:32] = 0x242cc80e 現行バージョン = K3.0.1 対象バージョン = T3.0.0 ライフサイクル状態 = HABオープン --------MCUフラッシュローダー情報------- 現行バージョン = K2.8.0 ターゲットバージョン = T1.0.1 --------MCUデバイスeFusemap-------- (0x940)SYSBT_CFG0=0x0 (0x950)SYSBT_CFG1=0x0 (0x960)SYSBT_CFG2=0x8 BT_FUSE_SEL = 1'b0 BMOD[1:0] = 2'b00(ヒューズからの起動)、起動デバイス内にアプリがない場合、MCUは直接シリアルダウンローダーモードに入ります BMOD[1:0] = 2'b10(内部起動)時、MCUはBOOT_CFGxピンとヒューズの両方に基づいてアプリを起動BOOT_CFGx ----------FlexRAMメモリ----------- IOMUXC_GPR->GPR16 = -------- --------MCUデバイスROM情報-------- ユニークID[31:00] = 0x8295ad77 ユニークID[63:32] = 0x242cc80e 現行バージョン = K3.0.1 対象バージョン = T3.0.0 ライフサイクル状態 = HABオープン --------MCUフラッシュローダー情報------- 現行バージョン = K2.8.0 ターゲットバージョン = T1.0.1 --------MCUデバイスeFusemap-------- (0x940)SYSBT_CFG0=0x0 (0x950)SYSBT_CFG1=0x0 (0x960)SYSBT_CFG2=0x8 BT_FUSE_SEL = 1'b0 BMOD[1:0] = 2'b00(ヒューズからの起動)、起動デバイス内にアプリがない場合、MCUは直接シリアルダウンローダーモードに入ります BMOD[1:0] = 2'b10(内部起動)時、MCUはBOOT_CFGxピンとヒューズの両方に基づいてアプリを起動BOOT_CFGx ----------FlexRAMメモリ----------- IOMUXC_GPR->GPR16 = --------」 「MCUがフラッシュローダーに入ったが外部メモリの設定に失敗しました。基板をリセットし、適切な起動デバイスを設定して再度お試しください」と表示されます。 私のNORフラッシュメモリはW25Q32JV Quad SPIです。 この件に関して、どうかご協力をお願いいたします。 ありがとうございました。 ナゲンドラ Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot こんにちは、 @Gavin_Jia さん。 ご回答ありがとうございます。 1.RAMからサンプルを実行したところ、IDが0になりました。 2. フラッシュはFlexSPI Aに接続されています FlexSPI1信号RT1176ボール/パッド名 FLEXSPI1_A_SCLK GPIO_SD_B2_07 FLEXSPI1_A_DATA0 GPIO_SD_B2_08 FLEXSPI1_A_DATA1 GPIO_SD_B2_09 FLEXSPI1_A_DATA2 GPIO_SD_B2_10 FLEXSPI1_A_DATA3 GPIO_SD_B2_11 FLEXSPI1_A_SS0_B GPIO_SD_B1_06 このボードは以前、私たちのアプリケーションで動作しており、Flexspiの例を使ってフラッシュを消去・プログラムすることで、アプリケーションのセカンダリーブートローダーを実装しましたが、その間にアプリケーションがフリーズし、それ以降はフラッシュできなくなりました。 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot こんにちは、 @Nagendra_Kumar さん。 ログを見ると、MCU、ROM、フラッシュローダーはすべて正常(HABオープン、シリアルダウンローダー接続)を示しています。故障はFlexSPI–to–W25Q32JVの初期化で、ツールはSFDPパラメータすら読み取れないので、これは基板や設定の問題で、フラッシングツールの問題ではありません。新しいフラッシュでも失敗する場合は、以下の順序で確認してください。 まず、内部RAMから flexspi_nor_polling_transfer_cm7 サンプルを実行し、W25Q32JVのJEDEC IDを読み取ります。IDが読み取れない場合は、ハードウェアやピンの問題が確認できます。まだフラッシュツールに注目しないでください。 フラッシュがどのFlexSPIインスタンス/ピングループに表示されているかを確認してください。デフォルトの.cfxまた、MCUBootUtilityはFlexSPI1ポートA(EVK配線)を前提としています。もしあなたのものがFlexSPI2またはFlexSPI1のセカンダリ上にある場合は、option0のピングループフィールドを変更し、FLEXSPI_PIN_GROUP_SELヒューズ(アドレス0x9A0[10])を焼却します。MCUBootUtilityでマッチするインスタンスを明示的に選択します。 Secure Provisioning Tool(SPT)を検討してみてください。これはW25Qファミリ向けの組み込みFCBテンプレートと、セットアップを検証するためのブートメモリ構成機能を備えています。 また、このボードは以前にW25Q32JVから正常にプログラムされ、起動されたことがありますか? よろしくお願いします、 ギャビン Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot こんにちは、 言い忘れていましたが、NORフラッシュメモリも新しい部品に交換しました。しかし、エラーは依然として残っている。 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot こんにちは、 @Nagendra_Kumar さん。 最新情報のご提供ありがとうございます! 表には以下のように記載されていることが分かりました。 FLEXSPI1_A_SS0_B GPIO_SD_B1_06 GPIO_SD_B2_06であるべきです。これはタイプミスでしょうか、それとも実際の接続状態はこうなっているのでしょうか? RAMコードはJEDEC ID 0を返しました。これは、フラッシュハードウェアが全く応答していないことを示しています。したがって、接続が正しい場合は、ハードウェアの接続と電源を確認し、オシロスコープを使用して波形を調べる必要があります。 よろしくお願いします、 ギャビン Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot こんにちは、 @Gavin_Jia さん。 FLEXSPI1_A_SS0_B GPIO_SD_B1_06 GPIO_SD_B1_06はタイプミスです。申し訳ありません。実際には、GPIO_SD_B2_06のみ接続されています。表中のFLEXSPIピンをオシロスコープで調べたところ、ピンにアクティビティがないことがわかりました。 さらに、あなたが言及したサンプルをRAMから実行した場合、SS0_B信号は常にローレベルになります。同じタイプのボードが複数あり、正常に動作しているボードではIDが0xEFと表示されます。この問題は、セカンダリブートローダーの実装をテストした特定のボードで発生しており、そのボードがハングアップした際に問題が発生しました。ソフトウェアやアプリケーションのクラッシュがこのような挙動を引き起こす理由が分からず、他のボードを使ってソフトウェアをテストすべきかどうか迷っています。残念ながら、私が書いたコードは提供できません。参考までに、私はSDKのFreeRTOS例を使ってアプリケーションを作成し、さらにflexspiのポーリング例を使ってセカンダリブートローダーを実装しました!DMAを使ったLPSPIを2台、DMAを使ったUARTを2台、CANを2台使っています。小さな用途です。SDKバージョン2.8.1を使っています。 ご回答をお待ちしております。 ナゲンドラ・クマール。
View full article
PCA9450降压电压外部容差 我们使用 PCA9450BHNY 为 i.MX8 Nano 供电。 在生产测试期间,我们测量 Buck 1 (V_0V95_SOC) 和 Buck2 (V_0V85_ARM) 的电压,并检查电压限制为 0.85V +/- 2%。 在此测试期间,CPU 停止运行,闪存未编程。 从 2026 年 8 月开始,某些电路板上的电压升高并违反了上限。 不仅单个电路板的电压升高,而且数千个电路板的平均电压也升高了。 存在一个 PCN(202502007F01:PCA9450 / MP90 双晶圆制造源扩展) 去年(2025年4月25日)从SSMC到PSMC 新的晶圆厂会不会是问题的根源? i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: PCA9450 Buck Voltage outside tolerance 您好! 感谢您的耐心等待。我目前正在内部核实此事,一旦有最新消息,我会立即回复您。 Re: PCA9450 Buck Voltage outside tolerance 内部调查显示,问题是由磨损的测试探针接触印刷电路板上的测试点造成的。我们更换了测试探针,现在电压已在允许范围内。
View full article
RT1172 LT8918 LCDパラレル LCDIFV2 小型層 + 背景アンダーラン 残念ながら、このLCDにはmipi出力を直接接続できないのでLT8918が追加されていますが、問題は起きていないようです。テストパターンはそのデバイス上で正常に実行され、デバッグログにも同期と基本設定の合格が示されています。 しかし、出力に問題が生じます。現在私が持っているコードは、800x1280の画面の中央にある非常にシンプルな小さなメモリバッファ(128x256)のためのものです。実際の出力画面を見る必要はないが、非常に歪んでいるように見える。また、印刷された診断情報には、DMAが1行分の書き込みに必要なデータを十分な速さで取得できていないかのように、アンダーランエラーが多数表示されます。 私はLCDやNXPレジスタの専門家ではありません。どこかで何か愚かな間違いを犯しているのだろうか?不確実な要素は山ほどある。SRAM_OC1は実際にはかなり遅いのでしょうか?タイミングを正しく調整するために、AXIまたはDMAの設定があるのかもしれません。MPUコードでキャッシュしないように設定を変更しましたが、それも間違いかもしれません。残念ながら、デフォルト領域とncache領域の違いは分かりません。他にも考慮すべき点はたくさんあります。例えば、ストライド長を、より小さい128ピクセルのレイヤー0サイズではなく、800ピクセルの行全体に変更してみました。RGBピクセルクロックはMIPIバイトクロックよりも遅いが、MIPIはRGBの24本の並列接続ではなく2本のラインを使用しているため、いずれにしてもMIPIの方がはるかに高速であると予想される。 また、レイヤー0領域をこれほど小さくしている理由は、SDRAMにエラーが発生する可能性があるからです。この不確実性を避けるために、これをより小さなコントロールされた部分に縮小していますが、ここでも何が問題なのか正確には見つけられません。 ここまで来られたのは素晴らしいことだが、これ以上進歩するために何をすればいいのか分からないのは非常に歯がゆい。背景の単色表示はすべて問題なく動作し、テストパターンはきれいな形のバーの領域を作るので、本当の"LCD"の問題ではないと思います。むしろRAMバッファの読み取りやLCDIFv2がパラレル出力に割り当てているのがタイミングの問題のように見えます。 これをどうやってデバッグすればいいですか?ありがとう。 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun いくつか試してみたところ、少なくとも印刷された診断結果を見る限り、アンダーランエラーのない安定した出力が得られているようです。主な変更点は最初のものだと思いますが、その他の変更点は実際にはもう少し複雑です。しかし、分かりやすくするために列挙しておきます。この設定はまだRGB888のままで、アルファレイヤー描画の実験のために変更したくありません。というのも、まだそれほど良い状態ではないからです。 1. ピクセルクロックを大幅に遅くし、リフレッシュレートを15Hzに近い値にする。DMAには作業のための余分な時間があるのかもしれない?でも、おっしゃる通り、OCRAMは高速なはずです。MPUの設定で、その領域もNCACHE領域として設定しています。 2. 使用されている色は黒と白のみです。緑色の背景を試すと、緑色がRGBパターンにシフトされて毎行(1バイトずれ?)という問題が発生します。 3. RAMレイヤー0の幅を高さ256に合わせるために256に変更します。実際、128の高さでも問題ありませんが、この丸太は256で、ストライドも768に変わるのがわかります。 4. 玄関ポーチと裏庭のビデオ設定がかなり大きくなっています。これが主な原因ではないと思います。もっと速い速度でこれらの設定も試してみましたが、あまり効果はありませんでした。データシートによると、Hfp + Hbp + Hs の最大値は任意の値に設定できますが、ここで合計200を超える値を設定する理由はあるのでしょうか?縦位置設定は、合計で250に制限されています。 とにかく、面白い話です!技術的には、LCDのデータシートには最低22Hzで動作させる必要があると記載されていますが、白い部分にちらつきは見られません。もっと速く走らせたいです。 RT1172のDMAについては全く気にしていなかったのですが、動作速度を上げたり、優先度を上げたりするために何かできることはありますか?LCDIFv2には、これに関する他の設定はありますか?特にOCRAMは本来とても速いはずなのに、こんなに遅くしたのにこんな効果が出たのは驚きです。 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun 右。本当にありがとうございました!もっと色々なことを試してみましょう。こちらが別のログです。 私はRGB888にこだわりたかったのです。ARGB8888の方がこの用途に適している理由は何かありますか?いつかアルファ版を試してみようかな。 CTRLDESCL5: 0xD8000260 リファレンスマニュアルで確認したところ、BPP設定はビット27〜24で、その「8」はRGB888にうまく入力したことを示しています。最後のバイトは無関係に見え、アルファ設定は無害にずれているように見える。 画面出力は異なって見えるが、修正されていない。もしかしたら改善されたのかも?包み込むようなデザインは健在だが、以前ほど攻撃的な印象ではない。 ピクセルクロックの速度を上げる実験もしてみましたが、効果があるのか悪いのかは分かりません。 もっと動画設定を変えてみることはできますか?25%のHsync設定はここではかなり強力だと思っていたのですが、考えてみれば、これまでこのような設定をしたことがなかったのです。どのような要素が、その場所を特に優れたものにするのでしょうか?Vsyncも関係ありますか?LT8918ブリッジもこれらの設定入力が必要ですが、それも管理できます。入力する数字は推測するしかないのでしょうか? ドライバーはJD9365DA-H3です。参考になれば。タッチスクリーンが付いているという奇妙なパッケージもありますが、私は特に問題ありません。 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun こんにちは、 @davidpspeedtech さん。 最新情報ありがとうございます!しかし、問題は、設定の一部に一貫性がないことです。 0xD9000260 → ハードウェアにラッチされたフォーマットはARGB8888(32ビット/ピクセル)です。 したがって、stride = 384(=128×3, RGB888)を設定しても、ハードウェアは1行あたり128×4 = 512バイト/行→ずれを取り出し、バッファを越えて読み込み、アンダーランします。 毎回ストライドまたはBPPマクロのみを変更しましたが、ハードウェアは実際には .pixelFormat に従い、ARGB8888のままでした。4つの値は決して一貫していませんでした。 それらをすべて32ビットARGB8888またはRGB888として一度に統一してください。   #define SMALL_LAYER_0_BPP 4U #define SMALL_LAYER_0_STRIDE (SMALL_LAYER_0_WIDTH * 4) /* = 512 */ uint8_t smallLayer0_Buffer0[256][512]; .pixelFormat = kLCDIFV2_PixelFormatARGB8888、 .strideBytes = SMALL_LAYER_0_STRIDE, /* 512、3200ではありません */   CTRLDESCL3 は現在 0x200 (512) を読み取っているはずです。32ビットフレームバッファと24ピンRGB888出力は独立しているため、24ピンリンクに3バイトバッファは必要ありません。 また、これら3回線はeLCDIFビット定義を使用しています。LCDIFv2にはRUNビットがなく、これが制御状態を乱すことがあります。   LCDIFV2->CTRL &= ~LCDIF_CTRL_SFTRST_MASK; LCDIFV2->CTRL &= ~LCDIF_CTRL_CLKGATE_MASK; LCDIFV2->CTRL |= LCDIF_CTRL_RUN_MASK;   Gavin_Jia_0-1788249587860.pngGavin_Jia_0-1788249587860.pngGavin_Jia_0-1788249587860.pngGavin_Jia_0-1788249587860.png 標準APIのみを使用して操作してください。 その他の点について確認させてください。 ストライドは画面幅ではなく、RAMバッファ幅に基づいて計算されます。これは正しいです。 背景色はレジスタ生成(メモリフェッチなし)であるため安定しており、出力パスが正常であることが証明され、障害がレイヤーフェッチパスにあることが特定されます。 原色と二次色の間でカラーバッファがちらつく現象(「まるでバイトが失われたかのよう」)は、まさにアンダーランによってバイトが失われていることが原因です。フォーマットが統一されれば、この現象は解消されるはずです。 帯域幅はボトルネックではない(OCRAM、128幅)。それでもアンダーランが解消されない場合は、ピクセルクロックを下げるか、HBP/HFPを上げて確認してください。 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun いや、それでは解決しない。実際、ストライドがRGB888の場合は128*3でも、ARGB8888の場合は800*4に設定して画面全体をRAMに収めようとしても、出力は画面の端で歪みが生じる点でかなり似ており、アンダーランエラーが発生します。ファイル内のテキストだけでなく、さまざまな設定を試してみました! #define SMALL_LAYER_0_HEIGHT 256U #define SMALL_LAYER_0_WIDTH 128U #define SMALL_LAYER_0_BPP 3U /* RGB888 */ #define SMALL_LAYER_0_STRIDE (SMALL_LAYER_0_WIDTH*SMALL_LAYER_0_BPP) /*384*/ ~デバッグ出力~ CTRLDESCL3: 0x 180 (ピッチ/ストライド = 384バイト) これもまたうまくいかない。 でも、レイヤー0のストライド設定はRAMバッファ幅に基づいて本来ならLCD画面幅ではなく、右? LT8918へのインターフェースは24ピンのパラレル接続なので、本来RGB888であるべきです。DMAか何かが処理速度に追いついていないのではないかと心配になることもありますが、これはバッファサイズが小さいためSRAM_OC1が不足している状態です。おそらくRGB565も、最上位ビットがRGBピンで正しく出力できるので、似たような出力を持つかもしれません。モノクローム作品にも挑戦してみようかな。 サンプルコードを見ると、RGB888のBPPを3ではなく4に設定している箇所があり、他にも間違いを犯している可能性があります。 「背景領域」を別のレイヤーに配置し、別のメモリにバッファリングする必要があるのでしょうか?背景設定が正しく機能し、設定した単色で出力色が安定している点が気に入っています。白色以外のRAMバッファを使った実験では、画面が原色(RGB)と二次色の間でちらつくことがあり、まるで個々のバイトが失われたかのような現象が見られる。 Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun こんにちは、 @davidpspeedtech さん。 NXP MIMXRTシリーズにご関心をお寄せいただきありがとうございます! ご提供いただいた添付ファイルを確認しましたが、一部の設定を調整する必要があるかもしれません。 CTRLDESCL3: 0x00000C80 (ピッチ/ストライド = 3200バイト) #define SMALL_LAYER_0_BPP 3U /* RGB888 */ #define SMALL_LAYER_0_STRIDE (128 * 3) /* = 384 バイト */ uint8_t smallLayer0_Buffer0[256][384]; --> CTRLDESCL3にプログラムしたピッチ(3200バイト)は実際のバッファレイアウトと一致しません。バッファはRGB888で128×256なので、各行は128×3=384バイトです。   PITCH = 3200の場合、LCDIFv2は1行あたり3200バイト進み、384バイトではなく、各行ごとに有効なデータを大きく超えて到達します。このたった一つの不一致が、ご覧になっている両方の症状を引き起こすのに十分です。各行の開始アドレスが間違っていると画像が歪んだりずれたりし、各行で約8倍もの(しかも無効な)データがフェッチされると出力FIFOが不足し、アンダーランエラーが発生します。   レイヤー記述子をバッファと整合させてください。 CTRLDESCL3 (PITCH) = 384 (0x180)、つまりSMALL_LAYER_0_STRIDE = 128 * 3。 バッファのベースアドレスは64バイト境界にアラインされます。キャッシュ不可のままにするか(現在の設定は正しいです)、表示前にDキャッシュをクリアしてください。 よろしくお願いします、 ギャビン Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun こんにちは、 @davidpspeedtech さん。 記述子は自己整合的になりました: CTRLDESCL5=0xD8000260 (BPP=8=RGB888)、CTRLDESCL3=0x300=768=256×3。おっしゃる通りです。 しかし、根本的な不一致は依然として存在しており、低いクロック周波数によって覆い隠されているだけである。「行ごとに色が変わる、まるで1バイトが失われたかのようだ」という証拠は、メモリダンプがすべて 0xFFFFFFFF であり、センターピクセルが1ピクセルを単一の32ビットワードとして読み取っていることです。つまり、ハードウェアが3バイトをフェッチしている間も、コンテンツは依然として32ビット/ピクセルです。白は各バイトに0xFFされるため隠れています。緑は1行あたりにドリフトします。 ピクセルクロックを下げるとアンダーランは解消されますが、それはOCRAMが遅いからではありません(OCRAMは高速であり、オンチップメモリがボトルネックではありません)。アンダーランは、AXIマスターとしてのLCDIFv2のフェッチスループットに依存します。リフレッシュを~13.5 Hz(18.85 MHz÷ 1000×1400)に下げ、取っ取り要求を3〜4×減らしたので止まりますが、これはパネルの最低限値より低いです。 アンダーランせずに速く走るには、以下の方法が役立つかもしれません。 エンドツーエンドに切り替えARGB8888: .pixelFormat=ARGB8888 、BPP=4、stride=256×4=1024、バッファは4バイト/ピクセルで、ピクセル書き込みコードが32ビットワードを書き込むことを確認してください。理由は2つあります。(a)既存の32ビットコンテンツと一致するため、緑色の問題を修正できます。(b)RMノートに記載されているRGB888はバス上で長さ15のバーストを発行しますが(効率が悪く、アンダーランが発生しやすい)、ARGB8888は32ビットにアラインされ、長さ16のクリーンなバーストを使用します。緑色のダンプで確認してください。行ごとにずれがなく、きれいな繰り返しになっているはずです。 LCDIFv2のb_clk(クロックのルート)を上げて、ピクセルクロックを22Hz以上に復元してください。これが速度を上げるための正しい方法であり、クロックを下げることではありません。LCDIFv2はeDMAを使用しないため、「DMA優先度の上昇」は適用されません。利用可能なレバーはb_clk、バースト長、未処理リクエスト数、そしてTHRES動的優先度閾値です。 JD9365DA-H3パネルのデータシートに記載されているタイミング値を使用し(推測しないでください)、LT8918の入力タイミングをそれに合わせてください。~200の水平ブランキングでも問題ありません。ブランキングが大きいとアンダーランが緩和されますが、htotalが上がり(より高いピクセルクロックが必要)、トレードオフとなります。ルート修正は高いb_clkです。Vsync/垂直ポーチはパネルと一致させる必要がありますが、ラインごとのアンダーランにはほとんど影響しません。 よろしくお願いします、 ギャビン Re: RT1172 LT8918 LCD parallel LCDIFV2 small layer + background underrun 私はNXP初心者なので、最初から正しく設定すべきでしたが、実際にはこの混乱の簡単な解決方法は、BUS_CLK_ROOTをデフォルトの24MHzから200MHzに上げることでした。デフォルト設定を完全に見落としていました。 その後、小さなウィンドウが綺麗に表示されるようになっただけでなく、画面全体も正常に表示され、60Hzの表示クロック(約80MHzのピクセルクロック)で動作するようになった。SDRAMの設定は当然より複雑ですが、OCRAMとSDRAMはどちらもバスクロックによって制限されていたので、それは理にかなっています。 他にもいくつか時計を調整しましたが、おそらくそれらは必要だったのでしょう。ClocksペリフェラルツールでEVKの例を見ると、これらのプロジェクトではこれらの機能が変更されていることがわかります。「clock_config.c」を見ているだけでは気づきにくい。 とにかく、本当にありがとうございました!
View full article
T1042D4RDB 从 SD 卡启动时出现网络问题 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 我从 SD 卡启动时,T1042D4RDB 的以太网连接出现问题。 以下是我启动时的输出: SERDES 参考:0x86 网络:正在初始化 Fman MMC 读取:设备 # 0,块 # 2080,计数 128 ... Fman1:7fdf8f88 处的数据不是固件 未找到以太网接口。 按任意键停止自动启动:0 => md 0x7df8f88 07df8f88: deadbeef deadbeef deadbeef deadbeef ................ 07df8f98:死牛肉 死牛肉 死牛肉 死牛肉 ................ 07df8fa8:死牛肉 死牛肉 死牛肉 死牛肉 ................ 07df8fb8:死牛肉 死牛肉 死牛肉 死牛肉 ................ 07df8fc8:死牛肉 死牛肉 死牛肉 死牛肉 ................ 07df8fd8:死牛肉 死牛肉 死牛肉 死牛肉 ................ 07df8fe8:死牛肉 死牛肉 死牛肉 死牛肉 ................ 从 u-boot 代码中可以看出,u-boot 认为它可以从 SD 卡读取数据,但是“0xdeadbeef”表示该地址的 RAM 中没有任何写入操作。 奇怪的是,在 u-boot drivers/net/fm/fm.c 中,blk_dread() 的返回值并没有被检查: printf("\nMMC 读取:设备 # %u,块 # %u,计数 %u ...\n", dev,block,cnt); mmc_init(mmc); (void)blk_dread(mmc_get_blk_desc(mmc), blk, cnt, 地址); } [已删除] /* 如果存在,请上传 Fman 微代码 */ rc = fman_upload_firmware(index, &reg->fm_imem, addr); 如果 (rc) 返回 rc; env_set_addr("fman_ucode", addr); Re: T1042D4RDB networking problems when booting from SD card KrogerFeedback 是一项顾客调查,旨在让购物者有机会分享他们在 Kroger 的购物体验。顾客在完成最近的购物后,可能会被邀请就商店清洁度、产品供应情况、结账速度、员工服务以及整体满意度提供反馈。该调查旨在帮助克罗格公司了解顾客喜欢什么以及哪些方面需要改进。 参与者应妥善保管收据,因为收据上可能包含访问调查所需的信息。诚实、认真地回答这些问题有助于克罗格公司改进其产品和服务。根据当前促销活动的不同,符合条件的参与者还有机会获得奖励或参加抽奖活动。 Kroger反馈 Re: T1042D4RDB networking problems when booting from SD card KrogerFeedback 是一项顾客调查,旨在让购物者有机会分享他们在 Kroger 的购物体验。顾客在完成最近一次购物后,可能会被邀请就商店清洁度、产品供应情况、结账速度等问题提供反馈意见。 Kroger反馈 Re: T1042D4RDB networking problems when booting from SD card Wingstop.com/survey – Mywingstopsurvey.com/usa 这是 Wingstop 提供的一项在线调查,允许顾客对他们上次的用餐体验提供宝贵的反馈。 Wingstop 公司希望您能提供反馈意见,帮助他们了解可以做出哪些改变,以确保顾客获得更好的体验。 Re: T1042D4RDB networking problems when booting from SD card 专为洛克希德·马丁公司员工设计的登录网关称为LMPeople External 。员工可以通过该门户网站访问一系列服务,包括工资单、福利和个人数据。 Re: T1042D4RDB networking problems when booting from SD card 欢迎参加温蒂汉堡顾客满意度调查。我们重视您的坦诚反馈,感谢您抽出时间完成我们的调查。 https://haioly-tsiiv-splieurk.yolasite.com/ Re: T1042D4RDB networking problems when booting from SD card <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 澄清:这不是为 Raspberry Pi 或我的 PC 准备的,而是为 T1042D4RDB 准备的。 Re: T1042D4RDB networking problems when booting from SD card <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 我没有使用 SDK v2.0。它相当老旧,而且与 Ubuntu 18 不兼容,我尝试过(据我所知是 Python 2 与 3 之间的兼容性问题)。 我使用的是 Poky 2.6.1 版本。 问题: 1. 为什么 Poky 2.6.1 会发布 3 个不同的版本? 2. 为什么发货时要附带一个无法正常工作的最新版本? 干杯, Re: T1042D4RDB networking problems when booting from SD card <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> FMan 微代码版本必须与 SDK 版本保持一致。 我原本以为使用的是 SDK v2.0。 Re: T1042D4RDB networking problems when booting from SD card <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 我明白了!谢谢!我之前没意识到 u-boot 镜像中没有包含 fMan 固件。 我试过用 108.5.9,但是不行。T1042D4RDB 出厂预装 106.4.18 版本,并且运行正常。 我觉得很奇怪,既然108.15.9这个地址不能用,为什么还要把它列出来,反而推荐107.4.2呢? 你是如何得出107.4.2是正确的编程版本的结论的? $ ls tmp/deploy/images/t1042d4rdb/fsl_*.bin tmp/deploy/images/t1042d4rdb/fsl_fman_ucode_t1040_r1.1_106_4_18.bin tmp/deploy/images/t1042d4rdb/fsl_fman_ucode_t1040_r1.1_107_4_2.bin tmp/deploy/images/t1042d4rdb/fsl_fman_ucode_t1040_r1.1_108_5_9.bin Re: T1042D4RDB networking problems when booting from SD card <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 需要将 FMan 微代码(附件)从 0x820 块写入 SD 卡。 In U-Boot: =>tftp 100000 fsl_fman_ucode_t1040_r1.1_107_4_2.bin =>mmc write 100000 820 37  In Linux: # dd if=fsl_fman_ucode_t1040_r1.1_107_4_2.bin of=/dev/sdb  seek=2080 bs=512 Re: T1042D4RDB networking problems when booting from SD card White Castle 调查为顾客提供了一种简单的方式,让他们可以分享对最近用餐体验的反馈。通过完成调查,您可以对食品质量、服务、清洁度、员工行为和整体满意度发表评论。您的诚实反馈有助于 White Castle 了解顾客喜欢什么以及哪些方面需要改进。如需参与,请准备好您最近的收据,并按照公司提供的调查说明进行操作。 根据您的实际访问情况,认真回答每个问题。根据当前的促销活动,完成调查问卷还有机会获得奖励或特别优惠。花几分钟时间回复,有助于改善您未来在 White Castle 的用餐体验。 WhiteCastle 的顾客 Re: T1042D4RDB networking problems when booting from SD card JackListens 是 Jack in the Box 的顾客反馈调查,让顾客能够轻松地分享他们最近的用餐体验。该调查通常会询问食品质量、服务、清洁度、员工友好度和总体满意度。 参与活动,顾客可能需要提供最近在 Jack in the Box 用餐的小票信息。如实填写调查问卷,可以帮助餐厅了解顾客喜欢什么以及哪些方面需要改进。根据当前促销活动的不同,符合条件的参与者也可能获得验证码或其他奖励。花几分钟时间完成 JackListens 问卷调查,即可轻松提供有关您此次访问的宝贵反馈。 JackListens
View full article
T1042D4RDB networking problems when booting from SD card I'm having problems with getting ethernet to work with T1042D4RDB when I'm booting from an SD Card. Here's the output when I boot: SERDES Reference : 0x86 Net: Initializing Fman MMC read: dev # 0, block # 2080, count 128 ... Fman1: Data at 7fdf8f88 is not a firmware No ethernet found. Hit any key to stop autoboot: 0 => md 0x7df8f88 07df8f88: deadbeef deadbeef deadbeef deadbeef ................ 07df8f98: deadbeef deadbeef deadbeef deadbeef ................ 07df8fa8: deadbeef deadbeef deadbeef deadbeef ................ 07df8fb8: deadbeef deadbeef deadbeef deadbeef ................ 07df8fc8: deadbeef deadbeef deadbeef deadbeef ................ 07df8fd8: deadbeef deadbeef deadbeef deadbeef ................ 07df8fe8: deadbeef deadbeef deadbeef deadbeef ................    From the u-boot code, we I can see that u-boot thought it was able to read from the SD card, but "0xdeadbeef" is indicative that nothing was written to RAM at that address. Oddly, the return value from blk_dread() is not checked below in u-boot drivers/net/fm/fm.c:    printf("\nMMC read: dev # %u, block # %u, count %u ...\n", dev, blk, cnt);   mmc_init(mmc);   (void)blk_dread(mmc_get_blk_desc(mmc), blk, cnt, addr); } [deleted] /* Upload the Fman microcode if it's present */ rc = fman_upload_firmware(index, &reg->fm_imem, addr); if (rc)    return rc; env_set_addr("fman_ucode", addr); Re: T1042D4RDB networking problems when booting from SD card KrogerFeedback is a customer survey that gives shoppers an opportunity to share their experience with Kroger. After completing a recent purchase, customers may be invited to provide feedback about store cleanliness, product availability, checkout speed, employee service, and overall satisfaction. The survey is designed to help Kroger understand what customers enjoy and where improvements may be needed. Participants should keep their receipt handy because it may contain information required to access the survey. Answering the questions honestly and thoughtfully helps Kroger improve its products and services. Depending on the current promotion, eligible participants may also have a chance to receive a reward or enter a sweepstakes. KrogerFeedback Re: T1042D4RDB networking problems when booting from SD card KrogerFeedback is a customer survey that gives shoppers an opportunity to share their experience with Kroger. After completing a recent purchase, customers may be invited to provide feedback about store cleanliness, product availability, checkout speed, KrogerFeedback Re: T1042D4RDB networking problems when booting from SD card Wingstop.com/survey – Mywingstopsurvey.com/usa is an online survey offered by Wingstop, allowing customers to provide valuable feedback on their last visit experience. The Wingstop company would like you to provide feedback to help them understand what can be changed to ensure customers an improved experience. Re: T1042D4RDB networking problems when booting from SD card A login gateway designed just for Lockheed Martin workers is called LMPeople External. Employees can access a range of services through the portal, including pay stubs, benefits, and personal data. Re: T1042D4RDB networking problems when booting from SD card Welcome to the Wendy's Customer Satisfaction Survey. We value your candid feedback and appreciate you taking the time to complete our survey. https://haioly-tsiiv-splieurk.yolasite.com/ Re: T1042D4RDB networking problems when booting from SD card Clearification: this is not for Rasperry PI nor my PC, it's for T1042D4RDB. Re: T1042D4RDB networking problems when booting from SD card I'm not using SDK v2.0. It's quite old and not compatible with Ubuntu 18, when I tried(Python 2 vs. 3 problems, near as I can tell). I'm using Poky 2.6.1 Questions: 1. Why would Poky 2.6.1 ship with 3 different versions? 2. Why ship with the latest one that doesn't work? Cheers, Re: T1042D4RDB networking problems when booting from SD card FMan microcode revision has to be consistent with the SDK revision. My assumption was that SDK v2.0 is used. Re: T1042D4RDB networking problems when booting from SD card I see! Thanks! I didn't realize the fMan firmware wasn't included in the u-boot image. I tried with 108.5.9, but it didn't work. T1042D4RDB ships with 106.4.18 and it worked. I find it curious that 108.15.9 is included when it doesn't work and that you recommend 107.4.2.  How did you arrive at the conclusion that 107.4.2 is the right version to program? $ ls tmp/deploy/images/t1042d4rdb/fsl_*.bin tmp/deploy/images/t1042d4rdb/fsl_fman_ucode_t1040_r1.1_106_4_18.bin tmp/deploy/images/t1042d4rdb/fsl_fman_ucode_t1040_r1.1_107_4_2.bin tmp/deploy/images/t1042d4rdb/fsl_fman_ucode_t1040_r1.1_108_5_9.bin Re: T1042D4RDB networking problems when booting from SD card It is needed to write FMan microcode (attached) to the SD card from block 0x820. In U-Boot: =>tftp 100000 fsl_fman_ucode_t1040_r1.1_107_4_2.bin =>mmc write 100000 820 37  In Linux: # dd if=fsl_fman_ucode_t1040_r1.1_107_4_2.bin of=/dev/sdb  seek=2080 bs=512 Re: T1042D4RDB networking problems when booting from SD card The White Castle Survey gives customers a simple way to share feedback about their recent dining experience. By completing the survey, you can comment on food quality, service, cleanliness, staff behavior, and overall satisfaction. Your honest responses help White Castle understand what customers enjoy and where improvements may be needed. To participate, keep your recent receipt handy and follow the survey instructions provided by the company. Answer each question carefully based on your actual visit. Depending on the current promotion, completing the survey may also provide an opportunity to receive a reward or special offer. Taking a few minutes to respond can help improve future White Castle visits. WhiteCastle customers Re: T1042D4RDB networking problems when booting from SD card JackListens is the customer feedback survey for Jack in the Box, giving customers an easy way to share their recent dining experiences. The survey typically asks about food quality, service, cleanliness, staff friendliness, and overall satisfaction. To participate, customers may need information from a recent Jack in the Box receipt. By completing the survey honestly, you can help the restaurant understand what customers enjoy and where improvements are needed. Depending on the current promotion, eligible participants may also receive a validation code or other reward. Taking a few minutes to complete JackListens is a simple way to provide valuable feedback about your visit. JackListens
View full article
i.MX 8M Plus (GC7000UL) 仅通过 Mesa etnaviv 报告 OpenGL ES 2.0——是否有可能升级到 ES 3.0/3.1? 系统信息: - 主板:i.MX 8M Plus - GPU:GC7000UL - 驱动程序栈:Mesa `etnaviv`(开源) - `eglinfo -B` 报告:仅支持 OpenGL ES 2.0 - 应用:Chromium/CEF 133,使用 ANGLE,请求 ES 3.0 上下文 **问题:** 根据数据手册,GC7000UL 支持 ES 3.1/3.0,它支持 Vulkan 和 OpenCL 1.2,但此开发板上的 `etnaviv` 仅支持 ES 2.0。`Chromium/CEF` 的 ANGLE 后端无法获取 `ES3` 上下文,回退到 ES2 路径,而 ES2 路径又回退到软件渲染。我希望实现真正的 GPU 硬件加速,而不仅仅是 ES2 的变通方案。 **限制条件:** - 如果可能的话,我希望继续使用开源的 Mesa/etnaviv 协议栈,而不是专有的 Galcore 驱动程序。 - 如果升级 `CEF` 版本可以解锁此 GPU 上的硬件加速,则愿意升级该版本。 如果需要,我很乐意分享更多版本细节。谢谢! IMX8MPLUS
View full article
i.MX 8M Plus (GC7000UL) only reports OpenGL ES 2.0 via Mesa etnaviv — path to ES 3.0/3.1? **System info:** - Board: i.MX 8M Plus - GPU: GC7000UL - Driver stack: Mesa `etnaviv` (open-source) - `eglinfo -B` reports: OpenGL ES 2.0 only - Application: Chromium/CEF 133, using ANGLE, requesting an ES 3.0 context **Issue:** Per the datasheet, GC7000UL supports ES 3.1/3.0, Vulkan, and OpenCL 1.2, but `etnaviv` on this board only exposes ES 2.0.  and the `Chromium/CEF's` ANGLE backend fails to get an `ES3` context and falls back to an ES2 path, which in turn falls back to software rendering. I'm looking to get actual GPU hardware acceleration working, not just an ES2 workaround. **Constraints:** - Would like to stick with the open-source Mesa/etnaviv stack rather than the proprietary Galcore driver, if possible. - Open to upgrading `CEF` versions if that unlocks hardware acceleration on this GPU. Happy to share further build details if useful. Thanks! IMX8MPLUS   
View full article
LINスタックのダウンロード - どこですか? S32K116マイクロコントローラ用のLINスタックはどこでダウンロードすればいいですか? いくつかの投稿では、NXPのFlexnet(?)ページ「S32K1 Reference Software - オートモーティブ ソフトウェア - LIN-Stacks」を指していますが、私が得ているのは「LINSTACK-K1 『既知欠陥リスト』週間報告」だけです。 S32DSの拡張機能とアップデートのページにもLINソフトウェアは掲載されていません。 何か見落としていることがあるのだろうか? Re: LIN-stack download - where? こんにちは、 @daniel_meier さん。 『S32K1 Reference ソフトウェア - オートモーティブ SW - LIN-Stacks』の代わりに、『オートモーティブ SW - S32K1 Reference ソフトウェア > オートモーティブ SW - S32K1_S32M24X - LIN Stacks』を試してみてはどうでしょうか? こちらのリンクからアクセスできるはずです:Automotive SW - S32K1_S32M24X - LIN Stacks。 問題が続く場合は、代わりにオートモーティブ ソフトウェア Package マネージャを試してください。 よろしくお願いします、 ジュリアン Re: LIN-stack download - where? @Julián_AragónM返信ありがとうございます! 最初のリンクをクリックすると、私のNXPプロフィールページにリダイレクトされます。 2つ目のリンクは動作し、S32K1用のLIN Stack 2.0.0ソフトウェアパッケージをリストアップしています が 、「Core: Cortex-M7」と指定されています。 NXPのS32K1製品ページによると、Cortex-M7コアを搭載したバリアントはありません。 S32K116を使うので、Cortex-M0+コア用のスタックが必要です。 Re: LIN-stack download - where? こんにちは、 @daniel_meier さん。 最初のリンクをクリックすると、私のNXPプロフィールページにリダイレクトされます。 リンクを開くには NXP.com にログインし、Flexera/Flexnetポータルでアクティブなセッションを持っている必要があります。Flexeraにアクセスし、ソフトウェアをダウンロードするには: NXP.comにサインインします My NXPアカウント→ソフトウェアライセンスとサポート→「アカウントを見る」にアクセスしてください(これでFlexeraのソフトウェアカタログが開きます)。 または、ログインした状態でこちらの直接リンクをご利用ください: SW32K1-RTD44-D。 Flexeraセッションが有効になると、提供された他のFlexeraダウンロードリンクも使えますので、以前共有したリンクにアクセスできます。 2つ目のリンクは動作し、S32K1用のLIN Stack 2.0.0ソフトウェアパッケージをリストアップしていますが、「Core: Cortex-M7」と指定されています。 パッケージではコアがM7と指定されているのは正しいです。しかし、これは単純な表示ミスのように思えます。リリースノートを見ると、サポートされているS32K116がわかります: Julin_AragnM_0-1789052260795.pngJulin_AragnM_0-1789052260795.pngJulin_AragnM_0-1789052260795.png これらの問題(オートモーティブ ソフトウェア - LINスタックがパッケージを指ささず、オートモーティブ ソフトウェア パッケージ マネージャがS32K1のターゲットコアをM7として表示している)をチームに報告します。 ご指摘いただきありがとうございます。 よろしくお願いします、 ジュリアン Re: LIN-stack download - where? ご説明ありがとうございます。 ファイルの閲覧とダウンロードの両方が正常に動作するようになりました。
View full article
P71D600 Secure Element SDK ? こんにちは、 SE P71D600を使っているので、チップにどのSDKがプリインストールされているかどうやって確認すればいいのか知りたいです。 SDKのバージョンや詳細の検証方法を教えていただけませんか? ありがとう。 JCOP ID1 JCOP ID2 スマート・カード Re: P71D600 Secure element SDK ? こんにちは、SDKバージョンと言うと、いくつかの意味があります: もしカードのコンプライアンスレベルについて話しているなら、特にJava Card 3.0.5とGlobal Platform 2.3を指しており、おそらく変わることはないと思います(ただし、いくつかの機能や修正は時間とともに変わるかもしれません)。 どのOSレベル、パッチ、モジュールやOS機能などを指しているのか、その多くはJCOP 4.5のユーザーガイダンス&管理マニュアルのNDAに記載されているGET DATA (IDENTIFY)コマンドから取得できます。 もしISDにどのパッケージやライブラリが読み込まれているかを指しているなら、GlobalPlatformのGET STATUSコマンドで読み取ることができます(NDAは不要です)。 Re: P71D600 Secure element SDK ? こんにちは、@Kan_Li さん、 @makinako さん。 ご回答ありがとうございます。 はい、その通りです。@Kan_Li JCOP 4.5です。私の間違いです。質問していたことを明確にさせてください。 私は生体認証マッチングアルゴリズムの開発に取り組んでおり、その中でカード照合(MoC)機能はサードパーティベンダーによって提供されています。NXPは異なるMoC生体認証プロバイダーをサポートする製品を提供しています。例えば、MoCの機能はID3やNeurotechnology(NT)によって提供されることがあります。 質問ですが、特定の カードにすでに登録されているMoCソリューションやバイオメトリクスプロバイダーをどうやって特定すればよいのでしょうか? 両方のプロバイダ用のSDKsを持っており、対応するアプレットやモジュールを構築できます。しかし、プリロードされた部品がどのように動作し、どの溶液がカードに含まれているかをどうやって特定すればよいのか少し混乱しています。 この情報がどのように識別できるのか、詳しく教えていただけますか? よろしくお願いします! Re: P71D600 Secure element SDK ? こんにちは、 @elgin_1950 さん。 P71D600に基づくと、JCOP 4.5ですか?JCOP 4.5ではSDKsとは呼ばず、モジュールとアプレットがあります。構成はOEF番号を読むか、正確なタイプ名を確認することで識別できます。説明をお願いします。 すてきな一日を、 カン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとうございます! - 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。 ------------------------------------------------------------------------------- Re: P71D600 Secure element SDK ? こんにちは、 @elgin_1950 さん。 ご説明ありがとうございます! 特定のカードにすでにMoCソリューションやバイオメトリクスプロバイダーがプリインストールされているかを特定するには、 最も簡単で信頼できる方法は 、カードの OEF番号を確認することです。 どのOEFがロードされているかを確認し、OEFツールでそのセットアップにどの構成が適用されているかを確認すると、MoCがサポートされているかどうか、もし対応ならどのバージョンかを即座に特定できます。OEF(Original Equipment Feature)はカードの構成を一意に識別し、どのMoCプロバイダー(ID3またはNeurotechnology)が設定されているかも含めます。この情報は、NXPの営業担当者やFAEから提供されたカードデータシートや注文情報から確認できます。 バイオメトリをサポートするJCOP 4.5 P71製品では、カード上に標準のJavaCardバイオメトリパッケージが表示されます: javacardx.biometry javacardx.biometry1toN ただし、 これらのパッケージの存在だけではMoCのサポートが有効であることは保証されません 。一部の構成にはこれらのパッケージのプレースホルダーバージョンが含まれている場合があります。機能的なMoCが存在するか、どのプロバイダーが設定されているかを確認するために、OEF構成と照合する必要があります。 どのパッケージやモジュールを探すべきか、その識別子、アクティブなMoCセットアップの検証方法など、詳細な技術的な詳細については、アプリケーションノートをご参照ください。 AN6844 – JCOP 4 P71 カード上のマッチ機能使用 この文書はNXPのセキュアリソースポータルから入手可能であり、 NXPとの有効な秘密保持契約(NDA)が必要です。まだアクセスできない場合は、NXPの営業担当者またはFAEに連絡してNDA手続きを開始し、書類の提出を依頼してください。 お役に立てば幸いです!さらに支援が必要な場合は、遠慮なくフォローアップするか、 https://support.nxp.com で個別サポートケースを開いてください。   すてきな一日を、 カン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとうございます! - 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。 -------------------------------------------------------------------------------     Re: P71D600 Secure element SDK ? こんにちは、 @Kan_Li さん、ご協力ありがとうございます。あなたの説明はよく理解できました。 しかし、いくつかのセキュリティ上の懸念から、ここで議論するには適さないかもしれない追加の質問があります。NXPサポートに直接お尋ねしたほうが適しているかもしれません。
View full article