Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
如何修改 Can_Llce_DS_Can2Can 示例,以便通过 CAN 物理引脚进行传输? 大家好 我正在使用在 S32G-VNP-RDB3 板上运行的 S32 Design Studio 3.5 中包含的 C AN_LLCE_DS_CAN2CAN_S32G399 A_M7 示例。我正在使用Multilink Universal调试器在M7_0 内核上加载项目。 根据示例说明,该演示展示了CAN_LLCE 驱动程序的内部 CAN2CAN 路由功能。但是,我需要修改此示例,以使CAN消息在控制器的CAN引脚上进行物理传输,从而使我能够使用诸如 PCAN-USB FD之类的外部分析仪捕获它们。 我查看了配置文件(can_43_LLCE_vs_0_pbcfg.C),我注意到使用了参考 Can2Can 路由条目的高级过滤器(llce_can_AdvancedFilterType)。据我所知,这意味着帧永远不会离开物理总线。 我的目标 移除内部路由 配置常规过滤器和 HOH,以便通过 CAN 物理引脚进行传输 在外部嗅探器(PCAN)上可视化 CAN 报文 问题 是否有任何官方指南或建议来修改这个示例以实现这一目标? 是否只需移除高级过滤器并使用 CAN_43_LLCE_RECEIVE 和 CAN_43_LLCE_TRANSMIT,还是需要进行其他更改(如收发器设置、引脚配置、时钟等)? 提前感谢您的支持! Re: How to modify Can_Llce_DS_Can2Can example to transmit on physical CAN pins? 你好@aarfer3800 为了更直观地展示示例,您可以查看安装目录下 llce_sample_app_af 中的 README 文件,其中包含以下内容: main.c 文件包含注释,解释了信息流如何在当前配置下运行。您还可以使用配置工具查看和调整高级过滤器和 LLCE 的配置。 如演示应用程序所示,数据从控制器 1 发送到控制器 0,然后同一信息在内部被路由到通道 15,通道 15 将帧从外部转发到控制器 14。 在这种情况下,如果移除预滤波器,就不会将信息从控制器 0 内部路由到通道 15,通道 15 和控制器 14 之间的传输也不会发生。 很抱歉给您带来不便,但我们没有一个具体的示例可以完全满足您的要求,开发过程需要您自己完成。 如果在实施过程中遇到任何问题,请随时联系我们。如果还有什么需要帮助的,请随时告诉我。
查看全文
MIFARE DESFire additional access rights What are additional access rights and how they are coded for MIFARE DESFire cards? I just now they should be in 0xFFFF form, but what it means and what additional rights it gives? Getting Started
查看全文
Questions about the IW612 test content(UM11717) Question about UM11717 1.Is PRBS the same as PRBS9, which means pseudorandom binary sequence of order 9?   (UM11717 P.87, 89) 2.Please tell me the specifics of Whitening (UM11717 P.87-90 ) 3.There is an error in the example for the receive antenna number setting command. Is this a mistake? (UM11717 P.51-59, 61, 64-66) Example 10 0 2 2 // Set both TX and RX to antenna 2 (p. 27) → 10 2 2 4.If I input the Tx/Rx command sequences for 802.11b, g, a, n, ac, and ax in order, will I get the correct count? Also, I don't know when the counting starts, so please let me know. (UM11717 P.51-60)
查看全文
SPI Flash expansion from 16M to At 64Mbytes, the read data is inconsistent with the original data. In the NXP RT1172 MCU's built-in 16MByte SPI Flash environment, using the NXP GUI Guider to generate "Image to C File" data, the screen displays normally using the NXP GUI Guider's image function or by programmatically loading image data into a drawing app. Furthermore, reading and writing the image data loaded by the drawing app, as shown in the log messages, correctly correspond to the "Image to C File" data. However, when the memory is expanded to 64MBytes, as soon as the 16MByte address space is exceeded, why does the "Image to C File" data not correspond correctly when using the forced addressing write method (.ld) or the direct addressing method (NXP GUI Flash Tool) in the NXP MCUXpresso IDE window? The following is related information: NXP MCUXpresso IDE Windows Version: v11.8.0 [Build 1165] [2023-07-26] NXP GUI Guider Version: GUI-Guider-1.6.1-GA MCU: NXP RT1172 MCU SDK Version: 2.14.0 Manage Linker Script: evkmimxrt1170_lvgl_guider_cm7_v8_Debug.ld (Original: Checked, unchecked, and addressing set outside the 16MBytes) Screen Size: 728x1280 Image Data: PNG file, 720x1280, 24-bit data Conversion Settings: Bin or C, ARGB8565 or ARGB8888, or CF_TRUE_COLOR or CG_TRUE_COLOR_ALPHA , any setting is fine as long as it displays correctly. LVGL related settings: #define LV_COLOR_DEPTH 16 (Color depth: 1 (1 byte per pixel), 8 (RGB332), 16 (RGB565), 32 (ARGB8888)) i.MX-RT1170  回复: SPI Flash expansion from 16M to At 64Mbytes, the read data is inconsistent with the original dat Unfortunately, there is no example for this however I can guide you. Besides defining a larger flash size on the linker file it is important to consider that the FCB also increases the flash size, this can be updated on the flexspi_nor_config file increasing the flash size only if only that parameter is different between the flash. If an error rises and it seems unable to erase the flash to return to normal operation, then you will need to enter Serial Download mode so the flash can be erased. Unfortunately, there are no examples for this. BR, Omar 回复: SPI Flash expansion from 16M to At 64Mbytes, the read data is inconsistent with the original dat I already know how to disable the automatic .ld mode and switch to manual editing, and I'm already running the process. However, there seem to be many issues with converting the SPI Flash from 16MBytes to 64MBytes. First, could you provide any suggestions or information regarding the following: 1. Are there any example programs for expanding the 16MBytes to 64MBytes size for the NXP RT1172/RT1176? 2. If there are errors in the initial SPI Flash environment setup and the void BOARD_ConfigMPU(void) internal configuration, an error interrupt message may appear during the programming process. During this time, even using debug mode, I can't clear the SPI Flash and restore the system to normal operation. Are there any other ways to avoid this problem? 3. Are there any example programs or practical assistance for establishing a 64MBytes SPI Flash environment and building the SPI Flash programming format (boot and program content)? The following is the expected build. The main stages of the 64MByte SPI Flash project include: The first stage covers initializing the SPI Flash environment. The second stage covers configuring the .ld file and void BOARD_ConfigMPU(void) . The third stage covers how to allocate 64MBytes of memory. Re: SPI Flash expansion from 16M to At 64Mbytes, the read data is inconsistent with the original dat If you are manually editing the linker script then you need to uncheck the "managed linker script" box so the modified values on the .ld are not overwritten. BR, Omar
查看全文
imx8mp android14 mipi display uboot logo How are you? I'm using android 14 on the imx8mp platform and now I want to use mipi to output logos in the uboot stage But I can't export logos on mipi now. How can I get uboot to output logos? Re: imx8mp android14 mipi显示uboot logo I found this patch, but this uboot is 2020.04. I'm using android 14 and the corresponding uboot is 2023.04, still a big difference. One of the call_imx_sip does not have this definition in 2023.04 Re: imx8mp android14 mipi显示uboot logo Hi The website with the solution in the first link won't open, and at the moment the mipi-dsi still won't show up on my end! Re: imx8mp android14 mipi显示uboot logo Hello, Please refer to the following threads: https://community.nxp.com/t5/i-MX-Processors/imx8mp-add-mipi-display-splash-screen-to-uboot/td-p/1289993 https://community.nxp.com/t5/i-MX-Processors/How-to-keep-logo-from-uboot-to-kernel-on-imx8mm/m-p/1294718 Regards
查看全文
S32G FCCU fault reaction Hi Deer NXP expert:       In S32GxxSM chapter 1.3.11,it describe the R1、R2 and R3 fault-reaction type.       When comes to R3,it recommend to ’initiates a chip functional reset‘,which can be achieved by assert NCFS_CFGa=1b.       But R2 also  recommend to ’then initiates a chip functional reset‘,which confuse me that how to achieve it?Should I assert NCFS_CFGa=1b same as R3,or assert a functional reset in fault interrupt?         If i need to assert a functional reset in fault interrupt,please introduce how to achieve it in detail,thanks a lot! Re: S32G FCCU fault reaction Hello, @Hi-rain4  Thanks for the post. From the S32G safety manual, for R2, it is suggested using the fault interrupt handler to store information about the fault in memory and then initiates a chip reset. The S32 SAF microcontroller error management (eMCEM) component provides a fault interrupt handler. For details,  I suggest directly reading the corresponding code and document within eMCEM module in SAF. BR Chenyin
查看全文
i.MX8 DRM で modetest を使用して異なるオーバーレイ プレーンを有効にすると、「アクセスが拒否されました」というメッセージが表示されるのはなぜですか? こんにちは、 私は i.MX プラットフォームで作業しており、modetest ツールを使用してオーバーレイ プレーンをテストしています。特定のオーバーレイ プレーンを有効にしようとすると、「アクセスが拒否されました」というエラーが発生しますが、他のプレーンは正常に動作することがわかりました。 コマンドと結果は次のとおりです。 飛行機70の場合:   modetest -P 70@69:1024x768 # ... testing 1024x768@XR24 overlay plane 70 # (Success) 飛行機84の場合: modetest -P 84@69:1024x768 # ... testing 1024x768@XR24 overlay plane 84 # failed to enable plane: Permission denied 一部のプレーンを有効にすると機能するのに、他のプレーンを有効にすると「アクセスが拒否されました」というエラーが返されるのはなぜですか? 特定のプレーンの使用を制限するハードウェアまたはドライバの制限はありますか? それとも、これは権限、リソースの競合、あるいは他の何かに関連しているのでしょうか? アドバイスやドキュメントの参照があれば、ぜひお願いします。 よろしくお願いします。 Re: Why do I get "Permission denied" when enabling different overlay planes with modetest こんにちは@longzimggg 結果を表示するには、modetest -l コマンドを入力してください。 同じ CRTC 上で複数の飛行機を独立して同時に直接操作することはできません。この制限は、ハードウェア自体ではなく、主に DRM フレームワークとドライバ リソース マネジメントに起因します。 BR Re: Why do I get "Permission denied" when enabling different overlay planes with modetest 私の状況を明確にさせてください。 現在、同じCRTCを使用しています。この問題は同じCRTCを使用していることに起因していると考えています。しかし、私が実現したいのは、同じCRTCの異なるプロセスから異なるプレーンでレンダリングすることです。
查看全文
Why do I get "Permission denied" when enabling different overlay planes with modetest on i.MX8 DRM? Hello, I am working on an i.MX platform and testing overlay planes using the modetest tool. I noticed that when I try to enable certain overlay planes, I get a "Permission denied" error, while others work fine. Here are the commands and results: For plane 70:   modetest -P 70@69:1024x768 # ... testing 1024x768@XR24 overlay plane 70 # (Success) For plane 84: modetest -P 84@69:1024x768 # ... testing 1024x768@XR24 overlay plane 84 # failed to enable plane: Permission denied Why does enabling some planes work but others return "Permission denied"? Is there any hardware or driver limitation that restricts the use of certain planes? Or could this be related to permissions, resource conflicts, or something else? Any advice or documentation reference would be appreciated! Thank you. Re: Why do I get "Permission denied" when enabling different overlay planes with modetest hi @longzimggg  PLease type the modetest -l command show the result.  and You cannot independently and simultaneously operate multiple planes on the same CRTC directly. This limitation mainly comes from the DRM framework and driver resource management, not from the hardware itself. B.R Re: Why do I get "Permission denied" when enabling different overlay planes with modetest Let me clarify my situation: Currently, I am using the same CRTC. I believe the issue is related to using the same CRTC. However, what I want to achieve is to render with different planes of the same CRTC from different processes.
查看全文
S32K322 : How to directly obtain the data from ADC0 using DMA without using BTCU? Hello everyone:        How to directly obtain the data from ADC0 using DMA without using BTCU?         This is because my BTCU has already been used for data acquisition by ADC1. I want to separately acquire the data from ADC0 and ADC1.         Please let me know if this is possible. If it is feasible, please also tell me how to set the source address and destination address of the DMA.         There is another issue. When using DMA to obtain the data from ADC1 in the BTCU, I found that the order of the data returned by DMA is different from the channel order I set in the list of BTCU. Could you please tell me how to make their orders correspond one-to-one? Thank you.         The attachment is the engineering I am currently using. Please have a look. Re: S32K322 : How to directly obtain the data from ADC0 using DMA without using BTCU? Thank you for your interest in our products and for contributing to our community. BCTU is most flexible way trigger ADC instances. Please refer to the provided example in the following community post for a BCTU -> ADC -> DMA configuration for parallel conversion: https://community.nxp.com/t5/S32K/Questions-about-3xADC-and-BCTU-S32K344/td-p/2128105 It is possible to separately acquire the data from ADC0 and ADC1. You can use a BctuInternalTrigger_0 for ADC0 configuring Adc Target Mask = 0b001. And a second BctuInternalTrigger_1 for ADC1 configuring Adc Target Mask = 0b010. You should configure the Bctu LIST Items for all ADC instances, but you can separate them using Conversion List Start Index and Last Channel boxes. Additional examples can be found in the following post: https://community.nxp.com/t5/S32K-Knowledge-Base/RTD400-LLD-K344-ADC-SW-HW-trigger/ta-p/1966179 I hope this information is helpful.
查看全文
S32K324上のFlexIOを使用したSENT TX こんにちは、皆さん S32K324 に SENT プロトコルを実装しようとしています。IDE 内に FlexIO 上の SENT RX の例があります。 しかし、SENT TX が表示されません。これにはFlexIOを使用したいと思います。このトピックに関するサンプルプロジェクトはありますか?よろしくお願いします。 よろしくお願いいたします。 Re: SENT TX using FlexIO on S32K324 こんにちは@ilx123さん、 通常、SENT 信号は外部センサによって送信され、MCU によって受信されますが、これらが当社が提供する唯一のデモです。ただし、SPC プロトコルを実装する場合は、eMIOS コンポーネントをCAN。コミュニティ関連の投稿をいくつか紹介します。 S32K344 を使用した SPC および SENT プロトコル - NXP コミュニティ FLEXIOまたはEMIOSを使用したSENT TXエミュレーション - NXPコミュニティ よろしくお願いします、 ジュリアン
查看全文
在 VIV_VIDEO_EVENT_SET_CROP 或其他 mmap 操作中出现 isp_media_server 段故障 我目前正在使用恩智浦 IMX8MPLUS,并尝试为 MT9V024 摄像头传感器启用 ISP。 我目前的设置如下: 带有 IMAGE_INSTALL:append =" kernel-module-isp-vvcam gstreamer1.0 gstreamer1.0-plugins-base 的 Yocto 核心镜像gstreamer1.0-plugins-goodgstreamer1.0-plugins-badv4l-utils isp-imx libtinyxml2 media-ctl fmt". Linux 5.15.71 Kirkstone 是一个无头版本 在外部,我版本: - isp-imx-4.2.2.20.0 - isp-vvcam (lf-5.15.y_2.2.0) 然后我将生成的文件发送到板。 我目前的瓶颈是,当我运行 gst-用上市,不用发布-1.0-v v4l2src 设备=/dev/video0!"video/x-raw,format=YUY2,width=752,height=480" !队伍视频转换 !theoraenc!oggmux !filesink location=test_image.ogv isp_media_server 在 VIV_VIDEO_EVENT_SET_CROP 情况下崩溃。更具体地说,它在这里崩溃了: ---(源 isp-imx-4.2.2.20.0/mediacontrol/daemon/V4l2Event.cpp)-- case VIV_VIDEO_EVENT_SET_CROP: { ALOGI("VIV_VIDEO_EVENT_SET_CROP"); // 我添加这个是为了调试。 如果 (bufMap.find(event.addr)== bufMap.end()){ bufMap[event.addr]= ::mmap(NULL, VIV_JSON_BUFFER_SIZE, PROT_READ | PROT_WRITE, MAP_SHARED, eventDevice, event.addr); } struct viv_rect *rect = (struct viv_rect *)bufMap[event.addr];// gdb 指向这一行。 // 这里的失败很奇怪,因为 v4l2-ctl --all -d /dev/video0 运行良好(查看日志)。 ----- --- 当我执行任何其他操作,如 v4l2-ctl -d 0 -c viv_ext_ctrl='{ : ; :false}' 时,它也会崩溃。 为了测试,我对代码进行了大量修改: case VIV_VIDEO_EVENT_EXTCTRL:{ ALOGI("VIV_VIDEO_EVENT_EXTCTRL: Event received."); ALOGI("VIV_VIDEO_EVENT_EXTCTRL: event.addr = 0x%llx", (long long)event.addr); ALOGI("VIV_VIDEO_EVENT_EXTCTRL: eventDevice =%d", eventDevice); ALOGI("VIV_VIDEO_EVENT_EXTCTRL:VIV_JSON_BUFFER_SIZE =%zu", (size_t)VIV_JSON_BUFFER_SIZE); { struct stat st; i f (fstat (eventDevice, & st) == -1) { perror (" fstat 失败 "); } else {p rintf (" EventDevice 大小:%ld 字节\n ",(长度)st.st_size); printf("Trying to mmap at offset:%lld\n", (long long)event.addr); } } { struct v4l2_requestbuffers req = {0}; req.count = 1; req.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; req.memory = V4L2_MEMORY_MMAP; 如果 (ioctl(eventDevice, VIDIOC_REQBUFS,&req) == -1) { ALOGE("VIDIOC_REQBUFS failed:%s", strerror(errno)); } else { ALOGI("Requested%u buffers, got%u", req.count, req.count); } struct v4l2_buffer buf = {0}; buf.index = 0; buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; buf.memory = V4L2_MEMORY_MMAP; if (ioctl(eventDevice, VIDIOC_QUERYBUF,&buf) == 0) { // if request buffer succeded ALOGI("Buffer offset from VIDIOC_QUERYBUF: 0x%x", buf.m.offset); } if (event.addr% getpagesize() != 0) { ALOGE("event.addr is not page-aligned:0x%llx", (long long)event.addr); break; } if (fcntl(eventDevice, F_GETFD) == -1){ ALOGI("Invalid File descriptor"); } void *test_map = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_SHARED, eventDevice, 0); if (test_map == MAP_FAILED) { ALOGE("Test mmap failed with fd=%d, errno=%d (%s)", eventDevice, errno, strerror(errno)); } else { ALOGI("Test mmap succeeded.地址:%p", test_map); munmap(test_map, 4096); } long page_size = getpagesize (); off_t small_offset = page_size;//尝试偏移量 4096 size_t small_size = page_size;//4096 字节 void* second_test_map = mmap(NULL, small_size, PROT_READ | PROT_WRITE, MAP_SHARED, eventDevice, small_offset); if (second_test_map == MAP_FAILED) { ALOGE("第二次测试 mmap 失败:fd=%d, offset=0x%llx, errno=%d (%s)", eventDevice, (long long)small_offset, errno, strerror(errno)); } else { ALOGI("Second test mmap succeeded.地址:%p (offset=0x%llx)", second_test_map, (long long)small_offset); munmap(second_test_map, small_size); } } void *mapped_json_buffer = NULL; // 为毫米映射结果使用临时指针 ALOGI("Calling mmap(NULL,%u, PROT_READ|PROT_WRITE, MAP_SHARED,%d, 0x%llx)", VIV_JSON_BUFFER_SIZE, eventDevice, (long long)event.addr); // 检查地址是否已经映射到 bufMap auto it = bufMap.find(event.addr); if (it == bufMap.end()){ ALOGI("VIV_VIDEO_EVENT_EXTCTRL:在 bufMap 中找不到 event.addr。Attempting mmap..."); // Not found, attempt to mmap mapped_json_buffer = ::mmap(NULL, VIV_JSON_BUFFER_SIZE, PROT_READ | PROT_WRITE, MAP_SHARED, eventDevice, event.addr); if (mapped_json_buffer == MAP_FAILED) { // CRITICAL ERROR: mmap failed ALOGE("VIV_VIDEO_EVENT_EXTCTRL:FAILED to mmap memory for event.addr=0x%llx、fd=%d,size=%zu。errno=%d (%s)", (long long)event.addr、eventDevice, (size_t)VIV_JSON_BUFFER_SIZE, errno, strerror(errno)); } // mmap 成功,存储在 bufMap ALOGI("VIV_VIDEO_EVENT_EXTCTRL: mmap 成功。映射地址:0x%p", mapped_json_buffer); bufMap[event.addr].= mapped_json_buffer; } else { // 已经映射,从 bufMap 获取 ALOGI("VIV_VIDEO_EVENT_EXTCTRL: event.addr found in bufMap." ); mapped_json_buffer = it->second; } ALOGI("VIV_VIDEO_EVENT_EXTCTRL: Mapped buffer pointer: 0x%p", mapped_json_buffer); // 在使用指针之前再次检查指针是否有效 if (mapped_json_buffer == MAP_FAILED || mapped_json_buffer == NULL) { ALOGE("VIV_VIDEO_EVENT_EXTCTRL:在 mmap/lookup 之后,映射缓冲区无效 (0x%p)。跳过 JSON 解析。" 、mapped_json_buffer); } Json:: Reader reader; //现在,安全地使用 mapped_json_buffer STD::string str = (char *)mapped_json_buffer; //此行崩溃 --- 第二张测试图失败,这让我觉得是在试图映射一个空白空间。 -------- 这是我的启动序列 cd c d build-out/sdk 导出 ld_library_path=$pwd:$LD_LIBRARY_PATH 导出 GST_DEBUG=4 systemctl 停止 imx8-isp.service export ISP_LOG_LEVEL=8 rmmod vvcam-video rmmod vvcam-dwe rmmod vvcam-isp rmmod imx8-media-dev.ko insmod mt9v024.ko insmod vvcam-isp.ko insmod vvcam-dwe.ko insmod vvcam-video.ko # 这将把先前的驱动程序设置为媒体 insmod imx8-media-dev.ko ./isp_media_server摄像机 0& 然后使用之前提到的命令(gts 或 v4l2) --- 我几乎没有修改 OS08a20_8M_10_1080p_hdr.xml 和 sensor_dwe_os08a20_1080P_config.json,因此我得到了我的自定义文件,但我认为这应该足以获得图像,即使质量不好,我将分辨率改为 720x480p, 文件概览: root @imx8mp:~/版本-out/sdk# ls MT9V024_8M_10_480p_linear.xml libadpcc.so libcam_device.so libhal.so libsom_ctrl.so OS08a20_8M_10_1080p_hdr.xml libadpf.so libcam_engine.so libi2c_drv.so libversion.so OS08a20_8M_10_1080p_linear.xml libaec.so libcameric_drv.so libibd.so libvom_ctrl.so OS08a20_8M_10_4k_hdr.xml libaee.so libcameric_reg_drv.so libisi.so libvvdisplay_shared.so OS08a20_8M_10_4k_linear.xml libaf.so libcim_ctrl.so libjsoncpp.so mt9v024.drv Sensor0_Entry.cfg libaflt.so libcommon.so libjsoncpp.so.1.9.0 mt9v024.ko Sensor0_Entry_mt9v024.cfg libahdr.so libcppnetlib-client-connections.so libjsoncpp.so.21 os08a20.drv Sensor0_Entry_os08a20.cfg libappshell_ebase.so libcppnetlib-client-connections.so.0 libmedia_server.so os08a20.ko Sensor1_Entry.cfg libappshell_hal.so libcppnetlib-client-connections.so.0.13.0 libmim_ctrl.so ov2775.ko Sensor1_Entry_mt9v024.cfg libappshell_ibd.so libcppnetlib-server-parsers.so libmipi_drv.so run.sh Sensor1_Entry_os08a20.cfg libappshell_oslayer.so libcppnetlib-server-parsers.so.0 libmom_ctrl.so start_isp.sh VSI_Monitor.cfg libavs.so libcppnetlib-server-parsers.so.0.13.0 libmt9v024.so test_image.ogv basler-camera-driver-vvcam.ko libawb.so libcppnetlib-uri.so libmt9v024.so.1 video_test dewarp_config libawdr3.so libcppnetlib-uri.so.0 libmt9v024.so.1.0.0 vvcam-dwe.ko imx8-media-dev.ko libbase64.so libcppnetlib-uri.so.0.13.0 libos08a20.so vvcam-isp.ko isp_media_server libbufferpool.so libdewarp_hal.so libos08a20.so.1 vvcam-video.ko liba2dnr.so libbufsync_ctrl.so libebase.so libos08a20.so.1.0.0 vvext liba3dnr.so libcam_calibdb.so libfpga.so liboslayer.so \root@imx8mp:~/版本-out/sdk# ls dewarp_config/ sensor_dwe_bypass_480P_config.json sensor_dwe_os08a20_1080P_config.json sensor_dwe_os08a20_4K_config.json root @imx8mp:~/版本-out/sdk# cat dewarp_config/sensor_dwe_bypass_480p_config.json { " dewarpConfigArray":[ { " source_image":{ " width": 752, " height": 480 }、 "dewarpType" :"LENS_CORRECTION, FISHEYE_EXPAND, SPLIT_SCREEN", " dewarpType" :"fisheye_dewarp" 、 "标度" :{ " roix": 0, " roiy": 0, " factor": 1.0 }、 "split" :{ " horizon_line": 240, " vertical_line_up": 367, " vertical_line_down" :367 }、 "bypass": true, " hflip": false, " vflip": false、 "camera_matrix": [ 3.9177894938743270e+003, 0., 1.9716642989691159e+003, 0.,3.9177894938743270e+003、1.1024451486734267e+003, 0., 0., 1. ], " distortion_coeff": [ -1.3019040624278982e-001, 2.2621318183135611e-001,1.2109476203374344e-003, 9.4317229120640680e-004,-7.1053958306120402e-001 ], " perspective": [1.0, 0, 0, 0, 1, 0, 0, 1]. } ] } root@imx8mp:~/版本-out/sdk# cat Sensor0_Entry.cfg name="mt9v024" drv = "mt9v024.drv" 模式= 0 [mode.0] xml ="MT9V024_8M_10_480p_linear.xml" dwe = " dewarp_config/Sensor_dwe_bypass_480p_config.json " root @imx8mp:~/版本-out/sdk# --- 这就是我的媒体的样子(我记得我试过另一个 isp 项目,我也有 media1,但那是在 yocto scarthgap 中,所以我不知道这里是否应该一样): root @imx8mpmk5:~/build-out/sdk# media-ctl-p-d /dev/media0 媒体控制器 API 版本 5.15.71 媒体设备信息 驱动程序 mxc-md 型号 FSL 捕获媒体设备 串行 总线信息 硬件修订版 0 x0 驱动程序版本 5.15.71 设备拓扑 -实体 1:mxc-mipi-csi2.0(8 个焊盘,1 个链接) 类型节点子类型 V4L 标志 0 设备节点名称 /dev/v4l-subdev2 pad0:Sink <-" mt9v024 2-0048 ": 0 [启用,不可变] pad1:Sink pad3:Sink p ad4:来源 pad5:来源 pad6:来源 pad7:来源 pad7:来源 pad7:来源 pad7:来源 pad7:来源 pad7 -实体 10:mt9v024 2-0048(1 个焊盘,1 个链接) 类型 V4L2 子开发子类型传感器标志 0 设备节点名称 /dev/v4l-subdev3 pad0:来源 [fmt: unknown/0x0]-> " mxc-mipi-cs i2.0 ": 0 [启用,不可变] root @imx8mpm:~/build-out/sdk# media-ctl-p-d /dev/media1 无法枚举 /dev/media1 (-2) ---- 我希望有人能提示我如何进一步调试这个问题,或者指出哪个元器件正在生成这个问题。 Re: isp_media_server segmentation fault at VIV_VIDEO_EVENT_SET_CROP or other mmap operations 嘿,我认为 isp-imx-4.2.2.20.0 没有上述迁移问题。 我使用以下方法修复了它: ./build-all-isp.sh 版本部分 V4L2 而不 是 /build-all-isp.sh 版本部分 我正在阅读 yocto scarthgap 的手册,默认模式是 V4L2,所以我是在原生模式而不是 V4L2 下构建,因为在 isp-imx-4.2.2.20.0 中,默认模式是 " 原生传感器 "。 Re: isp_media_server segmentation fault at VIV_VIDEO_EVENT_SET_CROP or other mmap operations Hello 与https://docs.nxp.com/bundle/AN13712/page/topics/start_isp_media_server.html 将提取的 isp-imx保留在你的资源库中,用于定制驱动程序的开发。然而,使用差异工具时,并没有发现.so的差异文件从isp-imx-4.2.2.6.0迁移到 isp-imx-4.2.2.11.0 的过程中。因此,他们保持与isp-imx-4.2.2.6.0相同,并面临与IMX8M-Plus 相机集成和使用 ISP 中所述相同的问题。 此致
查看全文
S32G3 PFE 外部时间戳模式 你好 我正在开发 S32G-VNP-RDB3 板,我想将其配置为 pfe1 和 pfe2 接口上的 PTP 边界时钟。 运行 `ptp4l -H -i pfe1 -i pfe2 -m` (使用 BSP44.0)就会出现这个错误: ptp4l[2178.575]: selected /dev/ptp2 as PTP clock ptp4l[2178.576]: port 2 (pfe2): PHC device mismatch ptp4l[2178.576]: port 2 (pfe2): /dev/ptp2 requested, ptp3 attached ptp4l[2178.576]: failed to open port pfe2 failed to create a clock 这没有问题,因为 ptp4l 要求接口使用相同的硬件时钟。S32G_PFE_LNX_DRV_UM 第 2.3.1.2 节解释了时钟树的配置,即"EMAC0 是时间源,为 GMAC、EMAC1 和 EMAC2" 供电(图中虚线)。   要应用此配置(如本章所述),我将三台设备(使用 yocto 构建映像时)修改如下: diff --git a/image/s32g-pfe.dtsi b/image/s32g-pfe-new.dtsi index 94f886b..0a6ba1c 100644 --- a/arch/arm64/boot/dts/freescale/s32g-pfe.dtsi +++ b/arch/arm64/boot/dts/freescale/s32g-pfe.dtsi @@ -53,6 +53,7 @@ "pfe-shared-pool", "pfe-bdr-pool"; nxp,fw-class-name = "s32g_pfe_class.fw"; nxp,fw-util-name = "s32g_pfe_util.fw"; + nxp,pfeng-emac-ts-ext-modes = , ; nxp,pfeng-ihc-channel = ; status = "disabled"; @@ -175,4 +176,3 @@ }; }; }; - 在引导日志中,我看到了这个: [ 8.716896] pfeng 46000000.pfe pfe1 (uninitialized): Subscribe to HIF1 [ 8.723466] pfeng 46000000.pfe pfe1 (uninitialized): Host LLTX disabled [ 8.730319] pfeng 46000000.pfe pfe1 (uninitialized): Enable HIF1 [ 8.736399] pfeng 46000000.pfe pfe1 (uninitialized): setting MAC addr: 00:04:9f:be:ef:01 [ 8.744584] pfeng 46000000.pfe pfe1 (uninitialized): PTP HW addend 0x80000000, max_adj configured to 46566128 ppb [ 8.754886] pfeng 46000000.pfe: IEEE1588: Using external timestamp input [ 8.761903] pfeng 46000000.pfe pfe1 (uninitialized): Registered PTP HW clock successfully on EMAC1 [ 8.771626] pfeng 46000000.pfe pfe1: registered [ 8.776283] pfeng 46000000.pfe pfe2 (uninitialized): Subscribe to HIF2 [ 8.782837] pfeng 46000000.pfe pfe2 (uninitialized): Host LLTX disabled [ 8.789684] pfeng 46000000.pfe pfe2 (uninitialized): Enable HIF2 [ 8.795771] pfeng 46000000.pfe pfe2 (uninitialized): setting MAC addr: 00:04:9f:be:ef:02 [ 8.803945] pfeng 46000000.pfe pfe2 (uninitialized): PTP HW addend 0x80000000, max_adj configured to 46566128 ppb [ 8.814257] pfeng 46000000.pfe: IEEE1588: Using external timestamp input [ 8.821221] pfeng 46000000.pfe pfe2 (uninitialized): Registered PTP HW clock successfully on EMAC2 [ 8.830823] pfeng 46000000.pfe pfe2: registered 但是,`ethtool` 仍然为每个 pfe 接口报告不同的 ptp 硬件时钟: root@s32g399ardb3:~# ethtool -T pfe0 ... PTP Hardware Clock: 1 ... root@s32g399ardb3:~# ethtool -T pfe1 ... PTP Hardware Clock: 2 ... root@s32g399ardb3:~# ethtool -T pfe2 ... PTP Hardware Clock: 3 ... 我从 `ptp4l -H -i pfe1 -i pfe2 -m` 中得到了相同的输出结果。 我在配置中遗漏了什么?pfe 固件中是否有需要重新编译的地方? Re: S32G3 PFE External Timestamp Mode 你好,@NidasioAlberto、 太好了,这正是我得出的结论。 如果您需要更多支持,请告诉我,我会尽最大努力帮助您。 鉴于这篇文章的长度,如果你需要关注这个话题,请创建一个新帖子,你可以参考这篇文章来跟踪上下文。 谢谢! Re: S32G3 PFE External Timestamp Mode 谢谢@alejandro_e,我会尝试修补 PFE 驱动程序。 Re: S32G3 PFE External Timestamp Mode 你好,@NidasioAlberto、 我的理解是,ethtool输出中的时钟数是 “虚拟设备” 的ID,不一定反映模块的内部配置。 对于每台设备,都会注册不同的时钟设备,它发生在这里 linu x-pfeng/pfeng-ptp.c #L247 例如,使用基本 BSP44 映像,您可以看到所有 PFE_EMAC 实例都注册了 PTP 时钟: root@s32g399ardb3:~# dmesg | grep "Registered PTP HW clock successfully on EMAC" [ 9.525257] pfeng 46000000.pfe pfe0 (uninitialized): Registered PTP HW clock successfully on EMAC0 [ 9.593027] pfeng 46000000.pfe pfe1 (uninitialized): Registered PTP HW clock successfully on EMAC1 [ 9.653784] pfeng 46000000.pfe pfe2 (uninitialized): Registered PTP HW clock successfully on EMAC2 在linux-pfeng/pfeng-netif.c#L1544 中,每个接口的时钟寄存器过程都会重复进行。 您可以修改源代码,使所有接口使用相同的虚拟时钟。这与我之前分享的信息有关: 如果所有 PFE_EMAC 接口都注册了相同的时钟,那么就可以对所有感兴趣的接口使用一个 ptp4l 实例。 有关详细信息,您可以使用以下命令: root@s32g399ardb3:~# ls -l /sys/class/ptp/ total 0 lrwxrwxrwx 1 root root 0 Oct 9 15:51 ptp0 -> ../../devices/platform/soc/46000000.pfe/ptp/ptp0 lrwxrwxrwx 1 root root 0 Oct 9 15:52 ptp1 -> ../../devices/platform/soc/46000000.pfe/ptp/ptp1 lrwxrwxrwx 1 root root 0 Oct 9 15:52 ptp2 -> ../../devices/platform/soc/46000000.pfe/ptp/ptp2 lrwxrwxrwx 1 root root 0 Oct 9 15:59 ptp3 -> ../../devices/platform/soc/4033c000.ethernet/ptp/ptp3 root@s32g399ardb3:~# ls /sys/class/ptp/ ptp0 ptp1 ptp2 ptp3 root@s32g399ardb3:~# ls /sys/class/ptp/ptp0/ clock_name dev device max_adjustment max_vclocks n_alarms n_external_timestamps n_periodic_outputs n_programmable_pins n_vclocks power pps_available subsystem uevent root@s32g399ardb3:~# cat /sys/class/ptp/ptp0/clock_name pfeng ptp root@s32g399ardb3:~# cat /sys/class/ptp/ptp0/dev 251:0 root@s32g399ardb3:~# cat /sys/class/ptp/ptp0/max_vclocks 20 最后一部分与以下结构相匹配linux/include/linux/ptp_clock_kernel.h#L166。 如果这些信息对您有帮助,请告诉我 Re: S32G3 PFE External Timestamp Mode 感谢@alejandro_e这么快回复我。 我理解内部团队的意思。 我不明白的是,为什么在为 pfe1 和 pfe2 配置"外部时间戳模式" 时,与 pfe1 和 pfe2 相关的硬件时钟与 pfe0 不一样,而仍然是各自独立的时钟。我指的是 pfe 驱动程序向 Linux 以及 ptp4l 公开的内容。 我所期望的是,不要再看到这些了: root@s32g399ardb3:~# ethtool -T pfe0 ... PTP Hardware Clock: 1 ... root@s32g399ardb3:~# ethtool -T pfe1 ... PTP Hardware Clock: 2 ... root@s32g399ardb3:~# ethtool -T pfe2 ... PTP Hardware Clock: 3 ... 我看到了这个: root@s32g399ardb3:~# ethtool -T pfe0 ... PTP Hardware Clock: 1 ... root@s32g399ardb3:~# ethtool -T pfe1 ... PTP Hardware Clock: 1 ... root@s32g399ardb3:~# ethtool -T pfe2 ... PTP Hardware Clock: 1 ...  Re: S32G3 PFE External Timestamp Mode 你好,@NidasioAlberto、 我从内部团队收到了以下反馈意见: ” 如果 PFE_EMAC1 和 PFE_EMAC2 共享来自 PFE_EMAC0 的时间戳,则不支持调整 PFE_EMAC1 和 PFE_EMAC2 的 PTP 时间,可以认为 PTP 时间寄存器以只读模式工作。并反映 PFE_EMAC0 的 PTP 时间。在这种情况下,为了同步时间,应使用 PFE_EMAC0。 “ 如果这些信息对您的问题有帮助,请告诉我 Re: S32G3 PFE External Timestamp Mode 感谢@alejandro_e的跟进和将问题升级。我会等待反馈的。 Re: S32G3 PFE External Timestamp Mode 你好@NidasioAlberto 您在时钟方面遇到的问题,即使用"外部时间戳模式" 和使用 ptp4l 获得错误配置的问题,不在我的专业范围之内。我将与内部团队联系,以便在此问题上获得更好的支持。这可能需要一些时间,感谢您的耐心等待。 关于 ptp4l 文档,请查看以下内容: 第20章 使用 ptp4l 配置 PTP | 系统管理员指南 | Red Hat Enterprise Linux | 7 | Red Hat 文档 不过,这与恩智浦不提供的 ptp4l 程序有关,因此除了我们目前提供的支持外,我们无法提供更多支持。不便之处,敬请原谅。 关于本回复的第一个主题,我会给您回复。 Re: S32G3 PFE External Timestamp Mode 从GitHub 上的 PFE 驱动程序软件仓库中,我看到管理外部时间戳模式的代码是由@jpetrous 提交的,也许他能帮上忙 Re: S32G3 PFE External Timestamp Mode 通过运行两个独立的 ptp4l 实例(使用 `-s` 选项更能启用客户端模式),两个接口可以同时成为客户端。在这种情况下,两个接口的外设硬件时钟同步后,phc2sys 应使用哪一个来同步系统时钟? 我想实现的是,在多个端口上运行一个 ptp4l 实例,同步一个硬件时钟。我想实现一个边界时钟,它在一个端口上与上游主端口同步,并在其他端口上作为主端口提供自己的时钟。 ptp4l 可在多个接口上运行。LinuxPTP 文档是这么说的,而且我也用 SJA1110 交换机实现了我想做的事情。我的做法是启用 SJA 的 DSA 驱动程序,并运行 `ptp4l -i p2 -i p3 -2 -m`。在 linux 中,DSA 驱动程序暴露了交换机接口,它们具有相同的硬件时钟(ethtool 也报告了这一点,显示时钟为 4)。由于这两个端口具有相同的硬件时钟,ptp4l 可以同时使用它们。在这个配置中,我看到ptp4l 通过两个接口中的一个选择一个主控程序,如果该主控程序失效,则从另一个接口选择新的主控程序。如果BMCA算法选择这样做,那么板本身就可以成为主板。有了这个,我还可以运行 `phc2sys -a -rr -m` 来自动将系统时钟同步到硬件时钟(如果板是从机),或者如果它充当特级主时钟,则硬件时钟与系统时钟同步。 由于我为 pfe1 和 pfe2 启用了"外部时间戳模式" (如我第一篇文章所述),因此 pfe1 和 pfe2 的硬件时钟由 pfe0 的硬件时钟产生。通过运行您提供的两个ptp4l 实例(仅客户端模式),当ptp4l 需要调整硬件时钟时,会出现错误。 root@s32g399ardb3:~# ptp4l -i pfe2 -2 -m ptp4l[72513.760]: selected /dev/ptp3 as PTP clock ptp4l[72513.796]: port 1 (pfe2): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[72513.796]: port 0 (/var/run/ptp4l): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[72513.796]: port 0 (/var/run/ptp4lro): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[72514.342]: port 1 (pfe2): new foreign master 00049f.fffe.096f15-1 ptp4l[72518.342]: selected best master clock 00049f.fffe.096f15 ptp4l[72518.343]: port 1 (pfe2): LISTENING to UNCALIBRATED on RS_SLAVE ptp4l[72520.342]: master offset -1593121442 s0 freq +227123 path delay 788 ptp4l[72521.349]: failed to adjust the clock: Operation not supported ptp4l[72522.342]: master offset -1593112737 s0 freq +231478 path delay -211 ptp4l[72523.349]: failed to adjust the clock: Operation not supported 这确实是有感知,因为如果我告诉板 pfe1 和 pfe2 的硬件时钟源自 pfe0,那么我就无法修改它们。 我的问题是"外部时间戳模式" 启用 pfe1 和 pfe2 后,为什么在 Linux 中 pfe1 和 pfe2 外设与硬件时钟 1 无关,而是与它们的时钟(分别为 2 和 3)有关。我的意思是,在 SJA1110 的 DSA 驱动程序中,不同的接口与相同的硬件时钟(本例中为 `/dev/ptp4`)相关。详情请参阅我的第一个帖子。那么,这是一个错误,还是我需要配置其他东西?也许我缺少的设备树中还有其他东西要修改? 是否也可以参考一些文档?比如,如果 ptp4l 不支持多端口,我在哪里可以找到这方面的记录? 另外,非常感谢@alejandro_e的帮助。 Re: S32G3 PFE External Timestamp Mode 你好,@NidasioAlberto、 谢谢你的澄清,我没有正确理解你的问题。 为方便起见,我在下面的示例中使用了 end0 和 pfe2,但使用 pfe1 和 pfe2 也能达到同样的效果。 每条 ptp4l 命令只能支持一个接口,因此需要运行两条命令,具体方法如下: ptp4l -2 -H -i pfe2 -s -m > /var/log/ptp4l_pfe2.log & ptp4l -2 -H -i end0 -s -m > /var/log/ptp4l_end0.log & 每条命令末尾的&将把每条命令的执行发送到后台,因此你将获得终端的控制权。输出结果将保存在每条命令中指定的文件中,文件名可以随意命名,我选择这个名字是为了方便。 例如: s32g399ardb3 login: root root@s32g399ardb3:~# ip addr add 192.168.0.131/24 dev pfe2 root@s32g399ardb3:~# ip addr add 192.168.0.130/24 dev end0 root@s32g399ardb3:~# ptp4l -2 -H -i pfe2 -s -m > /var/log/ptp4l_pfe2.log & ptp4l -2 -H -i end0 -s -m > /var/log/ptp4l_end0.log & [1] 455 [2] 456 root@s32g399ardb3:~# jobs [1]- Running ptp4l -2 -H -i pfe2 -s -m > /var/log/ptp4l_pfe2.log & [2]+ Running ptp4l -2 -H -i end0 -s -m > /var/log/ptp4l_end0.log & root@s32g399ardb3:~# cat /var/log/ptp4l_pfe2.log ptp4l[79.716]: selected /dev/ptp2 as PTP clock ptp4l[79.744]: port 1 (pfe2): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[79.744]: port 0 (/var/run/ptp4l): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[79.745]: port 0 (/var/run/ptp4lro): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[85.948]: selected local clock 00049f.fffe.beef02 as best master root@s32g399ardb3:~# cat /var/log/ptp4l_end0.log ptp4l[79.716]: selected /dev/ptp3 as PTP clock ptp4l[79.760]: port 1 (end0): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[79.760]: port 0 (/var/run/ptp4l): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[79.760]: port 0 (/var/run/ptp4lro): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[85.911]: selected local clock b2ecbb.fffe.ef0375 as best master root@s32g399ardb3:~# 首先,我为每个接口分配了一个 IP,然后为每个接口调用了 ptp4l,最后在终端上显示了日志文件的内容。 为此,我将设备同时连接到 P3B(PFE2)和 P3A(GMAC0),否则可能会出现一些错误日志。 请告诉我这是否解决了你的问题。 Re: S32G3 PFE External Timestamp Mode 感谢@alejandro_e 的回答,但我的问题仍然存在。我试着进一步解释一下。 S32G3 的 PFE 外设有 3 个接口,一个连接到 SJA1110 交换机,另外两个公开在板上(图中的 PFE_MAC0 和 PFE_MAC1)。 我的目标应用程序包括通过两个接口将客户端连接到板,并通过PTP与它们同步。因此,我需要 ptp4l 同时运行两个接口,而不是只分别运行 pfe1 或 pfe2。 从ptp4l 工具的 LinuxPTP 文档中,如果我想使用硬件时间戳,我读到了这一点。 由 -i 选项和配置文件指定的所有端口必须连接到同一个 PTP 硬件时钟 (PHC)。 因此,出于这个原因,我需要配置板,使两个接口使用相同的硬件时钟。 Re: S32G3 PFE External Timestamp Mode 你好,@NidasioAlberto、 感谢您与我们联系。我完成了 BSP44 用户指南中描述的步骤,我能够毫无问题地配置 PTP 时间戳,我使用了预编译的映像,它应该与 yocto 版本相同。虽然命令语法不同,但我使用了 ptp4l -2 -H -i end0 -m -s 输出结果如下 root@s32g399ardb3:~# ptp4l -2 -H -i pfe2 -m -s ptp4l[331.563]: selected /dev/ptp2 as PTP clock ptp4l[331.600]: port 1 (pfe2): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[331.600]: port 0 (/var/run/ptp4l): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[331.600]: port 0 (/var/run/ptp4lro): INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[337.781]: selected local clock 00049f.fffe.beef02 as best master ptp4l[385.758]: port 1 (pfe2): link down ptp4l[385.758]: port 1 (pfe2): LISTENING to FAULTY on FAULT_DETECTED (FT_UNSPECIFIED) ptp4l[385.788]: port 1 (pfe2): assuming the grand master role ptp4l[385.788]: port 1 (pfe2): master state recommended in slave only mode ptp4l[385.788]: port 1 (pfe2): defaultDS.priority1 probably misconfigured 断开以太网电缆连接后,出现链接中断信息。 在此之前,我只需要用下面的方法配置 P3A 端口的 IP: ip addr add 192.168.0.131/24 dev pfe2 我把它连接到我的 Window 11 电脑上。 如果使用 PFE1,应该会得到相同的结果: ptp4l -2 -H -i pfe1 -m -s 请告诉我是否正确理解了您的问题
查看全文
FRDM-MC-LVPMSM 你好 如果将 15V 改为 VM,并将 12V 连接到 J6,是否可以用来驱动 12V 无刷直流电机? 此致, 珍妮 Re: FRDM-MC-LVPMSM 我们不是电机制造商。请联系 maxon 或 Teknic 以获得支持。 Re: FRDM-MC-LVPMSM 嗨,塞莱斯特、 我们使用的电机是maxon 200142,配有双通道 2048 编码器和霍尔传感器。 比较 Teknic M-2310P-LN-04K 和 maxon 200142,它们都有永磁转子,都有霍尔传感器和编码器。 为什么 Teknic M-2310P-LN-04K 适合正弦控制,而 maxon 200142 适合陷波控制? 能否请您解释一下? 此致, 珍妮 Re: FRDM-MC-LVPMSM 你好@JennyC、 不,我建议你直接使用 FRDM-MC-LVBLDC|FRDM开发平台|恩智浦半导体。 FRDM-MC-LVPMSM 和 FRDM-MC-LVBLDC 之间的区别不仅仅在于电源。 希望能帮到你。 BRS 西莱斯特 -------------------------------------------------------------------------------------------------------------------- 注:如果本帖回答了您的问题,请点击"ACCEPT AS SOLUTION" 按钮。Thank you! --------------------------------------------------------------------------------------------------------------------
查看全文
我开始使用 LPC Expresso IDE 软件为 LPC2478 控制器编码 我已经免费做了所有事情,但是当我运行代码时会出现这个问题所以请指导我 16:19:29 **** 增量配置版本调试项目 led_blink **** make-r all bash.exe:警告:找不到 /tmp,请创建!构建文件:../src/main.c bash.exe:警告:找不到 /tmp,请创建!调用:MCU C 编译器 arm-none-eabi-gcc-DDEBUG-D__CODE_RED-D __REDLIB__-O0-fno-common-g3-Wall-c-fmessage-length=0-fno-builtin-function-sections-fdata-sections-mcpu=arm7tdmi-specs=redlib.specs-MMD-MP " src/main.d "-MT"src/main.o"-MT"src/main.d"-o"src/main.o""../src/main.c"bash.exe:警告:找不到 /tmp,请创建!../src/main.c:1:64: fatal error:LPC24xx.h:无此文件或目录 编译已终止。make:*** [src/main.o]错误 1 16:19:30 版本完成(花了 300 毫秒) LPCXpresso论坛 Re: I am starting with LPC Expresso IDE software for coding LPC2478 controller Hi@VijayaJangam1 FT232RL 是一款 USB 至 UART 桥接芯片。 它只提供用于通信的串行端口连接。 它无法提供硬件调试,因为它不支持 ARM 调试协议。 如果是调试,我建议连接 LPC-Link2。 BR 哈利 Re: I am starting with LPC Expresso IDE software for coding LPC2478 controller 您好,先生, 我将 LPC24xx.h但我在调试过程中遇到了问题,没有正确调试项目,下一步该怎么办,请指示。我已将文件发送给您,其中提到了所有事情 感谢您的支持         Re: I am starting with LPC Expresso IDE software for coding LPC2478 controller 感谢您的支持 Re: I am starting with LPC Expresso IDE software for coding LPC2478 controller 你好@VijayaJangam1 1."bash.exe:warning: could not find /tmp" 表示您的 Windows 环境中没有 /tmp 目录。 我想你可以尝试创建一个 tmp 文件夹。 2.致命错误:LPC24xx.h:无此文件或目录 表示您的项目找不到 LPC2478 MCU 头文件。 我认为您可以尝试在项目设置中添加包含路径,或者 将该文件复制到项目的 include 目录中。 BR 哈利
查看全文
处理器间通信:rpmsg_char + tinycbor 我正在开发 i.MX8MMSoC,希望使用TinyCBOR库的rpmsg_char通道管理两个内核之间的通信。我找不到任何恩智浦的 rpmsg_char 驱动程序,只有标准的imx_rpmsg_tty,虽然它运行良好,但我"怀疑" ,与 rpmsg_char 相比,它的开销更大。 您对选择有什么看法?您有什么意见或建议吗?" 谢谢 核心与内存 Re: Inter-Processor communication: rpmsg_char + tinycbor 你好@gigi1291 希望你一切都好。 实际上,在我们的电路板支持包中你可以找到 rpmsg_char.c驱动程序,但遗憾的是,我们没有与 SDK 集成的示例。 您可以将适用于 cortex M 的 MCUXpresso SDK 中的多核示例作为参考。 顺祝商祺! 萨拉斯
查看全文
High CPU Usage with Qt6 on i.MX6SX Using Vivante GPU Hi, I'm experiencing significantly higher CPU usage after upgrading my application from Qt5 to Qt6 on an i.MX6 SoloX platform using the Vivante GPU with a Yocto-based BSP. With Qt5, the application typically consumed around 40% CPU, but after migrating to Qt6, the usage has nearly doubled to ~80%. This issue is reproducible even with official Qt6 example applications. I have verified that the application is utilizing the OpenGL backend, so hardware acceleration appears to be in use. Is this elevated CPU usage expected behavior with Qt6 on the i.MX6SX platform? Are there any known optimizations, GPU driver configurations, or Qt6-specific settings that could help reduce CPU load? Any guidance or suggestions would be greatly appreciated. Regards, Manoj S Re: High CPU Usage with Qt6 on i.MX6SX Using Vivante GPU Hello  Vivante support Qt6 but your linux version is not supported by NXP you should go with your vendor. Regards Re: High CPU Usage with Qt6 on i.MX6SX Using Vivante GPU Hi, We are using yocto scarthgap version, the machine is var-som-imx6. The kernel version is v6.1.138, and the Qt version is v6.8.3. The kernel-moduleimx-gpu-viv version is v6.4.11.p2.4.  Re: High CPU Usage with Qt6 on i.MX6SX Using Vivante GPU This looks like ai generated slop.  And the link you provide is just some religious subreddit. Re: High CPU Usage with Qt6 on i.MX6SX Using Vivante GPU Yes, elevated CPU usage with Qt6 on the i.The MX6 SoloX platform is a known issue. Qt6 introduces a more demanding rendering pipeline, and the Vivante GPU on SoloX has limited capabilities, which can lead to higher CPU load even with OpenGL acceleration. Suggested optimizations: - Use Qt Quick Compiler to precompile QML. - Enable framebuffer compression and Vivante GPU tuning via BSP. - Consider lazy loading and scene graph caching strategies. - Use Qt Quick Controls 2 instead of legacy controls for better performance. More insights are discussed in this NXP community thread. Best Regards, Thomas Henry Re: High CPU Usage with Qt6 on i.MX6SX Using Vivante GPU Hello, Which yocto are you using? since 6.6.52 works with QT6, don.t try to update since the gpu version works according to the qt you have installed. Regards
查看全文
语音处理框架 - 链接中断 在研究如何在 imx 8m plus npu 上实现唤醒词检测/文本转语音功能时,我发现了这个页面,据说其中包含用于此目的的现成框架。 但是,自动语音识别和对话式人工智能的链接已经断开。有人知道相关章节被移到哪里了吗? Re: Voice processing frameworks - broken links 你好 逐渐地,所有语音处理模块(唤醒词、ASR、LLM、TTS)都将作为 Gstreamer 插件提出,以简化语音部署。 请通过 [email protected] 联系我们获取预版本。 到目前为止,我们已经为唤醒词、ASR、人工智能降噪以及人工智能回声消除和降噪提供了单独的插件。 Re: Voice processing frameworks - broken links 感谢你的回复,这个 imx-voiceui 仓库不再有效吗? Re: Voice processing frameworks - broken links 很抱歉。 语音网页正在更新。 同时,您可以参考我们的 eIQ Gen AI 流程 github :https://github.com/nxp-appcodehub/dm-eiq-genai-flow-demonstrator?tab=readme-ov-file 很快,我们将提出 ASR 和 TTS 作为单独的 GStreamer 插件。
查看全文
S32K14W-Q064 再リファレンスボード上の CAN の例 こんにちは、 S32K14W-Q064 リファレンス ボードで CAN 通信をテストしています。私はS32DSバージョン3.6.3を使用していますおよびAUTOSAR R21-11 RTD 3.0.0ここで推奨されています。 「CAN_example_S32K144W」や「FlexCAN_Ip_example_S32K144W」などの例をいくつか確認しようとしていますが、機能しません。 追加の構成やテスト コードなどの情報を教えていただけますか?前もって感謝します。 Re: CAN Example on S32K14W-Q064 rerefence board こんにちは@vincent841 UJA116x の CAN 機能はデフォルトで有効になっているSO、CAN 機能を評価するために設定する必要はありません。 TJA1145 には構成が必要ですが、このトランシーバ用のドライバのサンプル コードがありません。 UJA116x または JTA1145 に関する質問がある場合は、新しいトピックを作成してください。 Re: CAN Example on S32K14W-Q064 rerefence board @Senlent返信ありがとうございます。もう1つ質問があります。 リファレンスボード( S32K14W-Q064)上にCANトランシーバとしてUJA1169TK(CAN0)とTJA1145(CAN1)があるのを見つけました。 これらのデバイスでは、CAN 通信用に追加の構成が必要ですか?もしSOなら、関連するモジュールやサンプルコードを共有していただけますか? よろしくお願いします。 Re: CAN Example on S32K14W-Q064 rerefence board こんにちは@vincent841 デモ「 FlexCAN_Ip_example_S32K144W 」はFlexCANループバックモードで動作しますが、いくつかの変更が必要です。 1.flexcan0の動作モードを通常モードに変更します。 2.flexcan0のポートを追加
查看全文
Android Tag Writer NTAG 424 DNA I'm using TagWriter to configure an SDM image, but the CMAC offset is incorrect no matter how I set it. I'm also using it according to the documentation, but it's still incorrect. Could you please explain this to me? Re: Android Tag Writer NTAG 424 DNA Hello, I would like to ask why when I use tag info to check the card information, the first time I swipe the card, it shows NXP, but after I change the data, it shows suspected pirated. And sometimes when I swipe other cards, they show NXP, and sometimes they show pirated. Re: Android Tag Writer NTAG 424 DNA Hello @umi2025 Could you please describe what is the procedure you have followed? Please, refer to TagWriter User Manual; Chapter 4 describes the procedure for enabling and configuring the Mirroring features by using this app. Additionally, I will recommend using RFIDDiscover, which is a tool for testing and configuring the tags and cards based on our devices. It is also recommended using PEGODA Contactless Smart Card Reader | NXP Semiconductors together with this tool. Something important to remark is that RFID Discover is secured under NDA and must be requested from the Secure Resources. Regards, Eduardo.
查看全文
Controlling mmcblk0 Devices in Xen on S32G274ARDB2 Hi, I am working with the S32G274ARDB2 image, where I have enabled Xen hypervisor support as per the guidelines in the Linux BSP 38.0 User Manual. After building the image, I observed the following output from the `lsblk` command in the Xen environment: NAME                 MAJ:MIN   RM   SIZE     RO     TYPE     MOUNTPOINTS mmcblk0          179:0          0    14.8G     0       disk |-mmcblk0p1    179:1           0    64M      0       part |-mmcblk0p2   179:2          0   980M     0       part      / |-mmcblk0p3   179:3          0   980M     0       part `-mmcblk0p4   179:4          0   980M     0       part I would like to understand how to manage the number of `mmcblk0` devices (partitions) exposed to Xen. Specifically, I need guidance on the following:   1. How can I restrict the number of `mmcblk0` partitions visible to Xen or specific domains (e.g., Dom0 or DomU)? 2. Is it possible to add or control the number of `mmcblk0` partitions dynamically within Xen, and if so, what configurations or tools should I use? 3. Are there specific device tree settings, Xen configuration files, or U-Boot commands that I should modify to achieve this control?   Any references to relevant documentation, configuration examples, or steps to achieve this would be greatly appreciated. Please let me know if additional details about my setup are required.   Thank you for your support. Re: Controlling mmcblk0 Devices in Xen on S32G274ARDB2 Hello @hulk101, Were you able achieve your goal with the information I provided? If so, please select my last reply as an accepted solution, if not, please let me know if you encounter any errors. Thanks!  Re: Controlling mmcblk0 Devices in Xen on S32G274ARDB2 Hello @hulk101, Xen is not an NXP product and therefore I cannot offer you much support about it. However, here is some information that you might find useful. Dom0 has default access to all hardware resources, this includes SD/eMMC partitions (mmcblk0p1, mmcblk0p2, mmcblk0p3, ...), although it might be possible to restrict access to Dom0 I would not recommend it since Dom0 is intended to create all other domains (like Domu). DomU does not have access to all hardware resources by default, for example for partitions, you can dynamically attach them by running: xl block-attach domu1 phy:/dev/mmcblk0p3 xvdb w or to detach them: xl block-detach domu1 xvdb You can also add those commands in the configuration files of the configuration file of domu1. Please note that the commands might change slightly depending on the partitions needed and the domain names. This way the partition will appear in domu1 in: /dev/xvdb There are some configuration you can perform in the device tree, however for the requirements you have it does not seem that it would be the correct approach, however, please check https://wiki.xenproject.org/wiki/Device_tree. Let me know if you have more questions. 
查看全文