Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
i.MX8M Plus - Sony Philips数字接口格式(SPDIF) 协议实现示例 大家好, 请问有人能指导一下如何在 i.MX8M plus 中实现和验证 Sony Philips数字接口格式(SPDIF) 协议吗? Re: i.MX8M Plus - SPDIF Protocol Implementation Example 对于最简单的 i.MX 8M Plus S/PDIF 实现,请使用 i.MX 音频板 / MCIMX8M-AUD 作为最接近的 NXP 参考硬件,而不是仅使用基本的 i.MX 8M Plus EVK。音频板的文档显示其支持 i.MX 8M Plus,并提供带有 RCA 和 TOSLINK 连接器的 S/PDIF I/O,TOSLINK 支持高达 192 kHz。 推荐的简易方法: 如果可以,请优先使用光纤 S/PDIF 接口。 最简单的硬件路径:i.MX8MP SPDIF_OUT → 光纤 TOSLINK 发射器模块。 接收:光纤 TOSLINK 接收器模块 → i.MX8MP SPDIF_IN。 这样就避免了同轴 75 Ω 线路驱动、变压器/耦合和接地问题。 通过 IOMUX 使用 i.MX 8M Plus 的 S/PDIF 引脚 i.MX 8M Plus 音频子系统包括Sony Philips数字接口格式(SPDIF) 输入和输出。 参考手册显示了可选择的焊盘上的 AUDIOMIX_SPDIF1_OUT 和 AUDIOMIX_SPDIF1_IN 的 IOMUX 选项。 在 Linux 中,相应的 IOMUX 定义包括 MX8MP_IOMUXC_SPDIF_TX__AUDIOMIX_SPDIF_OUT 和 MX8MP_IOMUXC_SPDIF_RX__AUDIOMIX_SPDIF_IN 。 如果您需要同轴RCA接口, 不要将 SoC 引脚当作直接 RCA 线路驱动器使用。 根据所选的发射器/接口电路,添加合适的 75 Ω S/PDIF 同轴输出网络/耦合。 光学方式通常是更简单、更安全的首选方案。 可供参考的资料 MCIMX8M-AUD / i.MX 音频板:NXP 为 i.MX 8M 系列提供 S/PDIF I/O 的最佳参考级产品,带有 RCA 和 TOSLINK 接口。 i.MX 8M Plus 参考手册:AUDIOMIX_SPDIF1_IN 和 AUDIOMIX_SPDIF1_OUT 的 pinmux / IOMUX 设置。 i.MX 8M Plus 数据手册:记录了 S/PDIF 时序参数,包括时钟高/低时序。 对于最简单的设计,将 AUDIOMIX_SPDIF1_OUT/IN 连接到光纤 TOSLINK 模块,并使用 MCIMX8M-AUD 作为 NXP S/PDIF I/O 行为的参考点。 Re: i.MX8M Plus - SPDIF Protocol Implementation Example 王一平您好, 请问能否提供一些参考电路图,以便我以最简单的方式实现Sony Philips数字接口格式 (SPDIF) 功能? Re: i.MX8M Plus - SPDIF Protocol Implementation Example 在 i.MX8M Plus 上使用现有的 Linux ALSA Audio XCVR / S/PDIF 驱动程序;通常情况下,您不会从头开始实现 S/PDIF 协议。i.MX8M Plus 音频 XCVR 支持 eARC、ARC 和 S/PDIF 模式,Linux S/PDIF 支持通过 ALSA 公开一个用于 Tx 的播放设备和一个用于 Rx 的捕获设备。 建议的实施路径: 启用内核驱动程序: 配置_SND_IMX_SPDIF 菜单路径: 复制 设备驱动程序 -> 声卡支持 -> 高级 Linux 音频架构 -> ALSA 用于 SoC 音频支持 -> 适用于飞思卡尔 i.MX CPU 的 SoC 音频           -> 为带有 S/PDIF 的 i.MX 板提供 SoC 音频支持。 记录的 DT 绑定位于 Documentation/devicetree/bindings/sound/fsl,Sony Philips数字接口格式(SPDIF).txt 和 Documentation/devicetree/bindings/sound/imx-audio-Sony Philips数字接口格式(SPDIF)if.txt 下。 配置 i.MX8M Plus 的设备树,使用 xcvr 音频模块并启用声卡/DAI 链路。典型的配置如下: sound-xcvr { 兼容 = "fsl,imx-audio-card"; 型号 = "imx-audio-xcvr"; pri-dai-link { 链接名称 = "XCVR PCM"; 中央处理器 { sound-dai = <&xcvr>;         }; }; }; &xcvr { #sound-dai-cells = <0>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_xcvr>; 状态 = "正常"; }; 对于 Tx 引脚复用,一个有记录的示例使用 MX8MP_IOMUXC_SPDIF_TX__AUDIOMIX_SPDIF1_OUT。 检查电路板布线/跳线。如果使用 NXP 音频板,请设置预期 S/PDIF 路径的物理布线。对于 i.MX8M Plus,J1500=1-2 将同轴连接器连接到 i.MX8M Plus,J1500=4-5 将光纤连接器连接到 i.MX8M Plus。如果通过 CPLD / HDMI 卡进行路由,则 J2511=1-3 的文档为“i.MX 8M Plus 到 CPLD 到 HDMI 卡”。 正确使用 ALSA / IEC958 S/PDIF 发送驱动程序支持 32、44.1 和 48 kHz 采样率,以及 S16_LE 和 S24_LE 格式;对于 24 位输出,文件必须使用每通道帧 32 位,并且只有 24 个最低有效位有效。如果路径需要的是 IEC958 子帧而不是原始 PCM,则在用户空间中进行 PCM 到 IEC958 的转换,例如使用 ALSA PCM 插件。 验证步骤: aplay -l 记录 -l 使用这些信息来识别 S/PDIF 播放/采集卡和设备 ID。文档显示 S/PDIF 设备显示为 ALSA 卡,例如 imxspdif [imx-spdif],设备 0:S/PDIF PCM。 交易验证: aplay -D hw: , audio48k24S.wav 参考验证方法使用外部光纤 S/PDIF 接收器,例如带有 WaveLab 的 M-Audio Transit USB 声卡,然后外部录制音频流并回放以检查正确性。 处方验证: arecord -D hw: , -c 2 -d 20 -r 48000 -f S24_LE record.wav 传递给 arecord 的采样率必须与输入的 S/PDIF 流采样率相匹配。对于 Rx,应用程序流程是打开 S/PDIF Rx PCM 设备,等待内部 DPLL 锁定到输入比特流,获取输入采样率,设置通道/格式/速率参数,然后准备并触发捕获。 对于协议级检查,请使用: iecset -c iecset 是用于设置或转储 IEC958 状态位的标准实用程序,并且该驱动程序还通过 ALSA 控制接口公开通道状态处理。 对于 i.MX8M Plus EVK 风格的验证,NXP 还记录了使用 imxaudioxcvr 卡进行环回式 Linux 测试的方法,例如从 imxaudioxcvr 录制音频并播放到 wm8960audio: arecord -Dsysdefault:CARD=imxaudioxcvr -c2 -r48000 -fS32_LE -twav | \ aplay -Dsysdefault:CARD=wm8960audio 简而言之:启用 i.MX S/PDIF / XCVR ALSA 驱动程序,配置 xcvr 设备树和板路由,然后使用 aplay、arecord、iecset 和外部光纤/同轴 S/PDIF 源或接收器验证 Tx/Rx。
查看全文
Marking details Please advise the meaning of marking 04 01 616 for MPN : PCA9553DP/01,118
查看全文
Issue "Weston.Service" on the "imx95-15x15-frdm" Debian using flex-installer "lsdk2606" version Hello, I installed the Debian image using flex-installer version "lsdk2606" using Spoiler (Highlight to read) sudo flex-installer -i auto -d /dev/sdX -m imx95-15x15-frdm sudo flex-installer -i auto -d /dev/sdX -m imx95-15x15-frdm on my imx95-15x15-frdm Then, I followed the standard procedure to continue the installation using  Spoiler (Highlight to read) debian-post-install-pkg debian-post-install-pkg After installing all the packages and rebooting, I encounter this error at startup: Spoiler (Highlight to read) [FAILED] Failed to start weston.service - W…nd compositor, as a system service. [FAILED] Failed to start weston.service - W…nd compositor, as a system service. Spoiler (Highlight to read) root@imx95-15x15-frdm:~# systemctl status weston.service × weston.service - Weston, a Wayland compositor, as a system service      Loaded: loaded (/usr/lib/systemd/system/weston.service; enabled; preset: enabled)      Active: failed (Result: exit-code) since Mon 2026-07-20 13:51:20 UTC; 19s ago  Invocation: 67b22b0fa1484ce681d8b2acdc107add TriggeredBy: ● weston.socket        Docs: man:weston(1)              man:weston.ini(5)              http://wayland.freedesktop.org/     Process: 408 ExecStart=/usr/bin/weston --log=${XDG_RUNTIME_DIR}/weston.log --modules=systemd-notify.so (code=exited, status=1/FAILURE)    Main PID: 408 (code=exited, status=1/FAILURE)    Mem peak: 3.5M         CPU: 49ms Jul 20 13:51:19 imx95-15x15-frdm systemd[1]: Starting weston.service - Weston, a Wayland compositor, as a system service... Jul 20 13:51:19 imx95-15x15-frdm (weston)[408]: pam_unix(weston-autologin:session): session opened for user root(uid=0) by (uid=0) Jul 20 13:51:20 imx95-15x15-frdm systemd[1]: weston.service: Main process exited, code=exited, status=1/FAILURE Jul 20 13:51:20 imx95-15x15-frdm systemd[1]: weston.service: Failed with result 'exit-code'. Jul 20 13:51:20 imx95-15x15-frdm systemd[1]: Failed to start weston.service - Weston, a Wayland compositor, as a system service. root@imx95-15x15-frdm:~# systemctl status weston.service× weston.service - Weston, a Wayland compositor, as a system service     Loaded: loaded (/usr/lib/systemd/system/weston.service; enabled; preset: enabled)     Active: failed (Result: exit-code) since Mon 2026-07-20 13:51:20 UTC; 19s ago Invocation: 67b22b0fa1484ce681d8b2acdc107addTriggeredBy: ● weston.socket       Docs: man:weston(1)             man:weston.ini(5)             http://wayland.freedesktop.org/    Process: 408 ExecStart=/usr/bin/weston --log=${XDG_RUNTIME_DIR}/weston.log --modules=systemd-notify.so (code=exited, status=1/FAILURE)   Main PID: 408 (code=exited, status=1/FAILURE)   Mem peak: 3.5M        CPU: 49ms Jul 20 13:51:19 imx95-15x15-frdm systemd[1]: Starting weston.service - Weston, a Wayland compositor, as a system service...Jul 20 13:51:19 imx95-15x15-frdm (weston)[408]: pam_unix(weston-autologin:session): session opened for user root(uid=0) by (uid=0)Jul 20 13:51:20 imx95-15x15-frdm systemd[1]: weston.service: Main process exited, code=exited, status=1/FAILUREJul 20 13:51:20 imx95-15x15-frdm systemd[1]: weston.service: Failed with result 'exit-code'.Jul 20 13:51:20 imx95-15x15-frdm systemd[1]: Failed to start weston.service - Weston, a Wayland compositor, as a system service. Spoiler (Highlight to read) root@imx95-15x15-frdm:~# cat /run/user/0/weston.log Date: 2026-07-20 UTC [12:34:22.150] weston 14.0.2 https://wayland.freedesktop.org Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/ Build: LSDK-25.12_DEBIAN-13_LF-6.12.20-168-g2ddc741+ [12:34:22.153] Command line: /usr/bin/weston --log=/run/user/0/weston.log --modules=systemd-notify.so [12:34:22.153] OS: Linux, 6.12.49, #5 SMP PREEMPT Thu May 28 13:07:26 KST 2026, aarch64 [12:34:22.153] Flight recorder: enabled [12:34:22.155] Using config file '/etc/xdg/weston/weston.ini' [12:34:22.156] Output repaint window is 16 ms maximum. [12:34:22.158] Loading module '/usr/lib/libweston-14/drm-backend.so' [12:34:22.162] Failed to load module: libdisplay-info.so.1: cannot open shared object file: No such file or directory [12:34:22.162] fatal: failed to create compositor backend root@imx95-15x15-frdm:~# cat /run/user/0/weston.logDate: 2026-07-20 UTC[12:34:22.150] weston 14.0.2https://wayland.freedesktop.orgBug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/Build: LSDK-25.12_DEBIAN-13_LF-6.12.20-168-g2ddc741+[12:34:22.153] Command line: /usr/bin/weston --log=/run/user/0/weston.log --modules=systemd-notify.so[12:34:22.153] OS: Linux, 6.12.49, #5 SMP PREEMPT Thu May 28 13:07:26 KST 2026, aarch64[12:34:22.153] Flight recorder: enabled[12:34:22.155] Using config file '/etc/xdg/weston/weston.ini'[12:34:22.156] Output repaint window is 16 ms maximum.[12:34:22.158] Loading module '/usr/lib/libweston-14/drm-backend.so'[12:34:22.162] Failed to load module: libdisplay-info.so.1: cannot open shared object file: No such file or directory[12:34:22.162] fatal: failed to create compositor backend I'm getting this error too (I don't know if it's related), but nothing is showing up on my screen. Spoiler (Highlight to read) it6263 3-004c: failed to clear DDC FIFO it6263 3-004c: Failed to read EDID it6263 3-004c: failed to clear DDC FIFOit6263 3-004c: Failed to read EDID Re: Issue "Weston.Service" on the "imx95-15x15-frdm" Debian using flex-installe root@imx95-15x15-frdm:~# ldd /usr/lib/libweston-14/drm-backend.so linux-vdso.so.1 (0x0000ffffac56c000) libweston-14.so.0 => /usr/lib/libweston-14.so.0 (0x0000ffffac410000) libwayland-client.so.0 => /lib/aarch64-linux-gnu/libwayland-client.so.0 (0x0000ffffac3e0000) libpixman-1.so.0 => /lib/aarch64-linux-gnu/libpixman-1.so.0 (0x0000ffffac330000) libwayland-server.so.0 => /lib/aarch64-linux-gnu/libwayland-server.so.0 (0x0000ffffac2f0000) libdrm.so.2 => /usr/lib/libdrm.so.2 (0x0000ffffac2b0000) libudev.so.1 => /lib/aarch64-linux-gnu/libudev.so.1 (0x0000ffffac250000) libdisplay-info.so.1 => not found libgbm.so.1 => /usr/lib/libgbm.so.1 (0x0000ffffac220000) libseat.so.1 => /lib/aarch64-linux-gnu/libseat.so.1 (0x0000ffffac1f0000) libinput.so.10 => /lib/aarch64-linux-gnu/libinput.so.10 (0x0000ffffac170000) libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffffabfb0000) /lib/ld-linux-aarch64.so.1 (0x0000ffffac520000) libxkbcommon.so.0 => /lib/aarch64-linux-gnu/libxkbcommon.so.0 (0x0000ffffabf40000) libffi.so.8 => /lib/aarch64-linux-gnu/libffi.so.8 (0x0000ffffabf10000) libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffffabe60000) libcap.so.2 => /lib/aarch64-linux-gnu/libcap.so.2 (0x0000ffffabe30000) libsystemd.so.0 => /lib/aarch64-linux-gnu/libsystemd.so.0 (0x0000ffffabd00000) libmtdev.so.1 => /lib/aarch64-linux-gnu/libmtdev.so.1 (0x0000ffffabcd0000) libevdev.so.2 => /lib/aarch64-linux-gnu/libevdev.so.2 (0x0000ffffabc90000) libwacom.so.9 => /lib/aarch64-linux-gnu/libwacom.so.9 (0x0000ffffabc60000) libgudev-1.0.so.0 => /lib/aarch64-linux-gnu/libgudev-1.0.so.0 (0x0000ffffabc30000) libgobject-2.0.so.0 => /lib/aarch64-linux-gnu/libgobject-2.0.so.0 (0x0000ffffabba0000) libglib-2.0.so.0 => /lib/aarch64-linux-gnu/libglib-2.0.so.0 (0x0000ffffaba10000) libatomic.so.1 => /lib/aarch64-linux-gnu/libatomic.so.1 (0x0000ffffab9e0000) libpcre2-8.so.0 => /lib/aarch64-linux-gnu/libpcre2-8.so.0 (0x0000ffffab920000) Re: Issue "Weston.Service" on the "imx95-15x15-frdm" Debian using flex-installe Thank you for the update. I can see that libdisplay-info is present on the system, but the Weston log is looking for libdisplay-info.so.1, while the installed library appears to be libdisplay-info.so.2. Could you please run the following command and share the output? ldd /usr/lib/libweston-14/drm-backend.so This will help verify whether there is a library version mismatch or another missing dependency. Re: Issue "Weston.Service" on the "imx95-15x15-frdm" Debian using flex-installe Could you please run the following command and share the output? find /usr -name "libdisplay-info*" Thanks Re: Issue "Weston.Service" on the "imx95-15x15-frdm" Debian using flex-installe Hello root@imx95-15x15-frdm:~# find /usr -name "libdisplay-info*" /usr/lib/aarch64-linux-gnu/libdisplay-info.so.2 /usr/lib/aarch64-linux-gnu/libdisplay-info.so.0.2.0 /usr/share/doc/libdisplay-info2
查看全文
S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff I developed the program in S32DS. When trying to transmit CAN frames, only a short low-level pulse  is output on the TX pin, and the subsequent ID and data bits are truncated, so complete frames cannot be sent. No data is received by the USB-CAN analyzer, and the FlexCAN controller directly enters the bus-off state. I have checked clock configuration and register values, and tested different CAN channels, but the problem remains unsolved. I want to figure out which configuration parameter is set incorrectly. Thanks for your help. Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff Hi Julián, Thank you for your reply. I'd like to correct and add some important details to my earlier message, which was written in a hurry. Board: This is a third-party board (not an NXP EVB), model S32K148_REV2_Q144. Worth noting: I found errors in the seller's schematic (labeled transceiver position didn't match the actual PCB silkscreen), so the reference design documentation for this board may not be fully reliable. Official CAN example: I did try building Can_example_S32K148, but hit environment issues unrelated to CAN itself (missing toolchain/include paths, and finally a version mismatch error between Port_Ci_Port_Ip.h and Port_Ci_Port_Ip_Cfg.h — "different vendor ids"/"AutoSar Version Numbers are different"). This looks like an RTD package version mismatch with my own project, not an IDE version issue. I'll try to resolve it, but I don't think it's central to the hardware problem. New evidence (from my own project you already reviewed): I've done deeper verification with a logic analyzer since my last message: MB8 content is 100% correct — read directly from registers right after CDD_CanTransmit(): CS=0x0C080000 (CODE=0xC pending, DLC=8), ID=0x00400304 (>>18 = 0x10, matches config), DATA=0x01020304/0x05060708 (matches my 8-byte payload exactly). TX signal at the pin is correct too — probing PTE5 and the transceiver's TXD input simultaneously (200MHz logic analyzer), the two waveforms are identical, confirming the PCB trace is fine. But transmission aborts after only ~8-9 bit transitions (roughly SOF + a few arbitration bits), and the controller enters Bus-Off shortly after (ESR1 confirms FLTCONF=11, TXERRCNT increments each attempt). CANH/CANL show zero activity, even with the USB-CAN analyzer properly connected and 120Ω termination enabled (bus not floating). As a control test, I ran the same setup (floating vs. terminated) on a different, known-working STM32 board — CANH showed proper transitions once terminated. On my S32K148 board under identical terminated conditions, CANH/CANL remain completely flat. Same result on CAN1 (different pins/transceiver). Since MCU-side TXD is confirmed correct up to the transceiver input, but CANH/CANL never respond even with proper termination, I suspect the transceiver output stage (or something shared between both channels, e.g. supply transient behavior — I haven't been able to check this with a scope, only a logic analyzer). Questions: Does "TXD correct at transceiver input, but CANH/CANL completely flat under proper termination" more strongly suggest a transceiver hardware fault, or are there other common board-level issues (enable/standby circuit, supply decoupling) that could cause this exact symptom? Is it expected for FlexCAN to abort after only the first few arbitration bits (rather than completing the full frame and failing at the ACK slot) when there's no real bus activity? Want to confirm my understanding of the bit-monitoring mechanism. For the RTD version mismatch in the example project — is there a way to check which RTD version matches a given S32 Configuration Tool release, so I can get a matching example package? Thanks again for your help. Best regards, April Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff Hi Julián, I’m really surprised and thankful for your reply to my question.   I am using a self-designed hardware board; only the power supply circuit differs from the official EVB schematic, while the rest of the circuits are consistent with the reference design. I have tested the official CAN example project. I only configured CAN0 pins without enabling and configuring the PORT module inside the MCAL layer, and the project keeps failing to compile repeatedly.   The specific compile error is: " f../board/Port_Ci_Port_Ip_Cfg.h:47:10: fatal error: Port_Ci_Port_Ip_Types.h: No such file or directory".   I have this header file available in my self-configured project files, yet after importing this official example project, this header file is not generated automatically during code generation. Could this missing header file error be caused by mismatched IDE software versions? At present I’m developing on S32DS for S32 Platform, and I am downloading S32DS for ARM 2.2.2 to switch the development environment. Looking forward to your guidance.   Best regards,   April Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff Hello @April, From your project, configuration and routine seem to be correct. Could you please share if you are using an S32K148EVB from NXP, or if this is a custom design? Have you tried testing the Can_example_S32K148 project included within the RTD? You can simply add the CAN0 pins and disable loop back mode to enable Tx/Rx and test the routine.  Lastly, have you confirmed that both nodes (S32K148 and CAN analyzer) are set to the same bit timing and protocol configuration (CAN vs CAN FD)? You can use the following tool to calculate the values: MPC5xxx/S32Kxx/LPCxxxx: CAN / CAN FD bit timing calculation. If you are using a custom design, you can refer to the S32K148 EVB's schematic and Hardware Design Guidelines for S32K1xx for the CAN interface design and recommendations. Best regards, Julián Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff Hello @April, 1. Yes, this points to a transceiver fault, rather than module configuration. Can you check which transceiver is being used in your custom design? I'd recommend checking STB, EN, S, RS, WAKE, INH, or similar pins against the actual mounted transceiver. S32K148 EVB uses a UJA1132HW, however, if you are using something like a TJA1043, you must configure it to Normal mode (STB_N = high EN = high). 2.  Yes, early abort after a few arbitration bits is plausible if the transceiver is not actually driving the bus. 3. Usually, the "different vendor ids"/ "AutoSar Version Numbers are different" errors show up when importing a project, and trying to update the configuration with a different RTD / S32 Config Tool version, however, if you simply imported the example from "File -> New -> S32DS Project From Example", there should not be any compatibility issues: From the project you've shared, I can see you are using S32K1 RTD 3.0.0 QLP04, however, when I imported the project, I can see from properties that GCC 11.4 is configured: From RTD release notes, 3.0.0 QLP04 only supports NXP GCC 10.2: I'm not sure how you imported and compiled the project, but please make sure you have at least S32DS 3.6.4, and only one RTD package installed. S32DS does not support multiple RTD versions installed simultaneously. Best regards, Julián Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff Hello @April, Thank you for the additional information. 1. Regarding TJA1051, it is true this transceiver only has the S pin in order to configure normal mode, however, please check if you are using TJA1051T/E derivative, as this has an additional EN pin you must drive HIGH: 2. The 'File not found' error is most likely caused by a wrong Port configuration, and consequently, wrong code generation by the tool. The error you've shared in the Port container is caused because the 'Pins' functional group name should be named after 'Port container name' + 'Peripheral functional group name', in your case 'PortContainer_0_VS_0' Before requesting RMA, can you please test the project I've attached? It is a simple test code in MCAL, which enables Rx in interrupt, and Tx in polling mode. After 10 successful echoed frames, the green led is toggled.  I've tested the routine through the J11 CAN header, with a PCAN-USB analyzer, with the following settings: I can see the frames successfully being echoed, and the green led toggled every 10 frames: Since I've used S32K148-EVB, there is no need for transceiver enablement, however, in your setup, check that the TJA1051 is correctly enabled (and if it also needs EN pin to be enabled). Best regards, Julián Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff Hi Julián, Thanks again for your patience with this — a few updates since my last message. Transceiver check: I looked more closely and confirmed it's a TJA1051, not a UJA1132-series SBC. This one only has a single enable pin (S pin), which is hardwired to ground on my board (= Normal mode), so the multi-pin STB_N/EN logic you mentioned doesn't really apply here — that part of the control circuit already looks correct. Cross-check with a second, independent project: I built and ran a completely different CAN demo for this board (from the reseller, using the older Processor Expert/S32 SDK stack — can_pal — instead of RTD/AUTOSAR). Pressing the button correctly calls CAN_Send(), but I noticed the return value is consistently STATUS_BUSY (0x002), meaning the previous transmission never actually completes. And just like with my RTD project, the USB-CAN analyzer receives nothing at all, on all three channels. So now I have two completely independent driver stacks giving me the same result, which makes me fairly confident this isn't a software/config issue on my end. Regarding the official example project: I switched the GCC version back to 10.2 as you suggested, but I'm still hitting the same "file not found" errors during the build. I dug into it a bit more and I now suspect it might be related to the Port module (MCAL layer) not being fully configured — there seems to be a validation error tied to how the Port module and the Pins tool's functional group are linked, but I haven't been able to get it configured correctly no matter what I try.  they are form example: This is from the project I built myself earlier: Given everything so far — control pin wiring looks correct, TXD is confirmed correct at the pin, and two independent software stacks show consistent "no bus activity" / stuck transmission behavior across all three channels — do you think this is solid enough to treat as a hardware fault and proceed with an RMA, or is there anything else worth checking first? Thanks again for all your help with this. Best regards, April Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff Hello @April, I'm really glad everything works as expected now!  May I know the reason for the previous error? Was it simple HW connections?  Have a nice day as well! Best regards, Julián Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff Hello @Julián_AragónM, Haha,It wasn’t wiring issues. The original TJA1051 transceiver module was defective and caused the BusOff issue. Again, thank you so much for all your help ! ^_^ Best regards, April Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff Hello Julián, I can’t wait to tell you that everything works perfectly now! I’m absolutely thrilled to share the good news. I’ve ordered brand new MCU boards and CAN transceivers for retesting, and the communication runs flawlessly this time. It turns out the constant BusOff error I ran into before was purely a hardware fault. I also loaded up the test project you attached, and it works great too. Your sample code can send and receive CAN frames smoothly just as you described. I really appreciate all the patient guidance you gave me these days. I was totally stuck and helpless troubleshooting this issue alone, and your detailed replies pulled me out of the mess. Wish you good health, smooth work, and happiness every day! Best regards, April
查看全文
支持请求:使用 i.MX8M Plus LVDS 输出的 HD-SDI 接口 尊敬的先生, 我们正在设计一个基于NXP i.MX8M Plus处理器的系统,希望您能指导我们实现HD-SDI 接口。 我们的需求是支持三个 HD-SDI 输出。我们计划使用i.MX8M Plus 的LVDS 接口,并使用以下设备将其转换为 HD-SDI: LMH0340SQE/NOPB – LVDS 转 HD-SDI 串行器 2 × LMH0324RTWT – 1 对 3 HD-SDI 分配放大器 请问i.MX8M Plus的LVDS接口是否与该架构兼容,能够生成三个HD-SDI输出? 如果此方案不被推荐或支持,能否请您提供一个替代方案,以便在继续使用i.MX8M Plus处理器的情况下实现三个 HD-SDI 接口?我们希望在设计中保留 i.MX8M Plus,因为它满足我们所有其他系统要求。 我们非常感谢您能提供任何建议以及任何可能有助于我们成功实现此接口的参考设计或应用说明。 感谢您的支持。我们期待您的指导。 顺祝商祺! 萨穆德拉兰凯亚·詹帕尼 模拟(ADC|CMP|DAC|运算放大器) 电路板设计 MCXA MCXC Re: Support Request: HD-SDI Interface Using i.MX8M Plus LVDS Output 你好, 很遗憾,我对这种使用场景不太熟悉。我研究了您分享的那部分内容,发现它似乎是用于 FPGA 而不是 LVDS 通道,所以我不太确定您是否可以使用此接口。 或许使用不同的桥接器或 i.MX8MP 中的其他接口,甚至在中间添加另一层(FPGA)会是一个解决方案。 此致敬礼/Saludos, 阿尔多。
查看全文
i.MX8M Plus — ECSPI/SPI NOR 接口上的辅助镜像启动 (IMG_CNTN_SET1_OFFSET):ROM 是否会回退到 OP 模式 i.MX8M Plus -- ECSPI/SPI 或非 上的辅助映像启动 (IMG_CNTN_SET1_OFFSET):ROM 是否会回退到 OPEN 配置? ==== 设置 ==== - SoC:i.MX8M Plus(定制SMARC模块) - 引导设备:ECSPI2 / CS1 上的串行 NOR(Winbond W25Q128,16 MiB)。这是传统的 eCSPI 控制器,不是 FlexSPI。 - 安全性:开放式配置(设备未关闭 HAB)。 - 熔丝 IMG_CNTN_SET1_OFFSET(熔丝读取 2 1)= 0x00000000。 - Flash 映射:主引导加载程序位于 0x000000,辅助副本位于 0x400000(4 MiB)。 根据已记录的SPI映射: “对于 SPI:如果熔丝位大于 10,则禁用辅助启动;n == 0 -> 偏移量 = 4 MB;n == 2 -> 1 MB;其他情况且 n <= 10 -> 1 MB * 2^n。” 当熔丝 n = 0(出厂默认值,无需烧录)时,二级偏移量应正好为 0x400000。 ==== 问题 ==== 我们在 0x400000 处放置了一个字节相同的、经 cmp.b 验证的主映像副本,然后使主启动头失效(sf erase 0 0x1000)并重置。 ROM 无法回退到备用映像——主板已变砖(只能通过 USB SDP 恢复)。 我们还尝试擦除主体内部的一个孔(sf erase 0x100000 0x40000),结果相同。 ==== 问题 ==== 1. 在 SPI/ECSPI NOR 上,是什么触发 ROM 在 IMG_CNTN_SET1_OFFSET 处切换到辅助映像? 是无效的主启动头/镜像解析失败,还是具体的 HAB 认证失败? 2. 辅助映像启动在开放(非安全)配置下是否有效,还是仅在设备 HAB 关闭时有效? 3. 是否恢复到之前的重置状态,还是需要断电重启/第二次重置(持久启动方式)? 4. 位于 0x400000 的辅助映像必须是单独构建的可引导映像(具有该偏移量的独立虚拟镜像/引导数据)吗? 或者,使用与原文件完全相同的字节副本就足够了? ==== 逻辑分析仪证据(RESET 期间捕获的 SPI 总线信号) ==== 我们使用 Saleae Logic Pro 16 以 500 MS/s 的速度探测 ECSPI2 总线(CLK、MOSI、MISO、CS),并在 RESET 期间解码每个 SPI 事务。为了进行比较,我们对从 FlexSPI 或非 启动并成功回退到辅助电源的 i.MX8QM 模块进行了同样的测试。 ---- i.MX8M Plus (ECSPI NOR),主控芯片已损坏 ---- ROM 只发出 0x03 READ 命令,严格从偏移量 0 开始顺序读取: 0x03 00 00 FC -> 读取 0x0000FC 0x03 00 04 EC -> 读取 0x0004EC 0x03 00 08 DC -> 读取 0x0008DC ……(每个 64 KiB 数据块约 50 次读取,呈严格递增趋势)…… 0x03 00 13 xx -> 读取计数在此处下降(擦除空洞 0x100000-0x140000,MISO=0xFF) 0x03 00 18 xx -> 线性地继续经过孔洞 ... 最高可达 ~0x1A69E8 ... ROM 会线性读取整个主区域,直接读取已擦除/无效区域(得到 0xFF),并且永远不会读取 0x400000 或 0x800000(辅助区域)。 在完整的捕获数据(2500 万个样本,654 个解码交易)中,任何地方都没有“0x03 40 xx xx”。 如果头完全擦除,ROM 会加载 0xFF,执行它,然后因同步中止而崩溃——没有任何回退机制。 作为对比,i.MX8QM(FlexSPI NOR)——备用方案确实有效—— 当仅主容器头失效(FCB 保持不变,地址为 0x000400)时,QM ROM 会执行以下操作: 0x0B 00 04 00 -> 快速读取 FCB @0x000400,MISO:46 43 46 42(“FCFB”魔数,FlexSPI 配置有效) 读取FCB配置数据…… 0x0B 00 10 00 -> 快速读取主容器 @0x001000,MISO:FF FF FF FF(无效!) 0x0B 40 10 00 -> 快速读取辅助容器 @0x401000,MISO:有效 <-- ROM 已切换,相同 RESET 0x0B 40 30 00, 0x0B 40 40 00, ... -> 加载整个二级镜像(在 0x40xxxx 处读取约 90 次) QM ROM 读取 FCB,配置 FlexSPI,检查 0x001000 处的主容器,发现为 0xFF, 然后立即(相同 RESET)切换到 0x401000 处的辅助容器。这样可行。 如果我们擦除前 4 MB 的全部数据(包括 FCB),QM ROM 只会进行 2 次读取操作。 在 0x000400 处,得到 0xFF,并且不会回退——因此需要有效的 FCB 才能启用回退。 - - 比较 - - i.MX8M Plus(本主板): 控制器:eCSPI(传统SPI) 读取操作码:0x03 读取 FCB 存在:否(eCSPI 没有 FCB 概念) 读取损坏的主服务器上的辅助服务器:否 -- 总线从未显示“0x03 40 xx xx” 结果:砖块(加载 0xFF -> 崩溃) i.MX8QM(参考): 控制器:FlexSPI 读取操作码:0x0B 快速读取 FCB 存在:是(0x400,魔法值“FCFB”) 读取损坏主盘上的辅助盘:是 -- "0x0B 40 10 00", 相同RESET 结果:辅助设备启动成功 ==== 摘要 ==== 从总线捕获信息来看,IMG_CNTN_SET1_OFFSET 辅助映像在 i.MX8M Plus 上启动。 似乎仅支持 FlexSPI,或者受 HAB 关闭配置的限制,并且无法启用。 适用于 OPEN 配置中的 eCSPI NOR。 NXP能否确认: - i.MX8M Plus 是否支持 eCSPI(而非 FlexSPI)或非 进行二次映像启动; - 触发条件是 HAB-auth-failure(仅限已关闭配置)还是任何无效标头(也包括已打开配置); - 回退方案是采用相同的重置方式还是需要断电重启; - 是否必须为该偏移量单独构建辅助副本,或者字节相同的副本也可以。 谢谢! Re: i.MX8M Plus — Secondary image boot (IMG_CNTN_SET1_OFFSET) on ECSPI/SPI NOR: does ROM fall back i 你好@djordje_nod 希望你一切都好。 Q1.什么原因导致 ROM 回退到 ECSPI NOR 的辅助模式? 在 OPEN 模式下,ROM/HAB 执行映像认证,但所有认证错误都会被忽略,并且仍然允许执行映像。 在 CLOSED 模式(SEC_CONFIG 融合)下,当 HAB 对主映像的认证失败时,ROM 将 PERSIST_SECONDARY_BOOT (SRC_GPR10[30]) 设置为 1 并执行软件复位。 Q2. 在 OPEN 配置下,辅助镜像启动是否正常工作? 在 OPEN 模式下,ROM 永远不会自动设置 PERSIST_SECONDARY_BOOT,因为它会忽略 HAB 错误。 Q3:第一次 RESET 还是第二次 RESET? 主启动失败 HAB 认证(关闭模式)----> ROM 设置 SRC_GPR10[30] = 1 ----> 触发信号软件复位。 在下一个 RESET 周期,ROM 读取持久位,发现它是 1,于是从辅助偏移量而不是主偏移量加载数据。 Q4. 是字节相同的副本,还是位于 0x400000 的单独构建的映像? 由于 IVT/启动数据字段包含的是 RAM 地址,而不是闪存地址,因此字节相同的副本就足够了。 顺祝商祺! 萨拉斯。
查看全文
S32K148 FlexCAN 出力SOFパルスのみバスオフに入ります 私はこのプログラムをS32DSで開発しました。CANフレームを送信しようとする際、TXピンには短い低レベルパルスのみが出力され、その後のIDやデータビットが切り詰められるため、完全なフレームを送信できません。USB-CANアナライザーにはデータが受信されず、FlexCANコントローラは直接バスオフ状態に入ります。 クロック設定やレジスタ値を確認し、さまざまなCANチャネルも試しましたが、問題は解決していません。どの設定パラメータが誤って設定されているのかを突き止めたい。ご協力いただきありがとうございます。 Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、ジュリアンさん。 お返事ありがとうございます。先ほどのメッセージは急いで書いたため、いくつか重要な点を訂正し、追加したいと思います。 取締役会: これはサードパーティ製のボード(NXP EVBではありません)、モデルS32K148_REV2_Q144です。注意点として、販売者の回路図に誤り(ラベル付けされたトランシーバ位置が実際のPCBシルクスクリーンと一致しない)を見つけたため、この基板の**リファレンス・デザイン** **ドキュメント**は完全に信頼できるとは限りません。 公式CANの例: ビルドCan_example_S32K148試みましたが、CAN自体とは無関係な環境問題(ツールチェーンやインクルーパスの欠如、Port_Ci_Port_Ip.hとPort_Ci_Port_Ip_Cfg.hのバージョンミスマッチ—「異なるベンダーID」や「AutoSarバージョン番号が異なる」など)に遭遇しました。これは自分のプロジェクトとRTDパッケージのバージョンが不一致しているのであって、IDEの問題ではありません。解決しようと思いますが、ハードウェアの問題の中心ではないと思います。 新たな証拠(既にレビューいただいた私のプロジェクトから):前回のメッセージ以降、ロジックアナライザを使ってより詳細な検証を行いました。 MB8 の内容は 100% 正しいです。CDD_CanTransmit() の直後にレジスタから直接読み取った結果は次のとおりです。CS=0x0C080000 (CODE=0xC 保留中、DLC=8)、ID=0x00400304 (>>18 = 0x10、設定と一致)、DATA=0x01020304/0x05060708 (私の 8 バイトのペイロードと完全に一致)。 ピンのTX信号も正確で 、PTE5とトランシーバのTXD入力を同時に探査(200MHzロジックアナライザ)すると、2つの波形は同一であり、PCBトレースは問題ないことが確認できます。 しかし、送信はわずか8〜9ビットの遷移( おおよそSOF + 数ビットの仲裁ビット)で中止され、コントローラーは間もなくバスオフに入ります(ESR1がFLTCONF=11を確認し、TXERRCNTは各試みごとに増分します)。 CANH/CANLは、USB-CANアナライザーを正しく接続し、120Ω終端を有効にしていても(バスがフローティングしていない状態)でも、活動はゼロです。対照実験として、同じ設定(フローティング状態と終端状態)を別の正常に動作することが確認されているSTM32ボードで実行したところ、終端状態になるとCANHは適切な遷移を示しました。私のS32K148ボードでは、同一の終端条件下において、CANH/CANLは完全に平坦なままです。 CAN1でも同じ結果でした(ピンやトランシーバが違う)。 MCU側のTXDはトランシーバ入力まで正確であることが確認されていますが、CANH/CANLは適切な終端をしても応答しません。したがって、トランシーバの出力段階(または両チャネルで共有されている何か、例えば電源の過渡的な挙動については、オシロスコープでは確認できず、ロジックアナライザでしか確認できていません。 質問: 「TXDはトランシーバー入力で修正されるが、適切な終端でCANH/CANLは完全にフラット」というのは、トランシーバーのハードウェア故障を強く示唆するのでしょうか?それとも、他に一般的な基板レベルの問題(有効化/スタンバイ回路、電源デカップリング)がこの症状を引き起こす可能性があるのでしょうか? 実際のバスアクティビティがない場合、FlexCANは最初の数ビットのアービトレーション処理が完了した時点で(フレーム全体を完了してACKスロットで失敗するのではなく)処理を中止するのが想定される動作でしょうか?ビット監視メカニズムに関する私の理解を確認したいです。 サンプルプロジェクトのRTDバージョンの不一致についてですが、どのRTDバージョンが特定のS32構成ツールのリリースと一致しているか確認する方法はありますか?そうすれば、一致するサンプルパッケージを入手できます。 ご協力ありがとうございました。 よろしくお願いいたします、エイプリル Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、ジュリアンさん。 私の質問にご回答いただき、本当に驚き、そして感謝しています。   私は自作のハードウェアボードを使っています。公式のEVB回路と異なるのは電源回路のみであり、それ以外の回路はリファレンス・デザインと整合しています。 公式のCAN例プロジェクトもテストしました。MCALレイヤー内のPORTモジュールを有効化および設定せずにCAN0ピンのみを設定したところ、プロジェクトのコンパイルが繰り返し失敗します。   具体的なコンパイルエラーは次のとおりです。 「 f ../board/Port_Ci_Port_Ip_Cfg.h:47:10: fatal error: Port_Ci_Port_Ip_Types.h: そのようなファイルまたはディレクトリはありません"。   自分で設定したプロジェクトファイルにはこのヘッダーファイルが存在するのですが、公式のサンプルプロジェクトをインポートした後、コード生成時にこのヘッダーファイルが自動的に生成されません。 このヘッダーファイルの欠如エラーは、IDEソフトウェアのバージョンが不一致であることが原因かもしれませんか?現在は S32プラットフォーム用のS32DSで開発しており、開発環境を切り替えるために ARM 2.2.2用のS32DS をダウンロードしています。 ご指導をお待ちしております。   よろしくお願いいたします。   4月 Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、 @April さん。 プロジェクトを見る限り、設定と手順は正しいようです。NXPのS32K148EVBを使っているのか、それともカスタムデザインなのか教えていただけますか? RTDに含まれているCan_example_S32K148プロジェクトをテストしてみましたか?CAN0ピンを追加し、ループバックモードを無効にしてTx/Rxを有効にしてルーチンをテストするだけで済みます。 最後に、両方のノード(S32K148とCANアナライザー)が同じビットタイミングとプロトコル構成(CAN対CAN FD)に設定されているか確認しましたか?以下のツールを使って値を計算できます:MPC5xxx/S32Kxx/LPCxxxx: CAN / CAN FD ビットタイミング計算。 カスタム設計を使用する場合は、S32K148 EVBの回路図およびS32K1xxのハードウェア設計ガイドラインを参照して、CANインターフェース設計や推奨事項を確認できます。 よろしくお願いします、 ジュリアン Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、 @April さん。 1. はい、これはモジュール構成ではなくトランシーバの故障を示しています。カスタム設計で使われているトランシーバは確認できますか? I'd recommend checking STB, EN, S, RS, WAKE, INH, or similar pins against the actual mounted トランシーバ. S32K148 EVBはUJA1132HWを使用しますが、 TJA1043のようなものを使用する場合は、ノーマルモード( STB_N = high、 EN = high)に設定する必要があります。 2. はい、トランシーバが実際にバスを駆動していない場合、数ビットの仲裁後の早期中止は可能です。 3. 通常、「異なるベンダーID」や「AutoSarバージョン番号が異なる」というエラーは、プロジェクトをインポートし、異なるRTDやS32設定ツールのバージョンで設定を更新しようとした際に発生しますが、単に「File -> New -> S32DS Project From Example」から例をインポートした場合は、互換性の問題は起きないはずです。 共有してくれたプロジェクトから、S32K1 RTD 3.0.0を使っているようですねしかし、プロジェクトをインポートしたところ、プロパティからGCC 11.4が設定されていることがわかります: RTDリリースノートより、3.0.0QLP04はNXP GCC 10.2のみをサポートしています: プロジェクトをどのようにインポートしてコンパイルしたのかはわかりませんが、少なくともS32DS 3.6.4がインストールされていることを確認してください。RTDパッケージは1つだけインストールされていました。S32DSは複数のRTDバージョンを同時にサポートしていません。 よろしくお願いします、 ジュリアン Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、ジュリアンさん。 この件に関して、引き続きご辛抱いただきありがとうございます。前回のメッセージ以降、いくつか更新情報があります。 トランシーバーチェック: よく見てみたら、UJA1132シリーズSBCではなく TJA1051であることが確認されました。このモデルはイネーブピン(Sピン)が1つだけで、ボードのアースにハードワイヤードされている(=ノーマルモード)ので、あなたが言及したマルチピンSTB_N/ENのロジックはここではあまり当てはまりません。制御回路のその部分はすでに正しく見えます。 別の独立したプロジェクトと照合してください: このボード用に全く異なるCANデモを作って実行しました(リセラーから、RTD/AUTOSARの代わりに古いプロセッサ Expert/S32 SDKスタック(can_pal)を使って)。ボタンを正しく押すとCAN_Send()が呼び出されますが、戻り値が常にSTATUS_BUSY(0x002)であることに気づきました。これは、前回の送信が実際には完了していないことを意味します。そして私のRTDプロジェクトと同様に、USB-CANアナライザーは3つのチャネルすべてで何も受信しません。つまり、完全に独立した2つのドライバースタックが同じ結果になっているので、これはソフトウェアや設定の問題ではないとかなり自信を持っています。 公式の例プロジェクトについて: ご提案通りGCCバージョンを10.2に戻しましたが、ビルド中に同じ「ファイルが見つかりません」エラーが出ます。さらに調べてみたところ、ポートモジュール(MCALレイヤー)が完全に設定されていないことに関係しているのではないかと疑っています。ポートモジュールとピンツールの機能グループの連携に関連した検証エラーがあるようですが、どんなに試しても正しく設定できていません。 これらは例です。 これは私が以前自分で作ったプロジェクトからのものです。 これまでの状況を踏まえると、コントロールピンの配線は正確で、ピンのTXDも正確であることが確認され、2つの独立したソフトウェアスタックでも3つのチャネルすべてで一貫して「バス活動なし」/送信動作が止まっていることを示しています。これをハードウェアの故障として扱いRMAを進めるに値すると思いますか?それとも他に最初に確認すべき点はありますか? この件に関してご協力いただき、改めて感謝申し上げます。 よろしくお願いいたします、エイプリル Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、 @April さん。 追加情報ありがとうございます。 1. TJA1051に関して、このトランシーバはノーマルモードを設定するためにSピンのみを持っていますが、TJA1051T/E微分を使っている場合は、 HIGHを駆動しなければならない追加のENピンがあるので確認してください。 2. 「ファイルが見つかりません」エラーは、ポート設定の誤り、ひいてはツールによるコード生成の誤りが原因である可能性が最も高いです。あなたが共有したポートコンテナのエラーは、「ピン」機能グループ名が 「ポートコンテナ名」+「ペリフェラル機能グループ」の後に名前付けされるべきであり、あなたの場合は「PortContainer_0_VS_0」と呼ばれています。 RMAを依頼する前に、添付したプロジェクトをテストしてもらえますか?これはMCALのシンプルなテストコードで、Rxを割り込みモードで、Txをポーリングモードで有効にします。10回のフレームのエコーが正常に完了すると、緑色のLEDが点滅します。 J11 CANヘッダーとPCAN-USBアナライザーでルーチンを以下の設定でテストしました: フレームが正常にエコーされているのが見え、緑色のLEDは10フレームごとに切り替えられていました: 私はS32K148-EVBを使っているのでトランシーバーのイネーブルメントは不要ですが、あなたの環境ではTJA1051が正しく有効になっているか(そしてENピンも有効化が必要かどうか)を確認してください。 よろしくお願いします、 ジュリアン Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、 @April さん。 すべてが期待通りに動作するようになって本当に嬉しいです! 先ほどのエラーの原因を教えていただけますか?単純なハードウェア接続だったのでしょうか? あなたも良い一日をお過ごしください! よろしくお願いします、 ジュリアン Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、ジュリアンさん。 すべてが完璧に動作していることをお伝えするのが待ちきれません!この朗報をお伝えできて、本当に嬉しいです。再テスト用に新しいMCUボードとCANトランシーバーを注文しましたが、今回は通信が完璧に動作しています。以前発生していた頻繁なBusOffエラーは、完全にハードウェアの故障だったことが判明しました。 添付していただいたテストプロジェクトも読み込んでみましたが、こちらも問題なく動作しました。サンプルコードは、あなたが説明した通り、CANフレームをスムーズに送受信できます。 この数日間、あなたが私に与えてくれた忍耐強い指導に本当に感謝しています。この問題の解決に一人では全く手詰まりで途方に暮れていましたが、あなたの詳細な回答のおかげで窮地から抜け出すことができました。 皆様のご健康と、仕事の順調な進行、そして毎日の幸せをお祈り申し上げます! よろしくお願いします、 4月 Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、 @Julián_AragónM さん、 ハハ、配線の問題じゃなかったよ。元のTJA1051トランシーバーモジュールは欠陥があり、BusOffの問題を引き起こしました。 改めて、たくさんの助けを本当にありがとうございます!^_^ よろしくお願いします、 4月
查看全文
flex-installer「lsdk2606」バージョンを使用している「imx95-15x15-frdm」Debianで「Weston.Service」に問題が発生しました。 こんにちは、 flex-installerバージョン「 lsdk2606 」を使用してDebianイメージをインストールしました。 ネタバレ (ハイライトして読む) Sudo Flex-installer -I auto -d /dev/sdX -m imx95-15x15-frdm Sudo Flex-installer -I auto -d /dev/sdX -m imx95-15x15-frdm 私のimx95-15x15-frdmでは その後、標準の手順に従ってインストールを続行しました。 ネタバレ (ハイライトして読む) debian-post-install-pkg debian-post-install-pkg すべてのパッケージをインストールし再起動した後、起動時に以下のエラーが発生しました: ネタバレ (ハイライトして読む) [失敗] weston.service - W…nd コンポジターをシステムサービスとして起動できませんでした。 [失敗] weston.service - W…nd コンポジターをシステムサービスとして起動できませんでした。 ネタバレ (ハイライトして読む) root@imx95-15x15-frdm:~# systemctl status weston.service × weston.service - システムサービスとしてのWaylandコンポジタであるWeston ロード済み: ロード済み (/usr/lib/systemd/system/weston.service;有効; プリセット: 有効) アクティブ: 失敗 (結果: 終了コード) 2026年7月20日(月) 13:51:20 UTC以降; 19秒前 呼び出し: 67b22b0fa1484ce681d8b2acdc107add トリガー: ● weston.socket ドキュメント: man:weston(1) man:weston.ini(5) http://wayland.freedesktop.org/ プロセス: 408 ExecStart=/usr/bin/weston --log=${XDG_RUNTIME_DIR}/weston.log --modules=systemd-notify.so (code=exited, status=1/FAILURE) メインPID: 408 (コード=終了、ステータス=1/失敗) メモリピーク:3.5M CPU: 49ms 7月20日 13:51:19 imx95-15x15-frdm systemd[1]: weston.service - WaylandコンポジタであるWestonをシステムサービスとして開始します... 7月20日 13:51:19 imx95-15x15-frdm (weston)[408]: pam_unix(weston-autologin:session): user root(uid=0) by (uid=0) がセッションを開きました 7月20日 13:51:20 imx95-15x15-frdm systemd[1]: weston.service:メインプロセスが終了しました。終了コード=exited、ステータス=1/FAILURE 7月20日 13:51:20 imx95-15x15-frdm systemd[1]: weston.service:結果「exit-code」で失敗しました。 7月20日 13:51:20 imx95-15x15-frdm systemd[1]: weston.service - WaylandコンポジタであるWestonをシステムサービスとして起動できませんでした。 root@imx95-15x15-frdm:~# systemctl status weston.service×weston.service - Wayland コンポジタである Weston をシステム サービスとしてロードしました: ロード済み (/usr/lib/systemd/system/weston.service;有効; プリセット: 有効) アクティブ: 失敗 (結果: 終了コード) 2026年7月20日(月) 13:51:20 UTC以降; 19秒前 呼び出し: 67b22b0fa1484ce681d8b2acdc107add トリガー: ● weston.socketドキュメント: man:weston(1) man:weston.ini(5) http://wayland.freedesktop.org/プロセス:408 ExecStart=/usr/bin/weston --log=${XDG_RUNTIME_DIR}/weston.log --modules=systemd-notify.so (code=exited, status=1/FAILURE) メインPID: 408 (code=exited, status=1/FAILURE) メモリピーク:3.5M CPU: 49ms 7月20日 13:51:19 imx95-15x15-frdm systemd[1]: weston.service - Weston、Waylandコンポジター、システムサービスとして...7月20日 13:51:19 imx95-15x15-frdm (weston)[408]: pam_unix(weston-autologin:session): ユーザーroot(uid=0) by (uid=0) がユーザーroot(uid=0)のためにセッションを開きました by (uid=0) 7月20日 13:51:20 imx95-15x15-frdm systemd[1]: weston.service:メインプロセスが終了しました。コード=exited、ステータス=1/FAILURE 7月20日 13:51:20 imx95-15x15-frdm systemd[1]: weston.service:結果「exit-code」で失敗しました。Jul 20 13:51:20 imx95-15x15-frdm systemd[1]: weston.service - Wayland コンポジタである Weston をシステム サービスとして起動できませんでした。 ネタバレ (ハイライトして読む) root@imx95-15x15-frdm:~# cat /run/user/0/weston.log 日付: 2026年7月20日 UTC [12:34:22.150]ウェストン 14.0.2 https://wayland.freedesktop.org バグ報告先: https://gitlab.freedesktop.org/wayland/weston/issues/ ビルド: LSDK-25.12_DEBIAN-13_LF-6.12.20-168-g2ddc741+ [12:34:22.153]コマンドライン: /usr/bin/weston --log=/run/user/0/weston.log --modules=systemd-notify.so [12:34:22.153]OS: Linux、6.12.49、#5 SMP PREEMPT 2026年5月28日木曜日 13:07:26 KST、aarch64 [12:34:22.153]フライトレコーダー:有効 [12:34:22.155]設定ファイル「/etc/xdg/weston/weston.ini」を使用します。 [12:34:22.156]出力再描画ウィンドウの最大時間は16ミリ秒です。 [12:34:22.158]モジュールの読み込み '/usr/lib/libweston-14/drm-backend.so' [12:34:22.162]モジュールの読み込みに失敗:libdisplay-info.so.1:共有オブジェクトファイルを開けません:そのようなファイルやディレクトリはありません [12:34:22.162]致命的エラー: コンポジターバックエンドの作成に失敗しました root@imx95-15x15-frdm:~# cat /run/user/0/weston.logDate:2026年7月20日 UTC[12:34:22.150]weston 14.0.2https://wayland.freedesktop.orgバグは https://gitlab.freedesktop.org/wayland/weston/issues/Build に報告します。LSDK-25.12_DEBIAN-13_LF-6.12.20-168-g2ddc741+[12:34:22.153]コマンドライン: /usr/bin/weston --log=/run/user/0/weston.log --modules=systemd-notify.so[12:34:22.153]OS: Linux, 6.12.49, #5 SMP PREEMPT 2026年5月28日(木) 13:07:26 KST, aarch64[12:34:22.153]フライトレコーダー:有効[12:34:22.155]設定ファイル「/etc/xdg/weston/weston.ini」を使用しています[12:34:22.156]出力再描画ウィンドウの最大時間は16ミリ秒です。[12:34:22.158]モジュールの読み込み '/usr/lib/libweston-14/drm-backend.so'[12:34:22.162]モジュールの読み込みに失敗しました: libdisplay-info.so.1: 共有オブジェクトファイルを開けません: そのようなファイルやディレクトリはありません[12:34:22.162]致命的エラー: コンポジターバックエンドの作成に失敗しました 私も同じエラーが出ています(関連があるかどうかはわかりませんが)、でも画面には何も表示されません。 ネタバレ (ハイライトして読む) it6263 3-004c: DDC FIFOのクリアに失敗しました it6263 3-004c: EDIDの読み取りに失敗しました it6263 3-004c: DDC FIFOのクリアに失敗しました。it6263 3-004c: EDIDの読み取りに失敗しました。 Re: Issue "Weston.Service" on the "imx95-15x15-frdm" Debian using flex-installe root@imx95-15x15-frdm:~# ldd /usr/lib/libweston-14/drm-backend.so Linux-vdso.so.1 (0x0000ffffac56c000) libweston-14.so.0 => /USR/lib/libweston-14.so.0 (0x0000ffffac410000) libwayland-client.so.0 => /lib/aarch64-Linux-gnu/libwayland-client.so.0 (0x0000ffffac3e0000) libpixman-1.so.0 => /lib/aarch64-linux-gnu/libpixman-1.so.0 (0x0000ffffac330000) libwayland-server.so.0 => /lib/aarch64-linux-gnu/libwayland-server.so.0 (0x0000ffffac2f0000) libdrm.so.2 => /usr/lib/libdrm.so.2 (0x0000ffffac2b0000) libudev.so.1 => /lib/aarch64-linux-gnu/libudev.so.1 (0x0000ffffac250000) libdisplay-info.so.1 => 見つかりません libgbm.so.1 => /usr/lib/libgbm.so.1 (0x0000ffffac220000) libseat.so.1 => /lib/aarch64-linux-gnu/libseat.so.1 (0x0000ffffac1f0000) libinput.so.10 => /lib/aarch64-linux-gnu/libinput.so.10 (0x0000ffffac170000) libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffffabfb0000) /lib/ld-linux-aarch64.so.1 (0x0000ffffac520000) libxkbcommon.so.0 => /lib/aarch64-linux-gnu/libxkbcommon.so.0 (0x0000ffffabf40000) libffi.so.8 => /lib/aarch64-linux-gnu/libffi.so.8 (0x0000ffffabf10000) libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffffabe60000) libcap.so.2 => /lib/aarch64-linux-gnu/libcap.so.2 (0x0000ffffabe30000) libsystemd.so.0 => /lib/aarch64-linux-gnu/libsystemd.so.0 (0x0000ffffabd00000) Libmtdev.so.1 => /lib/aarch64-linux-gnu/libmtdev.so.1 (0x0000ffffabcd0000) libevdev.so.2 => /lib/aarch64-linux-gnu/libevdev.so.2 (0x0000ffffabc90000) libwacom.so.9 => /lib/aarch64-linux-gnu/libwacom.so.9 (0x0000ffffabc60000) libgudev-1.0.so.0 => /lib/aarch64-linux-gnu/libgudev-1.0.so.0 (0x0000ffffabc30000) libgobject-2.0.so.0 => /lib/aarch64-linux-gnu/libgobject-2.0.so.0 (0x0000ffffabba0000) libglib-2.0.so.0 => /lib/aarch64-linux-gnu/libglib-2.0.so.0 (0x0000ffffaba10000) libatomic.so.1 => /lib/aarch64-linux-gnu/libatomic.so.1 (0x0000ffffab9e0000) libpcre2-8.so.0 => /lib/aarch64-linux-gnu/libpcre2-8.so.0 (0x0000ffffab920000) Re: Issue "Weston.Service" on the "imx95-15x15-frdm" Debian using flex-installe 以下のコマンドを実行して出力を共有してもらえますか? find /usr -name "libdisplay-info*" よろしくお願いします。 Re: Issue "Weston.Service" on the "imx95-15x15-frdm" Debian using flex-installe 最新情報のご提供ありがとうございます。 システム上にはlibdisplay-infoが存在するのがわかりますが、Westonのログはlibdisplay-info.so.1を探しており、インストール済みのライブラリはLibdisplay-info.so.2のようです。 以下のコマンドを実行して出力を共有してもらえますか? ldd /usr/lib/libweston-14/drm-backend.so これにより、ライブラリのバージョン不一致やその他の依存関係の欠落がないかを確認するのに役立ちます。 Re: Issue "Weston.Service" on the "imx95-15x15-frdm" Debian using flex-installe Hello root@imx95-15x15-frdm:~# find /usr -name "libdisplay-info*" /usr/lib/aarch64-linux-gnu/libdisplay-info.so.2 /usr/lib/aarch64-linux-gnu/libdisplay-info.so.0.2.0 /usr/share/doc/libdisplay-info2
查看全文
Wi-Fi Chipset MCU Control Hello everyone, I was browsing for some wifi modules with AP+STA functionalities. I found some modules from NXP, Microchip, and Infineon for example. However, most of the modules are only enabling wifi interface through PCIe and with advanced OS. However, I found a set of MCU+Wifi module from infineon called AIROC CYW55X (series). Do you have any experience integrating and controlling these type of modules? If so, can you share different modules that you have used before and were able successful to integrate with an external MCU? My intention is not to offload data to the microcontroller, only to control for example the mesh and AP capabilities. I want to use a MCU (STM for example) to perform some inference on some basic AI models while controlling the wifi module. Thanks guys Re: Wi-Fi Chipset MCU Control Dear @ajihu , Based on your description, especially for running basic AI models, RW61X (RW610/RW611/RW612) may already be sufficient for your application. RW61X integrates: - MCU - Wi-Fi - Bluetooth LE - (RW612 also supports 802.15.4 / Thread) For basic AI inference workloads, RW61X can run both the application and wireless connectivity stack on a single device, potentially eliminating the need for an additional MCU. However, it is important to clarify what you mean by "Mesh". RW61X does NOT support: - IEEE 802.11s Mesh - EasyMesh RW61X supports: - Matter - Thread - Zigbee (via 802.15.4 ecosystem) - STA + uAP concurrent mode [Note] If additional AI processing performance is required, you may consider: - i.MX RT700 + IW61X - i.MX RT1170 + IW61X - i.MX RT1180 + IW61X Please note that these solutions also do NOT support: - IEEE 802.11s Mesh - EasyMesh They support: - Matter - Thread - Zigbee - STA + uAP concurrent mode Thanks! Best Regards, Weidong
查看全文
マルチディスプレイセットアップによるi.MX8 QuadMax上のAAOS 15におけるマルチユーザー機能の有効化 こんにちは、チームの皆さん、 i.MX8 QuadMax プラットフォーム 上で Android Automotive OS(AAOS) 15 を使用しています 。 現在 の ハードウェア 構成は 、 3つの ディスプレイ で構成されています 。 メインセントラルディスプレイ(運転席/センターディスプレイ) 乗客ディスプレイ インストルメントクラスターディスプレイ この プラットフォーム 上で 、 ユーザー 切り替え、 ゲスト ユーザー 、 ユーザー固有の アプリケーションや設定 のサポート を含む Android マルチユーザー 機能を 有効 化・ 検証 したい と考えています。 CAN you please provide guidance on the following: i.MX8QM の AAOS 15 で マルチユーザー サポート を有効にする には どのような 構成 が必要です か? NXP 側 で BSP固有の 変更 が 必要 でしょ う か ? どの フレームワーク オーバーレイ、 機能 フラグ、 または システム プロパティ を有効に する 必要があります か? 何か ご助言 や 推奨される 手順が あれば、 大変 ありがたい です 。   よろしくお願いします。 Re: Enabling Multi-User Functionality in AAOS 15 on i.MX8 QuadMax with Multi-Display Setup こんにちは、 @harshi03さん 公式のAndroid オートモーティブ ドキュメントをご参照ください: Android オートモーティブ マルチユーザー サポート 前景および背景のユーザーシステム処理 複数のディスプレイで同時利用する場合は、Android Automotiveのマルチディスプレイおよび占有ゾーンアーキテクチャを参照してください。 Android オートモーティブ 15の機能 マルチディスプレイ通信API よろしくお願いします、 志明
查看全文
Wi-FiチップセットMCU制御 こんにちは、みんな、 AP+STA機能を備えたWi-Fiモジュールを探していました。例えば、NXP、Microchip、Infineonなどのモジュールを見つけました。しかし、ほとんどのモジュールはPCIe経由でWiFiインターフェースを使えず、高度なOSでしか対応していません。 しかし、InfineonのAIROC CYW55X(シリーズ)というMCU+WiFiモジュールのセットを見つけました。 こういったタイプのモジュールの統合や制御に関する経験はありますか?もしそうなら、これまでに使っていて外部MCUとうまく統合できた他のモジュールを教えてもらえますか?私の意図は、データをマイクロコントローラにオフロードするのではなく、例えばメッシュやAPの機能を制御することです。 Wi-Fiモジュールを制御しながら基本的なAIモデルに対して推論を行うために、MCU(例えばSTM)を使っています。 ありがとう、みんな Re: Wi-Fi Chipset MCU Control @ajihu様、 あなたの説明からすると、特に基本的なAIモデルを動かすなら、RW61X(RW610/RW611/RW612)で十分かもしれません。 RW61Xは以下の積分を行います: - MCU - Wi-Fi - Bluetooth LE - (RW612は802.15.4 / Threadもサポート) 基本的なAI推論ワークロードにおいては、RW61Xはアプリケーションとワイヤレス・コネクティビティ・スタックの両方を1台のデバイス上で実行できるため、追加のMCUを不要にする可能性もあります。 しかし、「メッシュ」という言葉が何を意味するのかを明確にすることが重要です。 RW61Xは以下をサポートしていません: - IEEE 802.11s メッシュ - イージーメッシュ RW61Xは以下をサポートしています: - マター - Thread - ZigBee(802.15.4エコシステム経由) - STA + uAP 同時接続モード [注] 追加のAIプロセッシング性能が必要な場合は、以下のことを検討できます: - i.MX RT700 + IW61X - i.MX RT1170 + IW61X - i.MX RT1180 + IW61X これらのソリューションは以下もサポートしていませんのでご注意ください: - IEEE 802.11s メッシュ - イージーメッシュ 彼らは以下のサポート: - マター - Thread - ZigBee - STA + uAP 同時接続モード よろしくお願いします! よろしくお願いいたします。 維東
查看全文
Enabling Multi-User Functionality in AAOS 15 on i.MX8 QuadMax with Multi-Display Setup Hello Team, We are using Android Automotive OS (AAOS) 15 on the i.MX8 QuadMax platform. Our current hardware setup includes three displays: Main Central Display (Driver/Center Display) Passenger Display Instrument Cluster Display We would like to enable and validate Android multi-user functionality on this platform, including support for user switching, guest users, and user-specific applications/settings. Could you please provide guidance on the following: What configurations are required to enable multi-user support in AAOS 15 on i.MX8QM? Are there any BSP-specific changes needed from the NXP side? Which framework overlays, feature flags, or system properties must be enabled? Any guidance or recommended steps would be greatly appreciated.   Thank you. Re: Enabling Multi-User Functionality in AAOS 15 on i.MX8 QuadMax with Multi-Display Setup Hi @harshi03  Please refer to the official Android Automotive documentation: Android Automotive multi-user support Foreground and background user system handling For concurrent users on multiple displays, please refer to the Android Automotive multi-display and occupant-zone architecture: Android Automotive 15 features Multi-Display Communications API Best Regards, Zhiming
查看全文
Wi-Fi芯片组MCU控制 大家好, 我正在寻找一些具有 AP+STA 功能的 Wi-Fi 模块。例如,我找到了一些来自恩智浦半导体(NXP)、微芯科技(Microchip)和英飞凌科技(Infineon)的模块。然而,大多数模块仅通过 PCIe 和高级操作系统启用 wifi 接口。 不过,我找到了一套来自英飞凌的名为 AIROC CYW55X(系列)的 MCU+Wifi 模块。 您在集成和控制这类模块方面有经验吗?如果可以的话,您能否分享一下您之前使用过并成功与外部MCU集成的不同模块?我的目的不是将数据卸载到微控制器,而只是为了控制例如网状网络和接入点功能。 我想使用 MCU(例如 STM)对一些基本的 AI 模型进行一些推理,同时控制 wifi 模块。 谢谢大家 Re: Wi-Fi Chipset MCU Control 亲爱的@ajihu , 根据您的描述,特别是对于运行基本 AI 模型而言,RW61X(RW610/RW611/RW612)可能已经足以满足您的应用需求。 RW61X 集成了: - MCU - 无线上网 - 低功耗蓝牙 - (RW612 也支持 802.15.4 / Thread) 对于基本的 AI 推理工作负载,RW61X 可以在单个设备上运行应用程序和无线连接协议栈,从而可能无需额外的 MCU。 但是,有必要澄清一下您所说的“网状物”是什么意思。 RW61X 不支持: - IEEE 802.11s 网状网络 - EasyMesh RW61X 支持: - 事情 - 线 - Zigbee(通过 802.15.4 生态系统) - STA + uAP 并发模式 [注意] 如果需要额外的AI处理性能,您可以考虑: - i.MX RT700 + IW61X - i.MX RT1170 + IW61X - i.MX RT1180 + IW61X 请注意,这些解决方案也不支持: - IEEE 802.11s 网状网络 - EasyMesh 他们支持: - 事情 - 线 Zigbee - STA + uAP 并发模式 谢谢您! 顺祝商祺! 卫东
查看全文
在 i.MX8 QuadMax 上使用 AAOS 15 启用多用户功能,并设置多显示器 各位同事好, 我们 在 i.MX8 QuadMax 平台 上使用 Android Automotive OS( AAOS) 15 。 我们目前的硬件配置包括三个显示器: 主中央显示屏(驾驶员/中央显示屏) 乘客显示屏 仪表盘显示 我们 希望 在 该 平台 上 启用 和 验证 Android 多用户 功能 , 包括 支持 用户 切换、 访客 用户 和 用户特定的 应用 程序/设置 。 请问 您 能否 就 以下 问题 提供 指导 : 在 i.MX8QM 上 启用 AAOS 15 的 多 用户 支持 需要 哪些 配置 ? NXP 方面 是否 需要 对 电路板支持包 进行 任何 特定的 更改 ? 必须 启用 哪些 框架 覆盖层、 功能 标志 或 系统 属性 ? 任何指导或建议都将不胜感激。   谢谢! Re: Enabling Multi-User Functionality in AAOS 15 on i.MX8 QuadMax with Multi-Display Setup 嗨@harshi03 请参阅官方 Android Automotive 文档: Android Automotive 多用户支持 前台和后台用户系统处理 对于多个显示器上的并发用户,请参考 Android Automotive 多显示器和乘员区域架构: Android Automotive 15 功能 多显示器通信 API 此致, 志明
查看全文
How to generate a Standalone IAR toolchain project from MCUXSDK application example - KWX/MCWX To generate a hello world (suppose) example for KW47-EVK for IAR toolchain. We asume that IAR toolchain is already installed. Set IAR_DIR environment variable. In Windows, this can be done via Edit environment variables system option. Example: IAR_DIR=C:\iar\ewarm-9.60.1.    Note: IAR toolchain version may change. Type the following commands on your MCUXSDK workspace: cd mcuxsdk west build -b kw47evk ./examples/demos_apps/hello_world --toolchain=iar -t standalone_project -Dcore_id=cm33_core0 --pristine -d ./build/kw47evk/kw47evk_standalone_hello_world_iar​ IAR project should have been generated on  MCUXSDK_WS/mcuxsdk/build/kw47evk/kw47evk_standalone_hello_world_iar/iar directory. IAR project has .eww file extension.   Relevant links IDE Project Generation: https://mcuxpresso.nxp.com/mcuxsdk/latest/html/develop/build_system/IDE_Project.html# Note: Ruby is required for this feature. Typically, this tool is installed via MCUXpresso Installer. However, if having issues with this tool refer to the next link: Ruby Environment Setup: https://mcuxpresso.nxp.com/mcuxsdk/latest/html/develop/build_system/IDE_Project.html#ruby-environment-setup Suppose you want to generate a hello world example for KW47-EVK for IAR toolchain as the previous example, but this time LPTMR driver is required for low-power timer operating purposes. We asume that IAR toolchain is already installed and IAR_DIR variable is already set. The easiest way to accomplish this is to add the lptmr Kconfig symbols with ‘yes’ value at Board-Application level (Refer to Kconfig User Guide). In this case, the target prj.conf file is located on  MCUXSDK_WS/mcuxsdk/examples/_boards/kw47evk/demo_apps/hello_world.​ Edit this file and add the LPTMR required symbols:  CONFIG_MCUX_COMPONENT_driver.lptmr=y CONFIG_MCUX_COMPONENT_component.lptmr_adapter=y​ Type the following command on your MCUXSDK workspace:  west build -b kw47evk ./examples/demo_apps/hello_world --toolchain=iar -t standalone_project -Dcore_id=cm33_core0 --pristine -d ./build/kw47evk/kw47evk_standalone_hello_world_iar IAR project should have been generated on MCUXSDK_WS/mcuxsdk/build/kw47evk/kw47evk_standalone_hello_world_iar/iar directory. IAR project has .eww file extension. This time LPTMR drivers should be included in iar/drivers/lptmr    
查看全文
Front and Rear Lights – SW & HW Environment 1 Table of Contents • Introduction • Required Software • Required Hardware • References • Conclusion 2 Introduction This article belongs to the Front and Rear Lights series and describes the software and hardware environment used throughout the project. Before looking into signal routing, control logic, or integration aspects, it is important to first understand the tools and platforms that support the development and execution of the front and rear lights application. This article introduces the software components used to develop, configure, and deploy the application, together with the hardware platforms used to demonstrate the lighting functionality. This information provides the foundation needed for the remaining articles in the series. Model-Based Design sits at the center of the workflow. MathWorks tools handle the modeling of the front and rear lighting control logic, the definition of the CAN communication interfaces, and validation across simulation stages. NXP tools then deploy those models to the S32K3 target platform, wiring the generated application to real-time peripherals, LED driver hardware, and lighting feedback signals. 3 Required Software 3.1. Vehicle Network Toolbox Within this workflow, Vehicle Network Toolbox plays a central role in defining, simulating, and validating the CAN interfaces of the front and rear lights module. It brings DBC-driven message definitions directly into Simulink, allowing communication behavior to be tested alongside the control logic long before integration. Every command received from the central controller and every status message sent back to the network is modeled using the exact structure defined in the DBC files, keeping the application perfectly aligned with the vehicle-level specification. Vehicle Network Toolbox is available as an add-on in MATLAB/Simulink, adding support for CAN communication and DBC-based message definitions.   Figure 1 - Vehicle Network Toolbox 3.2. Stateflow Stateflow is used to model the control logic of both lighting modules, translating the CAN commands received from the central controller into concrete lighting actions. Each function is represented as a state machine, where transitions are triggered by incoming signals and internal conditions. This approach keeps the logic structured and readable: activation, deactivation, mode switching, and fault handling are all captured in the same diagram. Stateflow is available as an add-on that can be installed directly from within MATLAB/Simulink, extending the environment with state machine modeling capabilities. Figure 2 - Stateflow 3.3. NXP Model-Based Design Toolbox for S32K3 NXP Model-Based Design Toolbox for S32K3 is the link between the Simulink model and the S32K3 microcontroller. It takes care of generating the code, building it, and running it on the target, turning the lighting model into a real embedded application. Through its peripheral blocks, the model can directly use the resources needed by the front and rear lights modules, such as DIO, CAN, and UART without leaving the Simulink environment. It also connects to the NXP configuration tools and supports FreeMASTER for real-time monitoring, which makes it easy to check how the lighting logic actually behaves on the hardware. Figure 3 - Development flow diagram 4 Required Hardware 4.1. FRDM Automotive S32K312 Development Board (FRDM-A-S32K312) The front and rear lights application runs on the FRDM Automotive S32K312 Development Board, a development platform based on the NXP S32K312 microcontroller. The board provides access to the communication interfaces and processing capabilities of the target device while offering an integrated platform for software development, debugging, and validation activities. Within the scope of this project, the board is used to execute the lighting application and exchange messages with the central controller through the CAN network. Its communication interfaces, debugging connectivity, and expansion capabilities make it suitable for evaluating body electronics use cases and lighting control scenarios. Figure 4 - FRDM Automotive S32K312 Development Board 4.2. CAN analyzer Emulates the central controller when the node is not yet integrated with the full system. It injects the CAN commands defined in the DBC files (turn signals, headlight modes, hazard, brake indication, etc.) and captures the status messages sent back by the module, enabling the CAN interface and control logic to be validated in a controlled and repeatable way. 4.3. Addressable LED Strip The physical lighting output is represented by an addressable LED strip, in which each LED can be controlled individually. This makes it possible to reproduce all the relevant lighting functions on a single strip - turn signals, hazard lights, headlight modes, and brake indication - by assigning different LEDs or groups of LEDs to each function. The result is a clear visual representation of the module's behavior, making it easy to demonstrate how the control logic reacts to incoming CAN commands. 5 References Model-Based Design Toolbox (MBDT) MATLAB® and Simulink® Documentation S32K3 Microcontrollers FRDM Automotive S32K312 Development Board (FRDM-A-S32K312) 6 Conclusion This article described the software and hardware enablement required for the front and rear lights modules. The software environment combines MathWorks modeling and vehicle network capabilities with NXP target support, while the hardware environment brings together the FRDM Automotive S32K312 Development Board, a CAN analyzer, and an addressable LED strip. Together, these elements provide the foundation for modeling, simulation, communication, code generation, deployment, and validation of the lighting application. The next article will focus on the architecture and model description of the front and rear lights modules, including the control logic, CAN interfaces, and overall application structure.
查看全文
Using FreeMASTER block in Simulink 1 Table of Contents • Overview • Context • FreeMASTER Blocks • Generated ELF File • Application Example • References • Conclusion 2 Overview This article introduces the FreeMASTER blocks available in NXP Model-Based Design Toolbox (MBDT) and explains how they are used within a Simulink model to prepare an application for FreeMASTER integration. The primary focus is the FreeMASTER Config block, which enables the FreeMASTER Driver in the generated application and allows users to configure the communication interface and runtime parameters required by FreeMASTER. The article also introduces the FreeMASTER Recorder block, which can be used to add data-recording capabilities to the application. Why is this Important? Before FreeMASTER can communicate with an embedded application, the FreeMASTER Driver should be enabled and configured in the embedded application. The FreeMASTER blocks provided by MBDT simplify this integration process by allowing all required settings to be configured directly within the Simulink environment. This article is intended for: Simulink users working with NXP Model-Based Design Toolbox Developers integrating FreeMASTER into embedded applications Engineers interested in runtime monitoring and debugging Users preparing an application for future interaction with FreeMASTER By reading this article, you will understand how FreeMASTER support is enabled within a Simulink model and how the generated application is prepared for runtime communication and data access. You will also learn how the code-generation process produces an ELF file containing symbolic information corresponding to application variables, which is later used by FreeMASTER to access, monitor, and visualize application data. 3 Context Dedicated Simulink blocks integrate FreeMASTER into a Model-Based Design Toolbox project by automatically generating the software infrastructure required by the application. The overall workflow is illustrated below: Figure 1. FreeMASTER workflow In this workflow, the FreeMASTER blocks serve as the interface between the Simulink model and the FreeMASTER Driver that will be included in the generated application. 4 FreeMASTER Blocks FreeMASTER blocks can be found in the MBDT library under: S32K3xx Core, System, Peripherals and Utilities → Utility Blocks Figure 2. FreeMASTER Simulink Library Three blocks are available for FreeMASTER integration: FreeMASTER Config block FreeMASTER Poll block FreeMASTER Recorder block 4.1 FreeMASTER Config Block The FreeMASTER Config block is responsible for enabling and configuring the FreeMASTER Driver within the generated application. It inserts the software infrastructure required for communication between the embedded target and the FreeMASTER desktop tool and serves as the foundation for integrating FreeMASTER functionality into a Simulink model. Figure 3. FreeMASTER Config block This block provides a configuration interface divided into two sections: communication settings and runtime settings. 4.1.1 General Tab The General tab contains communication-related parameters: Connection Type – selects the communication interface used by FreeMASTER. Instance – specifies the peripheral instance assigned to FreeMASTER communication. Baudrate – defines the communication speed. ISR Priority – sets the interrupt priority associated with FreeMASTER communication. Figure 4. FreeMASTER General tab During configuration, a dedicated communication peripheral is assigned to the FreeMASTER Driver. In the example shown, communication is performed through LPUART6 operating at 115200 bps. Note: The peripheral assigned to FreeMASTER should not be reused simultaneously for other communication purposes. During initialization, the FreeMASTER Driver assumes control of the communication resources associated with the selected peripheral. 4.1.2 FreeMASTER Configuration Tab The FreeMASTER Configuration tab contains runtime-related settings: Mode – defines the FreeMASTER operating mode. Number of Scopes – specifies the number of available scope instances. Max Variables – defines the maximum number of variables handled by a scope. Automatic Buffer Size – automatically calculates communication buffer size. FIFO Receiver Queue Size – configures the receive queue used by the communication driver. Figure 5. FreeMASTER Configuration tab Together, these settings determine how the FreeMASTER Driver operates within the generated application. 4.2 FreeMASTER Recorder Block In addition to the configuration block, MBDT provides a FreeMASTER Recorder block that enables support for FreeMASTER recording functionality. Figure 6. FreeMASTER Recorder block Unlike the Config block, which is primarily focused on communication setup and driver integration, the Recorder block is designed for high-speed monitoring and visualization of application variables. It configures data acquisition resources that can be accessed later through the FreeMASTER desktop application, enabling detailed analysis of system behavior. The Recorder block is typically placed in application execution paths where rapidly changing signals need to be captured periodically. To support this, it uses an on-board memory buffer to store acquired samples, allowing high-frequency data to be recorded without requiring immediate transfer to the host PC. The buffered data can then be retrieved and displayed in FreeMASTER for waveform visualization, performance evaluation, and post-run analysis. The block provides the following configuration parameters: Id – unique identifier of the recorder instance. Name – user-defined recorder name. Buffer Size – amount of memory allocated for storing captured samples. Timebase – time reference used during recording operations. Figure 7. FreeMASTER Recorder block parameters The Recorder block is optional and can be used whenever runtime data recording capabilities are required. 4.3 FreeMASTER Poll Block MBDT also provides a FreeMASTER Poll block, which allows the application to explicitly call the FreeMASTER polling function within the Simulink model. Figure 8. FreeMASTER Poll block The Poll block does not require any configuration parameters. Its purpose is to provide a configurable location within the application where FreeMASTER communication handling and command processing can be executed. Figure 9. FreeMASTER Poll block mask The role of the Poll block depends on the operating mode selected in the FreeMASTER Config block. When the FreeMASTER Driver is configured in Poll Mode, the Poll block is responsible for both communication handling and command processing. When the Driver operates in Short Interrupt Mode, communication is handled by interrupts, while command processing is performed through the Poll block. Note: For both Poll Mode and Short Interrupt Mode, the Poll block is required and should be placed in an execution path that runs periodically, such as the application's main step function, to ensure timely processing of FreeMASTER requests. When the FreeMASTER Driver is configured in Long Interrupt Mode, communication handling and command processing are performed entirely by the driver interrupt routines. In this configuration, the Poll block is not required, and its execution has no effect on FreeMASTER operation. The Poll block complements the FreeMASTER Config and FreeMASTER Recorder blocks by providing a configurable mechanism for communication processing when required by the selected FreeMASTER operating mode. 5 Generated ELF File Once the FreeMASTER blocks have been added and configured, the model can be built using the standard code-generation workflow provided by Embedded Coder and MBDT. In addition to the application code generated from the Simulink model, the build process also produces an ELF (Executable and Linkable Format) file. When debug information is enabled during the build process, the ELF file contains symbolic information about application variables, functions, and memory locations stored in the DWARF debug sections. Otherwise, this information may be removed, preventing the FreeMASTER desktop tool from extracting the symbols required for variable access and monitoring. The ELF file is later loaded by the FreeMASTER desktop tool, allowing variables to be identified automatically without requiring manual memory address entry. This enables features such as variable monitoring, runtime configuration, data visualization, and recording. Note: Generating a valid ELF file with debug information is an important preparation step before attempting to establish communication with the target application. 6 Application Example To showcase the concepts described above, we can create a simple Simulink model example that uses the FreeMASTER Config block together with two application variables: counter and increment . In this example, the counter variable is periodically incremented by the value of the increment variable. The increment variable can be modified at runtime by the user directly from the FreeMASTER desktop application, allowing the rate at which counter grows to be adjusted on the fly. Figure 10. Application example Simulink model This simple model demonstrates the two fundamental capabilities enabled by FreeMASTER integration: Variable monitoring – observing the value of counter as it changes over time. Runtime variable modification – updating the value of increment from FreeMASTER and immediately observing its effect on counter . Figure 11. FreeMASTER application of the counter example   Once the model is built and the resulting application is running on the target, both variables become accessible through FreeMASTER using the symbolic information contained in the generated ELF file. The user can watch counter update in real time and interactively change increment to influence the application's behavior without recompiling or reflashing the target. 7 References Introduction to FreeMASTER FreeMASTER Driver and Documentation Package – The FreeMASTER Driver and its accompanying documentation are delivered as part of the MBDT installation. After installing the toolbox, they can be found in the root installation directory: NXP_MBDToolbox_S32K3\FreeMASTER\ 8 Conclusion This article introduced the FreeMASTER Configuration blocks provided by NXP Model-Based Design Toolbox and explained their role in preparing a Simulink model for FreeMASTER integration. By configuring the block appropriately, developers can include the required FreeMASTER support in the generated application and produce an ELF file suitable for runtime access to application data. The next article in this series will demonstrate how to use the generated application and ELF file to establish a connection between the target device and the FreeMASTER desktop application.
查看全文
S32K3X8EVB-Q289 Power Supply Question I bought the S32K3X8EVB-Q289 board and need to purchase a power cable separately. Should I buy a power adapter with 12V 2A or higher? Or is there a product recommended by NXP? The FRDM-A-S32K358 uses a USB Type-C port, so it was sufficiently powered by a laptop's USB port, Re: S32K3X8EVB-Q289 Power Supply Question Hello @wj_kwak, Yes, as noted inside the S32K3X8 EVB HW UM, you can use any external power supply as long as it provides +12V/≥2A; Best regards, Julián
查看全文
s32k324 写入 Dflash 问题 我使用 S32DS3.5 + RTD2.0 开发了 S32K324。现在,我根据示例“Fee_Example_S32K344”中的配置和代码编写了 S32K324 的程序,并且编译成功了。但是程序运行时,一进入代码“Fls_Init(NULL_PTR);”就会报错。当我单步执行时,发现它无法跳过函数“Fls_IPW_Init();”。错误导致程序进入此函数“ static inline void DevAssert(volatile boolean x) { 如果(x) { } 否则 { for(;;) {ASM_KEYWORD(BREAKPOINT_INSTR);} } }" 所以我想如果RTD版本不支持S32K324来使用费用函数模型的话?或者能否给我一些其他通过 S32k324 的 eeprom 模式写入 Dflash 的示例? 谢谢。 Re: s32k324 write Dflash problem 由于所有项目工程都是基于 RTD2.0 创建的,因此迁移可能不太方便。如果RTD2.0能够修改和使用费用就最好了。您能帮我审核一下这个程序吗? Re: s32k324 write Dflash problem S32DS 生成的 Fls_IPW_Init() 函数是否会输出错误日志? Re: s32k324 write Dflash problem 嗨@mmyjh_123 , 能否分享一下项目文件,或者至少分享一下 .mex 文件?文件? 另外,你用的还是很老旧的RTD。 我建议升级到 RTD 7.0.1 版本。 谢谢! BR,丹尼尔 Re: s32k324 write Dflash problem 嗨@mmyjh_123 , 你有两个选择。 1. 要么将其更改为 VARIANT-PRE-COMPILE 就按你平时的方式称呼它吧: Fls_Init(NULL_PTR); 2. 或者选择 VARIANT-POST-BUILD 代替 并拨打电话: Fls_Init(&Fls_Config_BOARD_InitPeripherals); 此致, 丹尼尔 Re: s32k324 write Dflash problem 哦,我明白了,谢谢。
查看全文
V5705芯片 您好,我有一台适用于Clio 5汽车的收音机。它采用的是恩智浦V5707芯片。但我没有找到这款芯片的任何技术规格。这款芯片属于哪个TEF系列?(例如TEF6686、TEF6687、TEF6688、TEF6689等) 标记 = v5705 54 10 sSD1462
查看全文