Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
2S TDM Master: Persistent 1-slot downward shift during continuous DMA streaming 1. Test Configuration I2S configured as TDM Master, DSP mode with short WS 8 slots per frame, 32-bit per slot, frame length = 256 bit Using fsl_i2s_dma driver Dual-buffer ping-pong transfer FreeRTOS task waits on a semaphore from the DMA callback, fills the buffer, then calls I2S_TxTransferSendDMA to re-submit Test data pattern: fixed 0x000Axxxx (upper 16 bits = 0x000A, lower 16 bits contain slot index and sample sequence number) 2. Persistent One-Slot Downward Shift (100% Reproducible) Logic analyzer captures show: Transmitted data is consistently shifted down by exactly one slot Data intended for Slot 0 appears in the physical Slot 1 position Data intended for Slot 1 appears in the physical Slot 2 position By extension, data intended for Slot 7 appears in Slot 0 of the next frame (or is lost) This shift is stable after the stream starts; it does not drift further over time and remains a fixed 1-slot offset 3. Startup Data Misalignment (Intermittent) The logic analyzer occasionally observes: After the WS frame sync pulse, the DATA line remains at low level (all zeros) for a period After a blank interval of 1~3 frames, valid test data suddenly appears Once the blank interval ends, the data still exhibits the 1-slot offset described in item 2 Audio(PDM | I2S | SAI) Re: 2S TDM Master: Persistent 1-slot downward shift during continuous DMA streaming Hello @Xanderwangx , Thank you for your post. Could you please let us know which NXP MCU you are using? Also, are you working with one of our evaluation boards or a custom board? Are you using the SDK example code, or is this based on your own implementation? If it is your own code, would you be able to share it with us for further analysis? BR Celeste Re: 2S TDM Master: Persistent 1-slot downward shift during continuous DMA streaming Hello @Xanderwangx , Thank you for your reply. However, the RT family is not within my support scope. I mainly support MCX and Kinetis family. Also, this is MCX channel, not for RT product. Could you please create a new post under i.MX RT Crossover MCUs - NXP Community? The RT support team will be able to assist you there. BR Celeste Re: 2S TDM Master: Persistent 1-slot downward shift during continuous DMA streaming MCU: MIMXRT685-EVK (i.MX RT685) Board: Custom product board based on RT685. I am using Loop DMA mode with ping-pong buffers. The DMA is configured with I2S_TransferSendLoopDMA() using 2 descriptors. In the DMA callback, I fill the next buffer and the loop continues automatically. void I2S1_TDM_Init(void) { I2S_Type *base = I2S1; /* I2S Configuration */ i2s_config_t cfg; I2S_TxGetDefaultConfig(&cfg); cfg.masterSlave = kI2S_MasterSlaveNormalMaster; cfg.mode = kI2S_ModeDspWsShort; /* TDM = DSP mode */ cfg.divider = 24576000 / (TDM_SAMPLE_RATE * TDM_SLOT_NUM * TDM_SLOT_WIDTH); cfg.dataLength = TDM_SLOT_WIDTH; /* 32-bit */ cfg.frameLength = TDM_FRAME_LENGTH; /* 256-bit */ cfg.oneChannel = false; cfg.position = 0; cfg.wsPol = true; /* DSP A or B */ I2S_TxInit(base, &cfg); /* Enable 8 slots (Primary + 3 Secondary Channels) */ /* Note: Using 4 channels to cover 8 slots with 32-bit data */ I2S_EnableSecondaryChannel(base, kI2S_SecondaryChannel1, false, 32 * 2); I2S_EnableSecondaryChannel(base, kI2S_SecondaryChannel2, false, 32 * 4); I2S_EnableSecondaryChannel(base, kI2S_SecondaryChannel3, false, 32 * 6); /* DMA Loop Transfer Setup */ DMA_Init(DMA0); DMA_EnableChannel(DMA0, I2S_TX_DMA_CH); DMA_SetChannelPriority(DMA0, I2S_TX_DMA_CH, kDMA_ChannelPriority3); DMA_CreateHandle(&dma_handle, DMA0, I2S_TX_DMA_CH); I2S_TxTransferCreateHandleDMA(base, &i2s_handle, &dma_handle, I2S1_Callback, tdm_xfer); I2S_TransferInstallLoopDMADescriptorMemory(&i2s_handle, tdm_desc, 2); if (I2S_TransferSendLoopDMA(base, &i2s_handle, &tdm_xfer[0], 2) != kStatus_Success) { while (1); /* Fails if TDM_FRAMES * 8 > DMA_MAX_TRANSFER_COUNT(1024) */ } } The slot offset is random across power cycles, not fixed.I also tried disable interrupts before and after the DMA transfer to force synchronization, but slot misalignment still occurs. Does I2S_TransferSendLoopDMA() guarantee frame-aligned DMA startup on RT685? If not, how to force alignment to WS boundary? i.MX-RT600 
查看全文
S32K3 在不阻塞的情况下测量 PWM 占空比 (emiOS ICU IPWM) 你好, 仅供参考- 我正在使用 emiOS 的 ICU 通道来测量 IPWM 模式下不同的 PWM 占空比。我目前能够成功地以 " 阻塞 " 方式测量占空比。 我的输入从 100% 占空比(实际上没有 PWM)过渡到我需要测量的给定占空比的 PWM 信号。 我的 .mex配置如下 我的示例代码如下 虽然这种方法可行,但我更倾向于启动一次信号测量,并定期调用Emios_Icu_Ip_GetDutyCycleValues(),而无需调用 Emios_Icu_Ip_StopSignalMeasurement(),以避免在测量完成之前被阻塞。另外,如果在测量完成时有一个中断被触发,对我来说也是可行的。 我最初只尝试调用 emios_ICU_IP_startSignalMeasuremeasum (),然后定期调用 emios_ICU_IP_getdutyCycleValues ()(每 1 秒,而 PWM 频率为 1kHz),但是数据不准确。 据我了解,SAIC 更适合不同的 PWM 信号(我认为这适合我的用例),但我想我也可以使用 IPWM,因为测量读数会延迟。我不介意返回的结果是否会稍微延迟或过时几毫秒,因为我预计占空比不会发生快速变化,而且频率将保持不变。 如果有人能澄清如何使用IPWM实现这一目标,或者我只能通过SAIC实现这一点,那就太好了。 谢谢 Re: S32K3 measuring PWM duty cycle (eMIOS ICU IPWM) without blocking 你好 您遇到的问题是 S32K3 上 eMIOS ICU IPWM 模式的一个已知限制: IPWM 本身是 "基于测量窗口 "的,而不是连续的,因此在不重启/关闭测量的情况下定期读取会导致过期或部分更新的值。 IPWM 不是为不同步的定期轮询而设计的 您必须: 使用中断通知,或 读数前重新开始测量,或 转用 SAIC 实现真正的无阻塞连续测量 顺祝商祺! Peter
查看全文
SE050E2HQ1/Z01Z3Z 的电容和铁氧体磁珠要求 您好,NXP团队, 我们在定制设计板中使用安全元件 P/N:SE050E2HQ1/Z01Z3Z。 在审查参考设计板 OM-SE050ARD 时,我们几乎没有什么顾虑,如下所示 1.是否严格要求在 VIN (12)、VOUT (15)、VCC (18)引脚上使用阻抗为 330 欧姆、频率为 100 MHz 的 P/N: BLM21PG331SN1D铁氧体磁珠? 2.我们是否还需要在 VSS (19) 引脚上添加铁氧体磁珠? 3.是否需要使用 0.033uF 电容或者我们可以使用 100nF 电容? 谢谢! Re: Capacitor and Ferrite Bead requirement for SE050E2HQ1/Z01Z3Z 你好@kadamm 希望你一切顺利。 铁氧体磁珠主要与双接口操作(由非接触式接口提供)有关,以实现正确的电磁兼容性。 关于电容,您是否正在考虑只使用一个(共享)100nF 电容?如果是这样,我相信应该不会有什么大的不便。 Eduardo。 Re: Capacitor and Ferrite Bead requirement for SE050E2HQ1/Z01Z3Z 你好,爱德华多、 我们的设计没有采用 ISO 14443 或 ISO 7816 接口。因此,我们计划直接连接 VIN、VCC、VOUT 和 GND 引脚,而不使用铁氧体磁珠。此外,我们在引脚上放置一个 0.1 µF 电容以进行解耦。请问这种方法是否合适?   谢谢!
查看全文
S32K312MINI-EVB Segger JTAG-SWD接続エラー こんにちは、S32K312MINi EVBを持っています。SWD/JTAG経由でこれをプログラムしようとしています(opesdaが搭載されていることは知っていますが、私のカスタムPCB設計には搭載されません)。 接続しようとすると、次のエラーが表示されます。 不明なSDA AP IDが検出されました: 0xFFFFFFFF 不明なSDA AP IDが検出されました: 0xFFFFFFFF InitTarget() 終了 - 1.09秒かかりました ****** エラー: J-Link スクリプトファイル関数 InitTarget() がエラーコード -1 を返しました   R0と消去を試しましたが、うまくいきませんでした Re: S32K312MINI-EVB Segger Jtag-SWD connection error こんにちは、 ご返信ありがとうございます。 Seggerソフトウェアの最新バージョンを使用していますが、vrefが3.3Vになっているのを確認しています。 ピンもテストしましたが、配線は正しいです。リセットボタンは、複数のテスト段階において押し続けられました。 JTAGも、チップとの接続に失敗したというエラーコードを出力しています。 速度を落とそうともしましたが、効果がないようです。 PC上でS32用のjlinkscriptを探してみましたが、見つかりませんでした。どこにあるのでしょうか? Re: S32K312MINI-EVB Segger Jtag-SWD connection error こんにちは、 エラー: J-Link スクリプトファイル関数 InitTarget() がエラーコード -1 を返しました。 J-LinkはターゲットMCUの初期化手順を正常に実行できず、初期化スクリプト(InitTarget())が失敗しました。 初期化に失敗したため、デバッガーはデバイスと通信できません。 このメッセージは、J-Linkが接続のごく初期段階でDAP(デバッグアクセスポート)にアクセスできない場合に表示されます。 「不明なSDA AP IDが検出されました: 0xFFFFFFFF」 InitTarget() 関数は、SEGGER が使用する J-Link スクリプト ファイル (.JLinkScript) の一部です。 時計を設定する デバッグインターフェースを起動する MEM-AP / AHB-AP の設定 デバイス固有の設定を実行する デバッグに必要なアクセスが失敗した場合、SEGGER はスクリプトを中止し、エラー -1 を返します。 解決策の概要 J-Linkソフトウェアをアップデートする SEGGER社はS32K31xのアルゴリズムにバグがあることを確認した。 J-LinkへのVTref(3.3V)を確認してください。 VTrefが欠落しているため、AP ID = 0xFFFFFFFF → InitTargetが失敗します。 SWD配線を確認する SWD_DIO、SWD_CLK、RESET、およびGNDが正しく接続されていることを確認してください。 リセットして接続し、SWD速度を下げてください。 ファームウェアがピンを早期に再構成してくれると助かります。 SWDモードの代わりにJTAGモードを試してください 同様のNXPデバッグエラーで提案された解決策です。 よろしくお願いします、 ピーター
查看全文
带有 C++ S32DS 项目的 SDK <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 您好, 如何使用 S32 SDK 创建 C++ S32DS 项目? (我正在尝试使用 S32K144 EVB)。 谢谢! 尼科拉 S32K1系列的S32SDK Re: SDK with C++ S32DS project 对不起,对于新项目,我仍在使用曾经创建过的项目副本,所以我不记得具体步骤了,但我检查了原始 C (SDK) 链接器文件和 C++(非 SDK)链接器文件的差异,并将 C++ 链接器文件中的部分添加到 C 项目(现已转换为 C++ 项目)的旧文件中。我已经有了一些经验,所以这对我来说并不难。 或许也可以使用 C++ L.F.,只需从 SDK 项目中添加正确的内存部分即可。 也许彼得提供的链接会对你有所帮助。我认为您只需调整 S32K358 链接器文件中的内存大小/位置即可。 Re: SDK with C++ S32DS project 请参阅本帖: https://community.nxp.com/t5/S32K/S32K358-C-project-based-on-S32DS3-5/m-p/2058809#M46635 Re: SDK with C++ S32DS project 看来到了 2026 年,这个问题依然存在,我们依然需要这种解决方法。 下一步 - 创建不含 SDK 的 C++ 项目,并将其链接器文件复制到含 SDK 的项目中。 您能具体介绍一下您是如何一步步完成的吗?例如,您是否删除了带有 SDK 的项目(基于 C 的恩智浦 S32DS 项目)中的旧链接器文件,然后用 C++ 项目中的链接器文件替换了它们? Re: SDK with C++ S32DS project 请参阅本帖: 关于基于 S32DS3.5 的 S32K358 C++ 项目 - NXP Community Re: SDK with C++ S32DS project 大家好 你们能详细介绍一下诺瓦利斯给出的提示吗?我尝试用 SDK 创建 C 项目并将其转换为 C++,但没有成功。 谢谢! Re: SDK with C++ S32DS project <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好, ,我可能找到了方法,这样就不必在构造函数中使用 new() 了 只需在 main.c 中添加 __libc_init_array(); 调用即可。 void __libc_init_array(void); void main(void) { __libc_init_array(); main_app(); // 如上所述 } 现在 cObject 对象(构造参数); 似乎运行正常。 Re: SDK with C++ S32DS project <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好,特拉维斯、 请参阅 Martin 的说明来构建与您的 C 代码兼容的 C++ 应用程序项目。它对我很有效,但有两个小缺点: (1) 您必须将生成的代码保存在另一个 C 应用程序项目中,然后复制粘贴到您的 C++ 项目中。 (2) 为 C++ 项目设置包含路径在开始时可能会很麻烦。也许有更简单的方法。 干杯, 梓潼 Re: SDK with C++ S32DS project <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 嗨,马丁、 感谢您的答复!我用 S32 SDK 在 C 语言中创建一个 C++ 项目的路径也差不多。 我关注这篇文章来封装 C++ 对象以便它们可以在 C 代码中使用:教程:如何将 C++ 库/类集成到 C 程序中-Teddy Engineering GmbH 我还读到,如果使用 freeRTOS,建议使用 ``pvPortMalloc()`` 和 ``pvPortFree()`` 来覆盖 ``new`` 和 ``delete```:无法正确创建新对象 - FreeRTOS 干杯, 梓潼 Re: SDK with C++ S32DS project <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 我对此也非常好奇。在某些应用程序中,使用面向对象的基本原理更容易编写和维护更简洁、无错误的代码,而使用 C++ 则要容易得多。如果能更直接地提供这种支持,而不需要所有的步骤,生活就会轻松很多。 我更愿意使用恩智浦工具,但我觉得这限制了我。 Re: SDK with C++ S32DS project <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 我的做法是,使用 SDK 创建普通 C 项目,然后将文件/新建/转换为 C/C++ 项目 然后你必须进入项目属性、C/C++ 版本/设置/标准 S32DS C 编译器/包含,然后复制必要的行并将其粘贴到 C++ 编译器/包含中 下一步 - 创建不含 SDK 的 C++ 项目,并将其链接器文件复制到含 SDK 的项目中。 然后,我创建了 main_app.cpp,将函数 main_app() 定义为 extern"c" ,并从 main.c 中的 main() 函数调用 main_app(),然后我就可以从 main_app()调用 C++ 类了。 现在我可以编译它,应用程序似乎也可以工作,我还可以使用处理器专家等...... 我发现的唯一问题是,像这样使用构造函数: cObject object(constructor params); 并不能像预期的那样 我必须使用 cObject *object = new cObject(constructor params); Re: SDK with C++ S32DS project <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 嗨,吉日、 请允许我提出一个后续问题:如果我真的需要在 S32K 项目中使用一些 C++ 代码,您有什么建议?到目前为止,我想到了以下几种可行的方法: 1.使用 S32K DS 以外的其他编译器。 2。将 C++ 代码构建到与 C 兼容的静态库(包含封装器等)中,然后将其添加到 S32K DS 中的 C 项目中。 非常感谢、 梓潼 Re: SDK with C++ S32DS project <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 嗨,尼古拉 遗憾的是,S32DS 不支持在 S32K SDK 中使用 C++。 Jiri 
查看全文
xtest 在 IMX8MPLUS 上失败 在 imx8mplus-BB 开发板上,安装 optee,在上面运行 xtest,下面会出现以下错误。 后来,我将 r = ADBG_EXPECT_TEEC_RESULT(c,TEEC_ERROR_SECURITY,res)修改为 r = ADBG_EXPECT_TEEC_RESULT(c,TEEC_ERROR_GENERIC,res),然后又发现了下面的问题。 非常困惑,不知道如何解决 ! Re: xtest fails on IMX8MPLUS 这是个老话题了,你可能已经不关心答案了,但也许其他人也会遇到同样的问题,并看到这个帖子。 在我的案例中,切换到另一个软件版本似乎就能解决问题。当我使用 optee-os 和 x-test6.6.52-2.2.0 ("4.4.0") 时,测试失败的方式与您提出的相同。在 optee-os 和 x-test6.12.49-2.2.0 ("4.8.0") 上,这种情况不再重现。 如果你是从头开始构建,记得使用恩智浦的 github 仓库进行 optee 和 x-test: -https://github.com/nxp-imx/imx-optee-test -https://github.com/nxp-imx/imx-optee-os Re: xtest fails on IMX8MPLUS 你使用的是哪个版本的 BSP? Re: xtest fails on IMX8MPLUS 事实上,就是这个提交修复了我的问题(6.12 版有,6.6 版没有): commit c6c7967f74d4c6267750b3ff42067c004f8cad33 Author: Jens Wiklander Date: Fri Dec 13 10:01:33 2024 +0100 core: pta: secstore: decrease TA buffer install_ta() uses a buffer allocated from the heap while hashing a TA while installing it. The buffer size is 8kB which is a bit large to reliably allocate from the heap, so decrease it to 1kB. Signed-off-by: Jens Wiklander Acked-by: Jerome Forissier Reviewed-by: Etienne Carriere diff --git a/core/pta/secstor_ta_mgmt.c b/core/pta/secstor_ta_mgmt.c index 162de43be..b8dc9283c 100644 --- a/core/pta/secstor_ta_mgmt.c +++ b/core/pta/secstor_ta_mgmt.c @@ -44,7 +44,7 @@ static TEE_Result install_ta(struct shdr *shdr, const uint8_t *nw, struct tee_tadb_ta_write *ta; void *hash_ctx = NULL; size_t offs; - const size_t buf_size = 2 * 4096; + const size_t buf_size = 1024; void *buf; struct tee_tadb_property property; struct shdr_bootstrap_ta bs_ta;
查看全文
i.MX RT1061 串行非 Quadspi 或非 闪存启动 您好, 我有一个使用 i.MX RT1061 和W25Q128JVSIQ外置闪存的项目。我希望也能支持W25Q128JVSIM(视可用性而定)。不过,W25Q128JVSIM并没有将 QE 位(Quad Enable)锁定为启用状态。在尝试从它启动时,我看到我假设启动ROM在没有先启用Qe-bit的情况下尝试执行快速读取Quad I/O(参见发送的前两个命令的屏幕截图)。 它似乎首先读取了 FlexSPI 配置块(这在意料之中),但随后四重读取失败,什么也没发生(引导加载程序未启动)。 我怀疑我必须确保在生产过程中启用 Qe-bit 才能正常工作,但我很好奇 i.MX RT1061 是否支持从非 Quadspi NOR 闪存启动?似乎只支持 Quad 和 Octal 闪存(请参见 BOOT_CFG1 熔丝的屏幕截图)? 谢谢, Daniel i.MX RT106x Re: i.MX RT1061 Serial non-QuadSPI NOR flash boot 你好,@Habib_MS、 感谢您的答复! 嗯......我的理解是,只有在调用flexspi_nor_get_config 时才会应用quad_mode_setting,我是不是理解错了? 是否有办法通过 FlexSPI 配置块将 BootROM 配置为以 QuadSPI 方式访问闪存? 谢谢, Daniel Re: i.MX RT1061 Serial non-QuadSPI NOR flash boot 你好,@MulattoKid、 支持从非(串行)-QuadsPI NOR 闪存启动。有关支持哪些闪存设备的更多详细信息,请参阅 RM 中第 9.6 章 “启动设备”。我还知道您在图像中突出显示了 BOOT_CFG1[3:2] 位。这些字段由自动探测机制使用,如其定义所述。因此,这些位仅提供有关闪存设备的其他信息,而不是控制其配置。 关于 QSPI 或非 闪存的 QE 位配置:通常,选择正确的启动选项配置就足够了。 BR Habib Re: i.MX RT1061 Serial non-QuadSPI NOR flash boot 你好 @dafela, 你可以使用我之前的消息中提到的配置,使用 FlexSPI 或非 API 来启用 QE 位。有关启用 QE 位的不同方法的更多详情,请参阅本帖第 19 项。 有关 FlexSPI ROM API 的更多信息,请参见 RM 第 9.13.2 节。 另一方面,如果您需要使用 J-Link 的指导,本篇文章提供了一个总体概述和几个有用的注意事项,或许对您有所帮助。 BR Habib Re: i.MX RT1061 Serial non-QuadSPI NOR flash boot 我找到了为什么 bootROM 在读取 FCB 后立即发送四重READ命令:这是因为我们的引导加载程序在 FCB 中指定了自定义 LUT。更改读取 LUT 条目也会改变 SPI 流量。 如前所述,我之所以研究这个问题,是因为我希望能够同时支持 W25Q128JVSIQ 和 W25Q128JVSIM,而 W25Q128JVSIM 出厂默认设置中没有设置 QE 位。我想在我们自己的生产过程中设置 QE 位。我一直在研究的方法是使用 JLink 脚本直接控制 FLexSPI 外设。不过,我遇到了一些麻烦。 我有一个用于读出 W25Q128JVSIM 的状态寄存器-2 的命令序列,但它只有在 MCU 首次启动到我们的应用程序时才起作用(除非 QE 位已被设置,否则 MCU 无法启动)。如果闪存是空的,而 bootROM 没有任何东西可以启动,那么 jLink 脚本就不起作用,所以我想知道配置 FlexSPI 外围设备是否需要额外的设置? 以下是供参考的脚本: ExitOnError 1 Device MIMXRT1061xxx5B SelectInterface SWD Speed 4000 Connect halt // Enable clock w4 0x400FC078, 0xFFFFFFFF // Reset module w4 0x402A8000, 0x00000002 sleep 20 w4 0x402A8000, 0x00000000 sleep 20 // Clear errors w4 0x402A8014, 0xFFFFFFFF w4 0x402A80B4, 0xFFFFFFFF sleep 20 // 2) Update LUT to include Read Status Register 2 and Write Status Register 2 commands w4 0x402A8018, 0x5AF05AF0 // Write magic value (i.MX RT1060 reference manual rev3, p.1612) sleep 20 w4 0x402A801C, 0x2 // Unlock LUT (i.MX RT1060 reference manual rev3, p.1612) sleep 20 // LUT entry structure (i.MX RT1060 reference manual rev3, p.1709): // [31:26] = opcode1 // [25:24] = num_pads1 // [23:16] = operand1 // [15:10] = opcode0 // [ 9: 8] = num_pads0 // [ 7: 0] = operand0 // #include // // #define OPERAND_0(x) (x << 0) // #define NUMPADS_0(x) (x << 8) // #define OPCODE_0(x) (x << 10) // #define OPERAND_1(x) (x << 16) // #define NUMPADS_1(x) (x << 24) // #define OPCODE_1(x) (x << 26) // // #define kFLEXSPI_Command_STOP 0x0 // #define kFLEXSPI_Command_SDR 0x1 // #define kFLEXSPI_Command_RADDR_SDR 0x2 // #define kFLEXSPI_Command_WRITE_SDR 0x8 // #define kFLEXSPI_Command_READ_SDR 0x9 // #define kFLEXSPI_1PAD 0x0 // // #define FLEXSPI_LUT_SEQ(cmd0, pad0, op0, cmd1, pad1, op1) (OPERAND_0(op0) | NUMPADS_0(pad0) | OPCODE_0(cmd0) | OPERAND_1(op1) | NUMPADS_1(pad1) | OPCODE_1(cmd1)) // // int main() // { // printf("WriteEnable: 0x%08X\n", FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x06, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0)); // printf("ReadStatusRegister2: 0x%08X\n", FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x35, kFLEXSPI_Command_READ_SDR, kFLEXSPI_1PAD, 0x04)); // printf("WriteStatusRegister2: 0x%08X\n", FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x31, kFLEXSPI_Command_WRITE_SDR, kFLEXSPI_1PAD, 0x04)); // // return 0; // } // Each command sequence in the LUT is 4 entires with each entry being 4 bytes (one word) w4 0x402A82E0, 0x24040435 // LUT[14 * 4] = Read Status Register-2 command sequence sleep 20 w4 0x402A8018, 0x5AF05AF0 // Write magic value (i.MX RT1060 reference manual rev3, p.1612) sleep 20 w4 0x402A801C, 0x1 // Lock LUT (i.MX RT1060 reference manual rev3, p.1612) sleep 20 // Read Status Register-2 w4 0x402A8080, 0x80000000 // Clear sequence pointer for port A w4 0x402A8014, 0x1F // Clear pending status w4 0x402A80A0, 0x0 // Set base address w4 0x402A80B8, 0x1 // Reset RX FIFO w4 0x402A80A4, 0xE0001 // SEQID=14, SEQNUM=1, 1 byte w4 0x402A80B0, 0x00000001 // Trigger IP command sleep 50 Re: i.MX RT1061 Serial non-QuadSPI NOR flash boot 谢谢,我会看看的
查看全文
TDA8035 运行模式下的 IDD (INTF) 电流消耗 大家好,团队, 当 TDA8035 处于运行模式时,VDD (INTF) = 3.3 V 时 VDD (INTF) 的近似功耗是多少? 顺祝商祺! 西尔万 Re: TDA8035 IDD(INTF) current consumption in active mode 你好@sylvainbouriot TDA8035 的大电流通路(板卡电源、VCC 限流、DC/DC)均位于 VDDP 中,与 VDD (INTF) 无关。 VDD (INTF) 主要负责数字控制逻辑、I/O 参考和时钟分频控制。其功耗非常低。 运行模式下的 IDD (INTF) 通常在 1 到 3 mA(典型值)的范围内。
查看全文
从中断处理程序进行 I/O 操作 本问题的相关参数如下: 1。IDE:适用于 ARM v 2.2 的 S32 DS(是的,我知道这个已经过时了,但是有问题的产品也是;我们需要支持现有代码) 2.芯片:S32K148 3.操作系统视窗 11 4.系统操作系统:裸机 在 ISR 中尝试执行任何类型的 SPI 主传输都会挂起,通常被中断的 API 是阻塞 I/O(I2C 或 SPI)调用。 在阻塞调用(调用 LPSPI_DRV_MasterTransferBlocking())中,通话挂起是因为 SysTick 中断似乎没有发生,因此 MCU 无法感知时间流逝。 在非阻塞调用(LPSPI_DRV_MasterTransfer(),然后是 LPSPI_DRV_MasterGetTransferStatus(SPI1,&byte_remaining))中,byte_remaining 保持原值。我尝试在调用 LPSPI_DRV_MasterAbortTransfer() 进行异步传输之前,添加对 LPSPI_DRV_MasterAbortTransfer(SPI1) 的调用,但结果还是一样。 关于一个半相关的问题,是什么触发了 SysTick_Handler()?我的直觉告诉我,它应该一直运行,每 1 毫秒增加一次刻度计数,但在其正文中设置一个断点似乎只能在某些时间触发。奇怪的是,即使阻塞性 SPI 传输成功,有时也不会触发,如果系统定时器之前未触发,则应触发系统定时器。 另一个半相关的问题是,在 SPI 的 S32 Cookbook 示例代码中,没有使用 SDK 提供的应用程序接口;这些示例直接完成了所有寄存器位操作。是否有更接近生产价值代码的示例,因为它们至少调用了恩智浦的应用程序接口,而不是重新发明轮子? Re: Doing I/O from an interrupt handler 你好@PetrS 非常感谢。中断优先级确实解决了这个问题。不过,我有一个问题: 我同意在 ISR 中阻塞不是一个好主意,但在单线程应用程序中又有什么办法呢?我可以在应用程序上下文中旋转,直到 SPI 传输完成。这将允许其他 I/O 中断发生(我的理解是,负优先级中断无论如何都会触发;当进入正优先级 ISR 时,它们不会被禁用)。但是在我的情况下,进行重叠的 I/O 既不可能,也不可取。 1.这是不可能的,因为 S32K148 是所有总线的总线主控器。因此,如果它在 ISR 中进行 SPI 传输,则可能无法驱动另一条 I/O 总线,因此无法触发中断。 2.这并不可取,因为 ISR 之间可能存在共享全局,所以我不想在当前 I/O 完成之前启动新的 I/O。 对于单线程裸机应用程序,您建议如何处理这种情况? Re: Doing I/O from an interrupt handler 您好, 好吧,那么只需中断优先级就能导致这种行为。阻塞 API 会挂起的原因很简单,如果两个中断具有相同的优先级,那么当 GPIO ISR 处于活动状态时,LPSPI ISR 就无法运行。阻塞调用等待 ISR 完成传输并发布信号,但在 GPIO ISR 退出之前,ISR 永远不会获得 CPU 时间。SDK 的驱动程序确实在 LPSPI 中断中完成传输,然后才发布信号量以释放屏蔽调用,因此同等优先级 ISR 将以这种方式使传输陷入僵局。 非阻塞 API 的行为相同:如果从具有相同优先级的 GPIO ISR 调用,LPSPI ISR 无法抢占它的优先级,因此 byte_remaining 永远不会改变,因为驱动程序状态机永远不会被 LPSPI IRQ 服务。只有将 LPSPI 提高到更高优先级(数值较低)后,LPSPI 中断才会立即触发,完成传输,并允许阻塞和非阻塞 API 按预期工作。尝试 /* 在 Cortex-M 上,数字越小优先级越高 */ INT_SYS_SetPriority(SysTick_IRQn, 0); // 如果依赖于 tick 超时 INT_SYS_SetPriority(LPSPI1_IRQn, 1); // 必须高于 GPIO INT_SYS_SetPriority(PORTC_IRQn, 2); // 您按钮的 PORTx IRQ   注意:无论优先级如何修正,建议还是不要在 ISR 中使用阻塞的 SPI API,同样也不要在 ISR 中等待非阻塞传输完成。S32K LPSPI 驱动程序在其中断处理程序中进行传输,长时间的 ISR 会阻止其他中断运行。   BR, Petr Re: Doing I/O from an interrupt handler 您好, S32K1 SDK 无法阻止 ISR 的 I/O。LPSPI_DRV_MasterTransferBlocking() 等待 OSIF semaphore;在 ISR 上下文中,没有地方可以阻塞,也没有 tick/time base 可以前进,因此会挂起。使用非阻塞 API(LPSPI_DRV_MasterTransfer),在 LPSPI ISR/回调中完成传输,然后向任务/主循环发出信号。此外,SysTick 会在定时器结束时触发,但其处理程序只有在未被屏蔽且具有足够的 NVIC 优先级时才会运行--因此,如果设置了 PRIMASK 或处于更高优先级的 ISR 中,它将被推迟。 烹饪手册项目特意采用轻量级设计,直接展示外围设备的使用,而不使用更高级别的驱动程序抽象;这些项目旨在作为学习的起点,而非生产使用。如果您需要恩智浦驱动程序风格的示例,请参考 SDK 或 RTD 驱动程序/示例项目,而不是烹饪手册。   BR, Petr Re: Doing I/O from an interrupt handler 您好, 即使它现在 "工作 "了,你仍然不应该在 ISR 内进行 SPI 传输。 如果你以后改变了优先级,或添加了另一个外设,你可以很容易地重新创建刚刚诊断出的死锁状态。 最安全的设计是始终缩短 ISR,将真正的工作推迟到主循环。 仅将 ISR 用作触发信号;在 main () 中同步执行 SPI 传输,或者在 ISR 中启动但由 LPSPI ISR 完成的非阻塞传输,主等待完成标志。 BR, Petr
查看全文
iMX93 FRDM 上的 DMS 嗨,团队、 是否有人在 i.MX93 FRDM 平台上实施或评估过驾驶员监控系统 (DMS) 演示? 我正在寻找与以下功能相关的详细信息或引用: 人脸侦测 人脸地标检测 虹膜/眼睛地标检测 驾驶员行为检测,如吸烟和使用手机 如果有任何演示、参考设计、SDK 示例或合作伙伴解决方案,请分享详细信息或相关文档。 提前感谢您的支持。 致以最诚挚的问候, Ajnas FRDM 培训 Re: DMS on iMX93 FRDM 你好@ajnas-c、 感谢您联系恩智浦支持中心! 您可以通过下面的链接查看该演示的详细信息和源代码: https://github.com/nxp-imx-support/nxp-demo-experience-demos-list/tree/lf-6.12.3_1.0.0/scripts/machine_learning/dms 此致 查维拉
查看全文
IMX8MP DDR4 自定义板::你处于紧急模式。 您好, 我使用的是 i.MX8M Plus DDR4 自定义主板。我正在加载Image.gz、DTB 和rootfs (cpio.gz)从 SD 卡到 DDR,然后从 DDR 启动内核和根文件系统。 加载根文件系统后,我看到以下信息: 您已进入紧急模式。登录后,键入"journalctl -xb" 了解详情。 按 Enter 进行维护 (或按 Control-D 继续): [ 12.946854] random: crng init done. 我附上了完整的启动日志供你参考。 以下是我用来将图像从 SD 卡加载到 DDR 的 U-启动 命令: ================== 从 SD 卡加载到 DDR ================== fatload mmc${mmcdev}:1${loadaddr} Image.gz fatload mmc${mmcdev}:1${fdt_addr} imx8mp-ddr4-evk.dtb fatload mmc${mmcdev}:1${initrd_addr} cpio.gz setenv bootargs console=${console},${baudrate} earlycon=${earlycon},${baudrate} rdinit=/sbin/init booti${loadaddr} ${initrd_addr} ${fdt_addr} ============================================================== 我的问题是 如何才能获得正常的 root 登录提示,如: root@imx8mp- ddr4 -evk:~? 为避免进入紧急模式,是否建议修改引导参数? 如能提供任何指导或建议,将不胜感激。 感谢并致意 巴德瓦杰 Re: IMX8MP DDR4 Custom board :: You are in emergency mode. 你好 能否请您分享整个日志? 顺祝商祺! Re: IMX8MP DDR4 Custom board :: You are in emergency mode. 你好@JorgeCas、 请在下面找到随附的完整日志以供您参考。 谢谢!
查看全文
i.MX RT1060 API の LPSPI_MasterTransferEDMA は 24 ビットのフレーム サイズをサポートしていませんか? LPSPI を使用して DMA 経由で 24 ビット フレームを書き込もうとしています。アプリケーションは重要ではありませんが、私の例では、メモリから外部 DAC にデータを送信することです。私はこれを DMA で動作させたいと思っています。なぜなら、最終的には TCD のリンク リストを PIT と一緒に使用して、CPU オーバーヘッドなしで DAC を継続的に更新するためです。これは外部 ADC および DAC を使用する一般的なアプリケーションです。16 ビット DAC/ADC には 24 ビットのフレーム要件があることも一般的です (上位バイトはコマンド用、下位バイトはデータ用)。uint8_t データを使用して転送を 3 バイトに分割するのではなく、uint32_t データを使用して 24 ビットのフレーム サイズで送信し、先頭バイトを無視します。 さて、LPSPI と DMA の構成に移ります。 1.imxRT1060 SDK の API LPSPI_MasterInit 関数の lpspi_master_config_t 構造を使用すると、 bitsPerFrame を 24 に設定できます。DMA を使用せずに標準転送を行う場合、これは問題ではありません。 2. ただし、API の LPSPI_MasterTransferEDMA 関数で DMA を使用する場合、24 ビット フレーム サイズのケースは eDMA ハードウェアによって処理またはサポートされませんか?LPSPI_MasterTransferEDMALite では、DMA 転送幅は edma_transfer_config_t 構造体で設定されます。具体的には、srcTransferSize フィールドと destTransferSize フィールドは、SPI フレーム サイズ (bytesPerFrame) から導出される bytesEachRead 値と bytesLastWrite 値に基づいて構成されます。 /* LPSPI_MasterTransferPrepareEDMALite */ uint32_t bytesPerFrame = ((base->TCR & LPSPI_TCR_FRAMESZ_MASK) >> LPSPI_TCR_FRAMESZ_SHIFT) / 8U + 1U; if (bytesPerFrame <= 4U) { handle->bytesEachWrite = (uint8_t)bytesPerFrame; // for 24bit frames = 3 handle->bytesEachRead = (uint8_t)bytesPerFrame; // .... handle->bytesLastRead = (uint8_t)bytesPerFrame; // .... } /* now back in LPSPI_MasterTransferEDMALite */ switch (handle->bytesEachRead) //bytes each transfer { case (1U): transferConfigRx.srcTransferSize = kEDMA_TransferSize1Bytes; transferConfigRx.minorLoopBytes = 1; if (handle->isByteSwap) { addrOffset = 3; } break; case (2U): transferConfigRx.srcTransferSize = kEDMA_TransferSize2Bytes; transferConfigRx.minorLoopBytes = 2; if (handle->isByteSwap) { addrOffset = 2; } break; case (4U): transferConfigRx.srcTransferSize = kEDMA_TransferSize4Bytes; transferConfigRx.minorLoopBytes = 4; break; default: transferConfigRx.srcTransferSize = kEDMA_TransferSize1Bytes; transferConfigRx.minorLoopBytes = 1; assert(false); break; } デフォルトのケースが発生し、3 バイトのケースは処理されないためエラーが発生します。EDMAハードウェアは3バイト転送をサポートしていますか?基本的に、uint32_tのデータとフレームを3バイトとして扱い、最上位バイトを無視してDMA転送を行いたいのですが、可能ですか? Re: i.MX RT1060 API's LPSPI_MasterTransferEDMA does not support 24bit framesize? こんにちは@azoneさん、 弊社の製品にご興味をお持ちいただき、またコミュニティをご利用いただき誠にありがとうございます。 次のリンクを確認してください。eDMA は 1、2、4、8、16、32、64 バイトの転送サイズをサポートしており、24 ビット (3 バイト) の転送サイズはサポートしていないことが説明されています。 MCUXpresso SDK APIリファレンスマニュアル: EDMA: 拡張ダイレクトメモリアクセス (eDMA) コントローラドライバ よろしくお願いいたします。 メイリュー Re: i.MX RT1060 API's LPSPI_MasterTransferEDMA does not support 24bit framesize? わかりました。確認してくれてありがとう。これで、動作させるために時間を無駄にすることがなくなりました。したがって、唯一の方法は、すべてをuint8_tデータとしてkLPSPI_MasterPcsContinuousで3バイトとして送信することです。これは他のすべてのペリフェラルでも同じ方法で実行しているので問題ありませんが、16ビットDAC実装の場合は不要なオーバーヘッドが発生します。ありがとうございます。
查看全文
S32 Design Studio for Power Architecture v2.1 - 更新 7 现已发布! <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />       产品发布公告 汽车微控制器和处理器 面向 Power Architecture 的 S32 设计工作室 v2.1 更新 7          新增内容 集成 S32 SDK,适用于 Power Architecture RTM 3.0.2(参见S32 SDK发行说明) 这是一个累积更新 - 它包含之前更新的所有内容(更新 1 、更新 2 ) 安装说明 此更新可供在线安装 (通过 S32DS 扩展和更新)或 离线安装(直接下载链接)  安装: 进入菜单"帮助" -> "S32DS 扩展和更新" 对话框 从可用项目中选择并点击 "Install/Update" 按钮 离线安装: 前往 S32 Design Studio for Power 产品页面 -> 下载部分或使用直接链接下载更新存档 zip 文件 启动 S32 Design Studio,转到“帮助”->“S32DS 扩展和更新”,然后单击“转到首选项”链接 并添加一个新的站点“添加...”存储库并浏览以选择您在上一步中下载的更新存档 zip 文件 选择“S32 Design Studio for Power Architecture Device Package”和“使用 S32 SDK 3.0.2 更新”对于 Power Architecture 包,然后单击“安装/更新”按钮。 此时将启动更新安装过程。 概述 SDK
查看全文
PCF2131——第二脉冲信号触发错误 Hello, 我是 Ramón,开始使用 PCF2131 和 STM MCU 进行工作。在设备中设置新的时间+日期后,我遇到了脉冲秒信号的问题。 我遵循的方案如下: 1.我将设备设置为无中断,只有秒脉冲信号。控制寄存器设置如下: ** 控制 1:0b0000 0001,控制 2、3、4、5:0b0。-> 仅使用第二脉冲信号。 ** INTA/B Mask1/2: 0b0 -> 所有中断禁用 ** WD 控制:0x20 -> 脉冲秒信号,无 WD。 2. 然后我从 RTC 读取并检查完整性。然后设置我的MCU的时间。 3. 设备定期通过 SNTP 进行同步。问题就来了。 当收到新日期时,我们停止 RTC,清除预分频器,设置新时间(添加操作延迟)并重新启动 RTC。当这个时间接近于秒的变化(大概是920-950ms),并且设置增加延时的时间(这样就使得新的时间设置大约在50-80ms),秒脉冲信号被触发,使得MCU比实际时间提前一秒递增。我们不知道为什么会发生这种情况。尝试禁用、清除和重新启用中断,但情况仍然相同。知道为什么会发生这种情况吗? 我将我们测量的信号与我们发送的 I2C 数据附加在一起。第二个是在此特定帧中设置的日期时间的缩放,您可以看到第 100 秒设置为 4。
查看全文
D1が赤く点灯しているため、S32K146EVB-Q144ボードをフラッシュできません 当初は正常に動作していた S32K146EVB-Q144 評価ボードを持っています。 Lin スタックを実装したデバッグ セッション中に、動作が停止しました。 コントローラをリセットすると、D1 の赤いライトが点灯し続け、他の 2 つの緑のライトも点灯したままになります。 USB ソースからの電源を選択するために、位置 2-3 の J10 と J107 を使用し、OpenSDA アプリのフラッシュ モードを選択するために、位置 2-3 の J104 を使用しました。 現在、私のコントローラは S32DS によってまったく検出されません。 症状はまったく同じであるように思われたので、以下の投稿に記載されている手順を試してみました。 Re: S32K144 D2 赤色 LED が常時点灯 - NXP コミュニティ ここで、P&E Kinetics Recovery Tool を使用して OpenSDA でプロセッサを停止できましたが、それでも新しいアプリケーションをフラッシュすることはできませんでした。 停止に成功しても再度点滅させることができず、赤色のライトが点灯したままになります。 コントローラはジャンパー J104 を調整することでブートローダーモードに入ることもでき、実際にブートローダーアプリをフラッシュすることもできました。しかし、どういうわけか私は再びフラッシュを書き込むことができず、サンプルの.srecをフラッシュしようとするとファイルでは、D2 は定期的に点滅し続けます (通常、正常に点滅すると 1 回点滅してからアプリの実行が開始されます)。 つまり、簡単に言うと: - コントローラがメインに到達できない、または継続的にリセットされる - コントローラはフラッシュに再度書き込むことができません (セキュリティ上の問題である可能性があります)。 私はデバッグ プローブを持っていないため、SEGGER-JLINK に関連するものを除き、上記の Thread で言及されているテクニックを試しました。私は PE Multilink Universal を持っていますが、フラッシュを回復/消去することはできません。 ボードの詳細は次のとおりです。 ボード名: S32K146EVB-Q144 MicroBootカーネルバージョン: 1.08 ブートローダーのバージョンは: 1.13 インストールされたアプリケーション: PEMicro EVB-S32K144 マスストレージ/デバッグアプリ アプリケーションのバージョン: 1.25 DUID は: 39A33939-91818199-37539805-F97AE678 EUID は: 4141A238-1BDB8733-1854BA22-D38368D6 TUID: 74823938-47328196-8576CC9B-0242983E TOAは次のとおりです: 86B6E505-56F042E0-79B2A114-62BA758F TOA2 は: 86B6E505-EB1A8A7C-AF6E54B6-43532420 SUID は: 86B6E505-5BA18877-37239804-8003EC65 MCU は永久にロックされますか? そうでない場合、どうすればボードを回復できますか? ハードウェアに障害があると思われますか?(参考までに、D2とD3が緑色に点灯しているのは、5Vと3.3Vの電源レールが正常に動作していることを意味していると思います) 物理的に大量消去する方法はありますか?(ボードがまったく検出されないため、S32DS 緊急キネティクス オプションは使用できません)。 OpenSDA チップの任意のピンを接地すると、フラッシュ メモリが消去されますか? Re: Unable to flash S32K146EVB-Q144 board as D1 glowing red クリスマス休暇期間中は、サポートの応答時間は通常より長くなる場合がありますのでご了承ください。場合によっては、ご要望への対応が新年以降になることもあります。ご理解のほどよろしくお願いいたします。 Re: Unable to flash S32K146EVB-Q144 board as D1 glowing red ハイ P&E リカバリ ユーティリティがMCU を停止したら、ツールを閉じます。 次にステップ3に進みます または ステップ4 S32K146 を再プログラムします。 これが原因かどうかは分かりませんが、 アプリケーションのバージョン: 1.25 。リセットボタンSW5を押したまま、USBケーブルを挿入して MSD-DEBUG-S32K146EVB-Q144_Pemicro_v121.SDA BOOTLOADER ドライブに挿入します。これにより、 アプリケーションバージョンを1.21に。 また添付しました lpit_periodic_interrupt_s32k146.srec 。 ちなみに、外付けのSegger J-Linkは必要ありません。ステップ6に従う場合: SW5を押しながらJ7を挿入すると、OpenSDAがブートローダーモードになります。そして、 SEGGER J-Linkアプリケーションファームウェア( OpenSDA_V1.bin )をOpenSDA_V1.binにコピーします。 オンボード デバッガーは J-Link になります。 よろしくお願いします、 ロビン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「解決策として承認」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 --------------------------------------------------------------------------------- Re: Unable to flash S32K146EVB-Q144 board as D1 glowing red こんにちは、ロビン。 迅速なご返信ありがとうございます。MSD -DEBUG-S32K146EVB-Q144_Pemicro_v121.SDAにロールバックしてみましたが、 同じように動作します。ブートローダーアプリはフラッシュされますが、D1はまだ赤く点灯しており、.srecをフラッシュできません。kinetis 回復ツールを使用して停止した後のファイル。コントローラが srec をフラッシュしようとしているが、D2 が定期的に点滅するため失敗していることがわかります (通常は 3 ~ 4 回だけ点滅し、アプリがフラッシュされます)。 その後、ブートローダーをOpenSDA_V1.bin に切り替えて、その後 J-Link コマンダーを使用して接続を試みましたが、次のログが表示されました。 SEGGER J-Link Commander V8.94 (2025年12月10日 14:50:47 にコンパイル) DLLバージョンV8.94、2025年12月10日14:49:54にコンパイル USB経由でJ-Linkに接続しています...OK ファームウェア: J-Link OpenSDA コンパイル日: 2023年1月31日 13:42:36 ハードウェアバージョン: V1.00 J-Link の稼働時間(起動以降): 0d 00h 00m 28s シリアル番号: 621000000 VTref=3.300V ターゲット接続を確立するには「connect」と入力し、ヘルプを表示するには「?」と入力します J-Link>接続 デバイス/コアを指定してください。 : S32K146 選択ダイアログに「?」と入力してください デバイス>S32K146 ターゲットインターフェースを指定してください: J) JTAG (デフォルト) S) SWD T) cJTAG TIF>SWD 対象インターフェース速度[kHz]を指定します。 : 4000 kHz 速度>100 デバイス「S32K146」が選択されました。 SWD経由でターゲットに接続する ConfigTargetSettings() の開始 ConfigTargetSettings() 終了 - 22us かかりました InitTarget() 開始 SWDが選択されました。JTAG -> SWD 切り替えシーケンスを実行しています。 CPU の停止中にタイムアウトが発生しました。 InitTarget() 終了 - 392 ミリ秒かかりました ID 0x2BA01477 の SW-DP が見つかりました DPv0が検出されました CoreSight SoC-400 以前 APマップをスキャンして利用可能なすべてのAPを見つける AP[2]: APマップの終端に達したため、APスキャンを停止しました AP[0]: AHB-AP (IDR: 0x24770011, ADDR: 0x00000000) AP[1]: JTAG-AP (IDR: 0x001C0000, ADDR: 0x01000000) APマップを反復処理して使用するAHB-APを見つける AP[0]: コアを発見 AP[0]: AHB-AP ROMベース: 0xE00FF000 CPUIDレジスタ: 0x410FC241。実装者コード: 0x41 (ARM) Cortex-M4 r0p1、リトルエンディアンが見つかりました。 FPUnit: 6 つのコード (BP) スロットと 2 つのリテラル スロット CoreSight コンポーネント: ROMTbl[0] @ E00FF000 [0][0]: E000E000 CID B105E00D PID 000BB00C SCS-M7 [0][1]: E0001000 CID B105E00D PID 003BB002 DWT [0][2]: E0002000 CID B105E00D PID 002BB003 FPB [0][3]: E0000000 CID B105E00D PID 003BB001 ITM [0][4]: E0040000 CID B105900D PID 000BB9A1 TPIU 126976バイトの作業用RAM(0x1FFF0000)を初期化しています リセットタイプ: NORMAL ( https://kb.segger.com/J-Link_Reset_Strategies ) リセット: DEMCR.VC_CORERESET によるリセット後にコアを停止します。 リセット: AIRCR.SYSRESETREQ 経由でデバイスをリセットします。 リセット: S_RESET_ST はクリアされません。CPU は永久にリセット状態のままになっているようです。 リセット: フォールバックを使用: ピンをリセットします。 リセット: DEMCR.VC_CORERESET によるリセット後にコアを停止します。 リセット: リセットピン経由でデバイスをリセットします リセット: VC_CORERESET は CPU を停止しませんでした。(デバッグ ロジックもリセット ピンによってリセットされますか?)。 リセット: 再接続して CPU を手動で停止します。 ID 0x2BA01477 の SW-DP が見つかりました DPv0が検出されました CoreSight SoC-400 以前 AP マップの検出をスキップしました。手動で構成された AP マップが見つかりました。 AP[0]: AHB-AP (IDR: 未設定、ADDR: 0x00000000) AP[0]: コアを発見 AP[0]: AHB-AP ROMベース: 0xE00FF000 CPUIDレジスタ: 0x410FC241。実装者コード: 0x41 (ARM) Cortex-M4 r0p1、リトルエンディアンが見つかりました。 CPUを停止できませんでした リセット: コアはリセット後に停止せず、WDT を無効にしようとしました。 リセット: DEMCR.VC_CORERESET によるリセット後にコアを停止します。 リセット: リセットピン経由でデバイスをリセットします リセット: VC_CORERESET は CPU を停止しませんでした。(デバッグ ロジックもリセット ピンによってリセットされますか?)。 リセット: 再接続して CPU を手動で停止します。 ID 0x2BA01477 の SW-DP が見つかりました DPv0が検出されました CoreSight SoC-400 以前 AP マップの検出をスキップしました。手動で構成された AP マップが見つかりました。 AP[0]: AHB-AP (IDR: 未設定、ADDR: 0x00000000) AP[0]: コアを発見 AP[0]: AHB-AP ROMベース: 0xE00FF000 CPUIDレジスタ: 0x410FC241。実装者コード: 0x41 (ARM) Cortex-M4 r0p1、リトルエンディアンが見つかりました。 CPUを停止できませんでした リセット: 失敗しました。リセット ピンを切り替えてリセット戦略を再度試します。 ID 0x2BA01477 の SW-DP が見つかりました DPv0が検出されました CoreSight SoC-400 以前 AP マップの検出をスキップしました。手動で構成された AP マップが見つかりました。 AP[0]: AHB-AP (IDR: 未設定、ADDR: 0x00000000) AP[0]: コアを発見 AP[0]: AHB-AP ROMベース: 0xE00FF000 CPUIDレジスタ: 0x410FC241。実装者コード: 0x41 (ARM) Cortex-M4 r0p1、リトルエンディアンが見つかりました。 リセット: DEMCR.VC_CORERESET によるリセット後にコアを停止します。 リセット: AIRCR.SYSRESETREQ 経由でデバイスをリセットします。 リセット: S_RESET_ST はクリアされません。CPU は永久にリセット状態のままになっているようです。 リセット: フォールバックを使用: ピンをリセットします。 リセット: DEMCR.VC_CORERESET によるリセット後にコアを停止します。 リセット: リセットピン経由でデバイスをリセットします リセット: VC_CORERESET は CPU を停止しませんでした。(デバッグ ロジックもリセット ピンによってリセットされますか?)。 リセット: 再接続して CPU を手動で停止します。 ID 0x2BA01477 の SW-DP が見つかりました DPv0が検出されました CoreSight SoC-400 以前 AP マップの検出をスキップしました。手動で構成された AP マップが見つかりました。 AP[0]: AHB-AP (IDR: 未設定、ADDR: 0x00000000) AP[0]: コアを発見 AP[0]: AHB-AP ROMベース: 0xE00FF000 CPUIDレジスタ: 0x410FC241。実装者コード: 0x41 (ARM) Cortex-M4 r0p1、リトルエンディアンが見つかりました。 CPUを停止できませんでした リセット: コアはリセット後に停止せず、WDT を無効にしようとしました。 リセット: DEMCR.VC_CORERESET によるリセット後にコアを停止します。 リセット: リセットピン経由でデバイスをリセットします リセット: VC_CORERESET は CPU を停止しませんでした。(デバッグ ロジックもリセット ピンによってリセットされますか?)。 リセット: 再接続して CPU を手動で停止します。 ID 0x2BA01477 の SW-DP が見つかりました DPv0が検出されました CoreSight SoC-400 以前 AP マップの検出をスキップしました。手動で構成された AP マップが見つかりました。 AP[0]: AHB-AP (IDR: 未設定、ADDR: 0x00000000) AP[0]: コアを発見 AP[0]: AHB-AP ROMベース: 0xE00FF000 CPUIDレジスタ: 0x410FC241。実装者コード: 0x41 (ARM) Cortex-M4 r0p1、リトルエンディアンが見つかりました。 CPUを停止できませんでした CPUを停止できませんでした CPUを停止できませんでした ****** エラー: CPU を停止できませんでした。 メモリゾーン: ゾーン: 「デフォルト」 説明: デフォルトのアクセスモード Cortex-M4 が識別されました。 J-Link> Re: Unable to flash S32K146EVB-Q144 board as D1 glowing red オシロスコープを使用してリセットピンの波形を観察し、波形を送信してリセット期間とハイレベル幅を教えてください。場合によっては回復不可能となり、S32K1 チップを交換しなければならないこともあります。   接続戦略と回復手順: 目標: デバッガーにコアを停止し、問題のあるファームウェアを無効にする機会を与えます。 A. SWD速度を下げる + 「リセット時に接続」 J-Link Commanderの場合: J-Link> device S32K146 J-Link> if SWD J-Link> speed 1000 ; start at 1 MHz; if still failing, drop to 100 kHz J-Link> connect それでも失敗する場合は、手動の connect‑under‑reset を使用します。 RESET_b を外部的に低く保持し、ボードに電源を投入します。 Commander で connect を実行します。 リセットを解除し、直ちに次の操作を実行します。 J-Link> r J-Link> h J-Link> halt 特に 100 kHz SWD 速度ではタイミングが重要になる可能性があるため、何度か試してください。 B. J-Linkリセット戦略の変更 リセット戦略の値によって動作が異なります。Commander の場合 (正確な ID はバージョンによって異なる場合があります): J-Link> SetResetType = 3 ; a common “connect under reset / halt after reset”; Try 2 / 4 / 12 etc. depending on your J-Link version J-Link> r J-Link> halt または、J-Link Commander で「リセット状態で接続」を選択してみてください。 Re: Unable to flash S32K146EVB-Q144 board as D1 glowing red S32K146EVB-SPF-29844-RB.pdfによると: J104 1-2 OpenSDAからのリセット信号 J10 2-3 P5V0 外部の 9V または 12V 電源がある場合は、 J107 1-2 P5V_SBC を接続することもできます。PEMicro Multilinkなどの外部デバッガーをお持ちの場合は、それを使用して、S32K146 用のプログラムをダウンロードできるかどうかを確認してください。 最後にダウンロードされたプロジェクトは何ですか?CSEc は有効になっていますか? 前回の質問に答えて、オシロスコープを使用して測定したリセット信号を提供してください。
查看全文
88Q9098: 能否在 STA 模式下启用/禁用 ofdma/mu-mimo? 我一直在苦苦寻找答案,但就是找不到。 我想添加启用/禁用功能 下一次连接到接入点时为 DL-OFDMA、UL-OFDMA、DL-MU-MIMO、UL-MU-MIMO 我知道启用这些功能是由接入点完成的、 但我并不关心它以何种形式出现,比如改变能力,或者其他、 我只是想让它以这种方式工作: 当我启用 DL-OFDMA 时,如果接入点尝试使用,它就会工作、 而当我在 STA 中禁用它时,即使 AP 尝试禁用,也不会起作用。 如果可能,那就再好不过了、 但即使不可能,我也会非常感激。 我真的需要你的帮助。 谢谢! Re: 88Q9098: Is it possible to enable/disable ofdma/mu-mimo in STA mode? 感谢您的支持 Re: 88Q9098: Is it possible to enable/disable ofdma/mu-mimo in STA mode? 你好@nhk OFDMA/MU-MIMO 功能只能由 AP 端配置。STA 无法禁用它。STA 将使用 AP 指定的通信协议进行通信。 顺祝商祺! 肖恩
查看全文
[滥用] 发布者:@JohnKlug /板:imx-processors/举报人:srbacvj srbacvj 报告了 @JohnKlug 发布的帖子 Could not invoke dnf for external kernel module in Yocto kirkstone ,原因如下: 原因: 详情: < a href="https://tylkoastronomia.pl/node/9904"> http://prosti-proshay.ru/lyudi/pharmacy-online-1"> https://www.siriuspup.com/breeders/pharmacy-online-11"> https://stage.cc.radiant.digital/node/3046"> http://www.pajeroio.com/blog/pharmacy-online-0"> https://www.musicinafrica.net/newsfeed/213463/373133"> http://www.sccu.chula.ac.th/node/933"> < a href="https://www.lawtech.ru/subscribe/26816-16102025"> https://okwiki.ru/catalog/pharmacy-online"> < a href="https://neweddingday.com/your-couple-name-2333"> https://www.siriuspup.com/breeders/pharmacy-online-11"> http://xn--37-6kci4a9aahjr0a.xn--p1ai/pharmacy-online-ivanovo-8"> https://hetnieuweteamwerken.be/forums/forum/pharmacy-online-5"> https://www.jobwebby.ilovemarkso.com/domainasname-anthony-gmbh/pharmacy-online-6"> http://prosti-proshay.ru/lyudi/pharmacy-online-1"> https://www.intimus.pt/pharmacy-online-16"> https://www.intimus.pt/pharmacy-online-16"> https://dev.beautynbrushes.com/services-provided/tree-braids-maroonimmortalep"> https://whs6570.com/node/2099"> http://www.le-cercle-des-sourires.fr/session/3338"> < a href="https://www.jobwebby.ilovemarkso.com/domainasname-anthony-gmbh/pharmacy-online-6"> https://www.danduo168.com/en/artworks/693/pharmacy-online-0"> https://auc.org.ua/faq/29092025-0456"> https://jeunescathos-bxl.org/fr/content/pharmacy-online-54"> https://www.musicinafrica.net/newsfeed/213463/373133"> http://xn--37-6kci4a9aahjr0a.xn--p1ai/pharmacy-online-ivanovo-8"> https://masters.adminskiracing.com/node/413296"> https://slp.millingtonpubliclibrary.org/content/pharmacy-online-9"> < a href="https://tylkoastronomia.pl/node/9904"> https://fo-rum.auc.org.ua/faq/29092025-0042-1"> https://ruckup.org/caregivers-forum/topic/6386"> < a href="https://www.rapidservice.com.ec/es/content/pharmacy-online"> https://www.globalrealtor.co.in/node/4204"> < a href="https://whs6570.com/node/2099"> https://darkmetalmush.net/history/pharmacy-online-23"> https://www.thebiketube.com/f-moser-ann"> http://xn--80aah2bgapnqg.xn--p1ai/story/pharmacy-online-3"> https://stage.cc.radiant.digital/node/3046"> https://masters.adminskiracing.com/node/413296"> https://dev.worldwar1luton.com/forum-topic/pharmacy-online-5"> 发布链接: https://community.nxp.com/t5/i-MX-Processors/Could-not-invoke-dnf-for-external-kernel-module-in-Yocto/m-p/1627964#M203740 帖子作者 @JohnKlug|Email Author 报告人:srbacvj |Email Reporter 报告的帖子有 2 个回复。
查看全文
S32K312 uart AsyncReceiveコールバックイベント情報は、SPI DMAが大量のデータを転送するときに常にエラーになります。 こんにちは、 S32K312 S32DS3.5 RTD4.0.0 プロジェクトでは、SPI0 と SPI1 は DMA モードで動作し、UART1 は割り込みモードで動作します。 UART1 は、12 バイトのフレームを同期送信または非同期受信するときに正常に動作します。 しかし、SPI DMA が大量のデータを転送する場合、uart AsyncReceive イベント情報は常にエラーになります。 何か提案はありますか? Re: S32K312 uart AsyncReceive callback event is always error when SPI DMA transfer mass data はい、それは割り込み優先度の問題です。Uart1 は優先度を上げた後に動作します。 本当にありがとう! Re: S32K312 uart AsyncReceive callback event is always error when SPI DMA transfer mass data こんにちは、 SPI DMA バースト中の UART 非同期受信エラーの原因としては、以下のことが考えられます。 1. 割り込み優先度の問題 - DMA 完了または他の ISR の優先度が同等かそれ以上であるため、UART RX 割り込みはすぐには処理されません。 - 結果: UART RX FIFO がオーバーフロー → オーバーランまたはフレーミング エラー。 LPUART1_IRQn がすべての DMA 関連 IRQ (例: DMATCDx_IRQn) よりも高い優先度 (数値的に低い) を持つことを確認します。割り込みグループ化によりプリエンプションが許可されることを確認します。 2. DMAによるバスの占有 - SPI の eDMA チャネルは、大きなバースト中に AXBS クロスバーを飽和させる可能性があります。 - CPU およびペリフェラル レジスタ アクセス (UART RX 処理を含む) が遅延され、ISR レイテンシが増加します。 eDMAエンジンのストールを許可するようにSPI DMAチャネルを構成する(BWC設定)   BR、ペトル
查看全文
[S32K344MINI-EVB] 搭載デバッガ機能の確認 (K26 OpenSDA) NXPコミュニティの皆様、こんにちは。 S32K3シリーズの評価のため、S32K344MINI-EVBを購入予定です。 購入する前に、デバッグ インターフェースの要件を再確認して、正しく設定されていることを確認したいと思います。 私の理解: ブロック図とドキュメントによると、このボードにはK26 を使用した搭載デバッグインターフェースが含まれており、OpenSDA を使用する搭載デバッガーとして機能すると考えられます。 質問: S32 Design Studio を使用してS32K344MINI-EVB をフラッシュおよびデバッグするには、USB ケーブルだけが必要であることを意味しますか?(つまり、基本的な評価には Multilink や Lauterbach のような外部デバッガーは必要ありませんか?) この特定のボードには、注意する必要のある「ND (No Debugger)」バリアントや特別なジャンパーがないことを確認したいだけです。ご協力ありがとうございます! Re: [S32K344MINI-EVB] Confirming On-board Debugger Capabilities (K26 OpenSDA) ハイ 先週参加したトレーニング中に、同僚がこのボードの「ND (No Debugger)」バリアントについて言及しているのを聞きませんでした。 以前の S32K3X4EVB-T172 に関しては、当時 K26 が在庫切れだったため、「ND (デバッガーなし)」バリアントが存在していました。 新しく発売されたボードなのでまだ手元にありません。本日、S32K344MINI-EVB を注文しました。よろしければ、商品到着後に確認させていただきます。 よろしくお願いします、 ロビン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「解決策として承認」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 --------------------------------------------------------------------------------- Re: [S32K344MINI-EVB] Confirming On-board Debugger Capabilities (K26 OpenSDA) こんにちは、 ご返信ありがとうございます。返答をお待ちしています。ありがとう。 Re: [S32K344MINI-EVB] Confirming On-board Debugger Capabilities (K26 OpenSDA) 3日前にS32K344MINI-EVBボードを社内で注文しましたが、まだ発送されていません。いつ受け取れるかは不明ですので、お知らせします。 Re: [S32K344MINI-EVB] Confirming On-board Debugger Capabilities (K26 OpenSDA) K26 を備えた搭載デバッグインターフェースを備えた S32K344MINI-EVB を受け取りました。
查看全文
EB Tresos - Ae 模块生成代码时选择了错误的 SPI 模块 RTD 6.0.0 中的 Ae 插件/模块正在生成使用 SPI LSPI0 而非 LSPI1 的代码,这无法配置,而且是错误的,因为 Ae 只能使用 SPI 1。 版本 Ae 中的 SPI 选择不可配置 由于 D2D 连接需要使用 SPI 1 不过,生成的文件使用 SPI 0 作为临时解决方案手动修改 Re: EB Tresos - Ae module generating code with wrong SPI module selected 嗨,@guillermoarb 请核实以下内容: 在配置工具中打开 AeSpiSequence 税务摊销收益。 检查 AeSpiSequenceName 是否分配给了正确的 SpiSequence。 确认该 SpiSequence 的 SpiJobAssignment 已链接到相应的 SpiJob。 确认 SpiJob 的 SpiDeviceAssignment 已设置为 LPSPI1 实例的 SpiExternalDevice。 如果这些说明似乎不清楚或令人困惑,请参考随 RTD 提供的示例项目 Ae_Spi_Example_EB_001_S32M276,因为它有助于验证是否存在错误或遗漏的配置。 BR、VaneB
查看全文