Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
IMX95のISPで利用可能なオプションは何ですか? こんにちは、 私はox03c10カメラセットアップでIMX95 EVKを使用しています。 Maxim Serdes を搭載した 3 台のカメラを実行しており、ハードウェア アクセラレータを使用してビデオを縮小したいと考えています。 これは、ファイルを記録するための実際のカメラ パイプラインです。 gst-launch-1.0 -v -e libcamerasrc カメラ名="/base/soc/bus@42000000/i2c@42530000/max96724@27/i2c-mux/i2c@0/mx95mbcam@40" src::stream-role=view-finder ! video/x-raw,format=NV16,width=1920,height=1280,framerate=30/1 ! videoconvert ! v4l2h264enc ! h264parse ! mp4mux ! filesink location=/tmp/cam0_processed.mp4 このパイプラインから、CPU への依存関係を削除し、ハードウェア アクセラレータのみを使用することにしました。 変更を提案してください。 Re: What are available options for ISP on IMX95 現在はディスプレイなしでカメラを3台だけ接続しています。 カメラフィードをファイルに保存するだけです。 パイプラインの終了が機能しません。 また、どのビデオノードがどのカメラ用であるかをどうやって知ることができますか? Re: What are available options for ISP on IMX95 こんにちは、 NXP Semiconductors製品にご興味をお持ちいただきありがとうございます。 これは、複数の ox03c10 カメラを実行する場合に推奨されるコマンドです。 gst-launch-1.0 imxcompositor_g2d name=comp \ > sink_0::xpos=0 sink_0::ypos=0 sink_0::width=640 sink_0::height=480 \ > sink_1::xpos=0 sink_1::ypos=480 sink_1::width=640 sink_1::height=480 \ > sink_2::xpos=640 sink_2::ypos=0 sink_2::width=640 sink_2::height=480 \ > sink_3::xpos=640 sink_3::ypos=480 sink_3::width=640 sink_3::height=480 ! \ > video/x-raw,format=BGRA ! autovideosink \ > v4l2src device=/dev/video15 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_0 \ > v4l2src device=/dev/video22 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_1 \ > v4l2src device=/dev/video28 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_2 \ > v4l2src device=/dev/video34 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_3 必ず Neo ISP ライブラリを使用し、 Linux ユーザー ガイドの GST プラグインを確認してください。PipeWire を無効にすることを推奨します。 systemctl --user パイプワイヤーを停止します; systemctl --user パイプワイヤーをマスクします よろしくお願いします。 Re: What are available options for ISP on IMX95 エンコード、デコード、スケーリングに使用できる GST プラグインはありますか? Re: What are available options for ISP on IMX95 こんにちは、 プラグインについては、リリース ノートでダウンスケール、エンコード、デコード プラグインを見つけました。 • imxvideoconvert_g2d: GPU2D ベースのビデオ変換プラグイン。 • imxvideoconvert_ipu: IPU ベースのビデオ変換プラグイン。 • imxvideoconvert_pxp: PXP ベースのビデオ変換プラグイン。 • imxvideoconvert_ocl: OpenCL ベースのビデオ変換プラグイン。 • autovideoconvert: i.MXハードウェアベースのビデオ変換プラグインまたはその他の 入力および出力形式に応じてビデオを変換するプラグイン。 • v4l2convert: V4L2 メモリ間ベースの変換プラグイン。 注記: • imxvideoconvert_ocl では、現在回転はサポートされていません。CSC、デインターレース、 ダウンスケール、デワープ、ビデオクロップ、カラー範囲変換がサポートされています。 • v4l2convertでは、ISIメモリツー メモリがサポートされているプラットフォームに自動的に登録されます。 • v4l2h264enc: VPUベースのAVC/H.264ビデオエンコーダ • v4l2h265enc: VPUベースのHEVCビデオエンコーダ • v4l2jpegenc: V4L2 JPEG エンコーダ カメラ トポロジについては、次のコマンドを使用してトポロジを印刷し、カメラを識別できます。 −media-ctl -d /dev/media8 --print-dot > media8.dot(i.MX95 EVKターゲットボード内) −dot -Tpng media0.dot-o media0-ap1302.png(Ubuntu PCの場合) よろしくお願いいたします。 Re: What are available options for ISP on IMX95 これが私の imx95 evk のカメラ トポロジです。 libcamerasrc でこのパイプラインを使用してカメラを実行できます。 gst-launch-1.0 -e libcamerasrc カメラ名="/base/soc/bus@42000000/i2c@42530000/max96724@27/i2c-mux/i2c@0/mx95mbcam@40" src::stream-role=view-finder ! video/x-raw,format=NV12,width=1920,height=1280,framerate=30/1 ! videoconvert ! v4l2h264enc ! h264parse ! mp4mux ! filesink location=/tmp/cam0_processed.mp4 v4l2src を使用してカメラを実行するにはどうすればよいですか?また、ハードウェア アクセラレータを使用してビューを 1920*382 にトリミングせずにビデオを縮小するプラグインは何ですか?   Re: What are available options for ISP on IMX95 こんにちは、 i.MX95でカメラキャプチャや録画をしているときにこのThreadを見かけた方のために、これを付け加えます。 先日、i.MX95上でV4L2カメラキャプチャとGStreamerを使用した作業の一部を文書化しました。これは、 v4l2srcの使用やハードウェアアクセラレーションによる録画に関する疑問を解決するのに役立つかもしれません。 v4l2srcに関しては、まずカメラに関連付けられたキャプチャノードを特定し、メディアパイプラインの設定が正しくあるか確認します。i.MX95はMedia コントローラフレームワークを使用しているため、media-ctl -pでトポロジーを検査し、v4l2-ctl --list-devicesで利用可能なキャプチャデバイスを確認できます。 正しいノードを特定したら、v4l2-ctlを使って独立してキャプチャをテストしてからGStreamerに統合できます。libcamerasrcはメディアパイプラインを自動的に設定することがありますが、直接のV4L2キャプチャは追加の設定が必要になることもあります。 そのプロセス、メディアグラフの設定、V4L2テスト、GStreamerの例などをここで記録しています。 https://developer.ridgerun.com/wiki/index.php/NXP_i.MX95_Technical_Guide/Testing_Camera_Capture また、 v4l2src 、ハードウェアH.264/H.265エンコーダー、およびimxvideoconvert_g2dを組み込んだ例を使用したi.MX95録画パイプラインに関する別のガイドも用意しています。 https://developer.ridgerun.com/wiki/index.php/NXP_i.MX95_Technical_Guide/GStreamer_Support/Capture_and_Recording トリミングせずに1920x382に拡大縮小する場合、アスペクト比を考慮する必要があります。入力画像である1920x1280は3:2のアスペクト比ですが、要求された出力画像はそれよりもはるかに横長です。歪みなく画像全体を保持するには、出力サイズに合わせて画像を拡大縮小して余白を追加するか、元の縦横比を維持した出力解像度を選択する必要があります。 ハードウェアアクセラレーションに関しては、 NXPサポートで言及されているimxvideoconvert_g2dおよびimxvideoconvert_ocl要素を調査する価値があります。BSPで利用可能なフォーマットや機能に応じて変わってきます。 私たちのキャプチャ例は異なるカメラ構成を使用しているため、デバイスノードやメディアコントローラの設定はOX03C10/Maximの設定に合わせて調整する必要があります。 これらの参考資料が、同様のi.MX95カメラパイプラインに取り組んでいる方々のお役に立てば幸いです!
記事全体を表示
KITPF0100EPEVBE I request schematic files for the KITPF0100EPEVBE Evaluation board, possibily in Cadence OrCad .DSN format. Thank you. Re: KITPF0100EPEVBE Hi mierko I will send it to your mail directly.
記事全体を表示
MCXN947 DLL 自动调整功能无法正常工作 你好, 我正在使用 FlexSPI 连接 MCXN947,并搭配 OctalRAM (IS66WVO32M8DALL-200BLI)。 FlexSPI 根时钟通过 PLL1 以 150 MHz 的频率提供,由于 RAM 以 DDR 模式运行,因此我的输出时钟频率为 75 MHz。 `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 * 根时钟 = 3.33 ns) • REFPHASEGAP=0x02 • DLLEN=0x01 • OVRDEN=0x01 在等待 ASLVLOCK 和 AREFLOCK 锁定位之后,我得到 ASLVSEL 为 0x01,AREFSEL 为 0x00。因此,RAM 的读取和写入功能无法工作,因为设置的延迟时间约为 120 ps! /* 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 ns 的延迟时间),则从 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 = 0x01 而不是 0x00,这会禁用自动校准输出路径,并导致 ASLVSEL = 0x01 和 AREFSEL = 0x00,而不管 SLVDLYTARGET 值如何。 我只想确认以上分析是否适用于您的实现。请您确认一下,您的配置中是否使用了以下设置: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 嗨@IbhDaniel , 请您确认一下,您的配置中是否使用了 MCR0[RXCLKSRC] = 3h(从 DQS 焊盘读取闪存提供的选通输入)? 这一点很重要,因为只有当 DQS 信号来自外部 DQS 垫时,才支持自动调整/校准。如果选择了不同的 RXCLKSRC 设置,则自动延迟调整机制将无法按预期运行。 Re: MCXN947 DLL auto-adjusted function not working 我再次检查了一下,MCU 中的 MCR0[RXCLKSRC] 位设置为 3h。 Re: MCXN947 DLL auto-adjusted function not working 嗨@IbhDaniel 感谢您的确认,我会和内部团队一起审核。这可能需要一些时间。感谢您的耐心等待。 在此期间,请使用您找到的手动校准变通方法。 由此造成的不便,我们深表歉意。 Re: MCXN947 DLL auto-adjusted function not working 嗨@IbhDaniel , 请问您能否分享一下您的 flexspi_config_t 文件? 这样做是为了重现你遇到的情况。 另外,尝试在 UpdateDllValue 之后和 FLEXSPI_SetFlashConfig() 之后添加 SDK_DelayAtLeastUs 为 10us。 BR Re: MCXN947 DLL auto-adjusted function not working 嗨,卡洛斯, 以下是我在 `flexspi_config_t` 结构中使用的参数信息: flexspi_config_t config; /* Get FLEXSPI default settings and configure the flexspi. */ FLEXSPI_GetDefaultConfig(&config); config.rxSampleClock = kFLEXSPI_ReadSampleClkExternalInputFromDqsPad; /*Set AHB buffer size for reading data through AHB bus. */ config.ahbConfig.enableAHBPrefetch = true; config.ahbConfig.enableAHBBufferable = true; config.ahbConfig.enableAHBCachable = true; config.ahbConfig.enableReadAddressOpt = true; for (uint8_t i = 1; i < FSL_FEATURE_FLEXSPI_AHB_BUFFER_COUNT - 1; i++) { config.ahbConfig.buffer[i].bufferSize = 0; } config.ahbConfig.buffer[0].masterIndex = 4; /* DMA0 */ config.ahbConfig.buffer[0].bufferSize = 512; /* Allocate 512B bytes for DMA0 */ config.ahbConfig.buffer[0].enablePrefetch = true; config.ahbConfig.buffer[0].priority = 0; /* All other masters use last buffer with 512B bytes. */ config.ahbConfig.buffer[FSL_FEATURE_FLEXSPI_AHB_BUFFER_COUNT - 1].bufferSize = 512; #if !(defined(FSL_FEATURE_FLEXSPI_HAS_NO_MCR0_COMBINATIONEN) && FSL_FEATURE_FLEXSPI_HAS_NO_MCR0_COMBINATIONEN) config.enableCombination = true; #endif FLEXSPI_Init(BUNNY_FLEXSPI, &config); 以下是“SDK_DelayAtLeastUs”和“FLEXSPI_SetFlashConfig”函数的代码: SDK_DelayAtLeastUs(10U, CLOCK_GetCoreSysClkFreq()); /*! * @brief Delay at least for some time. * Please note that, if not uses DWT, this API will use while loop for delay, different run-time environments have * effect on the delay time. If precise delay is needed, please enable DWT delay. The two parmeters delayTime_us and * coreClock_Hz have limitation. For example, in the platform with 1GHz coreClock_Hz, the delayTime_us only supports * up to 4294967 in current code. If long time delay is needed, please implement a new delay function. * * @Param delayTime_us Delay time in unit of microsecond. * @Param coreClock_Hz Core clock frequency with Hz. */ void SDK_DelayAtLeastUs(uint32_t delayTime_us, uint32_t coreClock_Hz) { uint64_t count; if (delayTime_us > 0U) { count = USEC_TO_COUNT(delayTime_us, coreClock_Hz); assert(count <= UINT32_MAX); #if defined(SDK_DELAY_USE_DWT) && defined(DWT) /* Use DWT for better accuracy */ MSDK_EnableCpuCycleCounter(); /* Calculate the count ticks. */ count += MSDK_GetCpuCycleCount(); if (count > UINT32_MAX) { count -= UINT32_MAX; /* Wait for cyccnt overflow. */ while (count < MSDK_GetCpuCycleCount()) { } } /* Wait for cyccnt reach count value. */ while (count > MSDK_GetCpuCycleCount()) { } #else /* Divide value may be different in various environment to ensure delay is precise. * Every loop count includes three instructions, due to Cortex-M7 sometimes executes * two instructions in one period, through test here set divide 1.5. Other M cores use * divide 4. By the way, divide 1.5 or 4 could let the count lose precision, but it does * not matter because other instructions outside while loop is enough to fill the time. */ #if (__CORTEX_M == 7) count = count / 3U * 2U; #else count = count / 4U; #endif DelayLoop((uint32_t)count); #endif /* defined(SDK_DELAY_USE_DWT) && defined(DWT) */ } } /*! * brief Configures the connected device parameter. * * This function configures the connected device relevant parameters, such as the size, command, and so on. * The flash configuration value cannot have a default value. The user needs to configure it according to the * connected device. * * param base FLEXSPI peripheral base address. * param config Flash configuration parameters. * param port FLEXSPI Operation port. */ void FLEXSPI_SetFlashConfig(FLEXSPI_Type *base, flexspi_device_config_t *config, flexspi_port_t port) { uint32_t configValue = 0; uint8_t index = (uint8_t)port >> 1U; /* PortA with index 0, PortB with index 1. */ /* Wait for bus to be idle before changing flash configuration. */ while (!FLEXSPI_GetBusIdleStatus(base)) { } /* Configure flash size and address shift. */ #if defined(FSL_FEATURE_FLEXSPI_SUPPORT_ADDRESS_SHIFT) && (FSL_FEATURE_FLEXSPI_SUPPORT_ADDRESS_SHIFT) base->FLSHCR0[port] = config->flashSize | FLEXSPI_FLSHCR0_ADDRSHIFT(config->addressShift); #else base->FLSHCR0[port] = config->flashSize; #endif /* FSL_FEATURE_FLEXSPI_SUPPORT_ADDRESS_SHIFT */ /* Configure flash parameters. */ base->FLSHCR1[port] = FLEXSPI_FLSHCR1_CSINTERVAL(config->CSInterval) | FLEXSPI_FLSHCR1_CSINTERVALUNIT(config->CSIntervalUnit) | FLEXSPI_FLSHCR1_TCSH(config->CSHoldTime) | FLEXSPI_FLSHCR1_TCSS(config->CSSetupTime) | FLEXSPI_FLSHCR1_CAS(config->columnspace) | FLEXSPI_FLSHCR1_WA(config->enableWordAddress); /* Configure AHB operation items. */ configValue = base->FLSHCR2[port]; configValue &= ~(FLEXSPI_FLSHCR2_AWRWAITUNIT_MASK | FLEXSPI_FLSHCR2_AWRWAIT_MASK | FLEXSPI_FLSHCR2_AWRSEQNUM_MASK | FLEXSPI_FLSHCR2_AWRSEQID_MASK | FLEXSPI_FLSHCR2_ARDSEQNUM_MASK | FLEXSPI_FLSHCR2_ARDSEQID_MASK); configValue |= FLEXSPI_FLSHCR2_AWRWAITUNIT(config->AHBWriteWaitUnit) | FLEXSPI_FLSHCR2_AWRWAIT(config->AHBWriteWaitInterval); if (config->AWRSeqNumber > 0U) { configValue |= FLEXSPI_FLSHCR2_AWRSEQID((uint32_t)config->AWRSeqIndex) | FLEXSPI_FLSHCR2_AWRSEQNUM((uint32_t)config->AWRSeqNumber - 1U); } if (config->ARDSeqNumber > 0U) { configValue |= FLEXSPI_FLSHCR2_ARDSEQID((uint32_t)config->ARDSeqIndex) | FLEXSPI_FLSHCR2_ARDSEQNUM((uint32_t)config->ARDSeqNumber - 1U); } base->FLSHCR2[port] = configValue; /* Configure DLL. */ FLEXSPI_UpdateDllValue(base, config, port); /* Step into stop mode. */ base->MCR0 |= FLEXSPI_MCR0_MDIS_MASK; /* Configure write mask. */ if (config->enableWriteMask) { base->FLSHCR4 &= ~FLEXSPI_FLSHCR4_WMOPT1_MASK; } else { base->FLSHCR4 |= FLEXSPI_FLSHCR4_WMOPT1_MASK; } if (index == 0U) /*PortA*/ { base->FLSHCR4 &= ~FLEXSPI_FLSHCR4_WMENA_MASK; base->FLSHCR4 |= FLEXSPI_FLSHCR4_WMENA(config->enableWriteMask); } #if !((defined(FSL_FEATURE_FLEXSPI_HAS_NO_FLSHCR4_WMENB)) && (FSL_FEATURE_FLEXSPI_HAS_NO_FLSHCR4_WMENB)) else { base->FLSHCR4 &= ~FLEXSPI_FLSHCR4_WMENB_MASK; base->FLSHCR4 |= FLEXSPI_FLSHCR4_WMENB(config->enableWriteMask); } #endif /* Exit stop mode. */ base->MCR0 &= ~FLEXSPI_MCR0_MDIS_MASK; /* Wait for bus to be idle before use it access to external flash. */ while (!FLEXSPI_GetBusIdleStatus(base)) { } } 非常感谢您的大力支持! 顺祝商祺! 丹尼尔 Re: MCXN947 DLL auto-adjusted function not working 你好, 目前情况如何? 您能否使用源代码重现该错误? 此致, 丹尼尔 Re: MCXN947 DLL auto-adjusted function not working 你好, 怎么样了?问题解决了吗? 如果您需要任何其他信息,请告诉我。 此致, 丹尼尔
記事全体を表示
阐明iMX93外部振荡器的使用方法 您好, 我正在使用 iMX93 开发一款定制板,我对 24 MHz 晶振以及是否可以使用外部振荡器有些困惑。 IMX93IEC 数据表第 3 表指出:“该系统需要 XTALI/XTALO 上的 24 MHz 频率。外部24兆赫振荡器无法消除晶体的影响。 但是,参考手册的振荡器部分 29.4.2 节却指出: 每个晶振模块都通过寄存器配置支持以下模式: 普通振荡器模式 - XTAL 根据晶振(晶体振荡器)的输入产生稳定的方波。 旁路模式——可通过晶振焊盘输入外部时钟信号。 此外,IMX93QSB原理图上还有一条注释: 关于24MHz晶振(晶体振荡器): 需要选择旁路模式。在此模式下,晶振(晶体振荡器)放大器关闭,“cosc_en_lv”、“osc_comp_enable_lv”和“pwd_lv”被取消置位(逻辑 0)。只需要在晶振 (XI) 处输入轨到轨信号,晶振 (XO) 可以是浮空或接地。FXOSC 和 SXOSC 模块指南中均提供了旁路模式配置。 这里提到的寄存器/命令/位是什么?FXOSC和SXOSC模块的指南在哪里?在参考手册中搜索不到这些内容吗? 那么,iMX93 是否可以使用(并支持)外部振荡器? Re: Clarifying usage of external oscillator with iMX93 嗨@AEi , 那么,iMX93 是否可以使用(并支持)外部振荡器? A:不需要外部24 MHz振荡器。您可以在我们的产品规格表中看到这一点。 RM 表示该模块具有正常模式和旁路模式。就电路板级设计而言,外部时钟替代晶振的明确适用场景是 RTC 的 32.768 kHz 输入,而不是 24 MHz 主时钟。 希望这对您有所帮助。 如有任何疑问,请随时与我联系。 祝你今天过得愉快 顺祝商祺! Rita
記事全体を表示
Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download Hi NXP Support Team, I would like to request download access for SW32K14-MCAL421-RTMC-1.0.1. Currently, the “Previous” tab in my NXP Software Licensing page appears greyed out and I cannot access this version. My account username is Chefanqf. This version is needed for compatibility with an existing project based on S32K14x MCAL 4.2. Could you please help enable the entitlement for this software under my account? Thank you very much for your support! Best regards, Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download Hi @812311483  The content of this inquiry is identical to the request: "Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download" Could you please clarify whether it is this account that requires the software, or if it was the previous account—"Chefanqf"—that needed it? Best Regards, Robin Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download Yes, it is my account that needs to download SW32K14-MCAL421-RTMC-1.0.1 for learning and use. Could you please grant me the download permission for this account? Thank you Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download I have emailed my colleagues at FlexNet and asked them to enable download access for this version of the software on your account. Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download This software has been added to your account; please check whether you are able to download it.
記事全体を表示
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さん 確認ありがとうございます。社内チームと検討いたします。これには時間がかかる場合があります。ご理解とご協力に感謝いたします。 それまでの間は、手動キャリブレーションで見つけた回避策をご利用ください。 ご迷惑をおかけして申し訳ございません。 Re: MCXN947 DLL auto-adjusted function not working こんにちは@IbhDaniel。 flexspi_config_tを教えていただけますか? これは、あなたが直面している現象を再現するためのものです。 また、UpdateDllValue と FLEXSPI_SetFlashConfig() の後に SDK_DelayAtLeastUs を 10us 追加してみてください。 BR Re: MCXN947 DLL auto-adjusted function not working こんにちは、カルロスさん。 `flexspi_config_t`構造体で使用するパラメータに関する情報は以下のとおりです。 flexspi_config_t config; /* Get FLEXSPI default settings and configure the flexspi. */ FLEXSPI_GetDefaultConfig(&config); config.rxSampleClock = kFLEXSPI_ReadSampleClkExternalInputFromDqsPad; /*Set AHB buffer size for reading data through AHB bus. */ config.ahbConfig.enableAHBPrefetch = true; config.ahbConfig.enableAHBBufferable = true; config.ahbConfig.enableAHBCachable = true; config.ahbConfig.enableReadAddressOpt = true; for (uint8_t i = 1; i < FSL_FEATURE_FLEXSPI_AHB_BUFFER_COUNT - 1; i++) { config.ahbConfig.buffer[i].bufferSize = 0; } config.ahbConfig.buffer[0].masterIndex = 4; /* DMA0 */ config.ahbConfig.buffer[0].bufferSize = 512; /* Allocate 512B bytes for DMA0 */ config.ahbConfig.buffer[0].enablePrefetch = true; config.ahbConfig.buffer[0].priority = 0; /* All other masters use last buffer with 512B bytes. */ config.ahbConfig.buffer[FSL_FEATURE_FLEXSPI_AHB_BUFFER_COUNT - 1].bufferSize = 512; #if !(defined(FSL_FEATURE_FLEXSPI_HAS_NO_MCR0_COMBINATIONEN) && FSL_FEATURE_FLEXSPI_HAS_NO_MCR0_COMBINATIONEN) config.enableCombination = true; #endif FLEXSPI_Init(BUNNY_FLEXSPI, &config); 以下は、「SDK_DelayAtLeastUs」関数と「FLEXSPI_SetFlashConfig」関数のコードです。 SDK_DelayAtLeastUs(10U, CLOCK_GetCoreSysClkFreq()); /*! * @brief Delay at least for some time. * Please note that, if not uses DWT, this API will use while loop for delay, different run-time environments have * effect on the delay time. If precise delay is needed, please enable DWT delay. The two parmeters delayTime_us and * coreClock_Hz have limitation. For example, in the platform with 1GHz coreClock_Hz, the delayTime_us only supports * up to 4294967 in current code. If long time delay is needed, please implement a new delay function. * * @Param delayTime_us Delay time in unit of microsecond. * @Param coreClock_Hz Core clock frequency with Hz. */ void SDK_DelayAtLeastUs(uint32_t delayTime_us, uint32_t coreClock_Hz) { uint64_t count; if (delayTime_us > 0U) { count = USEC_TO_COUNT(delayTime_us, coreClock_Hz); assert(count <= UINT32_MAX); #if defined(SDK_DELAY_USE_DWT) && defined(DWT) /* Use DWT for better accuracy */ MSDK_EnableCpuCycleCounter(); /* Calculate the count ticks. */ count += MSDK_GetCpuCycleCount(); if (count > UINT32_MAX) { count -= UINT32_MAX; /* Wait for cyccnt overflow. */ while (count < MSDK_GetCpuCycleCount()) { } } /* Wait for cyccnt reach count value. */ while (count > MSDK_GetCpuCycleCount()) { } #else /* Divide value may be different in various environment to ensure delay is precise. * Every loop count includes three instructions, due to Cortex-M7 sometimes executes * two instructions in one period, through test here set divide 1.5. Other M cores use * divide 4. By the way, divide 1.5 or 4 could let the count lose precision, but it does * not matter because other instructions outside while loop is enough to fill the time. */ #if (__CORTEX_M == 7) count = count / 3U * 2U; #else count = count / 4U; #endif DelayLoop((uint32_t)count); #endif /* defined(SDK_DELAY_USE_DWT) && defined(DWT) */ } } /*! * brief Configures the connected device parameter. * * This function configures the connected device relevant parameters, such as the size, command, and so on. * The flash configuration value cannot have a default value. The user needs to configure it according to the * connected device. * * param base FLEXSPI peripheral base address. * param config Flash configuration parameters. * param port FLEXSPI Operation port. */ void FLEXSPI_SetFlashConfig(FLEXSPI_Type *base, flexspi_device_config_t *config, flexspi_port_t port) { uint32_t configValue = 0; uint8_t index = (uint8_t)port >> 1U; /* PortA with index 0, PortB with index 1. */ /* Wait for bus to be idle before changing flash configuration. */ while (!FLEXSPI_GetBusIdleStatus(base)) { } /* Configure flash size and address shift. */ #if defined(FSL_FEATURE_FLEXSPI_SUPPORT_ADDRESS_SHIFT) && (FSL_FEATURE_FLEXSPI_SUPPORT_ADDRESS_SHIFT) base->FLSHCR0[port] = config->flashSize | FLEXSPI_FLSHCR0_ADDRSHIFT(config->addressShift); #else base->FLSHCR0[port] = config->flashSize; #endif /* FSL_FEATURE_FLEXSPI_SUPPORT_ADDRESS_SHIFT */ /* Configure flash parameters. */ base->FLSHCR1[port] = FLEXSPI_FLSHCR1_CSINTERVAL(config->CSInterval) | FLEXSPI_FLSHCR1_CSINTERVALUNIT(config->CSIntervalUnit) | FLEXSPI_FLSHCR1_TCSH(config->CSHoldTime) | FLEXSPI_FLSHCR1_TCSS(config->CSSetupTime) | FLEXSPI_FLSHCR1_CAS(config->columnspace) | FLEXSPI_FLSHCR1_WA(config->enableWordAddress); /* Configure AHB operation items. */ configValue = base->FLSHCR2[port]; configValue &= ~(FLEXSPI_FLSHCR2_AWRWAITUNIT_MASK | FLEXSPI_FLSHCR2_AWRWAIT_MASK | FLEXSPI_FLSHCR2_AWRSEQNUM_MASK | FLEXSPI_FLSHCR2_AWRSEQID_MASK | FLEXSPI_FLSHCR2_ARDSEQNUM_MASK | FLEXSPI_FLSHCR2_ARDSEQID_MASK); configValue |= FLEXSPI_FLSHCR2_AWRWAITUNIT(config->AHBWriteWaitUnit) | FLEXSPI_FLSHCR2_AWRWAIT(config->AHBWriteWaitInterval); if (config->AWRSeqNumber > 0U) { configValue |= FLEXSPI_FLSHCR2_AWRSEQID((uint32_t)config->AWRSeqIndex) | FLEXSPI_FLSHCR2_AWRSEQNUM((uint32_t)config->AWRSeqNumber - 1U); } if (config->ARDSeqNumber > 0U) { configValue |= FLEXSPI_FLSHCR2_ARDSEQID((uint32_t)config->ARDSeqIndex) | FLEXSPI_FLSHCR2_ARDSEQNUM((uint32_t)config->ARDSeqNumber - 1U); } base->FLSHCR2[port] = configValue; /* Configure DLL. */ FLEXSPI_UpdateDllValue(base, config, port); /* Step into stop mode. */ base->MCR0 |= FLEXSPI_MCR0_MDIS_MASK; /* Configure write mask. */ if (config->enableWriteMask) { base->FLSHCR4 &= ~FLEXSPI_FLSHCR4_WMOPT1_MASK; } else { base->FLSHCR4 |= FLEXSPI_FLSHCR4_WMOPT1_MASK; } if (index == 0U) /*PortA*/ { base->FLSHCR4 &= ~FLEXSPI_FLSHCR4_WMENA_MASK; base->FLSHCR4 |= FLEXSPI_FLSHCR4_WMENA(config->enableWriteMask); } #if !((defined(FSL_FEATURE_FLEXSPI_HAS_NO_FLSHCR4_WMENB)) && (FSL_FEATURE_FLEXSPI_HAS_NO_FLSHCR4_WMENB)) else { base->FLSHCR4 &= ~FLEXSPI_FLSHCR4_WMENB_MASK; base->FLSHCR4 |= FLEXSPI_FLSHCR4_WMENB(config->enableWriteMask); } #endif /* Exit stop mode. */ base->MCR0 &= ~FLEXSPI_MCR0_MDIS_MASK; /* Wait for bus to be idle before use it access to external flash. */ while (!FLEXSPI_GetBusIdleStatus(base)) { } } サポートいただき、本当にありがとうございます! よろしくお願いいたします。 ダニエル Re: MCXN947 DLL auto-adjusted function not working こんにちは、 調子はどう?問題は解決しましたか? さらに情報が必要な場合はお知らせください。 よろしくお願いします、 ダニエル Re: MCXN947 DLL auto-adjusted function not working こんにちは、 現在の状況はどうなっていますか? ソースコードを使ってエラーを再現できましたか? よろしくお願いします、 ダニエル
記事全体を表示
请求启用 SW32K14-MCAL421-RTMC-1.0.1 下载权限 您好,NXP支持团队, 我想申请下载SW32K14-MCAL421-RTMC-1.0.1 。 目前,我的 NXP 软件许可页面中的“上一版本”选项卡显示为灰色,我无法访问此版本。 我的账号用户名是Chefanqf 。 为了与基于S32K14x MCAL 4.2的现有项目兼容,需要此版本。 请问您能否帮我激活我账户下这款软件的使用权限? 非常感谢您的支持! 顺祝商祺! Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download 你好@812311483 本次查询的内容与请求“请求启用SW32K14-MCAL421-RTMC-1.0.1下载权限”完全相同。 请问是这个账户需要安装该软件,还是之前的账户“Chefanqf”需要安装该软件? 此致敬礼, Robin Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download 是的,我的账户需要下载 SW32K14-MCAL421-RTMC-1.0.1 用于学习和使用。请问您能否授予我此账户的下载权限?谢谢 Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download 我已经给 FlexNet 的同事发了邮件,请他们为您的帐户启用此版本软件的下载权限。 Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download 该软件已添加到您的帐户;请检查您是否可以下载。
記事全体を表示
SW32K14-MCAL421-RTMC-1.0.1ダウンロードへのアクセス許可の要請 NXPサポートチームの皆さん、こんにちは。 SW32K14-MCAL421-RTMC-1.0.1のダウンロードアクセスをお願いしたいです。 現在、NXPソフトウェアライセンスページの「前回」タブが グレーアウト しており、このバージョンにアクセスできません。 私のアカウントのユーザー名はChefanqfです。 このバージョンは、 S32K14x MCAL 4.2をベースにした既存のプロジェクトとの互換性のために必要です。 このソフトウェアの権利を私のアカウントで有効にするのを手伝ってもらえますか? ご支援ありがとうございます! よろしくお願いいたします。 Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download こんにちは@812311483 この問い合わせの内容は「SW32K14-MCAL421-RTMC-1.0.1ダウンロードへのアクセス許可を要請」と同一です。 このアカウントがソフトウェアを必要としているのか、それとも以前のアカウント「Chefanqf」が必要だったのか、明確にしていただけますか? よろしくお願いいたします ロビン Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download はい、学習と使用のためにSW32K14-MCAL421-RTMC-1.0.1をダウンロードする必要があるのは私のアカウントです。このアカウントのダウンロード許可をいただけますか?ありがとう Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download FlexNetの同僚にメールを送り、このバージョンのソフトウェアのダウンロードアクセスをあなたのアカウントで有効にしてもらうようお願いしました。 Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download このソフトウェアはあなたのアカウントに追加されました。ダウンロード可能かどうか確認してください。
記事全体を表示
IMX95 上有哪些可用的 ISP 选项 您好, 我使用的是 IMX95 EVK 和 ox03c10 摄像机设置。 我想使用硬件加速器缩放视频。 这是摄像机记录文件的工作流水线: gst-launch-1.0-v-e libcamerasrc camera-name= " /base/soc/bus @42000000 /i2c @42530000 /max96724 @27 /i2c-mux/i2c @0 /mx95mbcam @40 " src:: stream-role=取景器!video/x-raw,格式 = nv16,宽度 = 1920,高度 = 1280,帧率 = 30/1!视频转换!v4l2h264enc!h264parse!mp4mux!filesink 位置=/tmp/cam0_processed.mp4 从这个流水线来看,我希望消除对 CPU 的依赖,只使用硬件加速器。 请提出修改意见。 Re: What are available options for ISP on IMX95 目前,我只连接了 3 台没有显示屏的摄像机。 我只需要在文件中存储摄像头画面。 退出管道线对我不起作用。 此外,我如何知道哪个视频节点是哪个摄像机的? Re: What are available options for ISP on IMX95 您好, 感谢您对恩智浦半导体产品的关注, 建议使用此命令运行多台 ox03c10 摄像机。 gst-launch-1.0 imxcompositor_g2d name=comp \ > sink_0::xpos=0 sink_0::ypos=0 sink_0::width=640 sink_0::height=480 \ > sink_1::xpos=0 sink_1::ypos=480 sink_1::width=640 sink_1::height=480 \ > sink_2::xpos=640 sink_2::ypos=0 sink_2::width=640 sink_2::height=480 \ > sink_3::xpos=640 sink_3::ypos=480 sink_3::width=640 sink_3::height=480 ! \ > video/x-raw,format=BGRA ! autovideosink \ > v4l2src device=/dev/video15 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_0 \ > v4l2src device=/dev/video22 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_1 \ > v4l2src device=/dev/video28 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_2 \ > v4l2src device=/dev/video34 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_3 确保使用 Neo ISP 库,并查看《Linux 用户指南》中的 GST 插件。建议禁用 PipeWire。 systemctl --user stop pipewire ; systemctl --user mask pipewire 此致 Re: What are available options for ISP on IMX95 是否有用于编码、解码和缩放的 gst 插件? Re: What are available options for ISP on IMX95 您好, 对于插件,我在版本说明中找到了降级、编码和解码插件。 - imxvideoconvert_g2d:基于 GPU2D 的视频转换插件。 - imxvideoconvert_ipu:基于 IPU 的视频转换插件。 - imxvideoconvert_pxp:基于 PXP 的视频转换插件。 - imxvideoconvert_ocl:基于 OpenCL 的视频转换插件。 - 自动视频转换:根据输入和输出格式选择基于 i.MX 硬件的视频转换插件或其他 视频转换插件。 - v4l2convert:基于 V4L2 内存到内存的转换插件。 注意: - 对于 imxvideoconvert_ocl,目前不支持旋转。支持 CSC、去隔 行、缩小比例、广角鱼眼畸变校正、视频裁剪和色彩范围转换。 - 对于 v4l2convert,它会在支持 ISI 内存转 内存的平台上自动注册。 - v4l2h264enc:基于 VPU 的 AVC/H.264视频编码器 - v4l2h265enc:基于 VPU 的 HEVC 视频编码器 - v4l2jpegenc:V4L2 JPEG 编码器 对于摄像机拓扑结构,可以使用以下命令打印拓扑结构并识别摄像机。 -media-ctl -d /dev/media8 --print-dot> media8.dot (在 i.mx95 EVK 目标板中) -dot -Tpng media0.dot -o media0-ap1302.png (在乌班图电脑中) 此致, Re: What are available options for ISP on IMX95 这是我的 imx95 evk 的摄像头拓扑结构。 我可以通过 libcamerasrc 使用这个管道运行摄像头: gst-launch-1.0-e libcamerasrc camera-name= " /base/soc/bus @42000000 /i2c @42530000 /max96724 @27 /i2c-mux/i2c @0 /mx95mbcam @40 " src:: stream-role=取景器!video/x-raw,格式 = nv12,宽度 = 1920,高度 = 1280,帧率 = 30/1!视频转换!v4l2h264enc!h264parse!mp4mux!filesink 位置=/tmp/cam0_processed.mp4 如何使用 v4l2src 运行摄像机?此外,使用硬件加速器缩放视频而不将视图裁剪为 1920*382 的插件是什么?   Re: What are available options for ISP on IMX95 您好, 添加此信息,供在使用 i.MX95 进行相机捕获和录制时偶然看到此帖子的用户参考。 我们最近记录了一些关于在 i.MX95 上使用 V4L2 摄像头捕获和 GStreamer 的工作,这可能有助于解答有关使用v4l2src和硬件加速录制的问题。 关于v4l2src,第一步是确定与您的相机关联的捕获节点,并检查媒体管道配置是否正确。i.MX95 使用媒体控制器框架,因此您可以使用media-ctl -p检查拓扑结构,并使用v4l2-ctl --list-devices检查可用的捕获设备。 确定正确的节点后,您可以使用v4l2-ctl独立测试捕获功能,然后再将其集成到 GStreamer 中。请注意, libcamerasrc可以自动配置媒体管道,而直接使用 V4L2 进行捕获可能需要额外的设置。 我们已将该过程记录下来,包括媒体图配置、V4L2 测试和 GStreamer 示例,详情请见此处: https://developer.ridgerun.com/wiki/index.php/NXP_i.MX95_Technical_Guide/Testing_Camera_Capture 我们还有一份单独的指南,其中介绍了使用v4l2src 、硬件 H.264/H.265 编码器的 i.MX95 录制流程,以及包含imxvideoconvert_g2d 的示例: https://developer.ridgerun.com/wiki/index.php/NXP_i.MX95_Technical_Guide/GStreamer_Support/Capture_and_Recording 关于在不裁剪的情况下缩放到 1920x382 的问题,需要考虑宽高比:您的 1920x1280 输入是 3:2,而请求的输出要宽得多。要完整保留图像而不失真,需要将其缩放以适应输出尺寸并添加填充,或者选择具有原始宽高比的输出分辨率。 对于硬件加速,imxvideoconvert_g2d和imxvideoconvert_oclNXP 支持人员提到的元素值得研究,具体取决于您的电路板支持包。中可用的格式和功能。 我们的捕获示例使用了不同的相机配置,因此设备节点和媒体控制器设置需要根据您的 OX03C10/Maxim 设置进行调整。 希望这些参考资料对其他从事类似 i.MX95 相机流程开发的人员有所帮助!
記事全体を表示
RTD file Package issue using S32K324 MC Hi Team, I am using S32K324 MC using S32DS.3.6.12 IDE, i have installed all packeges, even i installed RTD( SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesite i have installed  this one from NXP website and inserted in IDE then installed). Problem: while creating time the project for S32K324, SDK file is not showing i have check the all possiblities but still not getting please check the bellow image you can get easily.  Please help me to fix this issue. Looking Forward for you response. #S32K3 AUTOMOTIVE-RTD  Re: RTD file Package issue using S32K324 MC hi @danielmartynek  okay, @danielmartynek  thank you for the support. thank you and regards, sunil ladwa Re: RTD file Package issue using S32K324 MC Because the RTD (SDK) 7.0.1 supports GCC 10.2 only, not GCC 11.4. So yes, GCC 10.2 is the only GCC that can be used with RTD 7.0.1. BR, Daniel Re: RTD file Package issue using S32K324 MC Hi @danielmartynek , thank you for you guide, just i have one more question for GCC 11.4 it is not showing i want to know why? and if i select GCC 10.2 is it okay or is it suitable for latest tool and MC? thank you and regard, sunil ladwa. Re: RTD file Package issue using S32K324 MC Hello Sunil Ladwa, Yes, that is correct, select 10.2. Regards, Daniel Re: RTD file Package issue using S32K324 MC hi @danielmartynek , while creating time i got this option like GCC 11.4, GCC 10.2, GCC9.2. is this correct right? if i select the GCC 10.2 i am getting in the SDK package this is correct right? i need your conformation. thank you and regards, sunil ladwa Re: RTD file Package issue using S32K324 MC Hi @sunil0509, Please create a new thread if your follow-up questions are unrelated to the original topic. Regards, Daniel Re: RTD file Package issue using S32K324 MC Hi @sunil0509, Refer to the release notes of the RTD, it supports GCC 10.2: Regards, Daniel Re: RTD file Package issue using S32K324 MC Hi @danielmartynek , i have selected this  one GCC 11.4. it this correct? I also have a small doubt regarding AUTOSAR and RTOS. Is the SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesite package applicable to both AUTOSAR and RTOS, or are separate packages required? If separate packages are required, could you please share the download links for both? thank you and regards sunil ladwa Re: RTD file Package issue using S32K324 MC Hi @sunil0509, Which compiler have you selected? The RTD supports GCC 10.2 in S32DS. Regards, Daniel
記事全体を表示
What are available options for ISP on IMX95 Hi, I am using IMX95 EVK with ox03c10 camera setup. I am running 3 cameras with Maxim serdes I want to scale down the video using hardware accelerator. This is the working camera pipeline for recording a file: gst-launch-1.0 -v -e libcamerasrc camera-name="/base/soc/bus@42000000/i2c@42530000/max96724@27/i2c-mux/i2c@0/mx95mbcam@40" src::stream-role=view-finder ! video/x-raw,format=NV16,width=1920,height=1280,framerate=30/1 ! videoconvert ! v4l2h264enc ! h264parse ! mp4mux ! filesink location=/tmp/cam0_processed.mp4 From this pipeline, I wanted to remove dependency from cpu and wanted to use only the hardware accelerator. Please suggest the changes. Re: What are available options for ISP on IMX95 Currently, I connected only 3 cameras without a display. I just need to store the camera feed in the file. Exiting pipe line is not working for me. Also, how will I get to know which video node is for which camera? Re: What are available options for ISP on IMX95 Hi, Thank you for your interest in NXP Semiconductor products, This is the command advised for running multiple ox03c10 cameras. gst-launch-1.0 imxcompositor_g2d name=comp \ > sink_0::xpos=0 sink_0::ypos=0 sink_0::width=640 sink_0::height=480 \ > sink_1::xpos=0 sink_1::ypos=480 sink_1::width=640 sink_1::height=480 \ > sink_2::xpos=640 sink_2::ypos=0 sink_2::width=640 sink_2::height=480 \ > sink_3::xpos=640 sink_3::ypos=480 sink_3::width=640 sink_3::height=480 ! \ > video/x-raw,format=BGRA ! autovideosink \ > v4l2src device=/dev/video15 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_0 \ > v4l2src device=/dev/video22 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_1 \ > v4l2src device=/dev/video28 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_2 \ > v4l2src device=/dev/video34 ! video/x-raw,format=YUY2,framerate=30/1,width=1920,height=1280 ! comp.sink_3 Make sure to use the Neo ISP library and review the GST plugins in Linux Users Guide. It advises disabling PipeWire. systemctl --user stop pipewire ; systemctl --user mask pipewire Regards Re: What are available options for ISP on IMX95 Are there any gst plugins available for encoding, decoding, and scaling? Re: What are available options for ISP on IMX95 Hi, For the plugins, I found in Release Notes the downscale, encode and decode plugins. • imxvideoconvert_g2d: GPU2D-based video convert plugin. • imxvideoconvert_ipu: IPU-based video convert plugin. • imxvideoconvert_pxp: PXP-based video convert plugin. • imxvideoconvert_ocl: OpenCL-based video convert plugin. • autovideoconvert: select the i.MX hardware based video convert plugins or other video convert plugins according to the input and output format. • v4l2convert: V4L2 memory-to-memory based convert plugin. Note: • For imxvideoconvert_ocl, rotation is not supported currently. CSC, deinterlace, downscale, dewarp, video crop, and color range convertion are supported. • For v4l2convert, it is automatically registered on the platforms with ISI memory-to- memory supported. • v4l2h264enc: VPU-based AVC/H.264 video encoder • v4l2h265enc: VPU-based HEVC video encoder • v4l2jpegenc: V4L2 JPEG encoder For the camera topology, you can use the following commands to print the topology and identify the cameras. −media-ctl  -d /dev/media8  --print-dot > media8.dot     (in i.MX95 EVK target board) −dot  -Tpng media0.dot  -o  media0-ap1302.png   (in ubuntu PC) Regards, Re: What are available options for ISP on IMX95 Here is the camera topology from my imx95 evk. I can run the camera using this pipeline with libcamerasrc: gst-launch-1.0 -e libcamerasrc camera-name="/base/soc/bus@42000000/i2c@42530000/max96724@27/i2c-mux/i2c@0/mx95mbcam@40" src::stream-role=view-finder ! video/x-raw,format=NV12,width=1920,height=1280,framerate=30/1 ! videoconvert ! v4l2h264enc ! h264parse ! mp4mux ! filesink location=/tmp/cam0_processed.mp4 How can I run my camera using v4l2src? Also, what is the plugin for scaling down the video without cropping the view to 1920*382 using a hardware accelerator?   Re: What are available options for ISP on IMX95 Hi, Adding this for anyone who comes across this thread while working with camera capture and recording on i.MX95. We recently documented some of our work with V4L2 camera capture and GStreamer on i.MX95, which might help with the questions about using v4l2src and hardware-accelerated recording. Regarding v4l2src, the first step is identifying the capture node associated with your camera and checking that the media pipeline is configured correctly. The i.MX95 uses the Media Controller framework, so you can inspect the topology with media-ctl -p and check the available capture devices with v4l2-ctl --list-devices. Once you've identified the correct node, you can test capture independently using v4l2-ctl before integrating it into GStreamer. Keep in mind that libcamerasrc may configure the media pipeline automatically, while direct V4L2 capture can require additional setup. We've documented that process, including media graph configuration, V4L2 testing, and GStreamer examples, here: https://developer.ridgerun.com/wiki/index.php/NXP_i.MX95_Technical_Guide/Testing_Camera_Capture We also have a separate guide with i.MX95 recording pipelines using v4l2src, hardware H.264/H.265 encoders, and examples incorporating imxvideoconvert_g2d: https://developer.ridgerun.com/wiki/index.php/NXP_i.MX95_Technical_Guide/GStreamer_Support/Capture_and_Recording Regarding scaling to 1920x382 without cropping, there's an aspect-ratio consideration: your 1920x1280 input is 3:2, while the requested output is much wider. Preserving the full image without distortion would require scaling it to fit within the output dimensions and adding padding, or choosing an output resolution with the original aspect ratio. For hardware acceleration, the imxvideoconvert_g2d and imxvideoconvert_ocl elements mentioned by NXP support are worth investigating, depending on the formats and capabilities available in your BSP. Our capture examples use a different camera configuration, so the device nodes and media-controller settings would need to be adapted to your OX03C10/Maxim setup. Hope these references are useful to others working on similar i.MX95 camera pipelines!
記事全体を表示
使用 S32K324 MC 时出现 RTD 文件包问题 大家好, 我正在使用 S32K324 MC,版本为 S32DS.3.6.12我已经安装了所有软件包,甚至还安装了 RTD(SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesite,我是从 NXP 网站安装的,然后插入到 IDE 中安装的)。 问题:在创建S32K324项目时,SDK文件没有显示。我已经检查了所有可能的原因,但仍然找不到。请查看下图,您应该能轻松找到。 请帮我解决这个问题。 期待您的回复。 #S32K3汽车-RTD Re: RTD file Package issue using S32K324 MC 嗨@danielmartynek 好的, @danielmartynek谢谢你的支持。 谢谢,此致敬礼! 苏尼尔·拉德瓦 Re: RTD file Package issue using S32K324 MC 因为 RTD(SDK)7.0.1 仅支持 GCC 10.2,不支持 GCC 11.4。 所以,是的,GCC 10.2 是唯一可以与 RTD 7.0.1 一起使用的 GCC 版本。 BR,丹尼尔 Re: RTD file Package issue using S32K324 MC 嗨@danielmartynek , 感谢您的指导,我还有一个关于 GCC 11.4 的问题,它没有显示出来,我想知道为什么?如果我选择 GCC 10.2,可以吗?它是否适用于最新的工具和 MC? 谢谢,并致以问候。 苏尼尔·拉德瓦。 Re: RTD file Package issue using S32K324 MC 你好,Sunil Ladwa, 是的,没错,选择 10.2。 此致, 丹尼尔 Re: RTD file Package issue using S32K324 MC 嗨@danielmartynek , 在创建时间时,我得到了类似 GCC 11.4 的这个选项,GCC 10.2,GCC 9.2。 这样对吗? 如果我选择 GCC 10.2,我会在 SDK 包中获取到它。 这样对吧?我需要你的确认。 谢谢,此致敬礼! 苏尼尔·拉德瓦 Re: RTD file Package issue using S32K324 MC 嗨@sunil0509 , 如果您的后续问题与原主题无关,请另开新帖。 此致, 丹尼尔 Re: RTD file Package issue using S32K324 MC 嗨@sunil0509 , 请参阅 RTD 的版本说明,它支持 GCC 10.2: 此致, 丹尼尔 Re: RTD file Package issue using S32K324 MC 嗨@danielmartynek , 我选择了 GCC 11.4。 这样对吗? 我对 AUTOSAR 和 RTOS 也有一些小疑问。 SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesite 软件包 是否 同时适用于 AUTOSAR 和 RTOS,还是需要单独的软件包? 如果需要单独的软件包,能否提供两者的下载链接? 谢谢,此致敬礼。 苏尼尔·拉德瓦 Re: RTD file Package issue using S32K324 MC 嗨@sunil0509 , 你选择了哪个编译器? RTD 支持 S32DS 中的 GCC 10.2。 此致, 丹尼尔
記事全体を表示
RTD R21-11 AUTOSAR EB:どのモジュールがフルでスタブですか? こんにちは、NXPコミュニティの皆さん、 私はSW32K1_S32M24x_RTD_R21-11_3.0.0_D2503パッケージ(S32K1/S32M24x リアルタイム・ドライバ、AUTOSAR R21-11)をEBのtresos環境で使用しています。私たちのプロジェクトには 、サードパーティのサプライヤー(例:Vector、ETAS、EB)からの商用AUTOSAR BSWスタックは存在せず、NXP RTDパッケージとEB構成のみに依存しています。 RTDパッケージ内の一部のモジュールは完全なAUTOSAR実装を意図していないことを承知しています。例えば、RTDリリースノートには 「Dem、Det、EcuC、EcuM、Rteおよびインターフェースプラグインに含まれる機能はサンプルスタブ関数であり、 これらのスタブは対応するAUTOSAR基本ソフトウェアモジュールが利用できない場合にアプリケーションがコンパイル・実行できるようにするためのみ存在する」と記載されています。また、RTEはサポートスタブとしてのみ提供されており、完全に機能し設定可能なRTEソリューションにはサードパーティパッケージが必要であることも理解しています。 しかし、EB tresos の設定可能なモジュールのリスト (スクリーンショットを添付) を見ると、残りのモジュールの状態を明確にしたいと思います。具体的には、以下のモジュールについて知りたいです。 これは完全な本番環境の実装(例:完全なMCALドライバや完全なAUTOSARサービスモジュール)ですか? それとも本番環境向けのサンプルスタブやリファレンス実装で、ユーザーコードやサードパーティ製BSWに置き換えるべきでしょうか? 問題となっているモジュール(EB構成ビューより): サービス/ECUマネジメント層: Dem、 Det、 EcuM、 EcuC、 BswM (存在する場合)、 ComM (存在する場合) メモリスタック: Mem 、 Mem_43_EEP 、 Mem_43_EXFLS 、 Mem_43_INFLS 、 Fee 、 NvM (存在する場合) MCALドライバ: ADC、 Can_43_FLEXCAN、 CanIf (インターフェース)、 Spi、 I2c、 I2s、 Uart、 Lin_43_LPUART_FLEXIO、 Pwm、 GPT、 ICU、 Wdg、 Mcl、 Crc、 Dio、 Port、 MCU、 プラットフォーム その他: Eth_43_ENET 、 EthIf 、 EthSwt 、 EthTrcv 、 CanTrcv_43_AE 、 LinTrcv_43_AE 、 Ea / Eep (存在する場合)、 Rte (既にスタブとして認識されている) MCALドライバ(例: Port、 Adc、 Spi、 CAN)は通常完全な実装であることは理解しています。私の主な不確実性は サービス層およびインターフェースモジュール 、特に Dem、 Det、 EcuM、 EcuC、 Mem、 Fee、 CANIf、 EthIf、 そして*Trcv/EthSWTモジュールについてです 。これらもスタブなのでしょうか、それともNXPが提供する機能実装ですか? 🙏 視覚的な説明に関する特別な要望: 可能であれば、このThreadに返信しているNXPのエンジニアが添付された2枚のスクリーンショットに直接注釈を付けて、各モジュールの状態を示せていただけると非常にありがたいです。 分かりやすくするために、画像にシンプルな色分け凡例を使用することをお勧めします。 🟢緑色(または太字の枠):完全実装(本番環境対応)。 🟠オレンジ色(または点線の枠):サンプルスタブ/参照コード(本番環境では使用しないでください)。 ⚪ グレー(または線が引かれている状態): サードパーティ製BSWパッケージ(例:RTE、OS、NvM)が必要です。 注釈をモジュールリストに直接表示することで、手動でクロス・リファレンスする時間を節約でき、プロジェクトの開発範囲を正確に把握するのに役立ちます。お時間とサポートを本当にありがとうございます! 添付ファイル: EB tresosモジュールの設定リストを示すスクリーンショット2枚。 Re: RTD R21-11 AUTOSAR EB: Which modules are Full vs. Stubs? こんにちは、 @lukaszadrapa さん。 詳しい説明をありがとうございます。 多くのことが明確になりました。表3のドライバが「RFP品質」であり、サービス/インターフェースモジュールがスタブであることを知っているのがまさに必要な情報でした。 私自身も表3を確認したいです。しかし、NXPのウェブサイトで言及されたSW32K1_S32M24x_RTD_R21-11_3.0.0_D2503パッケージの正確な「リリースノート」文書を見つけるのに苦労しています。 正確なドキュメント番号(例:ドキュメントID/Rev番号)または、このリリースノートPDFへの直接ダウンロードリンクを教えていただけますか?もし都合が良いなら、PDFファイルを返信に直接添付していただけると助かります。 ご協力いただき本当に感謝しています。書類を探すのに手間取らせてしまい、申し訳ありませんでした。 よろしくお願いします、 チャオファン Re: RTD R21-11 AUTOSAR EB: Which modules are Full vs. Stubs? こんにちは@チャオファン 要求された情報はリリースノートの表3にすでにまとめられており、パッケージに含まれるソフトウェアコンポーネントが一覧で、各コンポーネントがドライバとして提供されるかスタブとして提供されているかを示しています。以下に例を示します。 Dem、Det、EcuC、EcuM、Rte、インターフェースプラグインに含まれる機能は統合をサポートするためのサンプルスタブ関数であり、対応するユーザー開発またはサードパーティ製のBSW実装に置き換えるべきです。 したがって、EB Tresos構成のどのモジュールが実際のRTDドライバで、どのモジュールがスタブとしてのみ提供されているかを識別する際に、表3を参考にすることをおすすめします。 表3に記載されているドライバはRFP品質を持ち、リリースノートに記載されている通り、完全にテストされ、量産車載での使用を想定しています。 よろしくお願いいたします。 ルーカス Re: RTD R21-11 AUTOSAR EB: Which modules are Full vs. Stubs? 詳細なご説明をありがとうございました。それは非常に役立ちました。 簡単なご報告です。リリースノートと表3を自分で見つけることができました。これを決定的な参考資料として使い、EBのtresos構成をマッピングし、どのモジュールがRFPドライバかスタブかを特定します。 改めて、お時間をいただき、ご辛抱強く、素晴らしいサポートをありがとうございます! 敬具 朝凡
記事全体を表示
RTDファイル MCを使ったパッケージの問題S32K324 チームの皆さん、こんにちは。 私はS32DS.3.6.12を使用してS32K324 MCを使用しています。IDEはすべてのパッケージをインストールしました。RTD(SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesiteもインストールしました。NXPのウェブサイトからインストールしてIDEに挿入し、インストールしました)。 問題:プロジェクトをS32K324作成中にSDKファイルが表示されず、すべての可能性を確認したが、簡単に入手できる下の画像を確認してもらえません。 この問題を解決するのを手伝ってください。 ご回答をお待ちしております。 #S32K3 オートモーティブ-RTD  Re: RTD file Package issue using S32K324 MC こんにちは、 @danielmartynek わかりました、サポート@danielmartynekありがとうございます。 ありがとうございます。 スニル・ラドワ Re: RTD file Package issue using S32K324 MC なぜならRTD(SDKs)7.0.1はGCC 10.2のみをサポートし、GCC 11.4はサポートしていないからです。 SO、GTD 7.0.1で使えるGCCはGCC 10.2だけです。 BR、ダニエル Re: RTD file Package issue using S32K324 MC こんにちは、 @danielmartynek さん、 ガイドをありがとうございます。GCC 11.4についてもう一つ質問があります。表示されないのですが、なぜでしょうか?また、GCC 10.2を選択した場合、最新のツールやMCには適しているのでしょうか? ありがとうございます。 スニル・ラドワ。 Re: RTD file Package issue using S32K324 MC こんにちは、スニル・ラドワさん。 はい、その通りです。10.2を選択してください。 よろしくお願いいたします。 ダニエル Re: RTD file Package issue using S32K324 MC こんにちは、 @danielmartynek さん、 作成時に、GCC 11.4 のようなオプションが表示されました。GCC 10.2、GCC 9.2。 これは正しいですか? もしGCC 10.2を選べば、SDKパッケージで入手できます これは正しいですよね?あなたの確認が必要です。 ありがとうございます。 スニル・ラドワ Re: RTD file Package issue using S32K324 MC こんにちは、@sunil0509 さん。 元のトピックと無関係な質問がある場合は、新しいThreadを作成してください。 よろしくお願いいたします。 ダニエル Re: RTD file Package issue using S32K324 MC こんにちは、@sunil0509 さん。 RTDのリリースノートを参照してください。GCC 10.2をサポートしています: よろしくお願いいたします。 ダニエル Re: RTD file Package issue using S32K324 MC こんにちは、 @danielmartynek さん、 私はGCC 11.4を選択しました。 これは正しいですか? AUTOSARやRTOSについても少し疑問があります。 SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesite パッケージはAUTOSARとRTOSの両方に適用できますか?それとも別々のパッケージが必要ですか?もし別々のパッケージが必要な場合は、両方のダウンロードリンクを共有していただけませんか? ありがとうございます。 スニル・ラドワ Re: RTD file Package issue using S32K324 MC こんにちは、@sunil0509 さん。 どのコンパイラを選択しましたか? RTDはS32DSでGCC 10.2をサポートしています。 よろしくお願いいたします。 ダニエル
記事全体を表示
Example MCAL S32K312 PIT ADC BTCU DS3.5 RTD300 * ============================================================================ * Detailed Description: * * The purpose of this demo application is to demonstrate the usage of the * ADC High-Level Driver (HLD) on the S32K312 MCU. * * The example uses PIT timers to periodically trigger BCTU conversion lists * through the TRGMUX. Each conversion list consists of five ADC channels. * Conversion results are stored in BCTU FIFOs and automatically transferred * by eDMA into result arrays. * * Trigger paths: * PIT0_CH0 -> TRGMUX -> BCTU Trigger 23 -> ADC0 (5 channels) * -> BCTU FIFO1 -> eDMA (ch0) * * PIT1_CH1 -> TRGMUX -> BCTU Trigger 47 -> ADC1 (5 channels) * -> BCTU FIFO2 -> eDMA (ch11) * * Converted results from the BCTU FIFOs are moved by eDMA into dedicated * ADC result buffers. * * ADC1 channel S10 is connected to the on-board potentiometer. The converted * value is used to adjust the brightness of the BLUE LED * * ============================================================================ * Test HW: S32K312-T172 * MCU: S32K312 * Compiler: S32DS 3.5.x * RTD release: S32K3_RTD_3_0_0 P07 * Debugger: On-Board Debugger * Target: Internal_FLASH * ============================================================================ I used these channels on --> S32K312-T172 eval board ADC results :-- ALso  be sure you enable freeze for both PITs :--  
記事全体を表示
Clarifying usage of external oscillator with iMX93 Hi, I am developing a custom board using the iMX93 and I am a bit confused regarding the 24 MHz XTAL and if it is possible at all to use an external oscillator. Table 3 of the IMX93IEC datasheet says: "The system requires 24 MHz on XTALI/XTALO. The crystal cannot be eliminated by an external 24 MHz oscillator." But then the Oscillator section 29.4.2 in the reference manual states: "Each XTAL module supports the following mode through register configuration: Normal oscillator mode - XTAL generates stable square wave based on the crystal oscillator input. Bypass mode - external clock can be input through XTAL pad." Also the IMX93QSB schematic has a note that says: "Regarding 24MHz crystal oscillator: Bypass mode need to be selected. In this mode, the crystal oscillator amplifier is off with “cosc_en_lv”, "osc_comp_enable_lv" and “pwd_lv” deasserted (logic 0). Only rail to rail input signal at extal (XI) is needed with xtal (XO) could be either floating or ground. Bypass mode configuration is provide in both FXOSC and SXOSC block guides." What are these registers/commands/bits that are referenced? Where is FXOSC and SXOSC block guides? None of these are turn up in a search in the reference manual? So, is it or is it not possible (and supported) to use an external oscillator with the iMX93? Re: Clarifying usage of external oscillator with iMX93 Hi @AEi , So, is it or is it not possible (and supported) to use an external oscillator with the iMX93? A: No for the external 24 MHz oscillator. In our datasheet you can see that. The RM indicates that the module has normal and bypass modes.When it comes to board level design, the clear applicable scenario for external clock replacement crystals is the 32.768 kHz input of RTC, not the 24 MHz master clock. Hope this can do help for you Any questions please contact me freely Wish you have a nice day Best Regards Rita
記事全体を表示
RTD R21-11 AUTOSAR EB: Which modules are Full vs. Stubs? Hello NXP Community, I am working with the SW32K1_S32M24x_RTD_R21-11_3.0.0_D2503 package (S32K1/S32M24x Real-Time Drivers, AUTOSAR R21-11) in an EB tresos environment. Our project does not have a commercial AUTOSAR BSW stack from a third-party supplier (e.g., Vector, ETAS, EB) — we are relying solely on the NXP RTD package and EB configuration. I am aware that some modules in the RTD package are not intended to be complete AUTOSAR implementations. For example, the RTD Release Notes state that "the functions contained in the Dem, Det, EcuC, EcuM, Rte and interface plugins are sample stub functions," and that these stubs exist only to allow applications to compile and run when the corresponding AUTOSAR Basic Software Modules are unavailable. I also understand that RTE is provided as a support stub only and that a fully functional, configurable RTE solution requires a third-party package. However, looking at the list of configurable modules in EB tresos (screenshots attached), I would like to clarify the status of the remaining modules. Specifically, for the following modules, I would like to know: Is it a full, production-ready implementation (e.g., a complete MCAL driver or a complete AUTOSAR service module)? Or is it a sample stub / reference implementation that is not intended for production use and should be replaced by user code or a third-party BSW? Modules in question (from the EB configuration view): Service/ECU Management layer: Dem, Det, EcuM, EcuC, BswM (if present), ComM (if present) Memory stack: Mem, Mem_43_EEP, Mem_43_EXFLS, Mem_43_INFLS, Fee, NvM (if present) MCAL drivers: Adc, Can_43_FLEXCAN, CanIf (interface), Spi, I2c, I2s, Uart, Lin_43_LPUART_FLEXIO, Pwm, Gpt, Icu, Wdg, Mcl, Crc, Dio, Port, Mcu, Platform Other: Eth_43_ENET, EthIf, EthSwt, EthTrcv, CanTrcv_43_AE, LinTrcv_43_AE, Ea/Eep (if present), Rte (already known as stub) I understand that the MCAL drivers (e.g., Port, Adc, Spi, Can) are typically full implementations. My main uncertainty is about the service-layer and interface modules — particularly Dem, Det, EcuM, EcuC, Mem, Fee, CanIf, EthIf, and the *Trcv/EthSwt modules. Are these also stubs, or are they functional implementations provided by NXP? 🙏 A special request for visual clarification: If possible, I would be extremely grateful if the NXP engineer replying to this thread could directly annotate the two attached screenshots to show the status of each module. To make it easy, I suggest using a simple color-coding legend on the images: 🟢 Green (or bold box): Full implementation (production-ready). 🟠 Orange (or dashed box): Sample stub / reference code (not for production). ⚪ Grey (or crossed out): Requires a third-party BSW package (e.g., RTE, OS, NvM). Having the annotations directly on the module list will save me hours of manual cross-referencing and help me accurately scope our project's development effort. Thank you so much for your time and support! Attachments: Two screenshots showing the EB tresos module configuration list. Re: RTD R21-11 AUTOSAR EB: Which modules are Full vs. Stubs? Hi @lukaszadrapa , Thank you very much for your detailed explanation. This clarifies a lot. Knowing that the drivers in Table 3 have "RFP quality" and that the service/interface modules are stubs is exactly the information I needed. I would like to check Table 3 myself. However, I am having trouble locating the exact "Release Notes" document you mentioned on the NXP website for the SW32K1_S32M24x_RTD_R21-11_3.0.0_D2503 package. Could you please provide the exact Document Number (e.g., Document ID/Rev number) or a direct download link to this Release Notes PDF? If it is more convenient, could you please attach the PDF file directly to your reply? I really appreciate your help, and sorry for the trouble in finding the document. Best regards, Chaofan Re: RTD R21-11 AUTOSAR EB: Which modules are Full vs. Stubs? Hi @chaofan  The requested information is already summarized in Table 3 of the Release Notes, which lists the software components included in the package and indicates whether each component is provided as a driver or as a stub. Here’s an example: Please note that the functions provided in the Dem, Det, EcuC, EcuM, Rte, and interface plugins are sample stub functions intended to support integration and should be replaced by the corresponding user-developed or third-party BSW implementation. Therefore, I would recommend using Table 3 as the reference for identifying which modules in your EB tresos configuration are actual RTD drivers and which are provided only as stubs. The drivers listed in Table 3 have RFP quality, meaning they are fully tested and intended for use in production vehicles, as described in the Release Notes. Regards, Lukas Re: RTD R21-11 AUTOSAR EB: Which modules are Full vs. Stubs? Thank you very much for your detailed explanation. It was extremely helpful. Just a quick update: I managed to locate the Release Notes and Table 3 myself. I will use it as the definitive reference to map out our EB tresos configuration and identify which modules are RFP drivers versus stubs. Thank you again for your time, patience, and excellent support! Best regards, Chaofan
記事全体を表示
PCA9451Aの未使用SD機能 こんにちは、 iMX93アプリケーションでSDカードを使うつもりはないので、PCA9451A PMICのスイッチとLDO5ブロックの終端処理方法が気になっています。 1) SW_ENには内部のプルダウン機能があり、I2Cレベルのトランスレーターを使っていないので、SWINも浮かせておくことができますよね?SWOUTピンも接続せずに放置できるのですか? 2) SD_VSELとLDO5はどうすればいいですか?内部に引っ張る抵抗SD_VSEL見当たりません。LDO5は無負荷時でも出力コンデンサが必要なのでしょうか? 私の応募はかなりスペースが限られているので、できるだけ多くの部品を省きたいと思っています。 Re: Unused SD functionality on PCA9451A はい、これは自分で解決しました。iMX93ハードウェアガイドのチェックリストには次のように記載されています。 「PCA9451AHNY PMICが電力供給に使われる場合は、使用されていなくてもすべてのレギュレーターの出力L/C部品が適切にコネクテッドされていることを確認してください。レギュレータの出力が開いたままになっていると、PMIC全体が誤動作します。 これはPMICのデータシートに記載しておくと役立つ情報だと思います。
記事全体を表示
Unused SD functionality on PCA9451A Hi, I am not going to use a SD card in my iMX93 application so I am wondering how to terminate the switch and LDO5 block of the PCA9451A PMIC. 1) The SW_EN has an internal pull-down and because I am not using the I2C level translator I can also leave SWIN floating, correct? SWOUT pin can then also be left unconnected? 2) What should I do with SD_VSEL and LDO5? I can't see SD_VSEL having any internal pull resistance? And do LDO5 need to have an output capacitor even when unloaded? My application is quite space constrained so I would like to eliminate as many parts as possible. Re: Unused SD functionality on PCA9451A Ok, I figured out this by myself. The iMX93 Hardware Guide's checklist states: "If the PCA9451AHNY PMIC is used to provide power, ensure that the output L/C components of all regulators are properly connected, even if unused. Leaving any regulator output open causes a malfunction of the whole PMIC." I would think this would be useful information to put in the PMIC's datasheet..
記事全体を表示
S32GマルチコアのeMCEM初期化タイミング こんにちは、 S32G399Aでは、Cortex-M7_0が私たちのブートコアです。eMcem_Initを呼び出し、その後Mcu_SetModeを使用してM7_1/2/3を開始します。各セカンダリコアは起動コード内で独自のDTCMを初期化しますが、eMcem_Initはすでにそれらのコアに対してERMの非修正通知を有効にしているため、起動時に未初期化DTCMを推測的に読み取ると、コールドブート時にNCF 5/8/51がラッチされます。 M7_0 が M7_1/2/3 が起動コードの実行を完了したと報告するまで待機し、その後 eMcem_Init を呼び出すようにしてみました。他のコアはM7_0を待ってからアプリケーションタスクを始めます。この順序にすると、不具合は発生しなくなります。 S32G3では、すべてのコアが起動した後にFCCU/eMCEMを初期化するのが推奨される手順でしょうか? ありがとう、 カーター Re: eMCEM initialization timing for S32G multicore こんにちは、 @cpearson 投稿ありがとうございます。 1.eMCEMドライバの適切な機能を確保するための推奨初期化手順は以下の通りです。 2. S32G3では、リセット可能なドメインとeMCEMによって監視されるリソースが有効な初期化状態になった後に、eMCEMの初期化を実行する必要があります。マルチコアM7の用途では、セカンダリM7コアを解放し、eMcem_Init()が呼び出される前に、その起動コードがローカルのTCM/ECCリソースを初期化できるようにする必要があります。私の意見では、あなたが説明したスタートアップシーケンスについては、通話eMcem_Init M7_0 M7_1/2/3がそれぞれDTCMを初期化するまで待つのが妥当なご注文です。 BR チェイン
記事全体を表示