Multi Source Translation Content

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

Multi Source Translation Content

Discussions

Sort by:
IMX8MP LPDDR4 2GB Hi I'm currently using i.MX Linux Yocto BSP (mickledore-6.1.22-2.0.0) And we have 2GB LPDDR4 on our board. The following error occurs: [ 99.687961] ************************** [ 99.691736] *** GPU DRV CONFIG *** [ 99.695502] ************************** [ 99.699263] Galcore version 6.4.11.658245 [ 99.703282] Galcore options: [ 99.706160] bankSize = 0x00000000 [ 99.710436] fastClear = -1 [ 99.714008] compression = 15 [ 99.717596] powerManagement = 1 [ 99.721105] baseAddress = 0x40000000 [ 99.725389] physSize = 0x80000000 [ 99.729672] recovery = 0 [ 99.733167] stuckDump = 0 [ 99.736662] GPU smallBatch = 1 [ 99.740166] allMapInOne = 1 [ 99.743664] enableNN = 0xff [ 99.747420] userClusterMasks = [ 99.747422] ff, [ 99.750828] ff, [ 99.752664] ff, [ 99.754507] ff, [ 99.756343] ff, [ 99.758178] ff, [ 99.760022] ff, [ 99.761858] ff, [ 99.763702] ff, [ 99.765538] ff, [ 99.767381] ff, [ 99.769217] ff, [ 99.771061] ff, [ 99.772898] ff, [ 99.774741] ff, [ 99.776577] ff, [ 99.778413] ff, [ 99.780256] ff, [ 99.782092] ff, [ 99.783936] ff, [ 99.785771] [ 99.789102] irqs = [ 99.789105] 30, [ 99.792510] irq2Ds = [ 99.794346] 31, [ 99.797759] [ 99.801101] System reserve memory configuration: [ 99.805816] contiguousSizes[0] = 0x10000000 [ 99.810189] contiguousBases[0] = 0x100000000 [ 99.814648] Registers configuration: [ 99.818309] bases[0] = 0x38000000, sizes[0] = 0x8000, [ 99.818313] [ 99.825128] 2D bases[0] = 0x38008000, sizes[0] = 0x8000, [ 99.825133] [ 99.832203] External sRAMBases = [ 99.832206] 0xffffffffffffffff, [ 99.835702] 0xffffffffffffffff, [ 99.838941] [ 99.843673] mmu = 1 [ 99.847172] mmuPageTablePool = 1 [ 99.850667] mmuCmdPool = 1 [ 99.854154] mmuDynamicMap = 1 [ 99.857648] isrPoll = 0x00000000 [ 99.861928] Build options: [ 99.864650] gpuTimeout = 30000 [ 99.868149] gcdGPU_2D_TIMEOUT = 20000 [ 99.871997] gcdINTERRUPT_STATISTIC = 1 [ 99.875931] GPU[0](ChipModel=0x7000 ChipRevision=0x6204): How to solve this problem? Full log is attached. Best Regards Peter i.MX 8 Family | i.MX 8QuadMax (8QM) | 8QuadPlus i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Linux Yocto Project Re: IMX8MP LPDDR4 2GB Hi, @petertseng  you need to use the DDR Tool generate the new timing.c file, and replace the orign timing.c file, and re-compile your uboot. then boot your board.
View full article
S32K3の場合、MBDTはEEPROM機能にアクセスできますか? MBDT ライブラリ内で EEPROM にアクセスできますか?そうでない場合、カスタムリンカーをどのように使用し、Simulinkで宣言された変数をどのように格納して不揮発性メモリに格納し、実行時にそのメモリにどのようにアクセスしますか?それとも、他に推奨される方法はありますか?ありがとうございます。 Re: S32K3の場合、MBDTはEEPROM機能にアクセスできますか? 特に、 不揮発性メモリ用のMX25L6433FM2I-08Gチップを搭載したS32K344評価キットがわかっています。私の質問は、フラッシュ用のチップにアクセスするには、MBDTの構成ツールでSPIを設定する方法と、それをプログラムするためのSPIプロトコルは何ですか? ありがとうございます。
View full article
BLDC Motor Control how to control BLDC motor using nxp s32k3 microcontroller Re: BLDC Motor Control @Senlent  Thank You  Re: BLDC Motor Control Hi@kalase yes, you can find in the link below: S32K144: https://www.nxp.com/design/design-center/development-boards-and-designs/automotive-motor-control-solutions/s32k144-bldc-pmsm-development-kit:MCSPTE1AK144 S32K116: https://www.nxp.com/design/design-center/development-boards-and-designs/automotive-motor-control-solutions/s32k116-bldc-pmsm-development-kit:MCSPTE1AK116 S32K344: https://www.nxp.com/design/design-center/development-boards-and-designs/automotive-motor-control-solutions/s32k344-brushless-direct-current-and-permanent-magnet-synchronous-motor-control-development-kit:MCSPTE1AK344 s32k324: https://www.nxp.com/design/design-center/development-boards-and-designs/automotive-development-platforms/s32k-mcu-platforms/s32k324-triple-permanent-magnet-synchronous-motor-control-pmsm-reference-design-board:MCTPTX1AK324 Re: BLDC Motor Control is there any source code or reference code for bldc motor control using s32k microcontroller Re: BLDC Motor Control Hi@Kalase That's what i found for your question: S32K344-Six-step commutation control https://community.nxp.com/t5/S32K-Knowledge-Base/S32K344-Six-step-commutation-control/ta-p/1804572
View full article
MC33978 SPI传输模式 尊敬的恩智浦社区成员: 我有两个关于 MC333978 MSDI 的问题。 应使用哪种 SPI 模式(0、1、2 或 3)与 MC33978 通信?确实,我在数据表中没有找到很清楚的内容(图 20 §7.9.4串行数据输入(MOSI) 每次传输使用一个 32 位字。它可以与 4 组字节传输一起使用吗?例如此屏幕截图 提前谢谢您, 帕
View full article
NXP USB VID/PIDプログラムはまだアクティブですか? ここからリンクされているUSB PIDを申請するためのフォームに記入しました。 https://community.nxp.com/t5/Kinetis-Microcontrollers/NXP-USB-VID-PID-Program/ta-p/1124867 自動確認は一切受け取らず、指定された4週間の期間も返信もありませんでした。 プログラムはまだアクティブですか?リクエストのステータスをフォローアップする方法はありますか? i.MXRT 106倍 回复:NXP USB VID / PIDプログラムはまだアクティブですか? 情報に感謝しますが、もちろんそれは残念です。 おそらく、上記のコミュニティの投稿を修正し、リンクされた申請フォームを削除する必要があります。 回复:NXP USB VID / PIDプログラムはまだアクティブですか? こんにちは@expertsleepers、 ご辛抱いただきありがとうございます。 関連する社内チームから回答をもらいました。彼らは、今はこのプロジェクトを維持している人がいないかもしれないと言いました。 また、USB-IFから直接PID / VIDを適用することをお勧めします。 ご不便をおかけして申し訳ございません。 よろしくお願いいたします ギャビン 回复:NXP USB VID / PIDプログラムはまだアクティブですか? こんにちは@expertsleepers、 NXPサポートにお問い合わせいただきありがとうございます。 この問題についてはフォローアップし、内部からの回答を受け取り次第、お客様にお伝えします。連絡を取り合いましょう。 よろしくお願いいたします ギャビン
View full article
BLDC モータ制御 NXP S32K3マイクロコントローラを使用してBLDCモータを制御する方法 Re:BLDCモータ制御 @Senlent  ありがとうございます Re:BLDCモータ制御 S32Kマイコンを使用したBLDCモータ制御のソースコードやリファレンスコードはありますか? Re:BLDCモータ制御 Hi@Kalase それが私があなたの質問のために見つけたものです: S32K344-6ステップ整流制御 https://community.nxp.com/t5/S32K-Knowledge-Base/S32K344-Six-step-commutation-control/ta-p/1804572
View full article
对于 S32K3,MBDT 是否可以访问 EEPROM 功能? MBDT 库内是否有 EEPROM 访问权限?如果没有,我们如何使用自定义链接器,如何存储在 Simulink 中声明的变量以存储在非易失性存储器中,以及如何在运行时访问该内存?或者有其他推荐的方法吗?谢谢。 回复:对于 S32K3,MBDT 是否可以访问 EEPROM 功能? 具体来说,我们知道 S32K344 评估套件具有用于非易失性存储器的 MX25L6433FM2I-08G 芯片。我的问题是,为了访问芯片进行闪存,如何在 MBDT 的配置工具中设置 SPI,以及对其进行编程的 SPI 协议是什么? 谢谢。
View full article
Is the NXP USB VID/PID Program still active? I filled in the form to apply for a USB PID, linked from here: https://community.nxp.com/t5/Kinetis-Microcontrollers/NXP-USB-VID-PID-Program/ta-p/1124867 I didn't receive any kind of automatic acknowledgment, nor did I receive a reply in the 4 week period indicated. Is the program still active? Is there any way to follow up on the status of my request? i.MXRT 106x 回复: Is the NXP USB VID/PID Program still active? Thanks for the information, though that is of course disappointing. Perhaps you should amend the community post above, and take down the linked application form. 回复: Is the NXP USB VID/PID Program still active? Hi @expertsleepers , Thanks for your patience. I got the response from the relevant internal team. They said that there may no people maintain this project now. And recommend that you may apply PID/VID from USB-IF directly. Sorry for the inconvenience. Best regards, Gavin   回复: Is the NXP USB VID/PID Program still active? Hi @expertsleepers , Thanks for contacting NXP support. I will follow up on this issue and will pass it on to you as soon as I receive an internal response. Let's keep in touch. Best regards, Gavin
View full article
iMX RT1064 および QSPI メモリ、XIP 実行を使用したアプリケーションのハード フォールトのデバッグ ハードウェア構成: ボード: iMX RT1064 uCOMボード(リビジョンPB1)をuCOMキャリアボードにマウント(Embedded Artists) 記憶: IS25LP064A 8 MB QSPI メモリを FlexSpi インターフェイス (ベース 0x60000000) に接続されたキャリア ボードに搭載 問題の説明: QSPI 内部メモリに単純なブートローダを実装し、SDRAM (32 MB) の FlexSpi インターフェイスを初期化し、XIP 実行のために外部 QSPI メモリに格納されたアプリケーションにジャンプすることに成功しました。この設定は、基本的な「hello world」アプリケーション(LEDの点滅とコンソール出力)で正しく機能します。 しかし、広範な C++ コードを含み、グラフィック コントローラーを使用するより複雑なアプリケーションを実行しようとすると、システムはすぐに一見ランダムなアドレスからのハード フォールトに遭遇します。同じアプリケーションが内部QSPIメモリで完全に動作します。 初期化に使用されるコード (sdk boards/evkmimxrt1064/driver_examples/flexspi/nor/polling_transfer の例polling_transferに基づく): static void init_qspi_flash_on_front_panel(void) { SETUP(IOMUXC_GPIO_AD_B1_09_FLEXSPIA_DQS, 1, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_10_FLEXSPIA_DATA03, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_11_FLEXSPIA_DATA02, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_12_FLEXSPIA_DATA01, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_13_FLEXSPIA_DATA00, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_14_FLEXSPIA_SCLK, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_15_FLEXSPIA_SS0_B, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); } void init_ext_flex_spi() { uint32_t i = 0; status_t status; uint8_t vendorID = 0; flexspi_nor_flash_init(EXAMPLE_FLEXSPI); /* Get vendor ID. */ status = flexspi_nor_get_vendor_id(EXAMPLE_FLEXSPI, &vendorID); if (status != kStatus_Success) { LOG("FAIL flexspi_nor_get_vendor_id"); Q_ASSERT(false); } LOG("Vendor ID: 0x%x\r\n", vendorID); /* Enter quad mode. */ status = flexspi_nor_enable_quad_mode(EXAMPLE_FLEXSPI); if (status != kStatus_Success) { LOG("FAIL flexspi_nor_enable_quad_mode"); Q_ASSERT(false); } } void flexspi_nor_flash_init(FLEXSPI_Type *base) { flexspi_config_t config; #if defined(CACHE_MAINTAIN) && CACHE_MAINTAIN flexspi_cache_status_t cacheStatus; flexspi_nor_disable_cache(&cacheStatus); #endif flexspi_clock_init(); /*Get FLEXSPI default settings and configure the flexspi. */ FLEXSPI_GetDefaultConfig(&config); /*Set AHB buffer size for reading data through AHB bus. */ config.ahbConfig.enableAHBPrefetch = true; config.ahbConfig.enableAHBBufferable = true; config.ahbConfig.enableReadAddressOpt = true; config.ahbConfig.enableAHBCachable = true; config.rxSampleClock = kFLEXSPI_ReadSampleClkLoopbackFromDqsPad; FLEXSPI_Init(base, &config); /* Configure flash settings according to serial flash feature. */ FLEXSPI_SetFlashConfig(base, &deviceconfig, FLASH_PORT); /* Update LUT table. */ FLEXSPI_UpdateLUT(base, 0, customLUT, CUSTOM_LUT_LENGTH); /* Do software reset. */ FLEXSPI_SoftwareReset(base); #if defined(CACHE_MAINTAIN) && CACHE_MAINTAIN flexspi_nor_enable_cache(cacheStatus); #endif } flexspi_device_config_t deviceconfig = { .flexspiRootClk = 120000000, .flashSize = FLASH_SIZE, .CSIntervalUnit = kFLEXSPI_CsIntervalUnit1SckCycle, .CSInterval = 2, .CSHoldTime = 3, .CSSetupTime = 3, .dataValidTime = 0, .columnspace = 0, .enableWordAddress = 0, .AWRSeqIndex = 0, .AWRSeqNumber = 0, .ARDSeqIndex = NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD, .ARDSeqNumber = 1, .AHBWriteWaitUnit = kFLEXSPI_AhbWriteWaitUnit2AhbCycle, .AHBWriteWaitInterval = 0, }; void flexspi_clock_init() { const clock_usb_pll_config_t g_ccmConfigUsbPll = {.loopDivider = 0U}; CLOCK_InitUsb1Pll(&g_ccmConfigUsbPll); CLOCK_InitUsb1Pfd(kCLOCK_Pfd0, 24); CLOCK_SetMux(kCLOCK_FlexspiMux, 0x3); /* Choose PLL3 PFD0 clock as flexspi source clock. */ CLOCK_SetDiv(kCLOCK_FlexspiDiv, 2); /* flexspi clock 120M. */ }   FlexSpi クロックは 120MHz に設定されています。PLL2_PFD2を396MHzに設定し、FlexSpiディバイダーを3に設定して)132MHzに増やそうとしましたが、ベンダーIDの読み取りが正しく行われませんでした。 支援の要請: デバッグアプローチ: 外部 QSPI メモリ上のアプリケーションで発生するハード フォールトの問題をデバッグするには、どのような方法が推奨されますか。障害の原因を効果的に特定するのに役立つ特定のツール、手法、または手順はありますか? 潜在的なハードウェアの問題: これは、シグナルインテグリティの問題など、ハードウェアの問題である可能性がありますか?特に、ベンダー ID は 120 MHz では正しく読み取られますが、132 MHz では正しく読み取られません。この不一致はどのようにして可能であり、全体的な安定性にどのような影響を与える可能性がありますか?  カスタムボードの動作: iMX RT1064 uCOMモジュールをベースにしたカスタム設計のボードがあります。外部メモリから実行されるアプリケーションは、uCOM Carrier ボードと比較して、このカスタム ボードでより長く動作しますが、それでも数秒の操作後には最終的にハード フォールトが発生します。このコンテキストではどのような要素を考慮する必要がありますか、また、特定のハードウェアまたは構成の問題が関係している可能性がありますか? ご協力いただきありがとうございます。 Michael i.MXRT 106倍 Re: iMX RT1064 と QSPI メモリ、XIP 実行を使用したアプリケーションのハード フォールトのデバッグ この問題は、カスタムキャリアボードで解決されました。QSPIクワッドモードに使用しているFlexSPI DQSピン(IOMUXC_GPIO_AD_B1_09_FLEXSPIA_DQS)にハードウェアの問題がありました。周辺機器の電源がオンになっているかどうかを示す回路に接続されていました。レーンを切断した後は、120MHzのクワッドモードでメモリを問題なく使用することができました。   しかし、埋め込まれたアーティストキャリアボードでは、非常に低い周波数でもクワッドモードを機能させることができませんでした。
View full article
can wifi middleware be built without including LWIP? Is there a build option that allows me to work with the wifi interface without LWIP hooked in? For example... I can built an ethernet driver without a TCP/IP stack, so why can't I build the wifi driver without a TCP/IP stack? I'd like to have access to the raw interface, only including the authentication step; but not the network step.  Does that make any sense? Re: can wifi middleware be built without including LWIP? Hello, You can check that some examples do not include the LWIP stack folder. But yes, you would need to implement all the modifications to support Wi-Fi in a different structure. Regards, Ricardo Re: can wifi middleware be built without including LWIP? I've built and run all of the examples, and each of the examples have lwipopts.h in their build, so I know that all the examples use LWIP. Also, as best I can tell, the user guide really doesn't go into any detail other than just walk you through the button clicks to install each of the applications (been there). My question was not relative to the examples, rather just the base WiFi code itself... For example, with the Ethernet interface, I can call ENET_SendFrame() and/or ENET_ReadFrame() without any awareness of TCP/IP. I'd like to know if I can do the same with the WiFi sdio driver. Anyway, since posting this question I've seen that code under middleware/nxp_wifi does use some portions of lwip (pbufs for example), so I guess the quick answer is "no" or "not without a lot of work". True? Re: can wifi middleware be built without including LWIP? Hello, Hope you are doing well. It would depend on the example you are using, if it needs LWIP or not. I would recommend checking the "NXP Wi-Fi and Bluetooth Demo Applications User Guide for i.MX RT Platforms", to check if the LWIP is used on the Wi-Fi example or not. Best Regards, Ricardo Re: can wifi middleware be built without including LWIP? Sorry, I should have put that in the question... I'm working on an mimx1170evkb eval board and I have a embedded artists wifi module (2EL M2) plugged into it. Since posting this question, I've managed to hack away at the code to essentially eliminate LWIP; but I'd still like to hear your thoughts... Re: can wifi middleware be built without including LWIP? Hello,  Could you please help me confirm which device are you using? Are you using a Wi-Fi module? Or are you using a Wi-Fi microcontroller ?  Regards
View full article
Debugging Hard Fault in Application with iMX RT1064 and QSPI Memory, XIP execution Hardware Configuration: Board: iMX RT1064 uCOM board (revision PB1) mounted on a uCOM Carrier board (Embedded Artists) Memory: IS25LP064A 8 MB QSPI memory on the carrier board connected to FlexSpi interface (base 0x60000000)  Issue Description: I have successfully implemented a simple bootloader on the QSPI internal memory, which initializes the SDRAM (32 MB), FlexSpi interface, and then jumps to the application stored in the external QSPI memory for XIP execution. This setup works correctly with a basic "hello world" application (blinking LED and console output). However, when I attempt to run a more complex application containing extensive C++ code and utilizing the graphic controller, the system quickly encounters a hard fault from a seemingly random address. The same application works perfectly in the internal QSPI memory. Code Used for Initialization (based on the example polling_transfer from the sdk boards/evkmimxrt1064/driver_examples/flexspi/nor/polling_transfer): static void init_qspi_flash_on_front_panel(void) { SETUP(IOMUXC_GPIO_AD_B1_09_FLEXSPIA_DQS, 1, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_10_FLEXSPIA_DATA03, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_11_FLEXSPIA_DATA02, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_12_FLEXSPIA_DATA01, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_13_FLEXSPIA_DATA00, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_14_FLEXSPIA_SCLK, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_15_FLEXSPIA_SS0_B, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); } void init_ext_flex_spi() { uint32_t i = 0; status_t status; uint8_t vendorID = 0; flexspi_nor_flash_init(EXAMPLE_FLEXSPI); /* Get vendor ID. */ status = flexspi_nor_get_vendor_id(EXAMPLE_FLEXSPI, &vendorID); if (status != kStatus_Success) { LOG("FAIL flexspi_nor_get_vendor_id"); Q_ASSERT(false); } LOG("Vendor ID: 0x%x\r\n", vendorID); /* Enter quad mode. */ status = flexspi_nor_enable_quad_mode(EXAMPLE_FLEXSPI); if (status != kStatus_Success) { LOG("FAIL flexspi_nor_enable_quad_mode"); Q_ASSERT(false); } } void flexspi_nor_flash_init(FLEXSPI_Type *base) { flexspi_config_t config; #if defined(CACHE_MAINTAIN) && CACHE_MAINTAIN flexspi_cache_status_t cacheStatus; flexspi_nor_disable_cache(&cacheStatus); #endif flexspi_clock_init(); /*Get FLEXSPI default settings and configure the flexspi. */ FLEXSPI_GetDefaultConfig(&config); /*Set AHB buffer size for reading data through AHB bus. */ config.ahbConfig.enableAHBPrefetch = true; config.ahbConfig.enableAHBBufferable = true; config.ahbConfig.enableReadAddressOpt = true; config.ahbConfig.enableAHBCachable = true; config.rxSampleClock = kFLEXSPI_ReadSampleClkLoopbackFromDqsPad; FLEXSPI_Init(base, &config); /* Configure flash settings according to serial flash feature. */ FLEXSPI_SetFlashConfig(base, &deviceconfig, FLASH_PORT); /* Update LUT table. */ FLEXSPI_UpdateLUT(base, 0, customLUT, CUSTOM_LUT_LENGTH); /* Do software reset. */ FLEXSPI_SoftwareReset(base); #if defined(CACHE_MAINTAIN) && CACHE_MAINTAIN flexspi_nor_enable_cache(cacheStatus); #endif } flexspi_device_config_t deviceconfig = { .flexspiRootClk = 120000000, .flashSize = FLASH_SIZE, .CSIntervalUnit = kFLEXSPI_CsIntervalUnit1SckCycle, .CSInterval = 2, .CSHoldTime = 3, .CSSetupTime = 3, .dataValidTime = 0, .columnspace = 0, .enableWordAddress = 0, .AWRSeqIndex = 0, .AWRSeqNumber = 0, .ARDSeqIndex = NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD, .ARDSeqNumber = 1, .AHBWriteWaitUnit = kFLEXSPI_AhbWriteWaitUnit2AhbCycle, .AHBWriteWaitInterval = 0, }; void flexspi_clock_init() { const clock_usb_pll_config_t g_ccmConfigUsbPll = {.loopDivider = 0U}; CLOCK_InitUsb1Pll(&g_ccmConfigUsbPll); CLOCK_InitUsb1Pfd(kCLOCK_Pfd0, 24); CLOCK_SetMux(kCLOCK_FlexspiMux, 0x3); /* Choose PLL3 PFD0 clock as flexspi source clock. */ CLOCK_SetDiv(kCLOCK_FlexspiDiv, 2); /* flexspi clock 120M. */ }   The FlexSpi clock is set to 120 MHz. I attempted to increase it to 132 MHz (by using PLL2_PFD2 set to 396 MHz and FlexSpi divider set to 3), but this resulted in incorrect vendor ID readings. Request for Assistance: Debugging Approach: What is the recommended way to debug the hard fault issue occurring in my application on the external QSPI memory? Are there specific tools, techniques, or steps that can help pinpoint the source of the fault effectively? Potential Hardware Issue: Could this be a hardware problem, such as an issue with the signal integrity? Notably, the vendor ID is read correctly at 120 MHz but incorrectly at 132 MHz. How is this discrepancy possible, and what implications might it have on the overall stability?  Custom Board Behavior: We have a custom-designed board based on the iMX RT1064 uCOM module. The application running from the external memory works longer on this custom board compared to the uCOM Carrier board but still eventually encounters a hard fault after a few seconds of operation. What factors should be considered in this context, and could there be specific hardware or configuration issues at play? Thank you for your assistance. Michael i.MXRT 106x Re: Debugging Hard Fault in Application with iMX RT1064 and QSPI Memory, XIP execution The problem has been solved for our custom carrier board. There was a hardware issue with the FlexSPI DQS pin (IOMUXC_GPIO_AD_B1_09_FLEXSPIA_DQS), which I use for the QSPI quad mode. It was connected to a circuit indicating whether the peripherals are powered on. After disconnecting the lane, I was able to use the memory at 120 MHz quad mode without any problems.   However, on the embedded artistst carrier board, I was never able to get quad mode working, even at very low frequencies.
View full article
PCA9515A评估环境 我找不到 PCA9515A EVK,但是可以用 PCA9617ADP-ARD(下面的 URL)替换 PCA9515ADP 并对其进行评估吗? 如果有什么需要注意的地方,可以告诉我吗? https://www.nxp.jp/design/design-center/development-boards-and-designs/analog-toolbox/arduino-shields-solutions/pca9617adp-ard-arduino-shield-level-translating-fm-plus-ic-bus-repeater-evaluation-board:PCA9617ADP-ARD
View full article
PCA9515A評価環境 PCA9515A EVKが見当たりませんが、PCA9515ADPをPCA9617ADP-ARD(下記URL)に差し替えて評価することは可能ですか? 注意点があれば教えていただけますか? https://www.nxp.jp/design/design-center/development-boards-and-designs/analog-toolbox/arduino-shields-solutions/pca9617adp-ard-arduino-shield-level-translating-fm-plus-ic-bus-repeater-evaluation-board:PCA9617ADP-ARD
View full article
可以不包含 LWIP 来构建 wifi 中间件吗? 是否有一个构建选项允许我在没有连接 LWIP 的情况下使用 wifi 接口? 例如...我可以在没有 TCP/IP 堆栈的情况下构建以太网驱动程序,那么为什么我不能在没有 TCP/IP 堆栈的情况下构建 wifi 驱动程序? 我希望访问原始界面,仅包括身份验证步骤;但不包括网络步骤。这有意义吗? 回复:可以构建不包括 LWIP 的 WiFi 中间件吗? 我已经构建并运行了所有示例,每个示例都有 lwipopts.h在他们的构建中,所以我知道所有示例都使用 LWIP。此外,据我所知,用户指南除了引导您完成安装每个应用程序的按钮点击(已经存在)之外,并没有涉及任何细节。我的问题与示例无关,而仅与基本 WiFi 代码本身有关...... 例如,使用以太网接口,我可以调用 ENET_SendFrame() 和/或 ENET_ReadFrame(),而无需了解 TCP/IP。我想知道我是否可以对 WiFi sdio 驱动程序执行相同的操作。 无论如何,自从发布这个问题以来,我已经看到中间件/nxp_wifi 下的代码确实使用了 lwip 的某些部分(例如 pbufs),所以我想快速的答案是“否”或“不需要做大量工作”。真的? 回复:可以构建不包括 LWIP 的 WiFi 中间件吗? 抱歉,我应该把它放在问题中...我正在研究 mimx1170evkb 评估板,并且我有一个嵌入式艺术家 wifi 模块(2EL M2)插入其中。 自从发布这个问题以来,我已经设法破解代码以从根本上消除 LWIP;但我仍然想听听你的想法......
View full article
关于MC33771C的INIT寄存器问题 在MC33771C的INIT寄存器中有2个位的解释在NXP的两份文档中对TPL_TX_Term的解释不一致,请问以哪一个为准? 1.Rev. 3.0 — 11 July 2019的datasheet中,描述如下:   2.在Rev. 1 — 30 September 2021的AN13281应用笔记中描述又是这样的: Re: 关于MC33771C的INIT寄存器问题 这个理解为一个解释吧!文档没有! Re: 关于MC33771C的INIT寄存器问题 @guoweisun 你提供的这部分说明是在哪个文档中体现的?我这版datasheet没有找到 Re: 关于MC33771C的INIT寄存器问题 Hi ZDDL 以datasheet 为准: 看下面的用法: "RDTX_IN" and "RDTX_OUT" are both corresponding to one TPL line (input/output) on the IC. Even though they are called IN and OUT, they are both symmetrical.  Only one of the two TPL_TX_Term (RDTX_IN or RDTX_OUT) should be set to 1 in the case of a single ended daisy chain. The one set to 1 should be the TPL line that is not used. This way, if the last node is connected to the chain through the RDTX_IN line, then TPL_TX_Term (RDTX_OUT) should be set to 1 and vice-versa. Also note that in case of double-ended chain (also called loopback), neither TPL_TX_Term should be 1.
View full article
使用 iMX RT1064 和 QSPI 内存、XIP 执行调试应用程序中的硬故障 硬件配置: 主板: iMX RT1064 uCOM 板(版本 PB1),安装在 uCOM 载板上(嵌入式艺术家) 内存:载板上的 IS25LP064A 8 MB QSPI 内存连接到 FlexSpi 接口(基址 0x60000000) 问题描述:我已经成功在 QSPI 内部存储器上实现了一个简单的引导加载程序,它初始化 SDRAM(32 MB)、FlexSpi 接口,然后跳转到存储在外部 QSPI 存储器中的应用程序进行 XIP 执行。此设置可与基本的“hello world”应用程序(闪烁的 LED 和控制台输出)一起正常工作。 然而,当我尝试运行一个包含大量 C++ 代码并利用图形控制器的更复杂的应用程序时,系统很快就会遇到来自看似随机地址的硬故障。相同的应用程序在内部 QSPI 存储器中完美运行。 用于初始化的代码(基于 sdk board/evkmimxrt1064/driver_examples/flexspi/nor/polling_transfer 中的示例 polling_transfer): static void init_qspi_flash_on_front_panel(void) { SETUP(IOMUXC_GPIO_AD_B1_09_FLEXSPIA_DQS, 1, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_10_FLEXSPIA_DATA03, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_11_FLEXSPIA_DATA02, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_12_FLEXSPIA_DATA01, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_13_FLEXSPIA_DATA00, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_14_FLEXSPIA_SCLK, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); SETUP(IOMUXC_GPIO_AD_B1_15_FLEXSPIA_SS0_B, 0, IOMUX_KEEPER_DOWN | IOMUX_SPD_MAX | IOMUX_DSE(6) | IOMUX_SLEW_FAST); } void init_ext_flex_spi() { uint32_t i = 0; status_t status; uint8_t vendorID = 0; flexspi_nor_flash_init(EXAMPLE_FLEXSPI); /* Get vendor ID. */ status = flexspi_nor_get_vendor_id(EXAMPLE_FLEXSPI, &vendorID); if (status != kStatus_Success) { LOG("FAIL flexspi_nor_get_vendor_id"); Q_ASSERT(false); } LOG("Vendor ID: 0x%x\r\n", vendorID); /* Enter quad mode. */ status = flexspi_nor_enable_quad_mode(EXAMPLE_FLEXSPI); if (status != kStatus_Success) { LOG("FAIL flexspi_nor_enable_quad_mode"); Q_ASSERT(false); } } void flexspi_nor_flash_init(FLEXSPI_Type *base) { flexspi_config_t config; #if defined(CACHE_MAINTAIN) && CACHE_MAINTAIN flexspi_cache_status_t cacheStatus; flexspi_nor_disable_cache(&cacheStatus); #endif flexspi_clock_init(); /*Get FLEXSPI default settings and configure the flexspi. */ FLEXSPI_GetDefaultConfig(&config); /*Set AHB buffer size for reading data through AHB bus. */ config.ahbConfig.enableAHBPrefetch = true; config.ahbConfig.enableAHBBufferable = true; config.ahbConfig.enableReadAddressOpt = true; config.ahbConfig.enableAHBCachable = true; config.rxSampleClock = kFLEXSPI_ReadSampleClkLoopbackFromDqsPad; FLEXSPI_Init(base, &config); /* Configure flash settings according to serial flash feature. */ FLEXSPI_SetFlashConfig(base, &deviceconfig, FLASH_PORT); /* Update LUT table. */ FLEXSPI_UpdateLUT(base, 0, customLUT, CUSTOM_LUT_LENGTH); /* Do software reset. */ FLEXSPI_SoftwareReset(base); #if defined(CACHE_MAINTAIN) && CACHE_MAINTAIN flexspi_nor_enable_cache(cacheStatus); #endif } flexspi_device_config_t deviceconfig = { .flexspiRootClk = 120000000, .flashSize = FLASH_SIZE, .CSIntervalUnit = kFLEXSPI_CsIntervalUnit1SckCycle, .CSInterval = 2, .CSHoldTime = 3, .CSSetupTime = 3, .dataValidTime = 0, .columnspace = 0, .enableWordAddress = 0, .AWRSeqIndex = 0, .AWRSeqNumber = 0, .ARDSeqIndex = NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD, .ARDSeqNumber = 1, .AHBWriteWaitUnit = kFLEXSPI_AhbWriteWaitUnit2AhbCycle, .AHBWriteWaitInterval = 0, }; void flexspi_clock_init() { const clock_usb_pll_config_t g_ccmConfigUsbPll = {.loopDivider = 0U}; CLOCK_InitUsb1Pll(&g_ccmConfigUsbPll); CLOCK_InitUsb1Pfd(kCLOCK_Pfd0, 24); CLOCK_SetMux(kCLOCK_FlexspiMux, 0x3); /* Choose PLL3 PFD0 clock as flexspi source clock. */ CLOCK_SetDiv(kCLOCK_FlexspiDiv, 2); /* flexspi clock 120M. */ }   FlexSpi 时钟设置为 120 MHz。我尝试将其增加到 132 MHz(通过使用设置为 396 MHz 的 PLL2_PFD2 和设置为 3 的 FlexSpi 分频器),但这导致了错误的供应商 ID 读数。 请求协助: 调试方法:推荐使用什么方法来调试我的应用程序中外部 QSPI 存储器上出现的硬故障问题?是否有特定的工具、技术或步骤可以帮助有效地查明故障根源? 潜在硬件问题:这可能是硬件问题,例如信号完整性问题?值得注意的是,在 120 MHz 时可以正确读取供应商 ID,但在 132 MHz 时则读取错误。这种差异是如何产生的?它会对整体稳定性产生什么影响? 自定义板行为:我们有一个基于 iMX RT1064 uCOM 模块的定制设计板。与 uCOM 载板相比,从外部存储器运行的应用程序在此定制板上运行的时间更长,但运行几秒钟后仍然会遇到硬故障。在这种情况下应该考虑哪些因素?是否存在特定的硬件或配置问题? 谢谢您的帮助。 Michael i.MXRT 106x 回复:使用 iMX RT1064 和 QSPI 内存、XIP 执行调试应用程序中的硬故障 我们的定制载板的问题已经得到解决。我用于 QSPI 四路模式的 FlexSPI DQS 引脚(IOMUXC_GPIO_AD_B1_09_FLEXSPIA_DQS)存在硬件问题。它连接到指示外围设备是否已通电的电路。断开通道后,我能够毫无问题地以 120 MHz 四核模式使用内存。   然而,在嵌入式艺术家载板上,即使在非常低的频率下,我也从未能够使四路模式工作。
View full article
Questions about PFE_MAC of S32G-VNP-RDB3 Hello, I'm testing the PFE_MAC module by using a S32G-VNP-RDB3 board. I referred to some examples and documents to configure. And I checked the board received the ping message from the PC connected to the board. But I failed to send the respond message to it. It seems that the module sends the message but the phy module doesn't receive it. (Because the tx callback function works and tx counters of PFE module increases.) I set the PFE_MAC2 rx/tx clock to 125MHz to use 1Gbps and also set the pins What did I miss? The development enviroment is as follows.  - S32 Design Studio v3.5.14  - S32G RTD v5.0.0 (ETH_PFE v1.5.0 in EB tresos)  - TCP/IP stack v1.0.4  - FreeRTOS v4.0.2 And, could you also explain meaning of the EMAC2 in EthCtrlPort - EthCtrlConfig? Should I set it to EMAC2 to use PFE_MAC2 module? Best regards, Boniface Re: Questions about PFE_MAC of S32G-VNP-RDB3 Hi, Joey Thank you for your advice. The main reason was MCU peripheral (peripheral clock enable) setting. Now it works, thanks. And also can I get the detailed information about ETH_PFE modules? I read the S32G3 reference manual and AUTOSAR_MCAL_ETH_43_PFE_IM/UM also, but documents like a RMS32G3GMACSUBSYS would be more helpful for understanding. Best regards, Boniface Re: Questions about PFE_MAC of S32G-VNP-RDB3 hi,Boniface Thank you for your contacting us. You should set EMAC2 in EthCtrlPort - EthCtrlConfig to use PFE_MAC2 module.In addition, you can try to configure the pfe thought refer to the LLCE demo. BR Joey
View full article
LWIPを含まずにwifiミドルウェアを構築できますか? LWIPをフックせずにWi-Fiインターフェースを操作できるビルドオプションはありますか? 例えば。。。TCP/IPスタックなしでイーサネットドライバを構築できるのに、なぜTCP/IPスタックなしでwifiドライバを構築できないのですか? 認証ステップのみを含む生のインターフェイスにアクセスしたいです。しかし、ネットワークステップはそうではありません。それは何か意味がありますか? Re:LWIPを含めずにwifiミドルウェアを構築できますか? 私はすべての例をビルドして実行しましたが、各例には lwipopts.h があります彼らのビルドでは、すべての例がLWIPを使用していることを私は知っています。また、私が知る限り、ユーザーガイドには、各アプリケーションをインストールするためのボタンのクリックを案内する以外に詳細には触れていません(そこにありました)。私の質問は例に関連するものではなく、基本的なWiFiコード自体だけでした... たとえば、イーサネットインターフェイスを使用すると、TCP/IPを意識せずにENET_SendFrame()やENET_ReadFrame()を呼び出すことができます。WiFi sdioドライバーで同じことができるかどうか知りたいです。 とにかく、この質問を投稿して以来、middleware / nxp_wifiの下のコードがlwipの一部(pbufsなど)を使用しているのを見てきましたので、簡単な答えは「いいえ」または「多くの作業がないわけではない」だと思います。真。 Re:LWIPを含めずにwifiミドルウェアを構築できますか? すみません、それを質問に入れるべきでした...私はmimx1170evkb評価ボードに取り組んでおり、それに埋め込まれたアーティストのwifiモジュール(2EL M2)が接続されています。 この質問を投稿して以来、私はコードをハッキングしてLWIPを本質的に排除することができました。でも、まだあなたの考えを聞きたいです...
View full article
Availability of NXP S32J100 Evaluation board with MacSec Switch & Alternatives Hello, Do we have any information regarding the availability of the NXP S32J100 Evaluation board featuring a MacSec switch? If this specific board is not yet available on the market, are there any alternative evaluation boards, such as the NXP S32Z with a MacSec PHY TJA1104, that could serve a similar purpose? Any insights or recommendations would be greatly appreciated! Thanks! Re: Availability of NXP S32J100 Evaluation board with MacSec Switch & Alternatives Hello @Vasanth1 , S32J100 is an NPI (New Product Introduction) which has not been officially launched yet. Any questions related to NPI products shall be sent directly to sales support - Distributor Network | NXP Semiconductors. S32Z is the NPI product as well. An alternative and available solution can be S32K3X8EVB-Q289 Evaluation Board for Automotive General Purpose | NXP Semiconductors together with TJA1104-SDBR Product Information|NXP. Best regards, Pavel
View full article
定制板imxrt1020启动问题 我们的定制板配有 imxrt1020 和外部 QSPI(IS25LP064A)闪存,我们遇到了一些“新手问题”。我们发现有些电路板在生产后立即运行我们的程序而没有任何问题,但对于有些电路板,我们需要执行一些操作。 我们主要使用 cortex-debug 和 JLink,但也使用 MCUXpresso SDK 示例进行测试。 我们在一些(50%)主板上看到的一些症状是 无法从闪存(仅 RAM)调试 MCUXpresso 示例 启动调试后,需要在 cortex-debug 中进行额外的“重置”,以便程序启动 当刷新程序并关闭电源时,程序“丢失”(重新打开电源后无法启动) 大多数董事会都没有看到上述任何问题。我们解决这个问题的方法是在 Boot Utility 工具中生成一个图像并将其下载到主板上。在 RAM 中运行闪存组件 SDK 示例似乎也能修复该问题。 因此,这似乎与正确设置闪光灯有关。 我想知道,为什么这种情况只发生在某些 imxrt1020 控制器上?您知道启动映像(FCB、IVT、启动数据等)的哪个部分负责修复该问题吗?或者启动实用程序是否在后台执行一些其他相关的操作? 是否必须创建并下载图像才能使该控制器与外部 QSPI 闪存正确配合使用? i.MXRT 102x 回复:定制板 imxrt1020 启动问题 你好,Pavel,我上周测试了这个方法,但没有解决问题。我认为它可能与这个问题有关,至少在运行 SDK flash 示例后它运行得更好。 已解决:使用 Segger JLINK 编程器对 MIMXRT1052 进行生产编程 - NXP 社区 回复:定制板 imxrt1020 启动问题 您好,我叫帕维尔,我将支持我们的案件,让我了解您的案件,当我有更多信息时,我会与您联系。 此致, 帕维尔
View full article