Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
HSE Firmware install in S32k322 microcontroller . Hi NXP Support Team, I am working on a security implementation on the S32K322 microcontroller and need to utilize the HSE (Hardware Security Engine) module for AES security operations and random number generation (TRNG). Could you please provide: An official HSE firmware installation example project configured specifically for the S32K322 (2 MB Flash). The standard Linker Script (.ld), IVT offset, and memory boundary settings required for S32K322 HSE firmware setup. Confirmation on the exact HSE-B firmware binary package version compatible with the S32K322 derivative. Re: HSE Firmware install in S32k322 microcontroller . Hi @Ranjith_kumar  We provide HSE DemoExamples: https://www.nxp.com/webapp/Download?colCode=S32K3_HSE_DemoExamples It contains project S32K344_HSE_FW_INSTALL which can be quite easily ported to other S32K3 derivatives. But you can use any project to install HSE firmware. It’s just necessary to do following steps: - program HSE feature flag in OTP UTEST memory at 0x1B00_0000. This can be done either “manually” by normal flash programming (this is shown in mentioned S32K344_HSE_FW_INSTALL) or this can be done automatically by SBAF if you set FW_USAGE_FLAG_PROGRAM bit in boot configuration word. Notice that this automatic programming feature is available only on SBAF version 0.15.0 and higher. If you have some very old device, it may not work and manual programming will be required. - program pink file somewhere to flash memory and add pointer to the pink file to IVT at offset 0x2C.   Then just reset the MCU (2x in case of FULL_MEM firmware, 3x in case of AB_SWAP firmware) and that’s it. At low level, it looks like this: This is IVT of some application (several locations can be used, data flash is used in this case) which has FW_USAGE_FLAG_PROGRAM set and which contains pointer to FW image: The pink file is programmed to 0x480000: After the resets, the feature flag is automatically programmed in the UTEST and HSE firmware is installed (bit 0 in HSE GPR register at 0x4039_C028 is set): In the S32K344_HSE_FW_INSTALL, the feature flag is programmed by the software – see main.c file. The pointer is added to IVT in file boot_header.c. And pink file is linked to the project in S32K344_flash_full_mem.ld or in S32K344_flash_ab_swap.ld, depending on required configuration. For details, see following resources in HSE-B firmware reference manual rev. 2.8: Table 17. BCW content Table 119. BCW bit mapping Table 118. IVT structure Table 143. Status Bits on HSE_CONFIG_GPR3 (0x4039C028) How to implement it in your project if you have standard RTD project: - open startup_cm7.s file and add pointer to pink file at offset 0x2C: - set bit 9 in Boot Configuration Word which is also in IVT at offset 0x4: - and then go to the linker file (like “linker_flash_s32k322.ld”) and link the pink file in the same way as you can see in project S32K344_HSE_FW_INSTALL. That’s all, just build the project, load it to MCU and reset the device several times. How to get latest production version of HSE firmware for S32K322: Go to S32K3 Standard Software: https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K3-STDSW-D Select “Automotive SW - S32K3 - HSE Firmware” Here search for 0.2.55.0 for S32K3x2 and S32K3x4: Download HSE_FW_S32K342_0.2.55.0_D2512.exe – this one covers also S32K322. And the last thing - if you use Trace32 from Lauterbach, you can use attached script to install the firmware. It uses default location method.  Regards, Lukas Re: HSE Firmware install in S32k322 microcontroller . Hi @lukaszadrapa, Thank you for your support. Following your guidance, I was able to install the HSE firmware successfully on my S32K322 device. I now need to update the HSE firmware to a newer version using a new pink file, and I'm running into a problem. I based my code on the HSE firmware update flow (HSE_SRV_ID_FIRMWARE_UPDATE), and the service returns: HSE_SRV_RSP_VERIFY_FAILED (0x55A5A164) Setup details: - Device:S32K322 - Firmware variant: FULL_MEM  - Currently installed HSE FW version: Attached the image - New pink file: Add into linker file - Update mode: ONE_SHOT  - Location of the new pink image: 0x00400000 Is there any example code to update the HSE firmware can you give me the guidence. #define HSE_SRV_RSP_VERIFY_FAILED ((hseSrvResponse_t)0x55A5A164UL)
記事全体を表示
LPIT GPT 文档缺失 我想使用 LPit_Gpt IP 驱动模块的 LPIT GPT 功能。 S32K118 示例展示了与此模块相关的各种功能,例如“ Lpit_Gpt_Ip_Init ”、“ Lpit_Gpt_Ip_InitChannel ”或“ Lpit_Gpt_Ip_StartTimer ”。 但是,在查阅相应的用户手册或集成手册时,并未列出这些功能。 哪里可以找到相关文件? RTD 版本为 3.0.0QLP06。 Re: LPIT GPT documentation missing 你好@daniel_meier , 用户和集成手册主要描述了 AUTOSAR 高级驱动程序功能(因此,这些功能会使用低级功能)。如果您需要有关 IP 底层 API 的更多信息,可以参考LPit_Gpt_Ip.h文件。标题。 例如,对于Lpit_Gpt_Ip_Init : /** * @brief Function Name : Lpit_Gpt_Ip_Init * @details Driver initialization function for LPit instance. * * * @param[in] instance LPIT hw instance number * @param[in] config Pointer to a selected configuration structure * @return void * @pre The data structure including the configuration set required for initializing the driver * */ void Lpit_Gpt_Ip_Init(uint8 instance, const Lpit_Gpt_Ip_InstanceConfigType *config); 此致, 朱利安 Re: LPIT GPT documentation missing 感谢你提供的信息。 我认为拥有独立于源文件的完整且规范的文档是必不可少的。 无论如何,看来我可以根据源代码自己生成一些 Doxygen 文档。
記事全体を表示
i.MX RT1064 定制板 – SGTL5000 编解码器通过 I2C 无响应 您好, 我设计了一款采用MIMXRT1064处理器和SGTL5000音频编解码器的定制 PCB。 对于 SGTL5000 电路,我遵循了标准/参考 SGTL5000 原理图。 RT1064 和 SGTL5000 之间的连接方式如下: LPI2C1_SCL → GPIO_AD_B1_00 LPI2C1_SDA → GPIO_AD_B1_01 SAI1_MCLK → GPIO_AD_B1_09 SAI1_RXD → GPIO_AD_B1_12 SAI1_TXD → GPIO_AD_B1_13 SAI1_RX_BCLK → GPIO_AD_B1_11 SAI1_RX_LRCLK → GPIO_AD_B1_10 我也附上了原理图的相关部分。 我的主要问题是,在刷写固件后,我没有收到来自 SGTL5000 的任何 I2C ACK 。 我测量了以下电压: SCL ≈ 3.3 V SDA ≈ 3.3 V MCLK 约为1.6 V 为了进行调试,我编写了一个函数,该函数暂时将 I2C 引脚更改为 GPIO,生成 9 个时钟脉冲,执行位操作 I2C 地址扫描,然后将引脚恢复为 LPI2C1。 static void i2c_hw_debug(void) { gpio_pin_config_t 输入 = { kGPIO_数字输入, 0, kGPIO_NoIntmode }; IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B1_00_GPIO1_IO16, 0U); IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B1_01_GPIO1_IO17, 0U); IOMUXC_SetPinConfig( IOMUXC_GPIO_AD_B1_00_GPIO1_IO16, 0x00B0U); IOMUXC_SetPinConfig( IOMUXC_GPIO_AD_B1_01_GPIO1_IO17, 0x00B0U); gpio_pin_config_t out_init = { kGPIO_数字输出, 1、 kGPIO_NoIntmode }; GPIO_PinInit(GPIO1, 16, &out_init); GPIO_PinInit(GPIO1, 17, &in); for (int i = 0; i < 9; i++) { GPIO_PinWrite(GPIO1, 16, 0U); SDK_DelayAtLeastUs(10U, SystemCoreClock); GPIO_PinWrite(GPIO1, 16, 1U); SDK_DelayAtLeastUs(10U, SystemCoreClock); } PRINTF("正在扫描 I2C 地址...\r\n"); for (uint8_t addr = 0x03; addr <= 0x77; addr++) { 如果 (bb_probe(16, 17, addr)) { PRINTF("在 0x%02X 处找到 ACK\r\n", addr); } } IOMUXC_SetPinMux( IOMUXC_GPIO_AD_B1_00_LPI2C1_SCL, 1U); IOMUXC_SetPinMux( IOMUXC_GPIO_AD_B1_01_LPI2C1_SDA, 1U); } 如何使用 MIMXRT1064 初始化 SGTL5000 编解码器?为什么即使所有硬件连接和配置看起来都正确,我也没有收到来自编解码器的 ACK? 谢谢。 Re: i.MX RT1064 Custom Board – SGTL5000 Codec Not Responding Over I2C 嗨@Anushka_SS , 我建议您以evkmimxrt1064_sai示例代码为基础来开发您的应用程序。该代码示例展示了 RT1064 和 WM8960 编解码器的集成。也就是说,我们也提供了fsl_sgtl5000.c/.h驱动程序文件,可以将其作为元器件导入到项目中,只需取消定义CODEC_WM8960_ENABLE并改为定义CODEC_SGTL5000_ENABLE即可启用该驱动程序。SGTL5000 驱动程序文件包含正确初始化和使用此编解码器所需的例程。 如果这有帮助,或者您还需要任何进一步的帮助,请告诉我。 BR, 埃德温。 Re: i.MX RT1064 Custom Board – SGTL5000 Codec Not Responding Over I2C 谢谢。我已经完成了这项工作:使用 SDK 的 fsl_sgtl5000 驱动程序和 CODEC_SGTL5000_ENABLE 创建了一个新项目。问题发生在驱动程序初始化之前:SGTL5000 NAK 其地址(0x0A 和 0x2A,LPI2C 状态 902)。运行时验证:音频 PLL = 786.432 MHz,SAI1 MCLK = 12.288 MHz(从 CCM 寄存器读取),LPI2C 时钟 = 10 MHz。我使用 GPIO_AD_B1_00/01 作为 LPI2C1,使用 GPIO_AD_B1_09 作为 MCLK。SGTL5000 模块通过跳线连接到我的定制 RT1064 板。您能否建议一下硬件方面还有哪些需要检查的地方(焊盘设置、MCLK 信号完整性、RT1064 特有的问题等等)? Re: i.MX RT1064 Custom Board – SGTL5000 Codec Not Responding Over I2C 我的定制板上同时安装了RT1064和SGTL5000编解码器。我分别测试了每个芯片:用 Teensy 4.1 测试了 SGTL5000,用外部 PJRC SGTL5000 音频扩展板测试了 RT1064。这两个芯片单独使用都没问题,但是当我把它们的引脚焊接在一起时,就无法正常工作,并出现以下输出: === SGTL5000 启动测试 === I2C扫描(Teensy风格)…… 扫描完成:0 个设备 音频锁相环 = 786432000 Hz SAI1 mux=2 prediv=3 div=15 -> MCLK = 12288000 Hz (预期 12288000) LPI2C 时钟频率 = 10000000 Hz(预期值为 10000000) -- 尝试 1 -- CHIP_ID @0x A: status=902 id=0x 0 0 CHIP_ID @0x2A:状态=902 id=0x 0 0 -- 尝试 2 -- CHIP_ID @0x A: status=902 id=0x 0 0 CHIP_ID @0x2A:状态=902 id=0x 0 0 -- 尝试 3 -- CHIP_ID @0x A: status=902 id=0x 0 0 CHIP_ID @0x2A:状态=902 id=0x 0 0 SGTL5000 无应答。停止。 我测量的电压值是: SCL:3.2V SDA:3.2 伏 MCLK:1.5–1.6V
記事全体を表示
NXP Kinetis KM35 计量库 我正在使用 Kinetis KM35 系列开发一个计量应用程序,但我对低功耗计量库的理解遇到了一些困难。我一直在使用应用笔记 AN13259《用于计量应用的低功耗实时算法》。 在尝试集成这个库的过程中,我发现除了数字滤波器和基于 FFT 的版本之外,这个库实际上还有许多版本。SDK 中的示例(通过 MCUExpresso 导入)似乎包含我根本找不到的这些库的版本。 我的问题是: 确定使用哪个版本的库的最佳方法是什么? 如何才能找到有关 LPRT 计量库的最新信息? 我使用的是最新版的应用笔记(AN13259)吗? Kinetis M系列MCU
記事全体を表示
i.MX RT1064カスタムボード – SGTL5000コーデックがI2Cで応答しない こんにちは、 MIMXRT1064プロセッサとSGTL5000オーディオコーデックを使ってカスタムPCBを設計しました。 SGTL5000回路については、標準/リファレンスSGTL5000回路図に従いました。 RT1064とSGTL5000間の接続は以下の通りです。 LPI2C1_SCL → GPIO_AD_B1_00 LPI2C1_SDA → GPIO_AD_B1_01 SAI1_MCLK → GPIO_AD_B1_09 SAI1_RXD → GPIO_AD_B1_12 SAI1_TXD → GPIO_AD_B1_13 SAI1_RX_BCLK → GPIO_AD_B1_11 SAI1_RX_LRCLK → GPIO_AD_B1_10 回路図の関連部分も添付しました。 私の主な問題は、ファームウェアをフラッシュした後、 SGTL5000からI2C ACKを受信しないことです。 私は以下の電圧を測定しました。 SCL = 約3.3V SDA = 約3.3V MCLK = 約1.6V デバッグのために、I2Cピンを一時的にGPIOに変更し、9つのクロックパルスを生成し、ビットバンギングによるI2Cアドレススキャンを実行し、その後ピンをLPI2C1に戻す関数を作成しました。 static void i2c_hw_debug(void) ヤージュ gpio_pin_config_t in = ヤージュ kGPIO_デジタル入力、 0、 kGPIO_NoIntmode }; IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B1_00_GPIO1_IO16, 0U); IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B1_01_GPIO1_IO17, 0U); IOMUXC_SetPinConfig( IOMUXC_GPIO_AD_B1_00_GPIO1_IO16、 0x00B0U); IOMUXC_SetPinConfig( IOMUXC_GPIO_AD_B1_01_GPIO1_IO17、 0x00B0U); gpio_pin_config_t out_init = ヤージュ kGPIO_デジタル出力、 1、 kGPIO_NoIntmode }; GPIO_PinInit(GPIO1, 16, &out_init); GPIO_PinInit(GPIO1, 17, &in); for (int i = 0; i < 9; i++) ヤージュ GPIO_PinWrite(GPIO1, 16, 0U); SDK_DelayAtLeastUs(10U, SystemCoreClock); GPIO_PinWrite(GPIO1, 16, 1U); SDK_DelayAtLeastUs(10U, SystemCoreClock); } PRINTF("I2Cアドレスをスキャンしています...\r\n"); for (uint8_t addr = 0x03; addr <= 0x77; addr++) ヤージュ if (bb_probe(16, 17, addr)) ヤージュ PRINTF("ACKが0x%02Xで見つかりました\r\n", addr); } } IOMUXC_SetPinMux( IOMUXC_GPIO_AD_B1_00_LPI2C1_SCL、 1U); IOMUXC_SetPinMux( IOMUXC_GPIO_AD_B1_01_LPI2C1_SDA、 1U); } MIMXRT1064でSGTL5000コーデックを初期化するにはどうすればよいのでしょうか?また、ハードウェアの接続や設定がすべて正しいのに、なぜコーデックからACKが来ないのでしょうか? ありがとうございます。 Re: i.MX RT1064 Custom Board – SGTL5000 Codec Not Responding Over I2C こんにちは、 @Anushka_SS さん、 むしろ evkmimxrt1064_sai例コードをベースにアプリケーションを作成することをお勧めします。このコードはRT1064とWM8960コーデックの統合を体現しています。とはいえ、 fsl_sgtl5000.c/.h ドライバーファイルも提供しており、プロジェクトにコンポーネントとしてインポートでき、 CODEC_WM8960_ENABLE をアン定義してCODEC_SGTL5000_ENABLE を定義することで使用可能なコーデックを単に変更するだけで有効になります。SGTL5000ドライバファイルには、このコーデックを正しく初期化し使用するための必要なルーチンが含まれています。 これがお役に立てば幸いです。また、他に何かご不明な点がありましたらお知らせください。 BR、 エドウィン。 Re: i.MX RT1064 Custom Board – SGTL5000 Codec Not Responding Over I2C ありがとう。すでにこれをやっています:SDKsのfsl_sgtl5000ドライバを使った新しいプロジェクトをCODEC_SGTL5000_ENABLE。問題はドライバが初期化する前に発生します:SGTL5000 NAKはアドレス(0x0Aおよび0x2A、LPI2Cステータス902)を割り当てます。実行時に検証された結果:オーディオ PLL = 786.432 MHz、SAI1 MCLK = 12.288 MHz(CCMレジスタから読み戻し)、LPI2Cクロック = 10 MHz。私はLPI2C1にGPIO_AD_B1_00/01を、MCLKにGPIO_AD_B1_09を使用しています。SGTL5000モジュールはジャンパーワイヤーでカスタムRT1064ボードに接続しています。ハードウェア面で他にチェックすべきこと(パッド設定、MCLK信号強度、RT1064特有の点など)を教えてもらえますか? Re: i.MX RT1064 Custom Board – SGTL5000 Codec Not Responding Over I2C カスタムボードにはRT1064とSGTL5000コーデックの両方を入れています。各チップを個別にテストしました。SGTL5000はTeensy 4.1搭載、RT1064は外部PJRC SGTL5000オーディオシールド搭載です。どちらも単体では問題なく動作しますが、ピンをはんだ付けして接続すると動作せず、次のような出力が出ます: === SGTL5000 育て上げテスト === I2Cスキャン(Teensyスタイル)... スキャン完了:0台のデバイス オーディオPLL = 786432000 Hz SAI1 mux=2 prediv=3 div=15 -> MCLK = 12288000 Hz(12288000 を期待) LPI2Cクロック=10000000Hz(100000000を期待) ――やってみて1―― CHIP_ID @0x A: status=902 id=0x 0 0 CHIP_ID @0x2A: status=902 id=0x 0 0 -- 2を試して-- CHIP_ID @0x A: status=902 id=0x 0 0 CHIP_ID @0x2A: status=902 id=0x 0 0 -- 3回試して -- CHIP_ID @0x A: status=902 id=0x 0 0 CHIP_ID @0x2A: status=902 id=0x 0 0 SGTL5000出ない。停止。 私が測定している電圧は以下のとおりです。 SCL: 3.2V SDA: 3.2V MCLK: 1.5~1.6V
記事全体を表示
LPCXpresso54S018M EVBのRTCは消費電力が非常に大きい。 私が使用しているのはLPCXpresso54S018M EVBです。LPC54018に内蔵されているRTCは、主電源が切断された後も動作する必要があります。ファームウェア内でRTCを初期化し、有効化しました。VBATTライン(J10:11)には、CR2032というコイン型電池で電源を供給しました。主電源が供給されている間は、VBATTラインの消費電力は0です。問題ありません。しかし、主電源を取り外すと、VBATTラインの消費電流が約41μAまで増加します。データシートによると、消費電流は1μA未満であるはずです。なぜ?電流消費電力を1μA以下にするにはどうすればよいですか? LPC54xxx Re: Huge power consumption on RTC ofLPCXpresso54S018M EVB. データシートでこの要件について読みました(VBAT>VDDの場合、高VBATリークを防ぐために外部リセットピンはフローティング状態にする必要があります)。 でも、どうすればそれが実現できるのか分かりません。 私はEVBの回路図について話しているわけではありません。EVB - プロトタイプ作成専用。しかし、動作中の機器の回路では、MCU RESETNが外部WDTチップ(TPS3823-33DBVR)のRST出力に直接接続されます。 おすすめはありますか:接続MCUの修正方法。リセット<->WDT。RST接続の回路図はVBATの電流消費が1μAを超えないようにしていますか? WDT <-> MCUの回路図を添付します。私のデバイスにおけるRESETN相互接続: この図では、「Reset」と名付けられた配線がLPC54005JBD100のRESETNピンに接続されています。 Re: Huge power consumption on RTC ofLPCXpresso54S018M EVB. こんにちは、 @jcxzさん 約41μAは、RTCの消費電流ではなく、RESETN回路からのリーク電流である可能性が最も高い。主電源が切断されたとき、VBAT > VDD となります。VBAT > VDD の場合、高 VBAT リークを防ぐために外部リセットピンはフローティング状態にする必要があります。 LPCXpresso54S018M-EVKはRESETNをプッシュボタン/デバッグ回路に接続するため、未改造のEVKはその測定条件を満たしません。 電流を減らすには: MCUのRESETNピンをEVKリセットネットワークから分離してください。 BR ハリー Re: Huge power consumption on RTC ofLPCXpresso54S018M EVB. こんにちは、 @jcxzさん ここでいう「フローティング」とは、バッテリーのみでの動作時(VBATが存在し、VDDが除去されている状態)には、RESETNに外部DC経路が存在しないことを意味します。MCUの内部リセットプルアップは無効化する必要はありません。データシートにはすでにその条件が記載されています。 提案された監視回線では、RESETNは電源のないTPS3823出力および外部RCネットワークに接続されたままです。したがって、データシートに記載されているRESETNピンのフローティング状態という条件は満たされていません。これは観測された約41μAの電流に対するもっともらしい説明であるが、正確な漏洩経路はまだ実験的に検証されていない。 データシート条件を満たすために、ウォッチドッグリセット出力とMCU RESETNピンの間に通常開閉のアイソレーションスイッチを挿入することを推奨します。すべての外部リセット部品(プルアップ抵抗、コンデンサ、ウォッチドッグ出力など)はウォッチドッグ側に留め、MCU側には外部プルアップ、プルダウン、コンデンサ、その他の直流接続は含まれてはいけません。 選択したスイッチは、供給電圧が除去された際に低漏れ・高インピーダンス状態を明示的にサポートしている必要があります。 BR ハリー
記事全体を表示
Motor control books Pls tell me if this doesn’t fit the sub. I’ll remove it. I am looking for books to understand motor control especially for PMSM motors using FOC. Even better if it has sensorless control methods. Currently I’m referring a book by R. Krishnan but I want something better. Re: Motor control books Hello, I could recommend: DRM148 AN14616 PMSMMCXN10UG AN4642 Internal EMEA6 Motor Control Basics deck NXP Community PMSM & FOC Theory article 1. Start Here: DRM148 Sensorless PMSM Control Design (DRM148) Topics: PMSM mathematical model Clarke Transform Park Transform Current FOC Speed FOC Back-EMF estimation Sensorless rotor position estimation Startup strategy Observer theory https://www.nxp.com/docs/en/reference-manual/DRM148.pdf 2. Learn MCAT (Motor Identification and Tuning) Motor Control Application Tuning (MCAT) Tool for 3-Phase PMSM (AN4642) Topics: Motor parameter identification Current loop tuning Speed loop tuning FOC parameter generation FreeMASTER integration Link: https://www.nxp.com/docs/en/application-note/AN4642.pdf 3. Read the Modern MCX Sensorless Application Note AN14616: Sensorless PMSM Field-Oriented Control (FOC) on MCX E24x Topics: Peripheral implementation PWM synchronization ADC sampling Sensorless observer integration Real firmware structure Link: https://docs.nxp.com/bundle/AN14616 4. Study Complete Working Software MCUXpresso SDK Field-Oriented Control (FOC) of 3-Phase PMSM and BLDC Motors This is one of the best practical documents because it explains how the complete software stack is organized. 5. Reference Design PMSM Sensorless FOC Using MCX A153 Contains: Reference design Software package Documentation Hardware setup Supporting libraries (RTCESL) NXP describes it as a complete PMSM sensorless FOC starting point. Link: PMSM Sensorless FOC Using MCX A153 6. NXP Community Workshop Module 2: PMSM and FOC Theory NXP Community Article Best regards, Peter
記事全体を表示
运动控制书籍 如果这个帖子不符合版块要求,请告诉我。我会把它删掉。 我正在寻找一些书籍来了解电机控制,特别是使用FOC的永磁同步电机(PMSM)控制。如果它具备无传感器控制方法就更好了。目前我正在参考 R. Krishnan 的一本书,但我想要更好的书。 Re: Motor control books 你好, 我可以推荐: DRM148 AN14616 PMSMMCXN10UG AN4642 EMEA6 内部电机控制基础知识卡组 NXP社区PMSM和FOC理论文章 1. 从这里开始:DRM148 无传感器永磁同步电机控制设计(DRM148) 主题: PMSM数学模型 克拉克变形 公园改造 当前FOC 速度 FOC 反电动势估计 无传感器转子位置估计 创业战略 观察者理论 https://www.nxp.com/docs/en/reference-manual/DRM148.pdf 2. 学习MCAT(运动识别与调谐) 三相永磁同步电机电机控制应用调谐(MCAT)工具(AN4642) 主题: 电机参数识别 电流环路调谐 速度环调谐 FOC参数生成 FreeMASTER 集成 关联: https://www.nxp.com/docs/en/application-note/AN4642.pdf 3. 阅读《现代MCX无传感器应用笔记》 AN14616:MCX E24x上的无传感器永磁同步电机磁场定向控制(FOC) 主题: 外围设备实现 PWM 同步 ADC采样 无传感器观测器集成 实际固件结构 关联: https://docs.nxp.com/bundle/AN14616 4. 研究完整的可运行软件 MCUXpresso SDK 三相永磁同步电机和无刷直流电机的磁场定向控制 (FOC) 这是最实用的文档之一,因为它解释了整个软件栈的组织结构。 5. 参考设计 PMSM 无传感器 FOC 采用 MCX A153 包含: 参考设计 软件包 文档 硬件设置 支持库(RTCESL) NXP 将其描述为完整的 PMSM 无传感器 FOC 起点。 关联: 基于MCX A153的PMSM无传感器FOC 6. NXP社区研讨会 模块 2:永磁同步电机和一阶控制理论 NXP社区文章 顺祝商祺! Peter
記事全体を表示
Huge power consumption on RTC ofLPCXpresso54S018M EVB. I use are LPCXpresso54S018M EVB. I need the RTC in the LPC54018 to work after the main power supply is removed. I initialized and enabled the RTC in my firmware. I powered the VBATT line (J10:11) with a coin cell battery CR2032. While the main power is present, the VBATT line consumption is == 0. It's Ok. However, after removing the main power supply, the VBATT line consumption increases up to ~41 uA! According to the datasheet, consumption should be less than 1 uA. Why? How can I achieve current consumption of 1 µA or less? LPC54xxx Re: Huge power consumption on RTC ofLPCXpresso54S018M EVB. Hi @jcxz  The ~41 µA is most likely leakage through the RESETN circuitry , not RTC consumption. When main power is removed, VBAT > VDD; If VBAT> VDD, the external reset pin must be floating to prevent high VBAT leakage. The LPCXpresso54S018M-EVK connects RESETN to its pushbutton/debug circuitry, so the unmodified EVK does not satisfy that measurement condition. To reduce the current: Isolate the MCU’s RESETN pin from the EVK reset network. BR Harry Re: Huge power consumption on RTC ofLPCXpresso54S018M EVB. I read about this requirement in the datasheet (If VBAT> VDD, the external reset pin must be floating to prevent high VBAT leakage). But I don't understand how to achieve this? I'm not talking about a EVB schematic. EVB - only for prototyping. But in our working device's circuit, MCU RESETN will be connected direct to the RST output of the external WDT-chip (TPS3823-33DBVR). Can you recommend: How to correct the connection MCU.RESETN <-> WDT.RST connection's schematic so, that the VBAT current consumption does not exceed 1 µA? I am attaching a schematic of the WDT <-> MCU.RESETN interconnection in my device: In this picture, the wire named "Reset" is connected to the RESETN pin of the LPC54005JBD100. Re: Huge power consumption on RTC ofLPCXpresso54S018M EVB. Hi @jcxz  "Floating" here means that RESETN should have no external DC path during battery-only operation (VBAT present, VDD removed). The MCU's internal reset pull-up does not need to be disabled; the datasheet already accounts for that condition. In the proposed watchdog circuit, RESETN remains connected to the unpowered TPS3823 output as well as the external RC network. Therefore, the datasheet condition of a floating RESETN pin is not met. This is a plausible explanation for the observed ~41 µA current, although the exact leakage path has not yet been experimentally verified. To meet the datasheet condition, we recommend inserting a normally-open isolation switch between the watchdog reset output and the MCU RESETN pin. All external reset components (pull-up resistor, capacitor, watchdog output, etc.) should remain on the watchdog side of the switch, while the MCU side should not contain any external pull-up, pull-down, capacitor, or other DC connection. The selected switch should explicitly support a low-leakage, high-impedance state when its supply voltage is removed. BR Harry
記事全体を表示
LPCXpresso54S018M EVB 的 RTC 功耗巨大。 我使用的是 LPCXpresso54S018M EVB。我需要 LPC54018 中的 RTC 在主电源断开后仍然能够工作。我在固件中初始化并启用了实时时钟 (RTC)。我用一枚纽扣电池 CR2032 为 VBATT 线 (J10:11) 供电。主电源正常时,VBATT 线路功耗为 0。没问题。然而,移除主电源后,VBATT 线功耗增加到约 41 uA!根据数据手册,功耗应小于 1 uA。为什么?如何才能实现1µA或更低的电流消耗? LPC54xxx Re: Huge power consumption on RTC ofLPCXpresso54S018M EVB. 我在数据手册中读到了这个要求(如果 VBAT> VDD,则外部复位引脚必须悬空,以防止 VBAT 漏电流过高)。 但我不知道该如何实现这一点? 我说的不是EVB原理图。EVB——仅用于原型制作。但在我们的工作设备电路中,MCU RESETN 将直接连接到外部 WDT 芯片 (TPS3823-33DBVR) 的 RST 输出。 请问如何修正MCU.RESETN <-> WDT.RST连接的原理图,才能使VBAT电流消耗不超过1 µA? 我附上设备中 WDT <-> MCU.RESETN 互连的原理图: 在这张图中,名为“Reset”的导线连接到 LPC54005JBD100 的 RESETN 引脚。 Re: Huge power consumption on RTC ofLPCXpresso54S018M EVB. 嗨@jcxz ~41 µA 很可能是 RESETN 电路的漏电流,而不是 RTC 的功耗。主电源断开时,VBAT > VDD;如果 VBAT > VDD,则外部复位引脚必须浮空,以防止 VBAT 漏电流过高。 LPCXpresso54S018M-EVK 将 RESETN 连接到其按钮/调试电路,因此未修改的 EVK 不满足该测量条件。 为了降低电流: 将 MCU 的 RESETN 引脚与 EVK 复位网络隔离。 BR 哈里 Re: Huge power consumption on RTC ofLPCXpresso54S018M EVB. 嗨@jcxz “浮空”在此表示 RESETN 在仅使用电池供电时(VBAT 存在,VDD 移除)不应有外部直流通路。MCU 的内部 RESET 上拉电阻无需禁用;数据手册已经考虑到了这种情况。 在所提出的看门狗电路中,RESETN 仍然连接到未通电的 TPS3823 输出以及外部 RC 网络。因此,数据手册中关于 RESETN 引脚浮空的条件不满足。对于观察到的 ~41 µA 电流,这是一种合理的解释,尽管确切的泄漏路径尚未通过实验验证。 为了满足数据手册的要求,我们建议在看门狗复位输出和 MCU RESETN 引脚之间插入一个常开隔离开关。所有外部复位元器件(上拉电阻、电容、看门狗输出等)都应保留在开关的看门狗侧,而 MCU 侧不应包含任何外部上拉、下拉、电容或其他直流连接。 所选开关应明确支持在电源电压移除时处于低漏电、高阻抗状态。 BR 哈里
記事全体を表示
Recommendation for NXP i.MX Processor for 1080p RTSP IP Camera Hi everyone, Could anyone suggest the lowest cost NXP i.MX processor that can handle a 1080p RTSP IP camera stream? My requirements are:     1 RTSP IP camera input    2 1080p resolution    3 Around 25–30 FPS    4 Looking for the lowest-cost i.MX processor/board that can handle this reliably The main goal is to receive and process/display a  1080p RTSP camera stream at the lowest possible hardware cost. If anyone has tested a low-cost i.MX processor for a similar use case, please share your recommendation and experience. Thanks! Re: Recommendation for NXP i.MX Processor for 1080p RTSP IP Camera Hello, For a pure receive/display application using an IP Camera, you can consider i.MX8MM since includes a dedicated hardware VPU capable of 1080p60 decode. Best regards.
記事全体を表示
在 macOS 上,RT685 DSP 镜像使用缓存的二进制文件,而不是在 Zephyr sysbuild 中新构建的二进制文件。 平台:MacOS 15.6.1 (24G90) VS Code(版本:1.112.0)(普遍的)) MCUXpresso for VS Code: 26.8.29 Zephyr 工具链:zephyr-sdk-1.0.1,zsdk nxp-v4.4.1.1 应用程序:amp_blinky 已作为zephyr-freestanding导入 开发板:MIMXRT685-EVK 说明: 我正在MacOS上搭建开发环境,同样的步骤在我的Linux机器上运行良好。虽然使用 MCUXpresso进行构建和烧录时没有出现任何严重警告/错误,但应用程序在 Arm 和 DSP 内核上都能正常运行。然后我编辑了 remote/src 和 remote/prj.conf 下的代码,并在全新版本后将其刷入。然而,DSP 核心在编辑之前仍然运行了之前的图像。 以下是一些有趣的行为: 我也尝试修改了 Arm 核心代码,但更改已成功应用。 DSP核心代码的更改可能会触发非初始版本,而不是显示“无需工作”。 禁用 cmake 中的 CCACHE 似乎可以解决问题。 就目前来看,这似乎是一个与缓存相关的问题,编译器在运行 sysbuild 时忽略了 DSP 映像中的更改,并使用了缓存的二进制文件,无论它是否已被重新构建。这可能是由于 nxp_zephyr/zephyr/samples/boards/nxp/adsp/rtxxx/common/src/dspimgs.S 没有更新造成的。另外,这可能只是 macOS 系统的问题,因为我在 Linux 机器上没有发现这个问题。 这是已知问题吗?除了禁用 CCACHE 之外,有没有更优雅的解决方案? 顺祝商祺! 岳 ZEPHYR-OS-EDGE i.MX RT600 Re: RT685 DSP image uses cached binary instead of newly built in Zephyr sysbuild on MacOS 尊敬的@YueZ , 谢谢你的提问。 目前为止,我们这边还没有发现这个问题。 为了帮助找出根本原因,请您检查以下输出是否持续更新? 远程版本过程生成的 DSP BIN。 由 dspimgs.S 生成的对象文件 最终实际编程到设备上的 Arm BIN。 如果 DSP BIN 已更新,但从 dspimgs.S 生成的目标文件尚未更新,则一个可能的原因是构建系统没有更新 DSP BIN 时间戳。因此,依赖项检查可能跳过了重新编译 dspimgs.S。 我们建议将以下内容添加到负责 dspimgs.S 的CMake配置中,以确保 DSP BIN 中的更改触发重新构建: 设置(DSP_BIN_DIR ${CMAKE_BINARY_DIR} /../remote/zephyr) 设置属性(源) ${CMAKE_CURRENT_SOURCE_DIR} /src/dspimgs.S 属性 OBJECT_DEPENDS ${DSP_BIN_DIR} /zephyr_reset.bin ${DSP_BIN_DIR} /zephyr_text.bin ${DSP_BIN_DIR} /zephyr_data.bin ) (请同时确认文件路径是否正确。) 如有任何疑问,请与我们联系。   顺祝商祺! 雪莉 Re: RT685 DSP image uses cached binary instead of newly built in Zephyr sysbuild on MacOS 你好,雪莉, 谢谢你的回复! 我检查了 build/remote/zephy 下的三个 DSP BIN、最终的 Arm BIN 以及 build/amp_blinky/CMakeFiles/app.dir/.../adsp/rtxxx/common/src/ 下的 dspimgs.S.obj 的时间戳,它们都被原始构建或非原始构建更新了。 我还尝试了推荐的 CMake 配置,方法是替换 设置源文件属性( " ${CMAKE_CURRENT_LIST_DIR} /src/dspimgs.S" 对象依赖项 ${HIFI4_BUILD_DIR} /zephyr.elf )   (带   设置(HIFI4_BIN_DEPS) " ${HIFI4_BUILD_DIR} /zephyr.elf" " ${HIFI4_BUILD_DIR} /zephyr.reset.bin" " ${HIFI4_BUILD_DIR} /zephyr.text.bin" " ${HIFI4_BUILD_DIR} /zephyr.data.bin" ) 设置源文件属性( " ${CMAKE_CURRENT_LIST_DIR} /src/dspimgs.S" Properties 对象依赖项 " ${HIFI4_BIN_DEPS} " ) 在 dsp-load.cmake 中,并通过以下方式验证了更改: `ninja -C build/amp_blinky -t query build/.../dspimgs.S.obj`   但遗憾的是,这个问题依然存在。然后我又做了如下测试: 在 remote/src/main.c 中添加 ` printk ( " TESTCCACHE " );` 构建 调用 `strings build/.../dspimgs.S.obj | grep TESTCCACHE` 调用 `strings build/remote/zephyr/zephyr.text.bin build/remote/zephyr/zephyr.data.bin | grep TESTCCACHE` 步骤 3 没有返回任何结果,而步骤 4 找到了字符串。然后,我禁用 CCACHE 后再次运行测试,结果在两次测试中都发现了 TESTCCACHE。看起来,当启用 CCACHE 时,dspimgs.S.obj 的时间戳已更新,但没有加载正确的二进制文件。 欢迎大家就此发表意见。 顺祝商祺! 岳 Re: RT685 DSP image uses cached binary instead of newly built in Zephyr sysbuild on MacOS 尊敬的@YueZ , 请尝试: CCACHE_RECACHE=1?   与 CCACHE_DISABLE 完全绕过 ccache 并执行完全重建而不读取或写入任何缓存条目不同,CCACHE_RECACHE=1 强制重新生成所有输出,并使用新构建的结果更新缓存。 如果使用 CCACHE_RECACHE=1 后问题消失,则表明根本原因可能是缓存内容过旧。如果问题仍然存在,则表明问题与 ccache 本身有关,而不是与特定的缓存条目有关。 顺祝商祺! 雪莉   Re: RT685 DSP image uses cached binary instead of newly built in Zephyr sysbuild on MacOS 你好,雪莉, 是的, CCACHE_RECACHE=1 可以正常工作。 顺便说一下,我通过在 CMakeLists 中将 USE_CCACHE 设置为 0 来禁用 CCACHE。至于 CCACHE_DISABLE,我必须在 West 工作区的终端中显式设置才能使其生效,这对于在 VS Code 中使用 MCUXpresso 来说不太理想。CCACHE_RECACHE 也存在同样的问题,我无法通过将其添加到 CMakeLists 中来使用它。 顺祝商祺! 岳
記事全体を表示
Correct snvs_cfg values for TAMPER_OUT0/TAMPER_IN4 active tamper loop on i.MX8DXL EVK (J20) Hi, I'm validating the external active-tamper loop on the i.MX8DXL EVK (MCIMX8DXL-WEVK) via U-Boot. From the board schematic, I've confirmed J20 (TAMPER header, 1x3) is wired as: - Pin 1 = TAMPER_IN4 (net SNVS.TAMPER_IN4, ball AJ13) - Pin 2 = GND - Pin 3 = TAMPER_OUT0 (net SNVS.TAMPER_OUT0, ball AP22) These are dedicated SNVS pins, not shared with SAI2/SAI3 like TAMPER_OUT1-4/IN0-3. Available U-Boot commands: tamper_pin_cfg, snvs_cfg (with sub-registers hp.lock, hp.secvio_intcfg, hp.secvio_ctl, lp.lock, lp.secvio_ctl, lp.tamper_filt_cfg, lp.tamper_det_cfg, lp.tamper_det_cfg2, lp.tamper_filt1_cfg, lp.tamper_filt2_cfg, lp.act_tamper1_cfg through lp.act_tamper5_cfg, lp.act_tamper_ctl, lp.act_tamper_clk_ctl, lp.act_tamper_routing_ctl1, lp.act_tamper_routing_ctl2), snvs_sec_status, snvs_clear_status. Since TAMPER_OUT0/TAMPER_IN4 form an active tamper pair, my questions: 1. Which lp.act_tamperN_cfg channel (1-5) corresponds to TAMPER_OUT0? 2. What values for lp.act_tamper_routing_ctl1/routing_ctl2 route TAMPER_OUT0's pattern to be checked against TAMPER_IN4? 3. What value for lp.act_tamper_clk_ctl enables the pattern clock for this channel? 4. What value for lp.act_tamper_ctl globally enables active tamper detection for this channel? Goal: closing a jumper across J20 pins 1-3 should read as secure in snvs_sec_status, and opening it should trigger a violation. Is there a reference test procedure or app note for external active tamper validation on i.MX8DXL? Thanks!
記事全体を表示
LIBUSB_ERROR_NO_DEVICE こんにちは、 フラッシュ中に問題が発生しています。IMX8MPプロセッサを使っています。 vougavent@vougavent-work-station1:~/Desktop/imx-yocto-bsp/build-wayland2/tmp/deploy/images/imx8mp-lpddr4-evk$ sudo uuu -v -b emmc_all imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evkcore-image-weston-imx8mp-lpddr4-evk-20260725065928.rootfs.wic.bz2 NXP IMXチップ用uuu(Universal Update Utility)--lib1.4.193 設定ファイルに含める: PctlチップビデオPID Bcdバージョン ================================================== SDPS: MX8QXP 0x1fc9 0x012f [0x0002..0xffff] SDPS: MX8QM 0x1fc9 0x0129 [0x0002..0xffff] SDPS: MX8DXL 0x1fc9 0x0147 SDPS: MX28 0x15a2 0x004f SDPS: MX815 0x1fc9 0x013e SDPS: MX865 0x1fc9 0x0146 SDPS: MX8ULP 0x1fc9 0x014a SDPS: MX8ULP 0x1fc9 0x014b SDP: MX7D 0x15a2 0x0076 SDP: MX6Q 0x15a2 0x0054 SDP: MX6D 0x15a2 0x0061 SDP: MX6SL 0x15a2 0x0063 SDP: MX6SX 0x15a2 0x0071 SDP: MX6UL 0x15a2 0x007d SDP: MX6ULL 0x15a2 0x0080 SDP: MX6SLL 0x1fc9 0x0128 SDP: MX7ULP 0x1fc9 0x0126 SDP: MXRT106X 0x1fc9 0x0135 SDP: MX8MM 0x1fc9 0x0134 SDP: MX8MQ 0x1fc9 0x012b SDPU: SPL 0x0525 0xb4a4 [0x0000..0x04ff] SDPV: SPL1 0x0525 0xb4a4 [0x0500..0x9998] SDPV: SPL1 0x1fc9 0x0151 [0x0500..0x9998] SDPU: SPL 0x0525 0xb4a4 [0x9999..0x9999] SDPU: SPL 0x3016 0x1001 [0x0000..0x04ff] SDPV: SPL1 0x3016 0x1001 [0x0500..0x9998] FBK: 0x066f 0x9afe FBK: 0x066f 0x9bff FBK: 0x1fc9 0x0153 FB: 0x0525 0xa4a5 FB: 0x18d1 0x0d02 FB: 0x3016 0x0001 FB: 0x1fc9 0x0152 組み込みスクリプトを実行します: uuu_version 1.4.149 # @_flash.bin |WICイメージから抽出できるブートローダー # @_image [_flash.bin]| wicイメージをemmcに書き込む。 # このコマンドは i.MX6/7 i.MX8MM, i.MX8MQ の時に実行されます。 SDP: boot -f imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk-scanlimited 0x800000 # このコマンドはROMがストリームモードをサポートするときに実行されます # i.MX8QXP、i.MX8QM SDPS: boot -scanterm -f imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk-scanlimited 0x800000 # これらのコマンドはSPLを使用する場合に実行され、SPLを使用しない場合はスキップされます # SDPU は非推奨になります。SDPUではなくSDPVを使用してください # { SDPU:遅延1000 SDPU: write -f imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk-オフセット 0x57c00 SDPU: ジャンプ -scanlimited 0x800000 # } # これらのコマンドはSPLを使うときに実行され、SPLがなければスキップされます # もし(SPLがSDPVをサポートする場合) # { SDPV:ディレイ1000 SDPV: write -f imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk-skipspl -scanterm -scanlimited 0x800000 SDPV: ジャンプ -scanlimited 0x800000 # } FB: ucmd setenv fastboot_dev mmc FB: ucmd setenv mmcdev ${emmc_dev} FB: ucmd MMC開発 ${emmc_dev} FB: flash -raw2sparse all core-image-weston-imx8mp-lpddr4-evk-20260725065928.rootfs.wic.bz2/* FB: flash -scanterm -scanlimited 0x800000 ブートローダー imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk FB: ucmd if env exists emmc_ack; then ; else setenv emmc_ack 0; fi; FB: ucmd mmc partconf ${emmc_dev} ${emmc_ack} 1 0 FB: 完了 既知のUSBデバイスが表示されるまで待つ... 新しいUSBデバイスを1:10に接続 1:10>Start Cmd:SDPS: boot -scanterm -f imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk-scanlimited 0x800000 33%1:10>HID(W)エラー:LIBUSB_ERROR_NO_DEVICE(0.786秒) i.MX 8ファミリ | i.MX 8QuadMax (8QM) | 8QuadPlus Re: LIBUSB_ERROR_NO_DEVICE こんにちは、 NXP Semiconductors製品にご関心いただきありがとうございます。 あなたのシステム構成では、カスタムボードを使用していますか、それともi.MX 8M Plus EVKを使用していますか?カスタムボードを使用している場合は、メモリと電力の必要な差異に焦点を当てて、必要なコードを修正することをお勧めします。次に、番号ポータビリティが有効であり、適用されていることを確認します。 このエラーは、無効なimx-bootファームウェアイメージを使う場合に現れます。他にもケーブルの不良やUSB電源のリセットなどが原因かもしれません。壁掛け式USB充電器を使うのも手です。 よろしくお願いいたします。 Re: LIBUSB_ERROR_NO_DEVICE こんにちは、 @JosephAtNXP さん。 ご迷惑をおかけして申し訳ありません。単純な電流不足が原因でした。電流を必要なレベルまで上げたところ、すべて正常に動作するようになりました。
記事全体を表示
将自定义模型从 S32K3xx MBDT 1.5.0 迁移到 1.8.0,硬件设置错误 您好,NXP支持团队, 我们需要您的帮助,将现有的 Simulink 模型从 S32K3xx 的基于模型的设计工具箱 1.5.0 版迁移到 1.8.0 版。 我们的模型集成了我们自定义的 IOC 工具箱,之前一直使用 MBDT 1.5.0 版本。升级到 1.8.0 版本后,在使用 MATLAB/Simulink R2024b 时,我们的工程师在打开模型的硬件设置时遇到了错误。 重现步骤如下: 1. 安装适用于 S32K3xx 的 MBDT 版本 1.8.0。 2. 打开我们现有的演示模型,IOC_DemoPrj.slx。 3. 选择硬件 → 硬件设置。 “配置参数”对话框无法打开,并显示以下错误: 输出参数“out”(以及其他可能的参数)未赋值 在执行“mbd_s32k3.nxp.target.get_target_memory_entries”时 功能。 对话框中还提到了 getTargetHardwareDetailWidgets.p。请查看附件截图以获取完整信息。 我们已就此问题联系了 MathWorks 技术支持,案例编号为 #09014041。他们建议我们咨询 NXP,因为 MBDT 插件是由 NXP 开发的;根本原因尚未得到确认。 请问您能否帮我们解决以下问题? 1. 迁移流程:将模型从 MBDT 1.5.0 迁移到 1.8.0 的支持流程是什么?是否有迁移指南或转换工具可用,我们是否可以直接升级? 2. 错误诊断:get_target_memory_entries 错误是已知问题吗?是否有适用的补丁或解决方法? 3. 现有配置:该型号的硬件、目标内存或外设配置是否需要转换或重新生成?如果需要,在无法打开硬件设置的情况下,我们应该如何执行此操作? 4. 自定义 IOC 工具箱:这些版本之间的哪些更改可能需要更新我们的自定义模块、模型回调或构建集成?请指出相关的接口和建议的更改。 5. 诊断信息:您需要哪些模型文件、配置文件、日志和安装详细信息来确定这是迁移问题、安装/路径问题还是自定义工具箱集成问题? 我们的目标是保留现有的 IOC 功能,并进行必要的更改,以便使用 MBDT 1.8.0 成功配置、构建和运行模型。 谢谢。
記事全体を表示
MCXN947 DLLの自動調整機能が動作しません こんにちは、 私はFlexSPI経由でMCXN947とOctalRAM(IS66WVO32M8DALL-200BLI)を使用しています。 FlexSPIのルートクロックはPLL1を介して150MHzで供給され、RAMはDDRモードで動作するため、出力クロックレートは75MHzになります。 `flexspi_device_config_t`には以下のパラメータがあります。 flexspi_device_config_t psram_config = { .flexspiRootClk = 150000000U, .isSck2Enabled = false, .flashSize = OCTALRAM_ISSI_SIZE, .CSIntervalUnit = kFLEXSPI_CsIntervalUnit1SckCycle, .CSInterval = 2, .CSHoldTime = 2, .CSSetupTime = 2, .dataValidTime = 2, .columnspace = 4, .enableWordAddress = false, .AWRSeqIndex = HYPERRAM_CMD_LUT_SEQ_IDX_WRITEDATA, .AWRSeqNumber = 1, .ARDSeqIndex = HYPERRAM_CMD_LUT_SEQ_IDX_READDATA, .ARDSeqNumber = 1, .AHBWriteWaitUnit = kFLEXSPI_AhbWriteWaitUnit2AhbCycle, .AHBWriteWaitInterval = 0, .enableWriteMask = true, }; FlexSpiの初期化には、SDK FLEXSPI_DRIVERバージョン2.6.0を使用しています。 自動調整機能(マニュアル10.3.15.6節「サンプリングのためのDLL構成」)でディレイセルを以下の値で設定すると、 • SLVDLYTARGET=0x0F(分算器16/32 * root_clock = 3.33 ns) • REFPHASEGAP=0x02 • DLLEN=0x01 • OVRDEN=0x01 ASLVLOCKとAREFLOCKのロックビットを待った後、ASLVSELには0x01、AREFSELには0x00が返されました。その結果、設定された遅延時間が約120psであるため、RAMの読み書き機能は動作しません。 /* Configure DLL. */ configValue = FLEXSPI_CalculateDll(base, config); base->DLLCR[index] = configValue; /* DLL neu kalibrieren */ base->DLLCR[0] |= FLEXSPI_DLLCR_DLLRESET_MASK; base->DLLCR[0] &= ~FLEXSPI_DLLCR_DLLRESET_MASK; /* Exit stop mode. */ base->MCR0 &= ~FLEXSPI_MCR0_MDIS_MASK; /* Lock abwarten */ while ((base->STS2 & (FLEXSPI_STS2_AREFLOCK_MASK | FLEXSPI_STS2_ASLVLOCK_MASK)) != (FLEXSPI_STS2_AREFLOCK_MASK | FLEXSPI_STS2_ASLVLOCK_MASK)) { } SDK_DelayAtLeastUs(10U, CLOCK_GetCoreSysClkFreq()); SLVDLYTARGETに異なる値を使用しても、ASLVLOCKとAREFLOCKの出力は変わりません。 しかし、レジスタOVRDEN=0x01とOVRDVAL=0x1bを使用して遅延時間を固定値(約3.36ナノ秒の遅延時間に相当)に設定すると、RAMからの読み書きは問題なく動作します。 しかし、ルートクロックが100 MHzを超えるため、NXPはDLLの自動調整機能の使用を推奨しています。 残念ながら、正しい遅延時間を判断できないようです! 通信・制御(I3C |I2C |SPI |FlexCAN |イーサネット |FlexIO) コアとメモリ MCX N Re: MCXN947 DLL auto-adjusted function not working こんにちは、 @IbhDanielさん 投稿ありがとうございます! MCXNx4リファレンスマニュアルによると、シリアルルートクロックはFlexSPIコアクロックであることが示されています(表79参照)。時計の使用状況)。あなたの場合、このクロックは150 MHzに設定されています。 また、DLLサンプリング構成を実装しており、自動キャリブレーションパスが正しいアプローチのようです。設定値SLVDLYTARGET = 0x0FおよびDLLEN = 0x01は正しく構成されています。唯一特定された問題は、OVRDENが0x00ではなく0x01であり、これにより自動キャリブレーション出力経路が無効化され、SLVDLYTARGET値に関係なくASLVSEL=0x01、AREFSEL=0x00となります。 上記の分析結果が貴社の実装にも当てはまるかどうか確認させてください。以下を確認してください:MCR0[RXCLKSRC] = 3h(フラッシュメモリ提供の読み取りストロボとDQSパッドからの入力)があなたの構成で使用されているか? Re: MCXN947 DLL auto-adjusted function not working こんにちは、カルロスさん。 ご返信ありがとうございます。 すみません、誤字で、OVRDENビットを0に設定しました。MCUレジスタのスクリーンショットを見ると、OVRDENが値0に設定されているのもわかります。 私はOctalRam IS66WVO32M8DALL-200BLIを使っています。もし理解が正しければ、このモジュールはDQS信号をMCUに送っているようです。 Re: MCXN947 DLL auto-adjusted function not working 再度確認したところ、MCUのMCR0[RXCLKSRC]ビットは3時間に設定されています。 Re: MCXN947 DLL auto-adjusted function not working こんにちは、 @IbhDaniel さん。 あなたの構成でMCR0[RXCLKSRC] = 3h(DQSパッドからのフラッシュメモリ提供の読み取りストロボ入力)が使われているか確認していただけますか? この点は重要です。なぜなら、自動調整・キャリブレーションはDQS信号が外部DQSパッドから送信される場合にのみサポートされるからです。RXCLKSRCの設定が異なると、自動遅延調整機構は期待どおりに動作しません。 Re: MCXN947 DLL auto-adjusted function not working こんにちは、 @IbhDanielさん 確認ありがとうございます。社内チームと検討いたします。これには時間がかかる場合があります。ご理解とご協力に感謝いたします。 それまでの間は、手動キャリブレーションで見つけた回避策をご利用ください。 ご迷惑をおかけして申し訳ございません。
記事全体を表示
SW32K14-MCAL421-RTMC-1.0.1 の FlexNet 利用権を申請してください。 こんにちは、NXPサポートチームの皆さん、 以下のアクセスを申請したいのです: SW32K14-MCAL421-RTMC-1.0.1 ターゲットMCU:S32K144 AUTOSAR MCAL: 4.2.x 既存の提案に提案された解決策はすでに採用しています NXPコミュニティのトピック: 1.nxp.com で「S32K1 MCAL」を検索してFlexeraと入力しました 公式製品ページを通じて。 2. また、直接リンクも試してみました。 SW32K14-MCAL421-RTMC-1.0.1 をNXPアカウントにログインした状態で実行します。 しかし、「前へ」タブはまだグレー表示されており、直接 リンク先の表示: 商品が見つからなかったか、またはあなたに権限がありません。 このアイテムをダウンロードするには。」 また、NXPサポートCASEの作成も試みましたが、CASE ポータルには「CASE作成が無効」と表示されています。メールアドレスが原因で NXPについてと連携してはいけません。 どうやら私のNXPアカウントは現在アクセスできないようです このパッケージの権利/FlexNet権利について。 ぜひ追加でお願いできますか? SW32K14-MCAL421-RTMC-1.0.1 私のNXPアカウントに、またはアクセス方法を教えてください レガシーリリース? サポートありがとうございます。 よろしくお願いいたします。 Re: Request FlexNet entitlement for SW32K14-MCAL421-RTMC-1.0.1 こんにちは@pikaqiu 今すぐお試しください: https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K1-MCAL-D しかし、このソフトウェアは現在サポートおよびメンテナンスされていません。最新のRTDドライバの使用を推奨します。 よろしくお願いいたします。 ルーカス
記事全体を表示
LIBUSB_ERROR_NO_DEVICE Hi, I am having an issue while flashing.i am using an imx8mp processor. vougavent@vougavent-work-station1:~/Desktop/imx-yocto-bsp/build-wayland2/tmp/deploy/images/imx8mp-lpddr4-evk$ sudo uuu -v -b emmc_all imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk core-image-weston-imx8mp-lpddr4-evk-20260725065928.rootfs.wic.bz2 uuu (Universal Update Utility) for nxp imx chips -- lib1.4.193 Build in config: Pctl Chip Vid Pid BcdVersion ================================================== SDPS: MX8QXP 0x1fc9 0x012f [0x0002..0xffff] SDPS: MX8QM 0x1fc9 0x0129 [0x0002..0xffff] SDPS: MX8DXL 0x1fc9 0x0147 SDPS: MX28 0x15a2 0x004f SDPS: MX815 0x1fc9 0x013e SDPS: MX865 0x1fc9 0x0146 SDPS: MX8ULP 0x1fc9 0x014a SDPS: MX8ULP 0x1fc9 0x014b SDP: MX7D 0x15a2 0x0076 SDP: MX6Q 0x15a2 0x0054 SDP: MX6D 0x15a2 0x0061 SDP: MX6SL 0x15a2 0x0063 SDP: MX6SX 0x15a2 0x0071 SDP: MX6UL 0x15a2 0x007d SDP: MX6ULL 0x15a2 0x0080 SDP: MX6SLL 0x1fc9 0x0128 SDP: MX7ULP 0x1fc9 0x0126 SDP: MXRT106X 0x1fc9 0x0135 SDP: MX8MM 0x1fc9 0x0134 SDP: MX8MQ 0x1fc9 0x012b SDPU: SPL 0x0525 0xb4a4 [0x0000..0x04ff] SDPV: SPL1 0x0525 0xb4a4 [0x0500..0x9998] SDPV: SPL1 0x1fc9 0x0151 [0x0500..0x9998] SDPU: SPL 0x0525 0xb4a4 [0x9999..0x9999] SDPU: SPL 0x3016 0x1001 [0x0000..0x04ff] SDPV: SPL1 0x3016 0x1001 [0x0500..0x9998] FBK: 0x066f 0x9afe FBK: 0x066f 0x9bff FBK: 0x1fc9 0x0153 FB: 0x0525 0xa4a5 FB: 0x18d1 0x0d02 FB: 0x3016 0x0001 FB: 0x1fc9 0x0152 Run built-in script: uuu_version 1.4.149 # @_flash.bin | bootloader, which can extract from wic image # @_image [_flash.bin] | wic image burn to emmc. # This command will be run when i.MX6/7 i.MX8MM, i.MX8MQ SDP: boot -f imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk -scanlimited 0x800000 # This command will be run when ROM support stream mode # i.MX8QXP, i.MX8QM SDPS: boot -scanterm -f imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk -scanlimited 0x800000 # These commands will be run when use SPL and will be skipped if no spl # SDPU will be deprecated. please use SDPV instead of SDPU # { SDPU: delay 1000 SDPU: write -f imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk -offset 0x57c00 SDPU: jump -scanlimited 0x800000 # } # These commands will be run when use SPL and will be skipped if no spl # if (SPL support SDPV) # { SDPV: delay 1000 SDPV: write -f imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk -skipspl -scanterm -scanlimited 0x800000 SDPV: jump -scanlimited 0x800000 # } FB: ucmd setenv fastboot_dev mmc FB: ucmd setenv mmcdev ${emmc_dev} FB: ucmd mmc dev ${emmc_dev} FB: flash -raw2sparse all core-image-weston-imx8mp-lpddr4-evk-20260725065928.rootfs.wic.bz2/* FB: flash -scanterm -scanlimited 0x800000 bootloader imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk FB: ucmd if env exists emmc_ack; then ; else setenv emmc_ack 0; fi; FB: ucmd mmc partconf ${emmc_dev} ${emmc_ack} 1 0 FB: done Wait for Known USB Device Appear... New USB Device Attached at 1:10 1:10>Start Cmd:SDPS: boot -scanterm -f imx-boot-imx8mp-lpddr4-evk-sd.bin-flash_evk -scanlimited 0x800000 33%1:10>Fail HID(W):LIBUSB_ERROR_NO_DEVICE(0.786s) i.MX 8 Family | i.MX 8QuadMax (8QM) | 8QuadPlus Re: LIBUSB_ERROR_NO_DEVICE Hi, Thank you for your interest in NXP Semiconductor products, In your setup do you use a custom board or an i.MX 8M Plus EVK? If you are using a custom board I would advise to modify the necessary code, focusing in memory and power necessary differences. Then confirming your porting is valid and being applied. The error is seen when using an invalid imx-boot firmware image, another reasons can be defective cables or some USB power sources reset, you could try using a wall mount USB charger. Regards, Re: LIBUSB_ERROR_NO_DEVICE Hi @JosephAtNXP , Sorry for the inconvenience,it was a simple current shortage that caused the issue,when i raised the current to the required level,everything is working fine.
記事全体を表示
申请 SW32K14-MCAL421-RTMC-1.0.1 的 FlexNet 授权 您好,NXP支持团队, 我希望申请访问以下内容: SW32K14-MCAL421-RTMC-1.0.1 目标MCU:S32K144 AUTOSAR MCAL:4.2.x 我已经按照现有方案中建议的解决方案进行了操作。 NXP社区主题: 1.我在 nxp.com 上搜索了“S32K1 MCAL”,然后输入了 Flexera。 通过官方产品页面。 2. 我还尝试了直接链接 登录我的 NXP 帐户后,SW32K14-MCAL421-RTMC-1.0.1。 然而,“上一页”选项卡仍然呈灰色,无法点击。 链接显示: “要么未找到该物品,要么您未获得授权。” 下载此项目。 我还尝试创建了一个 NXP 支持案例,但是案例提交失败。 门户网站显示“案例创建已禁用”,因为我的电子邮件地址 无法与任何公司关联。 我的NXP账户目前似乎没有访问权限。 此软件包的权利/FlexNet授权。 请问您能否帮忙添加 SW32K14-MCAL421-RTMC-1.0.1 请告知我如何才能访问我的NXP账户,或者告诉我如何才能获得访问权限。 旧版本发布? 非常感谢您的支持。 顺祝商祺! Re: Request FlexNet entitlement for SW32K14-MCAL421-RTMC-1.0.1 嗨@pikaqiu 立即尝试: https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K1-MCAL-D 但是,该软件已停止支持和维护。我们建议使用最新的RTD驱动程序。 此致, Lukas
記事全体を表示
Request FlexNet entitlement for SW32K14-MCAL421-RTMC-1.0.1 Hello NXP Support Team, I would like to request access to: SW32K14-MCAL421-RTMC-1.0.1 Target MCU: S32K144 AUTOSAR MCAL: 4.2.x I have already followed the solution suggested in the existing NXP Community topic: 1. I searched for "S32K1 MCAL" on nxp.com and entered Flexera through the official product page. 2. I also tried the direct link for SW32K14-MCAL421-RTMC-1.0.1 while logged into my NXP account. However, the "Previous" tab is still greyed out, and the direct link shows: "Either the item was not found, or you are not authorized to download this item." I also attempted to create an NXP Support Case, but the Case Portal shows "Case creation disabled" because my email address cannot be linked to a company. It appears that my NXP account does not currently have access rights / FlexNet entitlement for this package. Could you please help add SW32K14-MCAL421-RTMC-1.0.1 to my NXP account, or advise how I can obtain access to this legacy release? Thank you very much for your support. Best regards Re: Request FlexNet entitlement for SW32K14-MCAL421-RTMC-1.0.1 Hi @pikaqiu  Try it now: https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K1-MCAL-D However, this SW is not supported and maintained anymore. We recommend to use latest RTD drivers.  Regards, Lukas
記事全体を表示