Multi Source Translation Content

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

Multi Source Translation Content

Discussions

Sort by:
i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) Hello NXP community members, I have a custom board with an IMX6ULL and Qualcomm BT+Wifi combo chip on it. This project is based on Yocto kirkstone, linux-imx 5.15.71 kernel version. The communication method between mx6ull and qca9377 is sdio. I have a few questions about the occasional communication errors that occur during sdio communication between mx6ull and qca9377. 1. Set dts to use sdio clock speed of 132MHz imx6ul-14x14-evk.dtsi &usdhc1 { pinctrl-names = "default", "state_100mhz", "state_200mhz"; pinctrl-0 = <&pinctrl_usdhc1>; pinctrl-1 = <&pinctrl_usdhc1_100mhz>; pinctrl-2 = <&pinctrl_usdhc1_200mhz>; bus-width = <4>; vmmc-supply = <&reg_sd1_vmmc>; pm-ignore-notify; keep-power-in-suspend; non-removable; status = "okay"; }; &iomuxc { pinctrl_usdhc1: usdhc1grp { fsl,pins = < MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059 MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10071 MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17059 MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17059 MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17059 MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17059 MX6UL_PAD_GPIO1_IO00__GPIO1_IO00 0x130b0 >; }; pinctrl_usdhc1_100mhz: usdhc1grp100mhz { fsl,pins = < MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170b9 MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100b9 MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170b9 MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170b9 MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170b9 MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170b9 >; }; pinctrl_usdhc1_200mhz: usdhc1grp200mhz { fsl,pins = < MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170f9 MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100f9 MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170f9 MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170f9 MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170f9 MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170f9 >; }; }; 2.  mmc0 info # cat /sys/kernel/debug/mmc0/ios clock: 132000000 Hz actual clock: 132000000 Hz vdd: 21 (3.3 ~ 3.4 V) bus mode: 2 (push-pull) chip select: 0 (don't care) power mode: 2 (on) bus width: 2 (4 bits) timing spec: 6 (sd uhs SDR104) signal voltage: 1 (1.80 V) driver type: 0 (driver type B) 3. Sometimes the sdio communication error log like below is printed AR6000: SDIO bus operation failed! MMC stack returned : -84 __HIFReadWrite, addr:0X001000, len:00000256, Read , Sync Debug Assert Caught, File /usr/src/debug/kernel-module-qca9377/3.1-r0/git/CORE/SERVICES/HIF/sdio/linux/native_sdio/src/hif.c, Line: 1459, Test:status == A_OK || status == A_ECANCELED "Change sdio clock speed (132MHz -> 50MHz)" 1. set dts to use sdio clock speed of 50MHz. imx6ul-14x14-evk.dtsi &usdhc1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usdhc1>; bus-width = <4>; vmmc-supply = <&reg_sd1_vmmc>; pm-ignore-notify; keep-power-in-suspend; non-removable; status = "okay"; }; 2.  mmc0 info # cat /sys/kernel/debug/mmc0/ios clock: 50000000 Hz actual clock: 44000000 Hz vdd: 21 (3.3 ~ 3.4 V) bus mode: 2 (push-pull) chip select: 0 (don't care) power mode: 2 (on) bus width: 2 (4 bits) timing spec: 2 (sd high-speed) signal voltage: 0 (3.30 V) driver type: 0 (driver type B) 3. sdio communication error log is not displayed. 1. The sdio communication between mx6ull and qca9377 seems unstable when the sdio clock is set to 132MHz. Is there a way to improve it by modifying the dts value? 2. If not possible, what value do you recommend using for the sdio clock value? Thank you in advance. Best regards  i.MX6 All i.MX6UL Linux Yocto Project Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) refer to the data sheet, Signaling level of SDR104/SDR50 mode is 1.8 V. Pls check your HW and double confirm this Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) Dear  Joan Xie, Thank you for fast reply.   Let me explain ​a little more.   <HW> - Soc is NXP mx6ull processor (MCIMX6Y2DVM09AB) - mmc0 is connected to Qualcomm BT/WiFi Combo chip (sdio connection) -> 132MHz, 1.8V - mmc1 connected to 8G eMMC  -> 132MHz, 1.8V   <mmc0>     # cat /sys/kernel/debug/mmc0/ios     clock:     132000000 Hz     actual clock:  132000000 Hz     vdd:      21 (3.3 ~ 3.4 V)     bus mode:    2 (push-pull)     chip select:  0 (don't care)     power mode:   2 (on)     bus width:   2 (4 bits)     timing spec:  6 (sd uhs SDR104)     signal voltage: 1 (1.80 V)     driver type:  0 (driver type B)   <mmc1>     # cat /sys/kernel/debug/mmc1/ios     clock:     132000000 Hz     vdd:      21 (3.3 ~ 3.4 V)     bus mode:    2 (push-pull)     chip select:  0 (don't care)     power mode:   2 (on)     bus width:   3 (8 bits)     timing spec:  9 (mmc HS200)     signal voltage: 1 (1.80 V)     driver type:  0 (driver type B)   <Description> - Communication with the eMMC connected to mmc1 is running at 132MHz, 1.8V and there are no issues. - The sdio communication with the BT/WiFi chip connected to mmc0 is also driven at 132MHz, 1.8V, but intermittent sdio communication errors occur.   More questions is loke below: 1. For eMMC(mmc1), it seems to be guaranteed for HS200 (132MHz/1.8V), but for SDIO(mmc0) it seems to be guaranteed only up to 104MHz in SDR104 mode. Check please? 2. If so, is the maximum sdio clock speed guaranteed by the mx6ull chip up to 104MHz?    (I would like to confirm whether the MX6ULL chip can guarantee SDIO 132MHz clock speed.) gnani4080_0-1766369476736.png Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) Thank you for your fast reply. About question 1, I think I was a big mistaken. Sorry about that. And I checked that you  mentioned like below ""SD/SDIO UHS-I mode (up to 208 MHz in SDR mode, up to 50 MHz in DDR mode)" gnani4080_0-1766477971673.png So, if we use sdr104 in mmc0, the maximum clock is 208MHz, so is it possible to guarantee a 132MHz clock? Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) 1. For eMMC(mmc1), it seems to be guaranteed for HS200 (132MHz/1.8V), but for SDIO(mmc0) it seems to be guaranteed only up to 104MHz in SDR104 mode. Check please? >refer to the data sheet, can up to the UHS-I SDR104 mode 104MB/s max, not 104Mhz max, refer to the RM: SD/SDIO UHS-I mode (up to 208 MHz in SDR mode, up to 50 MHz in DDR mode) 2. If so, is the maximum sdio clock speed guaranteed by the mx6ull chip up to 104MHz? (I would like to confirm whether the MX6ULL chip can guarantee SDIO 132MHz clock speed.) >you can refer to the data sheet, for SDR104, the frequency can up to the 200Mhz, we have tested SDR104 on the mmc0 up to the 198Mhz, refer to your log, it seems your mmc1 works under  HS200?you can measure the clock by oscilloscope Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) yes, you can refer to the dtsi file, which set the 132M as default, you also can dump the clock tree to check if the clock is 132Mhz or not Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) Thank you joanxie, I'll check more to see if it's actually a clock speed issue and ask again. Thanks. Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) I debugged the above content in SW. Please answer my questions after confirming the details. 1. Chip Errata for the i.MX 6ULL     "ERR010450 MMC: EMMC can only run under or equal to 150 MHz"     https://www.nxp.com/docs/en/errata/IMX6ULLCE.pdf      ghkim_sj_0-1766996300598.png   2. SW debug 1) error value define     include/uapi/asm-generic/errno.h:67:#define EILSEQ 84 /* Illegal byte sequence */ 2) EILSEQ setting location     - cmd         drivers/mmc/host/sdhci.c: sdhci_cmd_irq()             if (intmask & (SDHCI_INT_TIMEOUT | SDHCI_INT_CRC | SDHCI_INT_END_BIT | SDHCI_INT_INDEX)) {                 if (intmask & SDHCI_INT_TIMEOUT)                     host->cmd->error = -ETIMEDOUT;                 else                     host->cmd->error = -EILSEQ;                         - data         drivers/mmc/host/sdhci.c: sdhci_data_irq()             if (intmask & SDHCI_INT_DATA_TIMEOUT)                 host->data->error = -ETIMEDOUT;             else if (intmask & SDHCI_INT_DATA_END_BIT)                 host->data->error = -EILSEQ; 3) log     [418.109795] [sdhci_cmd_irq()] intmask = 0xa0001     [418.114178] [sdhci_data_irq()] intmask = 0x200002     [418.118999] AR6000: SDIO bus operation failed! MMC stack returned : -84     [418.125847] __HIFReadWrite, addr:0X000800, len:00000044, Read , Sync     [418.144284] Debug Assert Caught, File /usr/src/debug/kernel-module-qca9377/3.1-r0/git/CORE/SERVICES/HIF/sdio/linux/native_sdio/src/hif.c, Line: 1459, Test:status == A_OK || status == A_ECANCELED 3. SDHCI register 1) intmask value of sdhci_cmd_irq() is 0xa0001     Bit 0  (0x00001)😞 SDHCI_INT_RESPONSE  -> Command response OK     Bit 17 (0x20000)😞 SDHCI_INT_INDEX     -> Command index error     Bit 19 (0x80000)😞 SDHCI_INT_CRC       -> Command CRC error 2) intmask value of sdhci_data_irq() is 0x200002     Bit 1  (0x00002)😞 SDHCI_INT_DATA_END  -> Data OK     Bit 21 (0x200000)😞 SDHCI_INT_DATA_CRC -> Data CRC error 4. guess the casue     According to imx6ull Errata ERR010450,     "SDR104 at 1.8 V can only work below or equal to 150 MHz."     If it can operate at up to 150MHz, it seems likely that cmd/data CRC errors will occur at 132MHz due to timing margins caused by temperature/voltage fluctuations, etc. 5. Question     Currently, we are in a situation where we cannot adjust the value through HW tuning and must respond through SW.     It seems that lowering the sdio clock value can reduce or eliminate the CRC error rate. What is NXP's opinion? Thank you. Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) Dear joanxie, Based on what you provided, I tested using the register below. sdhci-esdhc-imx.c #define ESDHC_MIX_CTRL_SMPCLK_SEL (1 << 23) #define ESDHC_MIX_CTRL_AUTO_TUNE_EN (1 << 24) #define ESDHC_MIX_CTRL_FBCLK_SEL (1 << 25)     SMPCLK_SEL        0     AUTO_TUNE_EN   1     FBCLK_SEL            1 1. test 1     1) set AUTO_TUNE_EN 1 -> 0     2) log         [ 39.150703] AR6000: Unregistering with the bus driver     3) wlan0 registration fail         $ ifconfig wlan0 up         ifconfig: SIOCGIFFLAGS: No such device 2. test 2     1) set FBCLK_SEL 1 -> 0     2) log         [ 39.160750] AR6000: Unregistering with the bus driver     3) also wlan0 registration fail         $ ifconfig wlan0 up         ifconfig: SIOCGIFFLAGS: No such device 3. test 3     1) set AUTO_TUNE_EN 1 -> 0 && FBCLK_SEL 1 -> 0     2) System freezes during boot as shown in the log below         [ 18.834619] wlan: loading driver v4.5.25.65         [ 18.894917] hifDeviceInserted: Dumping clocks (50000000,132000000) I tried modifying and testing it by referring to articles in the NXP community, but I was not satisfied with the results. Please note. Thanks for your help Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) I consulted from wireless team, they have already verified WIFI with imx6ull via usdhc, and can set max clock is 150Mhz, so for imx6ull side, can support this, and I found some WIFI chip would affect autotunning, so I suggest that you can disable these registers to check, if these aren't your root cause, I suggest that you need check your HW and pcb design, if you couldn't confirm this, you can submit a ticket for SCHEMATIC review Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) I consulted from wireless team, they have already verified WIFI with imx6ull via usdhc, and can set max clock is 150Mhz, so for imx6ull side, can support this, and I found some WIFI chip would affect autotunning, so I suggest that you can disable these registers to check, if these aren't your root cause, I suggest that you need check your HW and pcb design, if you couldn't confirm this, you can submit a ticket for SCHEMATIC review Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) Dear joanxie, Thank you for fast reply. I'll let you know after check refer to your guide. Have a nice day and weekend! Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) this is what I talked about before, the detailed information about auto-tuning affect the failure https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/uSDHC-auto-tuning-and-possible-SDIO-failures/ta-p/1352855 Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) Dear joanxie, Thank you for your kind guide. I debugged this issue by referring to the link you provided. 1. patch 1    1) patch using refer to the link you provided       https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/uSDHC-auto-tuning-and-possible-SDIO-failures/ta-p/1352855 2. patch 2    1) add "fsl,sdio-async-interrupt-enabled" on dts file imx6ul-14x14-evk.dtsi: &usdhc1 { fsl,sdio-async-interrupt-enabled; //add this line     2)  below part is enabled sdhci-esdhc-imx.c: usdhc_auto_tuning_mode_sel() /* * If sdio device use async interrupt, it will use DAT[1] to signal * the device's interrupt asynchronous when use 4 data lines. * Then hardware auto tuning circuit MUST NOT check the DAT[1] line, * otherwise auto tuning will be impacted by this async interrupt, * and change the delay cell incorrectly, which then cause data/cmd * errors. * This is the hardware auto tuning circuit limitation. */ if (imx_data->boarddata.sdio_async_interrupt_enabled) auto_tune_buswidth = ESDHC_VEND_SPEC2_AUTO_TUNE_1BIT_EN; After patching the above, the problem was not reproduced through debugging. (sdio clock changing test(50MHz->100MHz->132MHz), ping test, iperf3 test etc..) Just one more question to confirm patch you guide. If I apply this patch, the problem will be fixed, but is there any possibility that it will have other effects on the sdio communication between mx6ull and the wifi chip?   Thank you for your support. Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) it's glad to hear these patch work, but in fact the new bsp already merge the, as I known, I don't hear any other exist issue between imx6ull and wifi chip Re: i.MX6ULL: Issue with 132MHz sdio clock out for BT+WiFi chip(Qualcomm QCA9377) Thank you joanxie, I aslo check another yocto version (imx-6.6.52, fslc-6.1.72) I found  similar patch like below on yocto scarthgap imx-6.6.52 version /* * For USDHC, auto tuning circuit can not handle the async sdio * device interrupt correctly. When sdio device use 4 data lines, * async sdio interrupt will use the shared DAT[1], if enable auto * tuning circuit check these 4 data lines, include the DAT[1], * this circuit will detect this interrupt, take this as a data on * DAT[1], and adjust the delay cell wrongly. * This is the hardware design limitation, to avoid this, for sdio * device, config the auto tuning circuit only check DAT[0] and CMD * line. */ if (imx_data->init_card_type == MMC_TYPE_SDIO) auto_tune_buswidth = ESDHC_VEND_SPEC2_AUTO_TUNE_1BIT_EN; esdhc_clrset_le(host, ESDHC_VEND_SPEC2_AUTO_TUNE_MODE_MASK, auto_tune_buswidth | ESDHC_VEND_SPEC2_AUTO_TUNE_CMD_EN, ESDHC_VEND_SPEC2); but not patched on yocto scarthgap fslc-6.1.72 version. I will check other yocto version using your guidance.  Thank you for support.
View full article
S32K3xx、FLS 阵列完整性检查 队员们好 是否有示例或验证测试项目可演示在旧 RTD 版本(如 3.0.0)的 FLS 驱动程序中使用 ArrayIntegrityCheck、我可以与客户分享吗? 我注意到较新 RTD 版本(例如 6.0.0)的用户手册包括此类示例,但我找不到旧版 FLS 的类似内容。 谢谢! BR,丹尼尔 RTD Re: S32K3xx, FLS ArrayIntegrityCheck 你好,我是@danielmartynek、 我附上了基于 RTD 3.0.0 的 C40_Ip_ArrayIntegrityCheck 示例P07 版本。 顺祝商祺! 丹 Re: S32K3xx, FLS ArrayIntegrityCheck 你好,@DanNguyenDuy、 谢谢你的举例。 由于目前不在办公室,我还没能进行测试。 但是,客户报告遇到了指令总线故障异常。 澄清一下:我的理解是,阵列完整性检查中涉及的 C40_Ip API 必须从 SRAM 中执行,因为闪存阵列在测试期间不可用。 这样做对吗? 能否确认在测试/验证驱动程序期间,从 SRAM 运行了哪些特定的驱动程序 API? 谢谢! BR,丹尼尔 Re: S32K3xx, FLS ArrayIntegrityCheck 你好,我是@danielmartynek、 1.这样做对吗? => 是的,这是正确的。 2.能否确认在测试/验证驱动程序期间,从 SRAM 运行了哪些特定的驱动程序 API? => 到目前为止,还没有特定的驱动程序支持在 SRAM 上运行 C40_Ip_ArrayIntegrityCheck。 顺祝商祺! 丹 Re: S32K3xx, FLS ArrayIntegrityCheck 你好,@DanNguyenDuy、 感谢您的回复。 我知道我们需要将C40_Ip_ArrayIntegrityCheck()和C40_Ip_CheckUserTestStatus()放在 SRAM 中。 是否有其他功能也需要放在 SRAM 中? C40_Ip 驱动程序的功能肯定已经测试过了,对吗? 那么,您能否提供有关测试设置的详细信息?如果驱动程序所有者能就验证是如何进行的发表评论,将会很有帮助。 BR,丹尼尔 Re: S32K3xx, FLS ArrayIntegrityCheck 你好,我是@danielmartynek、 RTD 团队使用 linker_ram 代替 linker_flash 测试了该功能。 在示例中,用户可以修改 makefile 中的一个变量:LOAD_TO=ram 以使用 linker_ram 顺祝商祺! 丹
View full article
MWCT2016S 无法更改 UART 波特率 嗨,恩智浦社区、 我有一个关于 MCAL 中 UART 模块配置的问题。我无法更改波特率。SBR 和 OSR 寄存器符合预期,但实际测量的波特率为 72254。请帮助解决这个问题。 感谢您的帮助! Johnson97_0-1765938756521.png Johnson97_1-1765938839658.png Re: MWCT2016S can't change UART baud rate 请参阅[RTD400 MCAL 3] K312 MCU 时钟系统配置 的 2.2 EB 配置 部分配置 Mcu 。 Re: MWCT2016S can't change UART baud rate 是的,我已经调用了 Mcu_DistributePllClock() 函数。 如有必要,附加文件包含基于参考例程的源代码。 Johnson97_0-1766022864617.png Re: MWCT2016S can't change UART baud rate 您是否在主函数中调用了Mcu_DistributePllClock()?请参考以下代码: /* Initialize the clock driver */ Mcu_Init(NULL_PTR); /* Initialize the clock tree and apply PLL as system clock */ Mcu_InitClock(McuClockSettingConfig_0); #if (MCU_NO_PLL == STD_OFF) while ( MCU_PLL_LOCKED != Mcu_GetPllStatus() ) { /* Busy wait until the System PLL is locked */ } Mcu_DistributePllClock(); #endif Re: MWCT2016S can't change UART baud rate HI 一开始,我使用了 aips 慢时钟,但问题依然存在。波特率为 142857。在我将时钟更改为 aips plat 之后,波特率发生了变化,甚至变得更低,达到了 72254,但仍然不是预期的波特率。 我和 UART 例程的区别似乎只在于核心时钟。我使用 PLL 作为核心时钟源。会是这个原因吗?使用 PLL 时有什么特别的注意事项吗? 如有必要,附件中包含我的 EB 项目。 Re: MWCT2016S can't change UART baud rate HI 请根据表 130配置UartClockRef 。S32K3XXRM Rev12 的LPUARTn 实例时钟。 对于 S32K312,LPUART [1:7] 由AIPS_SLOW_CLK 提供时钟。 祝好, Robin ------------------------------------------------------------------------------- 注: - 如果本帖回答了您的问题,请点击"ACCEPT AS SOLUTION" 按钮。谢谢! - 我们会在最后一次发帖后的 7 周内跟踪主题,之后的回复将被忽略 如果您以后有相关问题,请另开新主题,并参考已关闭的主题。 ------------------------------------------------------------------------------- Re: MWCT2016S can't change UART baud rate 问题已经解决。 非常感谢!
View full article
TWR-KV58 ハードフォールト おはよう TWR ボードに顕著なエラーがあります。以前、このボードを同じ状態で使用し、正常に動作していましたが、しばらくそのまま放置していたところ、突然、ハードフォールトが発生し、起動しなくなりました。 JTAG ケーブルをコネクテッド状態で Multilink を使用しています。以前もそうしました。ハードフォルトで直接スタートします。 これがスクリーンショットです pietrodicastri_0-1765878099381.png ジャンパー J19 と J20 は JTAG を使用するために開いています。それで十分なはずです。 何か提案してください。壊れているとしか思えません。 皆様ありがとうございました ピエトロ Re: TWR-KV58 Hard Fault おはよう ただサポートしてください。バックアップソリューションとしてすでに新しいものを注文しましたが、続行するには支援が必要です。 ありがとう Re: TWR-KV58 Hard Fault こんにちは@pietrodicastri 、 ご投稿ありがとうございます。これがソフトウェアの問題であるかどうかを判断するために、「Hello World」デモなど、SDK に含まれているデモを実行したときに HardFault が引き続き発生するかどうかを確認してください。 SDKリンク:ボードを選択 | MCUXpresso SDKビルダー 詳細については、 https://www.keil.com/appnotes/files/apnt209.pdfを参照してください。 Celeste_Liu_0-1766030502918.png BR セレステ Re: TWR-KV58 Hard Fault こんにちは ボードが動作するようになりました…サポートに感謝します。 今度は別のものを投稿します。 ありがとう ピエトロ
View full article
iMX6ULL 控制台 UART 与其他使用 RS-485 的 UART 相互干扰 iMX6ULL 系统,内核为 lf-6.6.52-2.2.1。控制台设置为 ttymxc3 上的 RS-485 串行端口 ttymxc0。收发器"驱动使能" 连接到 SNVS_TAMPER7,我们有一个 DTS: &iomuxc_snvs { pinctrl_rs485_snvs: rs485grp_snvs { fsl,pins = < MX6ULL_PAD_SNVS_TAMPER7__GPIO5_IO07 0x1b0b1 /* RS485.DE as RTS */ >; }; }; &uart4 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_rs485>, <&pinctrl_rs485_snvs>; fsl,dte-mode; rts-gpios = <&gpio5 7 GPIO_ACTIVE_HIGH>; linux,rs485-enabled-at-boot-time; status = "okay"; label = "rs485"; }; 我注意到,如果向控制台打印数据,会干扰 RS-485 串行端口:RTS/DE 信号有时会延迟 5-10 毫秒。该值在 9600 bps 时超过 3.5 个字符,这意味着由于主机仍在驱动总线,因此来自设备的响应将出现乱码。可以用以下方法复制: while true;do echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx >/dev/kmsg;done 这是一个已知的问题吗? i.MX6UL 疑似软件缺陷 Yocto Project Re: iMX6ULL console UART interferes with other UART using RS-485 你好@astrand 这似乎是 Linux 内核中的一个常见问题。以下是 LWN.NET 中的讨论。 printk/console 是一个速度慢的设备。当遇到大量日志时,内核必须同步向控制台写入信息。在这一过程中,它持有相关锁并消耗 CPU 时间,从而延迟其他任务调度和中断处理。即使您的控制台不同于 RS-485 串行端口,系统的整体调度/软中断/任务队列仍然会被拖慢。这将延迟 UART 传输完成事件到达驱动器并随后拉低 DE 位所需的时间。更多详情,请参阅该讨论。 https://lwn.net/Articles/909980/ 您可以尝试在运行时设置较低的控制台日志级别,或定义 rs485-rts-delayin dts. echo "4 4 1 7" > /proc/sys/kernel/printk 致敬, Zhiming
View full article
MPC5748G 将 uart 与 tcpip 结合使用 我想把以太网传输和串行端口打印功能结合起来。在代码 A 中,我试图在串行端口打印的基础上添加以太网传输功能 (tcpip),但失败了。我想在代码 B 的 LWIP 例程中添加串行端口显示功能,但按下 SW2 按钮后串行端口显示屏上看不到发送的信息。我不知道这两个地方设置得不对。 我是一名学生,这个问题已经困扰了我一个星期。如能解决,我将不胜感激 Re: MPC5748G combine uart with tcpip 我承认我用 AI 编写的代码是电子垃圾,但我不明白为什么在修改了两个例程的文件中使用相同的代码段只能实现一半的功能(UART 或 tcpip) 谁能帮帮我? QING_QUE_0-1765711747775.png
View full article
i.MX95 安卓 15_2.0.0 电路板支持包 — 480p 视频显示蓝色水平线(720p/1080p OK) 你好 、 我们在自定义板上使用搭载安卓 15_2.0.0 电路板支持包的 i.MX95。 我们只有在播放分辨率为 480p 的视频时才会遇到这个问题。 其他分辨率(如720p和1080p)也能正常播放,没有任何伪影。 在播放 480p 视频时,我们观察到蓝色水平线横跨整个显示区域。 此问题出现在所有显示界面上: *LVDS 面板 *HDMI *MIPI-DSI 显示器 因此,问题似乎与显示屏无关。 其他观察结果 ============================ 同样 的硬件(LVDS/HDMI/MIPI)在带有 480p 视频的 Linux 电路板支持包 中完美运行。 在 Android Auto 电路板支持包 15_1.3.0 中不会出现此问题。 → 在 Auto 电路板支持包 中,480p 的播放效果是干净的。 只有安卓 15_2.0.0 标准电路板支持包才显示这个 480p 的伪影。 Auto 电路板支持包是否有任何必须应用于标准电路板支持包的补丁? 随附参考照片供您审阅。 任何指导或补丁都将非常有用。 谢谢, Maruti Naik Re: i.MX95 Android 15_2.0.0 BSP – 480p Video Shows Blue Horizontal Lines (720p/1080p OK) 您能在 nxp imx95 板上重现这个问题吗? Re: i.MX95 Android 15_2.0.0 BSP – 480p Video Shows Blue Horizontal Lines (720p/1080p OK) 目前,我们没有与i.MX95 19×19 EVK板兼容的显示器。请尝试在您这边重现这个问题,并分享观察结果。 Re: i.MX95 Android 15_2.0.0 BSP – 480p Video Shows Blue Horizontal Lines (720p/1080p OK) 我用下面的演示图像测试了 480P 视频、 15.0.0_2.0.0_demo_95 这个玩家是仙人掌玩家,我没发现任何问题,我也测试了 1080p,所以我请你在恩智浦板上重现这个 Re: i.MX95 Android 15_2.0.0 BSP – 480p Video Shows Blue Horizontal Lines (720p/1080p OK) 感谢您的更新和在演示图像上的测试。 目前,由于我们这端没有兼容的显示器,我们无法在19×19 EVK板上测试显示。不过,我们观察到,在 "开发者选项 "中将显示布局更改为 "瀑布式剪切 "后,480p 回放问题消失了,而使用默认布局时,问题始终存在。 您是否了解默认布局配置可能出了什么问题,特别是影响 480p 视频播放的问题? Re: i.MX95 Android 15_2.0.0 BSP – 480p Video Shows Blue Horizontal Lines (720p/1080p OK) 如何在 "开发者选项 "中将显示布局更改为瀑布式剪切?
View full article
PN5180 库移植 IRQ 问题 你好,我正在使用 PN5180 和另一个品牌的 MCU,并试图将 NxpNfcRdLib_PN5180_v07.14.00_Pub 移植到我的项目中。我在项目中 添加了带有PH_OSAL_NULLOS 的NfcrdlibEx1_DiscoveryLoop 示例。 为了测试通信,我打印了 PN5180 的固件版本。 alig_ones_0-1765365621097.png 然后调用 然后调用 DiscoveryLoop_Demo 函数来读取 NFC 卡,但当 调用 phacDiscLoop_Run 函数。我跟踪找到确切位置,看到它在下面等待中断: alig_ones_1-1765365756616.png 我将 IRQ 引脚配置为上升沿,但它永远不会上升。问题出在哪里,如何解决?   Re: PN5180 Library Porting IRQ Issue 你好@alig_ones 希望你一切顺利。 请注意,将 NFC读取器库移植到第三方平台不在我们的支持范围内,此移植工作由客户自行负责。我们有针对我们产品组合中一些 MCU 的移植指南: NFC 读取器库移植 FRDM_K64F 、将 NFC 读取器库与 LPC55S69 一起使用以及将 NFC 读取器库移植到 i.MX RT1050 - NXP 社区。虽然您使用的是第三方主机 MCU,但这些指南可帮助您确定针对不同 MCU 应进行的修改。 请问您使用的是OM25180开发套件,还是基于 PN5180 的定制板? Eduardo。 Re: PN5180 Library Porting IRQ Issue 您好, 您观察到的行为可能与天线有关。由于您使用的是定制板,请确认您遵循了 PN5180 天线设计并且您的天线已正确调整。除了 NFC 天线工具 和 NFC 阅读器 天线设计 工具 之外,我们还建议参加 NFC 天线 设计系列培训 ,因为其中介绍了天线、优化和调试以及测试的主要方面。 为了正确设计天线,必须使用阻抗分析仪或 VNA 测量天线阻抗。这种 VNA 可用于测量天线线圈以及包括匹配电路在内的天线阻抗。您可以查看使用 miniVNA 对 NFC 和读卡器IC 天线的测量和调谐;本应用笔记为如何使用 miniVNA 网络分析仪测量和调整/匹配 NFC 和读卡器IC 天线提供了指导。此外,您还可以参考如何使用 NanoVNA 进行 NFC 读卡器天线设计。 关于图形用户界面,我想您指的是NFC 驾驶舱。PNEV5180B 评估板已准备好使用该工具;在该板中,PN5180 通过 SPI 连接到恩智浦 LPC1769 µC。值得注意的是,要将 PNEV5180B 与 NFC Cockpit 结合使用,需要在 LPC1769 上安装特定的固件。有关详细信息,请参阅《恩智浦 NFC 驾驶舱用户指南》。 Eduardo。 Re: PN5180 Library Porting IRQ Issue 你好,爱德华多、 我正在使用基于 PN5180 的自定义板。我将 LPCD 模式改为 PHHAL_HW_PN5180_LPCD_MODE_DEFAULT,现在我得到了中断,执行不再卡住。但它很少能读卡,我应该在 NFC 库中查找哪个关键字来增加读卡范围? 我读到 OM25180 可以与图形用户界面一起使用,我可以将其与 MCU 一起使用吗?谢谢。 这就是可以读取的结果: alig_ones_0-1765460651535.png Re: PN5180 Library Porting IRQ Issue 硬件团队更改了天线设计,现在读起来很好,谢谢。
View full article
[RTD] 优化 DMA 时 FlexIO I2C 无通道故障 你好@DanNguyenDuy Mobis 在尝试启用 DMA 优化时,没有遇到像下面这样的 FlexIO I2C 通道故障。 它被卡在 DevAssert(Master != NULL_PTR),但在我的审查中,通道索引似乎没有问题。 0 : LPI2C 1 : LPI2C 2 : FlexIO_0_1 : FlexIO I2C #0 / DMA Optimize / DMA timer2 3 :FlexIO_4_5 : FlexIO I2C #1 / DMA Optimize / DMA timer6 因此,FlexIO I2c 通道=1(I2c 通道=3)是正确的,但实际显示没有通道。 以下是 Mobis 对带有 DMA 优化功能的 FlexIO I2C 的配置 为什么 Master 会出现 NULL_PTR?请问如何调试? 启用 DMA 优化会有麻烦吗?Scatter Gather 是根据以下 RTD_I2C_UM.pdf 分配的 如果 DMA 优化设置有问题,且 STOP/NACK 未正确生成,会出现这种症状吗?能否提供 FlexIO I2C DMA 优化示例? RTD Re: [RTD] FlexIO I2C no channel trouble under DMA optimize 你好@alexyang 很抱歉我的回复晚了。我在 RTD_I2C_UM.pdf 中看到,I2C 插件中有一节指导如何配置 FlexIO DMA 优化: 请按照本节配置此功能。 Re: [RTD] FlexIO I2C no channel trouble under DMA optimize 你好@congnguyenphu 随信附上我对 FlexIO I2C DMA 优化的评估。 它以您提到的 I2C_UM 为基础,非常有用。 谢谢。 BRs, Alex Yang
View full article
i.MX93 A55 の Zephyr こんにちは、 i.MX93 Cortex-A55 で Zephyr を実行するための例が提供されており、hello_world をビルドし、u-boot プロンプト経由で DDR で実行できます。 u-bootの使用は避けたいです。ATF コードを参照しましたが、bl31 のビルドのみがサポートされています。「BootROM -> ATF BL2 -> ATF BL31 -> Zephyr」を実現したいのですが、BL2 をビルドするためのリファレンスはありますか? また、hello_world の例を OCRAM で実行したいのですが、手順を教えていただけますか。また、ここでもブートローダーが必要ですか。それとも JTAG 経由でバイナリを OCRAM に直接ロードできますか。 ありがとうございます Re: Zephyr on i.MX93 A55 こんにちは、 DDR 上で、BootROM --> BL2 --> BL3 --> Zephyr の順で Zephyr を起動できます。 内部 RAM で zephyr を実行したいです。ここに何か参考になるものはありますか? ありがとうございます
View full article
在 VSCode 中设置 Zephyr 环境时出错(python7.4-venv?) 你好。 我试图在 VSCode 中设置 Zephyr 环境,但在MCUXpresso 安装程序中点击安装按钮时出现错误。除其他事项外(我遵循了恩智浦在 LinkedIn 上发布的简短教程),我还设置了Zephyr Developer以进行安装。 教程:https://www.nxp.com/company/about-nxp/smarter-world-videos/HELLO-WORLD-DEMO-ZEPHYR-VID 系统要求我输入密码数十次(Linux 系统),但每次安装程序执行这一行时都会出错: [info] Executing command "pkexec apt -y install python7.4-venv" python7.4还存在吗? 然后我就收到了这些信息: [error] Command pkexec exited with code 100. [error] The python virtual environment module could not be installed. [error] Error occurred while installing Zephyr Python Dependencies: The virtual environment cound not be created. Skipping... 这不是拼写错误。看看这张图片: Captura de pantalla de 2025-12-04 23-39-26.png 有什么提示吗?我错过了什么吗? 先谢谢你了! Re: Error while setting Zephyr environment up in VSCode (python7.4-venv?) 您好!感谢您的及时回复。抱歉,上一篇文章没有提供详细资料。 fjrg76@fjrg76-amd:~$ cat /etc/os-release NAME="Linux Mint" VERSION="22.2 (Zara)" ID=linuxmint ID_LIKE="ubuntu debian" PRETTY_NAME="Linux Mint 22.2" VERSION_ID="22.2" HOME_URL="https://www.linuxmint.com/" SUPPORT_URL="https://forums.linuxmint.com/" BUG_REPORT_URL="http://linuxmint-troubleshooting-guide.readthedocs.io/en/latest/" PRIVACY_POLICY_URL="https://www.linuxmint.com/" VERSION_CODENAME=zara UBUNTU_CODENAME=noble fjrg76@fjrg76-amd:~$ whereis python3 python3: /usr/bin/python3 /usr/lib/python3 /etc/python3 /usr/share/python3 /usr/share/man/man1/python3.1.gz fjrg76@fjrg76-amd:~$ which python3 /usr/bin/python3 fjrg76@fjrg76-amd:~$ ls -ls /usr/bin/python* 0 lrwxrwxrwx 1 root root 10 nov 12 06:15 /usr/bin/python3 -> python3.12 7832 -rwxr-xr-x 1 root root 8016832 nov 6 07:44 /usr/bin/python3.12 0 lrwxrwxrwx 1 root root 34 nov 6 07:44 /usr/bin/python3.12-config -> x86_64-linux-gnu-python3.12-config 0 lrwxrwxrwx 1 root root 17 nov 12 06:15 /usr/bin/python3-config -> python3.12-config 4 -rwxr-xr-x 1 root root 945 dic 11 2023 /usr/bin/python3-qr 还有安装人员: MCUXpresso Installer Changelog Version 25.09.179 Improvements -Introduced mechanism to exclude component versions that may lead to compatibility issues. 如果您需要更多信息,请不要犹豫。 Re: Error while setting Zephyr environment up in VSCode (python7.4-venv?) 你好@fjrg76、 能否请您再详细介绍一下这个问题? 你使用的是什么 Linux 发行版?您可以运行 cat /etc/os-release 您使用的是哪个版本的安装程序?您可以在右侧菜单的 "关于 "部分找到这些信息。 您的系统上安装了哪些 Python 版本?您可以运行这些命令进行验证: whereis python3 which python3 ls -ls /usr/bin/python* 谢谢, Alexandra Re: Error while setting Zephyr environment up in VSCode (python7.4-venv?) 感谢@fjrg76 提供更多细节! MCUXpresso 安装程序错误地将 python3-qr 模块理解为 Python 版本。我们将在下周的版本中解决这个问题。在此期间,您可以通过卸载 python3-qr 模块,运行 MCUXpresso 安装程序设置,然后重新安装模块来临时解决这个问题。   此致, 亚历山德拉 Re: Error while setting Zephyr environment up in VSCode (python7.4-venv?) 好了,变通方法奏效了! 但是,要删除的软件包叫做 python3-qrcode。Warpinator程序也被淘汰: $ sudo apt remove python3-qrcode Leyendo lista de paquetes... Hecho Creando árbol de dependencias... Hecho Leyendo la información de estado... Hecho Los siguientes paquetes se ELIMINARÁN: python3-qrcode warpinator ... 好消息是,我在使用变通方法后恢复了Warpinator。 谢谢,别忘了在发布之前测试你的版本 😃 Re: Error while setting Zephyr environment up in VSCode (python7.4-venv?) 你好! 这样的包不存在: E: 没有找到 python3-qr 套件 在 Google 上快速搜索"python3-qr" ,没有任何结果。您的意思是:"python3-qrcode" ? $ dpkg -l | grep python3 | grep qr python3-qrcode 7.4.2-4 所有 QR 码图像生成器库 - Python 3.x
View full article
S32Z/E の SMU_M33 で CAN LLCE を使用できますか? S32Z/E の LLCE パッケージでは、サンプルでは常に RTU_R52 を使用して LLCE ファームウェアをロードおよび使用していますが、SMU_M33 を使用して同じ機能を実行できるかどうかを知りたいです。もしSOなら、何を変更する必要がありますか? Re: Can LLCE used with SMU_M33 in S32Z/E? こんにちは、 zyt 次の図のように、S32ZE_GreenVIP_1.3.0/doc/UM_S32ZE_GreenVIP.pdf を参照してください。 SMUはFlexLLCEの初期化、CAN_HUBの設定に使用できます。 リソース マネージャーによって。 RTU は通信モジュールを直接使用し、IPCF を使用した FlexLLCE とのデータ交換を行います。 Joey_z_0-1764818044183.png BR ジョーイ Re: Can LLCE used with SMU_M33 in S32Z/E? こんにちは、 zyt お問い合わせいただきありがとうございます。 この質問を確認するお手伝いをさせていただきます。 BR ジョーイ Re: Can LLCE used with SMU_M33 in S32Z/E? SMUを使用して、LLCEの初期化だけでなく、LLCEルーティング機能すべてに対応できますか?RTUは関与しないのでしょうか? Re: Can LLCE used with SMU_M33 in S32Z/E? こんにちは、zyt ご返信よろしくお願いします。 SMUを使用して、LLCEの初期化だけでなく、LLCEルーティング機能すべてに対応できますか?RTUは関与しないのでしょうか? >>> SMU を使用して LLCE ファームウェアをロードし、LLCE ルーティング機能を設定しますか? また、SMU を使用して FlexLLCE とデータを交換しますか? BR ジョーイ Re: Can LLCE used with SMU_M33 in S32Z/E? はい、CAN2CAN、CAN2ETH、ETH2CAN などのルーティング関連のすべての機能を SMU と LLCE で実行し、 RTU は参加させません。 Re: Can LLCE used with SMU_M33 in S32Z/E? こんにちは、zyt 返信が遅くなり申し訳ありません。 現在、FlexLLCE のソフトウェア ドライバとファームウェアは、ホスト アプリケーション用の RTU R52 コアの使用のみをサポートしています。現時点では、これを SMU CM33 コアに移植する予定はありません。 BR ジョーイ
View full article
PN7160 PN7220 Android 15 Porting to i.MX8MN EVK Introduction We have an official PN7160/PN7220 Android 15 porting guide (PN7160/PN7220 – Android 15 porting guide). But the patches only for Android 15 AOSP r1 (android-15.0.0_r1). If customer want to porting to the newer release of AOSP, there will have many errors during the source code compiling. This document is for customer reference to solve the error one by one.  NOTE :  All the modifications are just for reference. They are NOT a NXP official patches for the newer release of AOSP porting. So the modifications may not be the best solution. Customer please base on their needs to modify the AOSP source code.  Hardware boards: i.MX8MN EVK PN7160 EVK PN7220 EVK Build the Android for i.MX8MN EVK The i.MX Android BSP that I used is Android 15.0.0_2.0.0 (L6.12.20_2.0.0 BSP). It could be downloaded from here: Android OS for i.MX Applications Processors | NXP Semiconductors 1. Download the "Documentation" and the "Install Source Package".  2. Follow the Android User's Guide to build the Android BSP for i.MX8MN EVK first.  According to the android_build/.repo/manifests/aosp-android-15.0.0_2.0.0.xml, you will see the AOSP version is android-15.0.0_r32. Now, follow the PN7160/PN7220 – Android 15 porting guide to porting the NFC to i.MX Android BSP.  1. Kernel Driver : To establish connection with the PN7220 or PN7160, the Android stack uses the nxpnfc kernel driver.  You could download the driver from github below: nfcandroid_platform_drivers/drivers at br_ar_16_comm_infra_dev · nxp-nfc-infra/nfcandroid_platform_drivers · GitHub git clone "https://github.com/nxp-nfc-infra/nfcandroid_platform_drivers.git" -b br_ar_16_comm_infra_dev There is driver for Kernel 6.6 and 6.12. So, please download the correct one for your porting. For example, the kernel in i.MX Android BSP Android 15.0.0_2.0.0 is 6.12. So I will use the 6.12 driver for my porting. In your porting, make sure the PATH in Makefile and Kconfig files are setting properly.  For example in my porting: android_build/vendor/nxp-opensource/kernel_imx/drivers/nfc$ tree . ├── Kconfig ├── Makefile └── pn7160         ├── common.c         ├── common.h         ├── i2c_drv.c         ├── i2c_drv.h         ├── Kbuild         ├── Kconfig         ├── Makefile         ├── spi_drv.c         └── spi_drv.h 1 directory, 11 files android_build/vendor/nxp-opensource/kernel_imx/drivers/nfc$ cat Makefile # # Makefile for the kernel nfc device drivers. # obj-y += pn7160/ android_build/vendor/nxp-opensource/kernel_imx/drivers/nfc$ cat Kconfig source "drivers/nfc/pn7160/Kconfig" 2. Adding the "nxpnfc" to the i.MX8MN EVK device tree file. Show the connections table on the board. Show the pictures &i2c3 { clock-frequency = <100000>; pinctrl-names = "default", "gpio"; pinctrl-0 = <&pinctrl_i2c3>; pinctrl-1 = <&pinctrl_i2c3_gpio>; scl-gpios = <&gpio5 18 GPIO_ACTIVE_HIGH>; sda-gpios = <&gpio5 19 GPIO_ACTIVE_HIGH>; status = "okay"; nxpnfc@28{ compatible = "nxp,nxpnfc"; reg = <0x28>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_nfc>; nxp,nxpnfc-irq = <&gpio3 22 0>; nxp,nxpnfc-ven = <&gpio3 20 0>; nxp,nxpnfc-fw-dwnld = <&gpio3 21 0>; }; &iomuxc {         pinctrl_nfc: nfcgrp {                 fsl,pins = <                         MX8MN_IOMUX_SAI5_RXC_GPIO3_IO20                 0X19  // VEN                         MX8MN_IOMUX_SAI5_RXD0_GPIO3_IO21                0X19  // FW-DWNLD                         MX8MN_IOMUX_SAI5_RXD1_GPIO3_IO22                0X19  // IRQ                 >;         }; Show the schematic.  3. Modify the imx8mn_gki.fragment nano vendor/nxp-opensource/kernel_imx/arch/arm64/configs/imx8mn_gki.fragment Add the CONFIG_NXP_NFC_I2C=m 4. Go to the device/nxp/imx8m/evk_8mn/  Modify the BoardConfig.mk. # selinux permissive +BOARD_KERNEL_CMDLINE += androidboot.selinux=permissive BOARD_SEPOLICY_DIRS := \        $(CONFIG_REPO_PATH)/imx8m/sepolicy \        $(IMX_DEVICE_PATH)/sepolicy  \ +       vendor/nxp/nfc/sepolicy \ +       vendor/nxp/nfc/sepolicy/nfc ShareBoardConfig.mk     $(KERNEL_OUT)/drivers/net/phy/realtek.ko \     $(KERNEL_OUT)/drivers/pps/pps_core.ko \     $(KERNEL_OUT)/drivers/ptp/ptp.ko \     $(KERNEL_OUT)/drivers/net/ethernet/freescale/fec.ko +    $(KERNEL_OUT)/drivers/nfc/nfc/nxpnfc-i2c.ko endif     $(KERNEL_OUT)/drivers/trusty/trusty-core.ko \     $(KERNEL_OUT)/drivers/trusty/trusty-log.ko \     $(KERNEL_OUT)/drivers/trusty/trusty-ipc.ko \     $(KERNEL_OUT)/drivers/trusty/trusty-virtio.ko \ +    $(KERNEL_OUT)/drivers/nfc/nfc/nxpnfc-i2c.ko else BOARD_VENDOR_RAMDISK_KERNEL_MODULES += \     $(KERNEL_OUT)/drivers/input/touchscreen/goodix_ts.ko \     $(KERNEL_OUT)/drivers/input/touchscreen/synaptics_dsx/synaptics_dsx_i2c.ko Endif Compatibility_matrix.xml             netutils-wrapper         1.0                 android.hardware.emvco         1                      IEmvco             default             device_framework_matrix.xml             nxp.hardware.secureime         1                     ISecureIME             default                         nxp.hardware.imx_dek_extractor         1                     IDek_Extractor             default                         vendor.nxp.nxpnfc         2.0                     INxpNfc             default                         android.hardware.emvco         1                     IEmvco             default             evk_8mn.mk # -------@block_bluetooth------- # Bluetooth HAL PRODUCT_PACKAGES += \     android.hardware.bluetooth \     android.hardware.bluetooth-service.default.nxp # NXP 8987 Bluetooth vendor config PRODUCT_PACKAGES += \     bt_vendor.conf # ------nfc------- $(call inherit-product, vendor/nxp/nfc/device-nfc.mk) $(call inherit-product, vendor/nxp/emvco/device-emvco.mk) PRODUCT_PACKAGES += \         android.hardware.nfc-service.nxp PRODUCT_PACKAGES += \         com.nxp.emvco \         com.nxp.nfc \         nfc_nci_nxp_pn72xx # -------@block_usb------- Init.rc on post-fs && property:vendor.skip.charger_not_need=0     # Swap in only 1 page at a time     write /proc/sys/vm/page-cluster 0     # Grant permission for fetching available_pages info of statsd     chown system system /proc/pagetypeinfo     chmod 0440 /proc/pagetypeinfo     exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d \     /vendor/lib/modules nxpnfc_i2c     write /sys/power/wake_lock nosleep on post-fs-data && property:vendor.skip.charger_not_need=0     setprop vold.post_fs_data_done 1 ueventd.nxp.rc /sys/devices/virtual/thermal/thermal_zone* trip_point_0_hyst 0660 system system /sys/devices/virtual/thermal/thermal_zone* trip_point_1_hyst 0660 system system /dev/dmabuf_imx           0664   system     system /sys/class/backlight/* brightness 0660 system system /dev/ttymxc1              0666   nfc   nfc /dev/ttymxc2              0666   nfc   nfc /dev/nxpnfc               0666   nfc   nfc # for libcamera /dev/media* 0660 system camera /dev/v4l-subdev* 0660 system camera 5.  hardware/interfaces/compatibility_matrices/compatibility_matrix.202404.xml             android.hardware.wifi.hostapd         1                     IHostapd             default                         android.hardware.wifi.supplicant         2                     ISupplicant             default                         nxp.hardware.imx_dek_extractor         1                     IDek_Extractor             default                         vendor.nxp.nxpnfc         2.0                     INxpNfc             default                         vendor.nxp.emvco         1                     INxpEmvco             default             6.  android_build/vendor/nxp/nfc/device-nfc.mk android_build/vendor/nxp/emvco/device-emvco.mk Two approach. 1. NXP NFC Patch to Android AOSP and then build. If the Android release is too new, It will be a lot of errors, 2. Copy the R1 files to R30 first, then run NXP NFC patch. Then build. I use the second. Download the AOSP R1 source code. Copy the R1 replace the folders below. Apply the patches. build the code. Here is the error list and the reference solution.
View full article
S32K312: I2CおよびADCトリガーの問題 弊社のお客様は S32K312 100 ピンを使用して開発を行っており、次のような問題に直面しています。どのように彼らを導けばよいかアドバイスをいただけますか? 問題ステートメント1: I²Cの問題(SBC):I²Cモジュールは、初期化直後、転送が開始される前にバスがビジー状態(BBF = 1)であると報告します。バスがアイドル状態にならないため、マスターはSEND操作を完了できず、それ以上のI²Cアクティビティは発生しません。 問題2 : BCTUからのADCトリガーが機能しません。1つのPWM_TriggerチャネルがBCTUを使用してADCをトリガーするように設定されており、その結果はDMAバッファに保存されるはずですが、実際にはそうではありません。 #S32K312 優先度: 重要 Re: S32K312 : I2C and ADC Trigger issues こんにちは@YukoKintoさん、 お客様が使用した RTD パッケージのバージョンは何ですか? 設定ファイル(.arxml または .xdm)を送っていただけますか?i2c、Adc、Pwm、ポートのファイルとフロー コードはありますか? よろしくお願いいたします。 ダン
View full article
如何在全新项目(自定义板)中设置 CMake 以正确添加/参考 MCUXpresso SDK 你好,恩智浦社区! 我正在尝试建立一个新的资源库,以便在 MCXN947 上编译代码。目标是建立一个支持 MCXN947 的多个板变体的单一存储库(在我的项目中被称为 " dcm "、dcm1212 " 和 " mcxn947-eval ")。最后一个(mcxn947-eval)以 MCXN947 的 FDR 板为基础,上面附有子板。目前只有它能编译,所以如果您正在研究这个问题,不用担心其他的。 在我当前的文件夹结构中,我希望有(见所附项目): -我的应用程序层的应用程序文件夹 -ecu 文件夹,用于将不同的板变体抽象到应用程序中(根据通过 CMake 预设选择的变体编译一个子文件夹) -我的部分库子模块的模块文件夹,包括用于抽象应用程序 sdk 的通用 HAL 层 -mcuxpresso-sdk 文件夹包含我的 sdk 对于 SDK 文件夹,我使用了 Github mcuxsdk-manifests 并对 yml 进行了自定义,使其仅提取 MCXN 系列和我感兴趣的元器件。对于查看所附项目的任何人来说,在 mcuxpresso-sdk 文件夹内进行简单的"west update" 就能得到我需要的东西。 我现在似乎很难弄明白如何设置 CMake 系统,让所有内容都能很好地编译在一起。我的大多数项目都使用 CMake 库的概念,以干净、漂亮的方式添加每个子文件夹。但是,我无法使用 SDK 做到这一点。 目前,我的最佳解决方案是手动添加 SDK .c我需要在 ecu\ sources\ mcxn947-eval\ 板 CMakeLists 里面的文件。老实说,这样做非常麻烦,而且不能完全奏效(例如,在 peripherals.c 中初始化 FlexComm硬件故障)。我看了恩智浦社区的一些帖子,但似乎都不适合我。我在使用它们时总是会遇到一些编译或配置问题。 注意:由于最终的生产版本(dcm 和 dcm1212)将在自定义板上运行,所以我正在尝试摆脱 " 板定义的 " 设置。这就是为什么 mcxn947-eval 目前不使用 SDK 中的 frdm 板设置的原因。 MCX N Re: How to setup CMake in a fresh project (custom board) to add/reference the MCUXpresso SDK properl 你好@汤姆-德博埃里奥 我认为你可以使用这种结构。 repo/ │ ├─ app/ # 应用层(与主板无关)├─ ecu/ │ ├─ dcm/ │ ├─ dcm1212/ │ └─ mcxn947-eval/ # 基于 FRDM 的自定义变体 │ ├─ 模块/ │ └─ hal_generic/ │ │ mcuxpresso-sdk/ # 从西部拉出 SDK CMake 系统已经知道哪些文件属于每个元器件。您不应手动列出这些内容。 BR 哈利 Re: How to setup CMake in a fresh project (custom board) to add/reference the MCUXpresso SDK properl 谢谢你,哈里。 我同意这是最适合我的项目的结构。我的问题是不知道如何在项目根目录下创建 CMake,以正确添加和编译 application/ecu/modules 文件夹和 sdk 文件夹。 对于我手动编写的 ony,我只需通过 CMake"add_subdirectory" 进行编译,其中每个子文件夹都将包含各自的 CMake,以创建 CMake 库。然后,我通过"traget_link_libraries" 在 CMake 根目录中将它们链接在一起。我举了这两个 CMake 的例子,就像我现在一样(稍微简化了一点,这样我们就不用担心不同的版本目标了)。 我缺少的是如何将SDK添加到这个整体版本系统中,并确保我的ecu文件夹可以访问它。 Re: How to setup CMake in a fresh project (custom board) to add/reference the MCUXpresso SDK properl 你好@汤姆-德博埃里奥 我刚测试过。 结构是 Harry_Zhang_0-1765438042376.png Harry_Zhang_1-1765438058379.png Harry_Zhang_2-1765438077914.png BR 哈利 Re: How to setup CMake in a fresh project (custom board) to add/reference the MCUXpresso SDK properl 你好@汤姆-德博埃里奥 我们采用了拖放功能,使用户更容易向项目中添加源代码。该功能目前是一项试验性功能,用户必须在分机设置中启用。用户只需将源代码放入项目,项目的 CMakeLists.txt 文件就会自动更新。 要启用该功能: 打开扩展设置 选中启用将文件添加到项目 重新启动工作区 Harry_Zhang_0-1765419423926.png 对于硬件故障,请检查时钟、引脚复用器等是否存在冲突。 最后要启用自定义板(在 mcuxsdk 存储库之外),请按照 https://mcuxpresso.nxp.com/mcuxsdk/latest/html/develop/sdk/custom_board_development.html#enable-a-cu 中的步骤操作... BR 哈利 Re: How to setup CMake in a fresh project (custom board) to add/reference the MCUXpresso SDK properl 您能否分享该示例中 CMakeList.txt 根目录的内容? Re: How to setup CMake in a fresh project (custom board) to add/reference the MCUXpresso SDK properl 事实上,@Harry_Zhang,您是否介意分享一下您在这里设置的整个项目? 感谢你们迄今为止提供的所有帮助! Re: How to setup CMake in a fresh project (custom board) to add/reference the MCUXpresso SDK properl 你好@汤姆-德博埃里奥 我刚刚测试了我下载的这个示例。 Harry_Zhang_0-1765788298872.png 您可以下载它。 定制板开发 — MCUXpresso SDK 文档 BR 哈利
View full article
S32G2 BSP42.0でカーネルイメージ認証を有効にできませんでした こんにちは、エキスパート これは Ceer-Hirain からの緊急CASEです。BSP42.0 でカーネル イメージ認証を有効にできませんでした。 お客様の問題ステータス: 1.お客様は、Foxconn のコードベースの ATF と Foxconn のボードを使用しました。彼らはS32G2 BSP42.0の第10章に従った。UM は ATF とカーネル イメージの両方の認証を有効にします。詳しい手順は添付しております。テスト ログには、「bootm 0x80000000」を実行した後にカーネル イメージが見つからないことが示されましたが、iminfo コマンドではカーネル イメージを取得できないことが示されました。 2. お客様に、ステップ 9 の後に再生成された ATF バイナリを次のコマンドを使用して SD カードに書き込むように依頼しました。 dd if=fip.s32 of=/dev/sdb seek=512 skip=512 iflag=skip_bytes oflag=seek_bytes conv=notrunc,fsync BSP42.0ではこのステップが抜けていると思いますうーん。しかし、お客様は、再生した ATF を SD カードに書き込むと BL31 が起動に失敗すると報告しました。 3. また、お客様に NXP が github でリリースした ATF を使用するように依頼しましたが、ATF で以下のようなエラーが報告されました。 私がしたこと: 1.私はS32G2 BSP42.0の10.6.2章の手順に従っただけですRDB2 のカーネル認証を有効にする UM。添付の詳細な手順を参照してください。 2.再生したATFをSDカードに書き込みます 3. テスト ログにはカーネル イメージと dtb ファイルが正常に検証されたことが示されましたが、カーネル イメージのロード後にシステム リセットがトリガーされました。 私の分析: お客様はサードパーティ(Foxccon)のテストボードとATFを使用していたので、 Foxcon は、ATF と BSP に何らかの変更を加えて、自社のボードに適用した可能性があります。執筆 生成された ATF により、お客様側で BL31 のブート失敗が発生します。再生成された fip.s32 には、追加の署名ハッシュ値を持つ DTB が含まれます (mkimage ツールを使用してカーネルと fdt に署名)。SO、BL31 メモリが追加の署名ハッシュ値によって上書きされる可能性があります。 1. システム リセットがトリガーされる理由について、私の手順と分析を確認してください。 2. お客様の問題について、お客様の手順を確認し、ヒントを提供していただけますか?いくつかの設定を確認していただけますか? Linux BSP 優先度: 高 Re: Failed to enable kernel image authentication in S32G2 BSP42.0 お客様はATFの主な変更を提供しました Re: Failed to enable kernel image authentication in S32G2 BSP42.0 はい、これについては言及されていませんが、暗示されていると思いました。ただし、必要であればこの詳細をCAN追加します。 ただし、itb 構成の例を提供しており、それを使用すると動作します。また、verifiedboot は Yocto で自動化されているため、多くの手動手順を実行せずに、verififedboot を Yocto で高速化できます。 DISTRO_FEATURES:append = " verifiedboot" でビルドするだけです Re: Failed to enable kernel image authentication in S32G2 BSP42.0 こんにちは、 たとえば、0x80000000 で fatload を使用して ITB をロードする場合、ITB が収まるように 0x80000000 からの十分なスペースがあることを確認する必要があります。次に、ロード時に ITB に設定された値によって、ITB から新しいメモリ位置へのカーネルのアンパックに十分なスペースが確保されることを確認する必要があります。このCASEでは、ITB がロードされたときと同じメモリ アドレス (0x80000000) でカーネルが ITB からアンパックされ、破損が発生し、ブートローダがボードを再起動します。動作させるためには、ロードを 0x80000000 ではなく 0x82000000 (ITS/ITB 構成) に変更するか、ITB を別のメモリ位置にロードすることをお勧めします。 よろしくお願いいたします。 ミハイ Re: Failed to enable kernel image authentication in S32G2 BSP42.0 はい、メールで述べたように、私も後の実験でこの詳細を見つけましたが、BSP UMではこの詳細は言及されていません。 Re: Failed to enable kernel image authentication in S32G2 BSP42.0 こんにちは、ミハイ お客様に Yocto を使用してセキュア機能を自動的に有効にするように依頼したところ、以下のように ATF が BL31 または BL33 の起動に失敗するという同じ問題が発生したと報告されました。 メールで述べたように、お客様も私が共有した手順に従ってカーネル イメージ認証を手動で有効にしましたが、私の側ではそれが機能することが証明されていますが、同じ問題が発生しました。 この問題は以下の 2 つの要素に焦点を当てています。 1. お客様は変更された dtb ファイルを使用して ATF を再構築しました。この dtb ファイルには、カーネル イメージの認証に使用される追加の公開キーが含まれています。変更されていない dtb ファイルを使用して ATF をビルドすると、ATF は正常に起動します。 2. ATF はお客様によって変更されています。以前のコメントに添付されている ATF のパッチ ファイルを参照してください。 お客様に、ATF コードをデバッグしてスタックポイントを見つけるように依頼しました。お客様はこのプロセスに取り組んでいます。FUTUREにはお客様とのオンラインデバッグ会議が行われる可能性があります。私は ATF の専門家ではないので、ソフトウェア チームも会議に参加できることを願っています。添付ファイルは、正常に起動できないお客様のATF dtbとfip.binです。 ところで、ソフトウェア チームは、根本原因を調査するために、お客様からさらに追加情報を入手し、より多くの提案を得る必要がありますか? Re: Failed to enable kernel image authentication in S32G2 BSP42.0 こんにちは、アーサー。 UM からステップ 8 を実行するときに、結果の dtb を dts に戻し、meld を使用して入力と出力の dtb を確認するように指示してください。( は、meld なしでは動作しますが、meld があると動作しないため) これはビルドの問題だと思います。適切な入力 dtb が 1 つありますが、手順 8 を実行した後、結果はハードウェアと一致しない別の dtb になります。 よろしくお願いいたします。 ミハイ
View full article
我们可以同时在不同的设备上使用 MCX nx4x FlexSPI PortA 和 PortB 吗。 你好,恩智浦、 我们可以使用 FlexSPI 连接硬件并同时使用两个设备吗? PortA->或非 FLASH 端口 B->PSRAM 还有任何配置示例可供参考吗? 非常感谢您 MCX N Re: Can we use MCX Nx4x FlexSPI portA and portB with different device at the same time. 嗨,哈里、 根据 Spark 的描述,我们应该检查 device_config 和 clk 源吗? 我看到 typedef struct _flexspi_config { ...... #if defined(FSL_FEATURE_FLEXSPI_SUPPORT_SEPERATE_RXCLKSRC_PORTB)&& FSL_FEATURE_FLEXSPI_SUPPORT_SEPERATE_RXCLKSRC_PORTB flexspi_read_sample_clock_t rxSampleClockPortB; /*!< 用于闪存读取的采样时钟源_b 选择。*/ #endif 1.使用端口 A 和端口 B 时,是否需要使用单独的 rxclks 源? 2.我们是否应该检查传递给 FLEXSPI_SetFlashConfig() 的&deviceconfig? Re: Can we use MCX Nx4x FlexSPI portA and portB with different device at the same time. 嗨,哈里、 示例代码仅提供如何在 PortA 上访问 NOR Flash ID,我尝试添加代码以在 MCX-N5XX-EVK 上连接 PSRAM 的情况下访问 PortB。以下是实验结果供你参考: FlexSPI 设置: PortA->或非 FLASH 端口 B->PSRAM 测试用例 1:成功 初始 PortA 和读取 PortA 闪存 ID(1 字节) Sparklin_0-1752651824941.png 测试用例 2:成功 初始端口 B 和读取端口 B 闪存 ID(1 字节) Sparklin_1-1752651987591.png 测试用例 3:失败 最初,PortA 和端口 B 都使用地址分别读取 PortA 和端口 B 闪存 ID(1 字节) Sparklin_2-1752653036217.png 以下是代码片段供您参考。请检查我们是否犯了一些错误,或者是否需要对端口 A 和端口 B 进行更多配置。 在 flexspi_nor_flash_init 上修改代码以初始化端口 A 和端口 B 闪存设备 Sparklin_3-1752653316172.png 向 flashXfer.deviceAddress 添加偏移量以读取端口 B 设备 Sparklin_4-1752653442642.png 以下是修改后的文件和整个项目存档供您参考: Re: Can we use MCX Nx4x FlexSPI portA and portB with different device at the same time. 你好 我指的是SDK示例,但是它同时连接到一个闪存设备而不是两个设备。 恐怕我错过了让两台设备同时运行的配置。 有任何示例配置可供参考吗? 或者,如何确保我从寄存器级别进行了正确的配置? 谢谢  Re: Can we use MCX Nx4x FlexSPI portA and portB with different device at the same time. 你好@greatshow_chen 是的,在恩智浦MCX NX4x上,您可以同时使用FlexSPI端口 A 和端口 B 来连接两个不同的内存设备。 PortA->或非 FLASH 端口 B->PSRAM 您必须确保 或非 闪存和 PSRAM 没有共享任何冲突的引脚。 您可以参考 flexspi_octal_polling_transfer Harry_Zhang_0-1751622607790.png BR 哈利 Re: Can we use MCX Nx4x FlexSPI portA and portB with different device at the same time. 你好 许多采用 FlexSPI 的恩智浦微控制器(如 i.MX RT 系列)都有两个独立的 FlexSPI 通道(端口 A 和端口 B)。可以将每个端口配置为与不同类型的存储设备通信。这使您可以将或非闪存连接到一个端口,将 PSRAM 连接到另一个端口。
View full article
imx8mp OpenGL 无显示 有没有办法让 OpenGL 在无头模式下运行(不连接显示器)? 我正在使用基于 fsl-xwayland 映像的 imx8mp。我知道 PGU 等设备在我的设备树中配置正确,因为连接后就能正常显示。如果我尝试像这样运行一个简单的 gstreamer 管道: gst-launch-1.0 videotestsrc ! video/x-raw,format=NV12,width=1920,height=1080 ! queue ! glupload ! glcolorconvert ! gldownload ! video/x-raw,format=RGB ! queue ! fakesink 我收到以下错误信息 Got context from element 'gldownloadelement0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayWayland\)\ gldisplaywayland0"; ERROR: from element /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0: Failed to perform a wayland roundtrip 我的系统安装为通过 SSH 使用 remote-x 服务器,但即便如此,我也一无所获。 有没有什么 XDG 变量可以设置? 图形与显示 i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Linux 多媒体 Yocto Project Re: imx8mp OpenGL without display 所以,我要回答我自己的问题,供其他来这里的人参考: 我可以通过以下方法让 GPU 工作并执行 gstreamer glupload/glshader 等命令: - 为虚拟显示器加载 VKMS 内核模块 - 在 westom.ini 中设置 renderer=gl 并禁用"g2d" 。 经过这些设置后,WESTON 启动了,我也有了 opngl 命令。 有趣的是,我验证了 OpenCL 在 weston 离线时也能正常工作。遗憾的是,与普通矩阵相比,OpenCV 中使用 UMat 和 T-API 的性能并没有提高。它似乎确实比简单的逐元素乘法快得多,例如在 C 中,所以这可能要归因于 OpenCV 中的 Arm-neon 加速。 Re: imx8mp OpenGL without display 谢谢 ugurkur,但这似乎没什么用。 如果我检查 `echo $XDG_RUNTIME_DIR` ,会得到"/run/user/0" ,所以看起来没问题。 根据我的清单,我有你提到的所有代码包。但我仍然无法让 OpenGL 正常工作。 Re: imx8mp OpenGL without display 你好,我在 i.MX8M 板上遇到了同样的问题。对我有用的是将 weston、weston-init 和 weston-xwayland 代码包添加到我的 Yocto 图像中,这完全解决了显示错误。此外,我还使用以下命令设置了 XDG_RUNTIME_DIR 环境变量: export XDG_RUNTIME_DIR=/run/user/$( id -u) 希望这也能帮助您解决问题! Re: imx8mp OpenGL without display 那么,它们能教给我们什么吗?您还有什么其他想法,可能是什么原因导致了这个问题? Re: imx8mp OpenGL without display 这不是错误,你的系统应该在无显示的情况下运行。 此致 Re: imx8mp OpenGL without display 我得到以下信息 WARNING: erroneous pipeline: could not link videotestsrc0 to xvimagesink0, neither element can handle caps video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080 我是否漏掉了内核配置? Re: imx8mp OpenGL without display 你好 请再试一次: $ DISPLAY=:0 gst-用上市,不用发布-1.0videotestsrc !video/x-raw(memory:NVMM),width=1920,height=1080, 'video/x-raw,width=1920,height=1080 !xvimagesink sync=0 此致
View full article
MRF300AN:从数据表到现实世界的问题 我想用 MRF300AN 搭建几个射频放大器,这看起来像一款非常棒的设备。从数据表中的建议应用到构建实际工作电路,我有一连串的问题。 首先,我想就指定的 PCB 提出几个问题: 数据表中指定的印刷电路板提供了零件编号,制造商为 MTL。 我看到 MTL 是一家提供 PCB 制造服务的公司。 我说只要提供这个零件号就可以从他们那里订购板,他们不必向他们发送文件或其他任何东西就已经知道板是什么了吗?如果是这样,那就太好了! 虽然我对印刷电路板制造并不陌生,但我以前从未做过电镀通孔,而对此进行研究意味着,如果能以合理的成本从MTL获得几块板,麻烦远大于仅购买几块板的价值。 我的第二个问题涉及用于数据表230mhz设计的PCB的区别,这是唯一与其他板不同的板。虽然我想版本第一个射频放大器将在50mhz上运行(因此从数据表来看,设计似乎非常简单和一站式),但第二个将使用222MHz。这个频率范围是一种过渡,带状线技术开始变得更加实用," 普通 " LC 元件开始变得不那么实用了。在 230mhz 设计中使用带状线技术而不是空气绕组线圈有什么特殊原因吗? 还是仅仅为了说明在输入和输出匹配中使用带状线? 同样,板材料也不同。在此频率下,使用 AD255C 而不是 FR4 是否真的有明显优势? 我问第二个问题是因为我更愿意使用较小的 FR4 板和低频设计中使用的气绕线圈来版本 222mhz 的设计。在这一频率下,使用空气绕组线圈而不是带状线似乎不会有任何明显的效率损失,也不会增加制造难度。 同样,FR4 印刷电路板材料的任何损耗在此频率下似乎也是微不足道的(我说错了吗?) 对我来说,减小尺寸和降低成本(特别是考虑到散热片和铜块散热器)的优势要大于 0.001 英寸的损失。%空气线圈效率或 0.001dbFR4 主板材料损失。 首先提出这些问题,是因为我正在规划机柜内的机箱布局,包括强制空气冷却系统的气流路径,因此需要知道我要围绕哪一组尺寸进行设计。 我的下一组问题将涉及元器件选择,同样是从数据表中所说的转变为工作电路的实际实现。谢谢您的有用回复! Re: MRF300AN: questions about datasheet to the real world 漂移老板》的 "可玩性 "非常高。总有新的记录等着我们去打破,总有新的汽车等着我们去解锁。玩得越多,就越 "上瘾"! Re: MRF300AN: questions about datasheet to the real world 它是那些对编辑应用程序的灵活性和功能要求极高的移动创作者的首选。 vn 应用下载. Re: MRF300AN: questions about datasheet to the real world Grewal Transport Service 专门提供可靠高效的 < a href= " https://www.grewaltransportservice.com/transport-service-delhi-to-chennai.php " > 德里到钦奈的运输服务 注重功能安全、及时性和可负担性,我们同时提供整车装载 (FTL) 以及根据您的特定要求量身定制的 零件卡车装载 (PTL) 解决方案。我们的现代化车队可确保您的货物得到安全运输,实时货运跟踪可为您提供完整的透明度。选择 Grewal Transport Service,您可以获得值得信赖的德里到钦奈的运输服务,我们提供最优质的物流服务,并将客户满意度放在首位。体验无忧、经济高效的送货服务。 Re: MRF300AN: questions about datasheet to the real world 好的,很好,谢谢你的答复! 因此,我对板本身的结论是正确的。但是你的回答提示了一个问题,是否可以只订购裸露的 PCB,而不是完整的 " 评估板 " 或 " 套件 "?我最初与 Digikey 和 Mouser(它们是您在美国的主要代理商,几十年来我一直在向他们订购零件)核对过,但只有完整的 " 评估板 " 可用。同样,在 " 射频电路系列 " 中,我看不到任何只参考裸露的 PCB 的内容。我之所以要订购裸露的 PCB,而不是自己复制布局然后蚀刻,唯一的原因是它必须平放在铜散热器上,而且必要的电镀通孔方法比自己只买两块板要麻烦得多(我还打算为 50MHz 版本建造一块)。那么恩智浦或 MTL 会卖给我几块裸 PCB 吗? 我该如何订购? 我的下一个评论和问题涉及一些元器件选择。数据表中指定的 Bourns trimpot 不是一个现成可用的现实世界元器件。Mouser和Digikey都出售相同零件的变体,但物理配置不同,因此无法正确安装在板上。这似乎是一个非生产部件,作为 Bourns 样品套件的一部分出现在某人的工作台上。 🙂 就现有的变化而言,将近 5 美元就能买到一个触发器? 真的吗? 这是个非常昂贵的阻尼器,而规格完全相同的零件在剩余物资商店只需不到 1 美元就能买到。 在实现该电路时,我将使用手头上已经放置的一个微调电池,将偏置分频器放在电源板上(由IC稳压器而不是齐纳器供电),然后将偏置从电路板上引入作为单独的电源线。这将需要一个额外的馈通电容和一根电线,但我手头上已经有了,而且肯定比花将近5美元买一个微调器更胜一筹! 我的下一个问题是关于所用的一些电容。许多设备的额定电压为 500 伏。 出于某种原因,500 伏额定电压真的有必要吗? 在这个功率级、漏极电压、漏极阻抗和负载阻抗下,最低 " 安全 " 额定值难道不会接近 100-160v 吗?同样,我手头有许多所需的数值,但额定电压低于 500 伏。 此外,某些指定的精确电容已不再可用(至少不是来自Mouser和Digikey的电容),因此无论如何,在某些情况下都需要更换。 Re: MRF300AN: questions about datasheet to the real world 1. 我们没想到客户会直接向 MTL 下订单。取而代之的是,应该通过我们的代理商或在恩智浦网站上使用 " RF CIRCUIT COLLECTION " 服务订购板: https://www.nxp.com/design/development-boards/rf-circuit-collection:RF-CIRCUIT-COLLECTION 这些板可以作为完全组装和测试的电路提供,也可以作为包括印刷电路板和所有所需元器件的套件提供。可以讨论交付选项(例如,设备样本的数量)。 2. 您的总体理解是正确的。 微带设计减少了 BOM,简化了装配。在微波设计中,使用微带匹配是必不可少的。 在低频情况下,使用微带匹配会受到尺寸的限制。匹配任何阻抗所需的典型微带元件尺寸为 Lambda/4。如果在两端使用电容,则微带段的长度可以缩短到Lambda/12。较短的区段只能用于部分调谐。 因此,微带匹配设计有一个自然的低频界限。典型板尺寸为 300-400MHz。在较低频率下,这种技术没有任何优势。 3. 电路板材料决定介电常数(波长-> TL 尺寸)和损耗。必须考虑到损耗,在某些应用中损耗是至关重要的。 - 低噪音放大器输入损耗会以相同的幅度增加噪声系数。 - 高 Q 值设计(滤波器、变压器)。损耗限制了滤波器的最大品质因数。 在某些情况下,基板损耗会提高放大器的稳定性,因此是有益的。 设计人员必须在评估材料造成的性能损失后,在廉价的 FR4 材料和昂贵的 FR4 材料之间做出选择。大多数 1GHz 以下的射频功率放大器都可以使用 FR4 制作。微波设计通常使用高质量的射频基底。 4。 222 Mhz 射频功率放大器可使用 FR4 材料和用于阻抗匹配的分立元器件来实现。 祝您愉快! Pavel NXP TIC
View full article
シリアル・ダウンローダー・フォールバックの無効化 (i.MXRT 1060) シリアルダウンローダーモードのフォールバックを無効にする方法があるかどうか興味があります。つまり、BootMode が 1 に設定されていない限り、内部ブート モードが失敗した場合、デバイスは基本的に何もしないようにします。 RMを読むと、特に高レベルのブートコードフロー図を見ると、これは特に不可能に思えます。主に、i.MXRT 1060 RM の 9.3.2 章の図 9-1 と 9.11 章の図 9-19 に基づいて結論を出していますが、これらは、すべてが失敗すると、すべてのブート・モードがシリアル・ダウンローダー・モードに戻ることを示しています。しかし、これにはかなり慣れていないので、おそらく私は何かを見逃しています。 詳しく説明したり、さらに詳細が必要な場合は、お知らせください。 ありがとうございます i.MXRT 106倍
View full article