Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
Auto Insmod Kernel Modules Through Modprobe with Extra Parameter Wireless HW module on i.MX 6 DQ HDMI dongle board is bcm4330 that is SDIO interface. Modprobe  default configuration will only insmod bcm4330.ko without any kernel module parameter, while bcm4330,ko needs extra firmware binary and nvram configuration file absolute path/filename  as parameter like firmware_path=/lib/firmware/bcm4330/fw_bcm4330.bin nvram_path=/lib/firmware/bcm4330/nvram_bcm4330.txt. To auto insmod bcm4330 kernel module with those parameters by modprobe we need a modprobe configuration file. Now create this file at /etc/modprobe.d/bc4330.conf, it's content as below: #For BCM4330 special install requirement options bcm4330 firmware_path=/lib/firmware/bcm4330/fw_bcm4330.bin nvram_path=/lib/firmware/bcm4330/nvram_bcm4330.txt Of course we need copy correct firmware and nvram configuration file to directory as /etc/modprobe.d/bc4330.conf set. i.MX6Dual i.MX6Quad Re: Auto Insmod Kernel Modules Through Modprobe with Extra Parameter wonderful
查看全文
视频:安装 S32R45 雷达扩展包 (在 “我的视频” 中查看)
查看全文
MC33AR6000 replace MC33TC80310 developing guide If you want to use MC33AR6000 to replace MC33TC80310 in a mature platform, should pay attention to some small difference on actions and diagnoses. See attachment for details. Alternator Regulator
查看全文
GStreamer i.MX6 Decoding Video, bad performance gst-launch filesrc location=test.mp4 typefind=true ! aiurdemux ! vpudec ! mfw_v4lsink Video, better performance gst-launch filesrc location=sample.mp4 typefind=true ! aiurdemux ! queue max-size-time=0 ! vpudec ! mfw_v4lsink # typefind=true allows to 'type find' the source file before negotiating # max-size-time=0 indicates to ignore possible blocking issues # In case of ASF files gst-launch filesrc location=sample.asf typefind=true ! aiurdemux ! queue max-size-time=0 ! mfw_wmvdecoder ! mfw_v4lsink Audio gst-launch filesrc location=sample.mp3  typefind=true ! beepdec ! audioconvert  ! 'audio/x-raw-int, channels=2' ! alsasink Audio with visualization gst-launch filesrc location=sample.mp3 typefind=true ! beepdec ! tee name=t ! queue ! audioconvert  ! 'audio/x-raw-int, channels=2' ! alsasink t. ! queue ! audioconvert ! goom ! autovideoconvert ! autovideosink Video/Audio long version gst-launch filesrc location=sample.avi typefind=true ! aiurdemux name=demux demux. ! queue max-size-buffers=0 max-size-time=0 ! vpudec ! mfw_v4lsink demux. ! queue max-size-buffers=0 max-size-time=0 ! beepdec ! audioconvert ! 'audio/x-raw-int, channels=2' ! alsasink # queue properties, max-size-buffers=0 and max-size-time=0, allows a smoother playback; type 'gst-inspect queue' for more info VA short version gplay sample.avi VA short version gst-launch playbin2 uri=file:// Graphics & Display i.MX6_All Linux Multimedia Re: GStreamer i.MX6 Decoding Ryan, All audio decoders are software-based. There is no audio hardware decoder block on i.mx. About the missing mfw_aacdecoder, maybe it is license related? Maybe someone at meta-fsl-arm would be in a better position to confirm about the missing plugin. Re: GStreamer i.MX6 Decoding Hi Fabio, At one point I have seen: aacdec.imx:  mfw_aacdecoder: aac audio decoder However, I do not see this in the most recent 3.10.17 release on the MCIMX6Q-SDB board. Can you help clarify why the mfw_aacdecoder is missing, and if this was in fact a hardware decoder? Thank you, Ryan Re: GStreamer i.MX6 Decoding There is no audio hardware decoder on i.mx. Re: GStreamer i.MX6 Decoding Hello, is beepdec a hardware decoder? If not, what hardware decoding can I use? Thank you, Ryan Re: GStreamer i.MX6 Decoding Gautham, what is 'trick play mode'? Can you try seeking using gplay? Does the latter produce the same errros? Leo Re: GStreamer i.MX6 Decoding Hello, Working on iMX6 target. I am trying to play a video file using gst pipeline "gst-launch playbin2 uri=file:// ", video and audio is fine until when I try to use trick play mode to seek to stream forward/backward for about xx seconds. What I see in the  vpudec and aiurdemux gstreamer plugin is that some error states like "GST_FLOW_WRONG_STATE" are ignored during trick play handling i.e. in gst_vpudec_chain function and in aiurdemux_push_pad_buffer. Please let me know why these event types are ignored or the reason for it. Thank you.
查看全文
Application Note: Editing the String Table with Window Builder In Window Builder the string table is one of the key elements of the resource manager. This application notes gives tips and tricks to ease the use of string tables. PEG GUI
查看全文
i.MX 8M Dual/8M QuadLite/8M Quad Incorrect PCIE Supply Configuration Purpose This is early communication to notify i.MX 8M Dual/8M QuadLite/8M Quad customers of a potential incorrect PCIe power supply configuration on certain NXP BSP Linux and Android versions. Description The PCIE_VPH power supply is selectable in software  between 1.8V and 3.3V. When the PCIE_VPH supply is configured to operate at 3.3V, the 1.8V internal regulator (disabled by default) must be enabled to prevent overstress conditions on the PCIe PHY. If the 1.8V internal regulator is left disabled when the PCIE_VPH supply is configured to operate at 3.3V, it could potentially impact the product lifetime of the device. Impact •i.MX 8M Dual/8M QuadLite/8M Quad (other i.MX processors are not impacted) •Only Impacts Linux/Android kernel versions earlier than L5.4.70_2.3.2 or Linux 5.10.9_1.0.0 releases MITIGATION •When the PCIE_VPH supply is configured to operate at 3.3V users need to enable the internal regulator by setting the IOMUXC_GPR_GPR14 and IOMUXC_GPR_GPR16 registers - PCIE1_VREG_BYPASS and PCIE2_VREG_BYPASS bit to 0. •There are 3 software patches for each release. Software patch details in the Code Aurora Forum (CAF): •For L5.4.70_2.3.2 patch release, the git log references are: •MLK-25349-3 PCI: imx: clear vreg bypass when pcie vph voltage is 3v3 •MLK-25349-2 arm64: dts: imx8mq-evk: add one regulator used to power up pcie phy •MLK-25349-1 dt-bindings: imx6q-pcie: add one regulator used to power up pcie phy • •The L5.4.70_2.3.2, LF_5.10 Q2 and later BSP releases correctly configure and enable the internal regulator by setting the IOMUXC_GPR_GPR14 and IOMUXC_GPR_GPR16 registers The Patch MLK-25349 which correctly enables the internal regulator is already included in the L5.4.70_2.3.2 patch release and release versions after it. MITIGATION •The following branches of Linux/Android BSP releases contain the MLK-25349 patch. The patch is attached below for each respective release.   •Other branches which are not listed should try to apply the nearest Patch version patch. If a user encounters any conflicts in applying, they should back porting from below nearest patch release version below. imx_4.9.51_ga, imx_4.9.y_android_imx8m_ga_v2                           - Patch attached  imx_4.9.88_ga, imx_4.9.y_android_2.0.0_ga                                   - Patch attached  imx_4.14.y and imx_4.14.98_2.3.0, imx_4.14.98_2.3.0_android     - Patch attached  imx_4.19.y and imx_4.19.35_1.1.0, imx_4.19.35_1.1.0_android     - Patch attached  imx_5.4.y, imx_5.4.3_2.0.0, imx_5.4.3_2.0.0_android                     - Patch attached Documentation Change Description – 1 of 3 for Datasheet Updated Datasheets and Reference Manual will be published to nxp.com. Updated Hardware Design guide and Schematics have already been published on nxp.com.  Updated the descriptions of PCIE_VPH in the Datasheet Table 8, "Operating ranges" Documentation Change Description – 2 of 3 for Reference Manual (RM) Updated the description of field 12 "PCIE1_VREG_BYPASS" in 8.2.4.15 GPR14 General Purpose Register (IOMUXC_GPR_GPR14) Documentation Change Description – 3 of 3 for RM Updated the description of field 12 "PCIE2_VREG_BYPASS" in 8.2.4.17 GPR16 General Purpose Register (IOMUXC_GPR_GPR16) REFERENCES •i.MX 8M Dual / 8M QuadLite / 8M Quad Product Lifetime Usage  •i.MX 8M Dual / 8M QuadLite / 8M Quad Applications Processors Data Sheet for Industrial Products •i.MX 8M Dual / 8M QuadLite / 8M Quad Applications Processors Data Sheet for Consumer Products •i.MX 8MDQLQ Hardware Developer’s Guide  •i.MX 8M Dual/8M QuadLite/8M Quad Applications Processors Reference Manual   i.MX 8M | i.MX 8M Mini | i.MX 8M Nano
查看全文
GStreamer ffmpeg <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ビデオデコード GST-launch filesrc location=sample.mp4 !QTDEMUXの!ffdec_h264 !mfw_v4lsink メモ: LTIB BSP 3.0.35_4.0.0 で、パッケージを準備し、添付されたパッチを上部に適用してからビルドします。 Yocto では、gst-ffmpeg パッケージを追加する簡単な方法は、conf/local.conf ファイルに次の 2 行を追加することです。 IMAGE_INSTALL_append = " GST-FFMPEG" LICENSE_FLAGS_WHITELIST = 「商用」 i.MX6_All マルチメディア 日時:GStreamer ffmpeg <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> はい。2つのシンボルが定義されておらず、ffmpegライブラリが動的にロードされると、最後にいずれかのエレメントがロードされるため、失敗します。手順:パッケージを準備し、ソースフォルダに移動してパッチします(patch -p1 < patchname)。ちなみに、失敗しているBSPは3.0.35_4.0.0で、現時点でこれが最新です。 日時:GStreamer ffmpeg <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ffmpegプラグインが最新のBSPでの読み込みに失敗しますので、ここでもパッチを共有して修正してください。
查看全文
Processor Expert - 製品の紹介 (CodeWarrior) <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Processor Expert UI、コンポーネントとは何か、CodeWarrior Development Studioでプロジェクトにコンポーネントを追加する方法を学びます。
查看全文
New Service Pack arrival for Power Architecture! (Windows)~ The advantages we can get out of QorIQ processing platforms are merged into so many applications!  Just to mention some, we can find it within networks, mobile wireless infrastructure, automated functions, medical use, and many many more! This way you can get high-performance communications, base stations and computing systems to market easier with its advanced tools, multiple cores, accelerators, security and more. Some service packs have been released to empower your design in this handful technology. The forth of them is being presented here with the Power Architecture Processors v10.1.2 Service. This time, the improvements have been applied in the following devices: P4040 DS       Bare-metal support      U-boot debug P4080 DS       Bare-metal support      U-boot debug P3041 DS Hydra       Linux Kernel and Application Debug P3041 DS SuperHydra       Linux Kernel and Application Debug     There are many more new features added and improved for Power Architecture Processors v10.1.2 Get to meet them in the Release Note! And download now the Service Pack 4 for Windows !   You rather Linux version? General
查看全文
Conquering the Embedded GUI Development Obstacles that Lead to UX Failures The biggest challenge in embedded GUI development is managing changes in design (iterations) that nearly all projects encounter. Historically, changes at the design level resulted in teams needing to hunt for and replace all changed assets manually within the project. This would result in development delays, changes being missed, coded behavior being lost, and ultimately, poor UX. Join this session to learn how customers from medical to automotive have leveraged Storyboard’s Rapid Design Import and Iteration Technology to streamline design changes and develop embedded GUI applications that provided outstanding user experiences while getting to market on a tight deadline. Presenters: Garry Clarkson, FAE, Crank Software Shelby Unger, MCU Ecosystem Product Marketer, NXP Arm® Processors i.MX Applications Processors Software & Tools
查看全文
TWR-MCF51CN-KIT MQX 实验室常见问题解答 - 更新 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Freescale MQX 产品支持页面上的常规 MQX 常见问题解答页面 TWR-MCF51CN-KIT MQX 实验室常见问题解答 问:TWR-MCF51CN-KIT 演示和实验室教程需要哪些软件工具? 答: TWR-MCF51CN-KIT 需要CodeWarrior for Microcontrollers 6.2 专业版(提供 30 天评估版)和6.2.2 补丁才能充分发挥演示和实验室的潜力。 6.2.2 版本有必要吗?是的,6.2.2 补丁包含对 MCF51CN128 的必要支持。 CodeWarrior 特别版怎么样? 由于微控制器特别版的代码大小限制(<64k),TWR-MCF51CN-KIT 的实验室将无法编译。 CodeWarrior 基本版和标准版怎么样? 这些版本将适用于实验室。 问:MQX 任务感知调试在哪里? 答: TAD 功能仅在 V2 核心或更高版本上可用。 问:为什么必须在 Processor Expert 更新后安装 CW 6.2.2 补丁? 答:由于处理器专家更新 3.05 中的一个错误,6.2.2 补丁必须 在 Processor Expert 之后安装。此问题已在 PE 3.06 或 之后。如果您在 6.2.2 补丁之前没有安装 PE,只需重新运行 6.2.2 再次安装补丁程序,问题就解决了。 问:我无法在我的电脑和主板之间建立以太网连接。我该怎么办? 一个: 1)插入电缆后,按下电路板上的重置按钮。 2)等待一两分钟,让您的计算机连接。 连接 使用以太网交叉电缆将电路板直接连接到您的计算机。 您必须等待一两分钟,以便您的计算机尝试获取 网络地址。由于您不再连接到网络 计算机最终将恢复为同一 子网作为板(169.254.xx)。 3)如果您有无线路由器,请将其禁用。 4) 在您的网络浏览器中禁用代理服务器设置。 说明: 连接后,您的计算机可能会报告连接受限或无连接,但它仍应可以工作。 如果其他方法都失败了,请按照快速入门指南的说明手动配置您的 IP 地址。 问:我正在使用 Windows Vista,当我在命令提示符中输入 telnet 时,它告诉我找不到该程序。它在哪里? 答: Windows Vista 中默认未启用 Telnet 客户端。要启用它,请执行以下步骤: 1. 转到开始 > 控制面板 > 程序和功能。 2. 选择“打开或关闭 Windows 功能” 3. 选中“Telnet 客户端”旁边的复选框,然后点击“确定”。 问:为什么调试器在执行实验时说遇到了非法断点,并且运行按钮不断闪烁? 答:这是 OSBDM 和 CW6.2.2 中的一个错误,当它遇到停止指令时会失去调试连接。代码仍在执行,因此不会影响实验室的运行。OSBDM 的新版本和安装说明即将推出。 消息由 amh 于2009-12-09 02:44 PM编辑 本文档由以下讨论生成: TWR-MCF51CN-KIT MQX Lab 常见问题解答 - 更新版
查看全文
Demonstration of PEG Software See a demonstration of PEG Software to develop graphical user interfaces (GUI) for consumer, industrial and automotive display applications. PEG GUI
查看全文
Android 4.0 ICSを搭載したiWavesのiMX6デモ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Android 4.0 ICSを搭載したiWavesのiMX6デモ (マイビデオで視聴) Re:Android 4.0 ICSを搭載したiWavesのiMX6デモ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 素晴らしいショー!!
查看全文
KW36-创建保留存储器内容的OTAP镜像 简介: 当 OTAP 客户端(接收软件更新的设备,通常为 Bluetooth LE 外围设备)从 OTAP 服务器 (发送软件更新的设备,通常为 Bluetooth LE Central)请求软件更新时,您可能希望保留一 些数据,例如绑定信息,系统振荡器的匹配值或您的应用程序的 FlexNVM 非易失数据。 本 文档指导您在执行 OTAP 更新时, 如何保留您感兴趣的闪存数据内容。 本文档适用于熟悉 OTAP 定制 Bluetooth LE 服务的开发人员,有关更多基础信息,您可以阅读以下文章: 使用 OTAP 客户端软件对 KW36 设备进行重新编程。 OTAP 标头和子元素 OTAP 协议为软件更新实现了一种格式,该格式由标题和定义数量的子元素组成。 OTAP 标 头描述了有关软件更新的一般信息,并且其定义的格式如下图所示。 有关标题字段的更多 信息,请转至 SDK 中的 \ docs \ wireless \ Bluetooth 中的《 Bluetooth Low Energy Application Developer's Guide》文档的 11.4.1 Bluetooth Low Energy OTAP 标头一章。 每个子元素都包含用于特定目的的信息。 您可以为您的应用程序实现专有字段(有关子元 素字段的更多信息, 请转至 SDK 中的 \ docs \ wireless \ Bluetooth 中的《 Bluetooth Low Energy Application Developer's Guide》文档的 11.4.1 Bluetooth Low Energy OTAP 标头一章。 OTAP 包含以下子元素: 镜像文件子元素 值字段长度(字节) 描述 升级镜像 变化 该子元素包含实际的二进制可执行镜像,该镜像将被复制到 OTAP 客户端设备的闪存中。 该子元素的最 大大小取决于目标硬件。 扇区位图 32 该子元素包含目标设备闪存的扇区位图,该位图告诉引导加载程序哪些扇区应被覆盖,哪些扇区保持完 整。 该字段的格式是每个字节的最低有效位在前,最低有效字节和位代表闪存的最低存储部分。 镜像文件CRC 2 是在镜像文件的所有元素(此字段本身除外)上计算的 16 位 CRC。 该元素必须是通过空中发送的镜像文件中的最后一个子元素。   OTAP 扇区位图子元素 KW36 闪存分为: 一个 256 KB 程序闪存( P-Flash)阵列, 最小单元为 2 KB 扇区,闪存地址范围为 0x0000_0000 至 0x0003_FFFF。 一个 256 KB FlexNVM 阵列, 最小单元为 2 KB 扇区,闪存地址范围为 0x1000_0000 至 0x1003_FFFF, 同时它也会被映射到地址范围为 0x0004_0000 至 0x0007_FFFF 的空间。 位图子元素的长度为 256 位,就 KW36 闪存而言,每个位代表 2KB 扇区,覆盖从 0x0- 0x0007_FFFF 的地址范围(P-Flash 到 FlexNVM 映射地址范围),其中 1 表示该扇区应 被擦 除, 0 表示应保留该扇区。 OTAP 引导加载程序使用位图字段来获取在使用软件更新对 KW36 进行编程之前应擦除的地址范围,因此必须在发送软件更新之前对其进行配置,以使包含您 的数据的内存的地址范围保持不变。仅擦除将被软件更新覆盖的地址范围。 例如:假设开发人员想要保留 0x7D800-0x7FFFF 之间的地址范围和 0x0-0x1FFF 之间的地址 范围,并且必须擦除剩余的存储器。 0x7D800-0x7FFFF 之间的地址范围对应于前 5 个闪存 扇区, 0x0-0x1FFF 之间的地址范围是最低的 4 个扇区。 因此,这意味着应将 256 和 252 之间的位(256、 255、 254、 253 和 252)以及 4 和 1 之间 的位(4、 3、 2 和 1)设置为 0,这样本示例的 OTAP 位图为 : 0x07FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 使用 NXP 测试工具配置 OTAP 位图以保护地址范围 在恩智浦网站上下载并安装用于连接产品的测试工具 在 PC 上打开 NXP Test Tool 12 软件。 转到“ OTA 更新-> OTAP 蓝牙 LE”,然后单击“浏 览...”按钮加载用于软件更新的映像文件(NXP 测试工具仅接受.bin 和.srec 文件)。 您 可以配置 OTAP 位图,选择“覆盖扇区位图”复选框,并通过新的位图值更改默认值。 配 置位图后,选择“保存...”。 然后,将显示一个窗口,用于选择保存.bleota 文件的目的地,保存文件可以自行取名。 您可以将此文件与 Android 和 iOS 的 IoT Toolbox App 一起使用,以使用 OTAP 更新软 件。 这个新的.bleota 文件包含位图,该位图告诉 OTAP 引导加载程序哪些扇区将被擦 除,哪些扇区将被保留。 BLE Software KW KW35 | 36
查看全文
HOWTO: Start Trace with S32 Debugger and S32 Debug Probe on S32G2xx Trace functionality is supported in the S32 Debugger for A53 as well as M7 cores on the S32G, RAM-target builds. With Trace, you can record some execution data on an application project and then review it to determine the actions and data surrounding an event of interest. This document outlines the method to begin using Trace on the S32G2xx device. We start by creating a project on which to execute the trace, however, you may start at step 2, if you are starting with an existing project. Please note, you will need to have debug configurations for the S32 Debugger setup for each core which you intend to capture trace. If you do not already have such configurations, you may copy them from another project and adapt them to the new project as shown in HOWTO: Add a new debugger configuration to an existing project. Create a new application project, selecting the 'S32G274A_Rev2 Cortex-A53', or the M7 variant. For this example, we are using the A53 screenshots and 'S32 Debugger' options.  There should now be 4 new application projects in your workspace. One for each A53 core. The first core of the S32G274A, A53_0_0, is also a possible boot core, so this project will have build configurations for RAM and FLASH. The other A53 cores (0_1, 1_0, 1_1) will not. Build all projects for Debug_RAM and check that they build clean before proceeding. Building the A53_0_0 project will build all projects and the resulting ELF file will contain the output of all 4. Open 'Debug Configurations...' and select the 'Debug_RAM' configuration for the first core (A53_0_0_Debug_RAM_S32Debug). Switch the initialization from the default s32g2xx_generic_bareboard.py script to s32g2xx_generic_bareboard_all_cores.py in order to make the trace modules accessible. Select the 'Debugger' tab. Enter the Debug Probe Connection settings as appropriate for your hardware setup. Click Apply. Now select the Launch Group configuration for 'Debug_RAM'. It is important to use the launch group to start the debug for each core, not just because it makes it easier, but also because it is necessary to allow for some delay after the first A53 core is started before bringing the other A53 cores from reset to debug state. Press Debug Once the code is loaded to the target and the debugger has started each core and executed to the first line within main(), then it is ready to perform any of the standard debug functions including Trace. Trace does not start automatically, it must be turned on before it will start logging data. To do this, it is necessary to add the view 'Trace Commander'. It can be found by either Window -> Show View -> Other, then search for 'Trace Commander' or enter 'Trace Commander' in the Quick Access field of the toolbar and select Trace Commander from the list. The Trace Commander view will show in the panel with the Console, Problems, etc. Double-click on the tab to enlarge it.  From the dropdown with the XML configuration files, select one matching your debug project name. A configuration is generated if none is present for your debug launch the first time you open it in the debug configuration view. Click on the configure button to change settings. Click on the Advanced Trace Generators configuration button For each core to be logged, set the associated ELF file. Select the core, click Add, then '...', and select the elf file for that core. It is recommended to disable all cores that are not required to be traced, as they may funnel in the same buffer, occupying the limited memory. Select Data Streams. Now it is possible to change how the data is captured. Since the buffers have finite memory, they can be set to collect data until full, or to overwrite. If set to One buffer, the data will be collected until the buffer is full, then data collection stops. It is useful to gather data when starting logging from a breakpoint to gather data during execution of a specific section of code. If set to Overwrite, the data collection continues and starts overwriting itself once the buffer is full. This is useful when trying to gather data prior to a breakpoint triggered by a condition.  To turn on the Trace logging, click on the 'Close this trace stream' button. The Trace is now enabled. To collect trace data, the cores must be executing. First double-click the Trace Commander tab to return to the normal Debug Perspective view. Then, one by one, select the main() thread on each core and press Resume to start them all. If collecting from a breakpoint, start the code first with Trace disabled, wait for the breakpoint to be reached, then enable the Trace. Allow the cores to run for a period of time to gather the data, then press Suspend on each one until they are all suspended. Look to the Trace Commander tab to see that the data icon is no longer shaded and click on it to upload the trace data. A new tab, Analysis Results, has appeared. Double-click this tab to see it better. Click on the arrow next to ETF 0 to show the data collected in the trace buffer. Notice there are 5 separate views on the captured data: Trace (raw data), Timeline, Code Coverage, Performance, and Call Tree. Trace - this is the fully decoded trace data log Timeline - displays the functions that are executed in the application and the number of cycles each function takes, separate tabs for each core Code Coverage - displays the summarized data of a function in a tabular form, separate tabs for each core Performance - displays the function performance data in the upper summary table and the call pair data for the selected function and it's calling function Call Tree - shows the call tree for identification of the depth of stack utilization See the S32DS Software Analysis Documentation for more details on settings, ways to store the logged data, etc.
查看全文
CodeWarriorを使用したV10.x MCUのプログラミング <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 現在、フリースケールの入門ガイドをご覧いただけます。このマニュアルでは、CodeWarrior for Microcontrollers V10.xのインターフェースについて紹介します。マイクロコントローラ10.x IDEの基本コンポーネントとCodeWarrior開発プロセスについて説明します。   詳細については、CodeWarriorクイック リファレンスガイド を確認するか、 フリースケール のWebページにアクセスしてください。   このマニュアルには、次の機能も記載されています。 • Microcontrollers 10.x と Eclipse IDE の概要を説明します。また、マイクロコントローラ10.xをインストールするためのシステム要件も提供します。   • CodeWarrior IDEを使用したアプリケーションの開発に関連する段階について説明します。   • Microcontrollers 10.x インターフェースとそのコンポーネントの概要と、Eclipse インターフェースのさまざまなコンポーネントの操作方法について説明します。   • Microcontrollers 10.x でプロジェクトを作成およびデバッグする方法について説明します。   何をためらっているんですか。今すぐこの マニュアル をチェックしてください! 全般
查看全文
General Technical MQX FAQ Q: I installed the MQX software release, but when I run a project, CodeWarrior can't find file x...  A: Symptom A project will build correctly, but when you run it, CodeWarrior asks you to locate files that it can't find. Solution: This problem is caused if you are running from a directory that is not the default directory that the installer placed the files. You just need to re-build the libraries. To build all MQX libraries at once, the special mass-build project may be used. The project is located together with the user_config.h file in directory: /config/ /build_libs.mcp. See the Release Notes for more details on building the libraries. Q: What software tools do I need for the MQX 3.0.0 demos and lab tutorials? A: The first release of Freescale MQX (3.0.0) requires CodeWarrior for ColdFire v7.1 Professional Edition (30-day evaluation available) to unlock the full potential of the demos and labs. Is version 7.1 necessary?  Yes, 7.1 contains the necessary support for M5225EVB and M52259DEMOKIT. What about CodeWarrior Special Edition?  Due to the code size limitation (<128k) of Special Edition, several lab demos will not compile/program.  These include MQX labs 3 and 4.  Also, Task Aware Debugging is not available in Special edition, therefore lab 5 is not possible.  Additionally, the targets which utilize the MRAM on the M52259EVB will not work. What about CodeWarrior Basic and Standard Edition? Task Aware Debugging is not available in Basic or Standard edition,therefore lab 5 is not possible.  Also, with Basic Edition the targets whichutilize the MRAM on the M52259EVB may not work. Q: I'm having trouble establishing an Ethernet connection between my PC and the board.  What do I do? A: 1) Hit the Reset button on the board after you plug in the cable.  2) Wait a minute or two for your computer to connect. Connect the board directly to your computer with an ethernet crossover cable.  You must wait a minute or two for your computer to try to aquire a network address.  Since you're no longer connected to your network the computer will eventually revert to an Auto IP address on the same subnet as board (169.254.x.x). 3) Disable your wireless router if you have one. 4) Disable proxy server settings in your web browser. Notes: When connected your computer might report limited or no connectivity, but it should still work. Ping is disabled in release 3.0.0, so pinging the board from the computer will not work. If all else fails, configure your IP address manually as instructed by the quick start guide. Q: Can I modify the webpages used in the webserver lab? A: Yes, there is a tool called MKTFS which can be used to convert web pages and images into a C array's, which are used by the MQX webserver.  Edit the webpages in the folder \demo\web_hvac\web_pages.  Then click on \demo\web_hvac\mktfs.bat.  The script will update the file tfs_data.c in the \demo\web_hvac folder.  When you recompile the hvac_web project and program it the new webpages will be loaded into memory.          Q: Can I use my own USB Flash drive in the labs? A: Yes, just copy over the files from the flash drive that is provided with the M52259EVB or M52259DEMOKIT. Q: My USB Flash drive doesn’t work, what should I do? A: Not all USB flash drive conform to the same specification and there are small differences between them that could cause some not to work.  It will say "Unable to open USB disk" at the terminal if the flash drive is not compatible. We are working to expand compatibility to as many usb flash drive manufactures and models as possible.  If you encounter one that does not work please perform the following tasks. Open up the project in /usb/host/examples/mass/msc_commands/codewarrior/ Load and run the project with the USB stick unattached. Then with the Terminal open and connected, plug in the non-functioning USB stick. A test will run automatically upon insertion of the USB stick.  The test will output useful information to the terminal that will help us. Please provide us the output that this test generates, along with the exact make and model of the USB flash drive.  We will create a thread on the forums that you can post this to. More info: Tested USB Stick Q: What are tasks and how are they created? A: Tasks share the same code space if they execute the same root function. A task always starts executing at the entry point of the root function even if the function is its creator’s root function. This is not the same behavior as fork() in UNIX. Q:Do I always need at least one autostart task? A: Yes. In an application, at least one autostart application task is required in order to start the application. In a multiprocessor application (the application can create tasks remotely), each image need not have an autostart application task; however, each image must include IPC Task as an autostart task in the task template list. If no application task is created on a processor, Idle Task runs. Q:How much stack space should I give to various tasks in my application? A: This is a really hard question to answer as the amount of stack space is extremely application specific. Different tasks will need varying amounts of stack space depending on the job they are trying to perform. We usually recommend starting all (or most) of tasks with plenty of stack memory (double or triple what you think they would need) and then later optimizing the system with TAD (Task Aware Debugging module). Q: How do I dynamically alter the task stack size? A: In a situation where a task runs a while and then blocks. In it's blocked state, it holds a couple of event connections which are used by interrupts, but otherwise needs no stack space. One would like to reduce the stack space being used by the task in its blocked state. How do you do this? If the task is never going to run again, the user could _mem_free or better yet _mem_free_part on the stack. Using _mem_free_part will not cause some of our tools to complain. In the task whose stack to be freed, the very first thing it does is to save the value of kernel_data->ACTIVE_PTR->MEMORY_RESOURCE_LIST; /* Global var */ pointer stack_ptr; { /* In task */ KERNEL_DATA_STRUCT_PTR kernel_data = _mqx_get_kernel_data(); /* Do this very first thing */ stack_ptr = kernel_data->ACTIVE_PTR->MEMORY_RESOURCE_LIST; /* Rest of code for task */ } { /* some other task*/ _mem_free(stack_ptr); } Q:How does MQX™ measure a timeslice? Is the timeslice absolute or relative? That is, if a task has a 10-ms timeslice and starts at time=0 ms, does it give up the processor at time=10 ms, or does it give up the processor after 10 ms of execution? A: With a 10-ms timeslice, MQX counts the number of periodic timer interrupts that have occurred while the task is active. If the equivalent of 10 or more milliseconds have expired, MQX effectively runs _sched_yield() for the task. As a result, a task does not get 10 ms of linear time since higher-priority tasks will preempt it. Also, if the task calls a scheduling service (for example _task_block() or _sched_yield()), MQX sets the task’s timeslice counter back to zero. As with timeouts, the time that MQX allocates is plus or minus BSP_ALARM_RESOLUTION. Q: How do I increase TCP performance? A: Increase the size of the send and/or receive windows. Send data in multiples of the maximum segment size (MSS). Disable the Nagle algorithm. Q: Is there a limit to the number of sockets that can be created with RTCS? A: No. Sockets come from a partition with an infinite growth factor, so the number of sockets is limited only by the available memory on the board. Q: Do I always need at least one autostart task? A: Yes. In an application, at least one autostart application task is required in order to start the application. In a multiprocessor application (the application can create tasks remotely), each image need not have an autostart application task; however, each image must include IPC Task as an autostart task in the task template list. If no application task is created on a processor, Idle Task runs. Q: Is it possible to rename a task after it is created? A: Here's a function to get a pointer to the task's template struct where the task's name is stored. The function needs a couple of structures from mqx_prv.h.Namely, TD_STRUCT and KERNEL_DATA_STRUCT. You can add the function to your application or add it into MQX itself. If you are adding it to app, you will need to include "mqx_inc.h" and add mqx\source\include to the compiler's include search path. /*FUNCTION*-------------------------------------------------------------------* * Function Name : _task_get_template_ptr* Returned Value : TASK_TEMPLATE_STRUCT_PTR* Comments 😘 Returns a pointer to the task's template structure* *END*----------------------------------------------------------------------*/TASK_TEMPLATE_STRUCT_PTR _task_get_template_ptr(_task_id){ /* Body */  KERNEL_DATA_STRUCT_PTR kernel_data;  TD_STRUCT_PTR td_ptr;  _GET_KERNEL_DATA(kernel_data);  if (task_id == MQX_NULL_TASK_ID) {    td_ptr = kernel_data->ACTIVE_PTR;  } else {    td_ptr = (TD_STRUCT_PTR)_task_get_td(_task_id);  } /* Endif */  if (td_ptr) {    return( td_ptr->TASK_TEMPLATE_PTR );  } /* Endif */  return( NULL );} /* Endbody */An example of how to use this function:/* Need prototype */extern TASK_TEMPLATE_STRUCT_PTR _task_get_template_ptr(_task_id);..../* Dynamically create the task */some_task_id = _task_create(..... );.../* Change name of some_task */template_ptr = _task_get_template_ptr(some_task_id);template_ptr->TASK_NAME = "new name";../* Change name of the current (active) task */template_ptr = _task_get_template_ptr(MQX_NULL_TASK_ID);template_ptr->TASK_NAME = "new name"; Q: How are exceptions or unhandled interrupts handled by MQX? A: Basically, there are three ways of handling unhandled interrupts. They are mutually exclusive - in other words, you can only have one active at a time. You'd pick the one that best suits you for an application and use it: 1) _int_default_isr() This is the default mode of handling interrupts - it simply blocks the offending task and sets its state to "Unhandled Interrupt Blocked" 2) _int_unexpected_isr() This mode can be activated by calling _int_install_unexpected_isr() from the application. This will also block the offending task and set its state, but also will print some info on the console about who and what caused the unexpected exception 3) _int_exception_isr() This is the most functional (but also most complex) of all the modes. It can be activated by calling _int_install_exception_isr(). Once this is installed, any unhandled interrupts will call _int_exception_isr(). It might help you understand the behavior of this function by actually looking at the code. It's in source\psp\\int_xcpt.c. Here are the comments that define the behavior: If an exception happens while a task is running, then: if a task exception handler exists, it is executed, otherwise the task is aborted. If an exception happens while an isr is running, then: if an isr exception handler exists, it is executed, and the isr aborted otherwise the isr is aborted. This is why you have to provide exception handlers. For tasks, you install these with _task_set_exception_handler(). You would need to install a handler for each task in your system that you want handled (conceivably, this could be the same handler for all of them) For ISRs, you install these with _int_set_exception_handler(). The parameter is the vector number of the interrupt your installing a handler for, not the exception vector itself (in other words, you'd install handlers for the vectors of ethernet, UARTs, timers, etc, not the divide by zero vector) So, if you want to have full "handling" of all unhandled interrupts, you'll have to install handlers for all the tasks and ISRs that exist in your system. The handler itself could simply flag the error and allow the task to continue running. Other comments: -Note that you shouldn't have to rebuild MQX libraries to change the modes - its simply done with a function call -If one of the above three methods of handling unhandled interrupts does not suit you, you can also create your own handler to take whichever action you want and install it by calling _int_install_default_isr() with your own ISR as a parameter. This might be a simpler approach than using the exception handlers. Q:How is DNS enabled? A:Include DNS.H in the application. Call DNS_init() after calling RTCS_create(). Then insert the following code: DNS_First_Local_server[0].IP_ADDR = "my dns server's ip addr"; Q:Does MQX have memory protection? A: No, not full memory protection (this allows us to run the same code on CPUs -- like DSPs -- without MMUs). However, we do have a version of MQX with some level of MMU support. It allows simple memory protection between tasks and is available for some PowerPC derivatives. Q:What happens if Idle Task blocks because of an exception? A: If Idle Task blocks, System Task, which is really a system task descriptor that has no code, becomes the active task. System Task Descriptor sets up the interrupt stack; then re-enables interrupts. As a result, the application can continue to run. Q:If more than one task "owns" a semaphore, and a priority boost is required, do all owning tasks have their priority raised, or just one? A: The owning task with the highest priority gets boosted. Q:In many RTCS examples we find "/* Enable IP forwarding */ _IP_forward = TRUE;". What does this do? A: This enables forwarding of IP packets from one interface to another. If you have two Ethernet connections, this allows RTCS to route packets between the two interfaces. Q:How do we setup Ethernet auto-negotiation? A:Normally, this is done in the file enet_ini.c, located in the BSP (source/bsp), and normally autonegotiate is the default. Sometimes (but not always) the flag passed to enet_initialize is passed down to this function, and is used to select autonegotiate. Q:How do I bind a UDP socket to a specific IP address and have it receive broadcast packets? A: RTCS does not allow UDP sockets bound to a specific IP address to receive broadcast packets. You can get around this by binding using INADDR_ANY, however in this case you may receive extra traffic you do not wish to receive (e.g. there are two Ethernet interfaces on the board). RTCS emulates BSD and we consider this to be an appropriate behavior. Q:If there is no file system on an MQX target running RTCS how can I use FTP to upload and download files to it? Say I have a datafile on a PC that I want to be able to upload over ethernet to my MQX app as well as later download it. Can I do that without a file system ... say get a file line by line and interpret it? Likewise output it line by line? A: Yes, this is possible, but it requires that you do some work to design the "device" to handle this. Without a file system, the FTP server can communicate with any MQX device - these are usually identified by a string such as "ttya:", "ittyb:", "flash:", etc. They can either by installed by the application or the BSP. The ones previously mentioned are installed by the BSP, but the RTCS apps example (apps.c) also installs two new devices called null: and kmem: In order to communicate with these devices via FTP, on the PC you would do the following: Type: ftp my_ip_address (prompt for user name) - hit Enter To put a file to the server, type: put localfilename remotedevice For example: put test.txt ttya: This will send the contents of test.txt from the PC to the target - the ttya: device will put it to the screen. If you replace ttya: with null: in the apps example, it will simply discard everything it reads. To get a file from the server, type: get remotedevice localfilename For example: get kmem: coredump This will store the contents of kernel data into a file on the PC Now, you can design your own device to do something similar. I would recommend looking at the source\io\io_mem and source\io\io_null devices to use as templates. Basically, you need to code an install, open, close, read, write and ioctl function for your device. When the FTP server calls fopen(), read() and write() on your device, it will access these functions. It would be up to you to decide what to do with the data once it arrives in your functions, but you could process it and also store it for later use. Note that both the RTCS TFTP and FTP *servers* use the same structure. The FTP client uses device names to access the data to send. However, the TFTP client API decodes the data without using a device. Q: Is there a documented API for the IP layer? A:This interface isn't documented since it's assumed that the user won't usually access it. There are four functions: IP_init(), IP_send() (for outgoing packets), IP_send_if() and IP_service() (for incoming packets). IP_send_if() is used only by BOOTP/DHCP to send a limited broadcast with a source IP address of 0.0.0.0. Q: How is the timer used on MQX? A: On ColdFires, timer PIT is used as system timer for scheduler (dispatcher) and for time counting. Q: How to free memory after use mem_alloc? A: Use mem_free
查看全文
Transformer Terminal Unit Overview In the power supply and distribution system, TTU (Transformer Terminal Unit) is used to collect and control the information of the distribution transformer. It can monitor the operation condition of the distribution transformer in real time and transmit the collected information to the main station or other intelligent devices to provide the data needed for the operation control and management of the distribution system. NXP provides many solutions on electricity conversion, including AC to AC, AC to DC and DC to DC converters NXP has a broad portfolio of software and processors for Smart Grid market. Regarding software, NXP has original LSDK Linux with Docker supporting and Edgescale solution for edge computing; Regarding processors, NXP has scalable solution from 1xA53 to 16xA72. Block Diagram Products Category MPU Product URL Layerscape® 1043A and 1023A Multicore Processors  Product Description The LS1043A processor was NXP's first quad-core, 64-bit Arm®-based processor for embedded networking. Category Bluetooth Product URL QN9090/30(T): Bluetooth Low Energy MCU with Arm®Cortex®-M4 CPU, Energy efficiency, analog and digital peripherals and NFC Tag option  Product Description The QN9090 and QN9030 are the latest microcontrollers in the QN series of Bluetooth low energy devices that achieve ultra-low-power consumption and integrate an Arm®Cortex®-M4 CPU with a comprehensive mix of analog and digital peripherals. Category Power Management Product URL MC34VR500: Multi-Output DC/DC Regulator  Product Description The NXP® MC34VR500 power management solution for network processor systems is a high-efficiency, quad buck regulator with up to 4.5 A output and five user-programmable LDOs. Category Peripherals Product URL 1 PCF85063B: Tiny Real-Time Clock/calendar with alarm function and SPI‑bus  Product Description 1 The PCF85063BTL is a CMOS Real-Time Clock (RTC) and calendar optimized for low power consumption. Product URL 2 SA56004X: SMBus-Compatible, 8-Pin, Remote/Local Digital Temperature Sensor  Product Description 2 The NXP Semiconductors SA56004X is an SMBus compatible, 11-bit remote/local digital temperature sensor with over-temperature alarms. Product URL 3 NTS0101: Dual supply translating transceiver; open drain; auto direction sensing  Product Description 3 The NTS0101 is a 1-bit, dual supply translating transceiver with auto direction sensing, that enables bidirectional voltage level translation. Block Diagrams Industrial
查看全文
Smart Peephole Overview Features Use Cases Block Diagram Products Overview Smart, integrated building systems empower users to improve energy efficiency, lower maintenance costs, and conveniently control environments from smartphones and advanced HMIs. Their interconnected features house a platform of big data to make smarter, environmental-friendly decisions while ensuring maximum comfort and performance. Features Smart Peephole implement camera capture and LCD display function at the same time. Touch screen to trigger JPEG compression and storage. User can take it as a reference for basic framework for video transfer. Optional WiFi & BLE module to transmit the captured information to the user. Use Cases Home secure. Supervising children and pets. Loss prevention. Locating bugs and pests. Vandalism deterrence. Block Diagram Products Category MCU Product URL i.MX RT1050 Crossover MCU with Arm® Cortex®-M7 core  Product Description The i.MX RT1050 is the industry's first crossover MCU and combines the high-performance and high level of integration on an applications processors with the ease of use and real-time functionality of a microcontroller. Category RTC Product URL PCF85063TP: Tiny Real-Time Clock/calendar  Product Description The PCF85063TP is a CMOS Real-Time Clock (RTC) and calendar optimized for low power consumption. Category Wireless Product URL 1 QN902X: Ultra low power Bluetooth LE system-on-chip solution  Product Description 1 QN902x is an ultra-low power, high-performance and highly integrated Bluetooth LE solution. Product URL 2 88W8801: 2.4 GHz Single-Band 1x1 Wi-Fi® 4 (802.11n) Solution  Product Description 2 The 88W8801 is a highly integrated, single-band (2.4 GHz) Wi-Fi 4 1x1 System-on-Chip (SoC), specifically designed to support High Throughput (HT) data rates. Block Diagrams Smart Home
查看全文
Battery Management Controller for HEV/EV Overview Use Cases Block Diagram Products Overview NXP solutions enable AD/DC chargers in hybrid electric vehicles (HEV). The AD/DC charger interfaces with the battery management system to ensure a proper charge of electricity of the cells until it fulfills high-voltage (HV) requirements. Our comprehensive portfolio provides the critical building blocks for high-performance, efficient and safe pawer management control system for electric traction motors. Use Cases This solution can be applied and various sectors of the industry, specially in the automotive field. NXP solutions enable Hybrid and Electric Vehicles applications as: Converters and Chargers Stop/Start Systems Power inverters Block Diagram Products Category MCU Product URL S32K144EVB: S32K144 Evaluation Board  Product Description The S32K144EVB is a low-cost evaluation and development board for general purpose automotive applications. Category Safety SBC Product URL 1 FS6500: Grade 1 and Grade 0 Safety Power System Basis Chip with CAN Flexible Data Transceiver  Product Description The NXP® FS6500 system basis chip (SBC) provides power to MCUs and optimizes energy consumption through DC/DC switching regulators, linear regulators, and ultra-low-power saving modes. Category RTC Product URL PCA85073A: Automotive tiny Real-Time Clock/Calendar with alarm function and I2C-bus  Product Description The PCA85073A is a CMOS1 Real-Time Clock (RTC) and calendar optimized for low power consumption. Category Serial Interface Product URL  MC33660: ISO K Line Serial Link Interface  Product Description The NXP® MC33660 is a serial link bus interface device designed to provide bi-directional half-duplex communication interfacing in automotive diagnostic applications. Automotive Block Diagrams
查看全文