Multi Source Translation Content

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

Multi Source Translation Content

Discussions

Sort by:
FRDM-MCXA153 全速USB 你好,我尝试在 FRDM-MCXA153 板上运行一个名为“dev_cdc_vcom_bm”的 USB 示例,它会创建一个虚拟 COM 端口,并使用该特定的 VCOM 端口回显通过终端发送的字符。 我可以看到设备管理器中出现的 VCOM 有一个默认名称“USB 串行设备”,如附图所示,但我需要将此默认名称更改为自定义名称,使用示例代码 usb 文件本身,而不是在设备管理器设置中。 请让我知道更改 VCOM 名称所需的步骤,或者在 USB 示例驱动程序文件中进行的任何更改。 谢谢。 开发板 MCXA USB 回复:FRDM-MCXA153全速USB 谢谢你解答我的疑问 回复:FRDM-MCXA153全速USB 你好@Gurunath 我认为这无法在 USB 堆栈中改变。这取决于 PC 上的 USB 驱动器。 BR 爱丽丝 回复:FRDM-MCXA153全速USB 感谢您的解决方案。 如果您能告诉我是否有办法在 MCUXPRESSO IDE 中使用 frdm-mcxa153 的 USB 堆栈代码做同样的事情,那对我将有很大帮助。 回复:FRDM-MCXA153全速USB 你好@Gurunath 我们需要更改驱动程序配置来更改名称。我的电脑是 Win10,我将展示如何在我这边将此默认名称更改为自定义名称的步骤。 步骤1.在PC的设备管理器上右键单击“USB串行设备”。 第 2 步,在详细信息视图下选择“驱动程序密钥”。复制值。 步骤3,以管理员身份打开并运行注册表。 步骤4,搜索步骤2中复制的“值”。 Step5、修改名称如下: 第六步,重置电路板。如下图所示。 如果您的电脑是其他系统,您也可以谷歌搜索“如何在 xxx 系统上更改 USB 设备名称”。 BR 爱丽丝
View full article
USB HID キーボード USB スタックのホスト 4.1.1 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hi, Processor ExpertとCodeWarrior 10.2が作成したTWR-K20デモキット用のプロジェクトがあります。 USBスタック4.1.1のProcessor Expert USB HIDキーボードホストを使用するのに問題がありますので、非 PE USB HID キーボード ホストをプロジェクトに追加するには、変更する必要があります。 誰かが私にそれを行う方法を教えてもらえますか?簡単な「PE」サンプルプロジェクトを提供し、PE以外のUSB HIDキーボードホストスタックを追加すると非常にありがたいです。 ご回答をよろしくお願い申し上げます。 スタンレー Kinetis KシリーズMCU USB
View full article
Linux 操作系统上的 iw61x mfg 模式设置 本文档分享如何将特定的 mfg sdk 移植到特定的 Linux 版本。然后本文档介绍如何配置labtool。mfg 工具用于无线产品射频测试和校准。 设置环境: 被测设备: 评估套件:iw612 QFN-IPA V2 驱动程序版本:Linux_5_15_32_IMX8_SD-UART-BT-IW612-18.99.1.p154.38-18.99.1.p154.38- MXM5X18364.p19_V1-MGPL 实验室工具包:MFG-AW-IW61X-MF-BRG-U16-WIN-X86-1.0.0.39.1-18.80.1.p154.38 o 主办方: 主机板:i.MX8mm-evk 操作系统:i.MX8mm Linux 5.15.32 演示映像 动手实践培训 OS LINUX 产品:WiFi IW6XX
View full article
PT2000智能电磁驱动器 Demo 该演示展示了带有高压 (HP) 燃油泵阀的典型 4 缸直接燃油喷射 (DFI) 应用。 它介绍了 PT2000 中包含的许多灵活的硬件、电压和电流监控以及诊断功能。特别是,它演示了 PT2000 的集成实时喷射结束 [EOI] 检测功能,即使喷射器的特性随时间而变化,该功能也能向每个气缸输送精确量的燃料。 通过相关的软件 IDE 和设备模拟器演示了用户如何为其特定应用程序实现这些可编程功能的示例。将显示模拟器结果和实际结果之间的比较。     功能: 控制两组或三组配置的 3、4、5 或 6 个喷油器或泵电磁阀,升压电压为 72 V 集成注射结束 (EOI) 测量,实现精确的实时控制 通过集成代码加密实现安全性和保障性 完整的 PT2000 开发工具套件(模拟器、IDE、跟踪器、EVB) 灵活地实现标准或独特的峰值和保持电流波形   _________________________________________________________________________________________________________________________________________   产品 链接 PT2000 https://www.nxp.com/products/power-management/motor-and-solenoid-drivers/powertrain-and-engine-control/programmable-solenoid-controller-gate-driver:PT2000?&tid=vanPT2000 适用于 4/6 缸发动机的 PT2000 评估套件(含 KL25Z) 适用于 4/6 缸的 PT2000 评估套件 | NXP   特色: PT2000 IDE:开发者工作室 PT2000 PSC 的设计模拟器环境   _______________________________________________________________________________________________________________________________________                 4缸+燃油泵演示        A16 电磁阀控制器
View full article
自由特征矩阵 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> “这些自由板之间有什么区别?” 首先,让我们讨论一下既定事实。所有 Freedom 主板均具有以下特性: -OpenSDA调试接口 -引脚布局可接受任何 Arduino(R3)屏蔽 -多种电源选项(USB、电池或外部电源) -Cortex-M0+系列在低功耗运行方面表现出色!! 现在来看看花哨的东西: FRDM-K20D50M FRDM-KL25Z FRDM-KL26Z FRDM-KL05Z FRDM-KL02Z FRDM-KE027Z FRDM-KL46Z 内核 MHz Flash/RAM/FlexMem Cortex-M4 50 128K/16K/32K Cortex-M0+ 48 128K/16K Cortex-M0+ 48 128K/16K Cortex-M0+ 48 32K/4K Cortex-M0+ 48 32K/4K Cortex-M0+ 20 64K/4K Cortex-M0+ 48 256K/32K 典型工作电压 3.3v 3.3v 3.3v 3.3v 3.3v 5V 3.3v 电容滑动触摸传感板 :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: RGB LED :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: 光传感器 :笑脸检查: 3-Axis Acceleromter :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: :笑脸检查: Magnometer :笑脸检查: IrDA :笑脸检查: 热敏电阻 :笑脸检查: LCD显示器 :笑脸检查: 开关 2 支持mbed :笑脸检查: :笑脸检查: 标价(美元) $18.00 $12.95 $15.00 $12.95 $12.95 $12.95 $15.00 链接到产品页面 :smileyinfo: :smileyinfo: :smileyinfo: :smileyinfo: :smileyinfo: :smileyinfo: :smileyinfo: 如果您希望我向矩阵添加任何内容,请发布到下面的评论部分! 回复:自由特征矩阵 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hi John, 自由板的细分很好。最好将其作为 PDF 格式以便快速参考。
View full article
通过 IPU 为 sii902x hdmi 驱动程序打补丁 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 默认 BSP 版本通过 i.MX6 Solo 中的 LCDIF 支持 sii902x hdmi 卡,但不支持通过 i.MX6 Dual/Quad/Plus 中的 IPU 显示接口支持它。该补丁为 i.MX6 Dual/Quad/Plus 的 Sii902x HDMI 视频驱动程序提供支持。 有用的文件: MCIMXHDMICARD:sii902x hdmi 卡示意图 MCIMX6Q-智能设备平台:i.MX6 Quad Sabre SDP 原理图 软件版本: Linux 3.14.52_1.1.0-ga 已验证平台: imx6q-sabresd imx6qp-sabresd 修补: 0001-视频-MXC-SII902X-添加-SII902X-HDMI-卡驱动程序.补丁 0002-arch-arm-boot-dts-add-sii902x-hdmi-卡-设备树-n.patch 功能: 支持通过uboot命令设置视频模式; 支持通过设备树设置视频模式; 支持HDMI热插拔; 支持多种视频模式并动态切换; 说明: 默认设置(不要在bootcmd中添加“video=”)如下: ---------------------------------------------------------------------------------------- ------------ /sys/class/graphics/fb0 DISP4 BG-DI1 U:1024x768p-60 ldb 2 层-FB-BG ------------ /sys/class/graphics/fb1 DISP4 FG 覆盖 2层-FB-FG ------------ /sys/class/graphics/fb2 DISP3 BG-DI1 高清:1920x1080p-60 HDMI接口 2 层-FB-BG ------------ /sys/class/graphics/fb3 DISP3 FG 覆盖 2层-FB-FG ------------ /sys/class/graphics/fb4 DISP3 BG sii902x_hdmi 1层FB ------------ /sys/class/graphics/fb5 DISP4 BG --------------------------------------------------------------------------------------- 如果希望sii902x_hdmi为fb0,可以向bootcmd添加以下参数: 视频=mxcfb0:dev=sii902x_hdmi,1920x1080M@60,if=RGB24 视频=mxcfb1:off 视频=mxcfb2:off 视频=mxcfb2:off consoleblank=0 风险: 有时sii902x无法读取hdmi edid信息,并且此帧缓冲区的模型将为NULL。此时,驱动程序将设置已在 imx6q-sabresd 和 imx6qp-sabresd 上调整的默认视频模式。默认视频模式如下: /* 1080p @ 56赫兹 */ 60, 1920, 1080, 7692, 100, 40, 30, 3, 10, 2, 0, FB_VMODE_NONINTERLACED, 0 用户可以根据自己的情况修改此默认设置。 特别是,对于 imx6qp-sabresd 使用 1080p@60 视频模式存在一些风险。在这种情况下,hdmi设备将没有有效的hdmi信号输出。例如, /* 1080p @ 60赫兹 */ 60、1920、1080、6734、148、88、36、4、44、4、FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT、FB_VMODE_NONINTERLACED、0 用户应根据硬件参数设置这些值。
View full article
[オープンスレッド]Udoo Neo + K32W/JN5189 ボーダールーター 境界ルーターデバイスは、Threadネットワーク内のノードの接続を提供し、wwwとしてネットワークに接続する可能性があります。 要件 ハードウェア K32W/JN5189 DK6ボード Udoo Neo Ethernetケーブル ソフトウェア MCUXpresso IDE v11.4.1 o newer. SDK 2.6.4.https://mcuxpresso.nxp.com/en/dashboard DK6プロダクションフラッシュプログラマーツール udoo_neo_os_nxp.img Docker イメージ ソフトウェアのセットアップ 1.ツールを使用してSDカードに udoo_neo_os_nxp.img をフラッシュします。任意のツールを使用して画像をフラッシュし、SDカードが正しくフォーマットされていることを確認してください。 2. SDKに付属のUSBドングル(K32W/JN5189)にot-rcp.binファイルを書き込みます。 \K32W061DK6ミドルウェア\ワイヤレス\openthread\openthread\output\k32w061\bin DK6Programmer.exe -V5 -s COM2 -p ot-rcp.bin OpenThread BorderRouter の実行 Udoo Neoボードをイーサネットケーブルに接続したら、新しい端子を開いて接続していることを確認します。ping 8.8.8.8 コマンドを入力できます。 IPV4をお持ちでない場合は、ボードをコンピューターに接続して、USBIPを使用できます。その後、ブラウザを開き、USB IPを使用してUdoo Neoページに入ることができます。SSH 接続の作成には、別のアドレスを使用できます。   Docker のインストール Docker イメージと Bash スクリプトを Udoo ボードにコピーします。 dockerをインストールします。 curl -sSl https://get.docker.com | sh; コマンドには時間がかかります Docker イメージが正常に読み込まれたことを確認します Docker コンテナを起動する   この場合、UDOO NEO Extendedにはイーサネットポートがないため、イーサネットへのUSBコンバーターがあります。OpenThread の例では IPV6 アドレスが必要です sudo ./run_br_container.sh; 注: OpenThread には IPV6 が必要なため、イーサネット接続が必要です。 ファイルに実行権限があることを確認してください。 次の図は、コンテナのプロセスを示しています。 このターミナルは実行中のDockerインスタンスであるため、使用できません。実行中にwpantundからログを出力します。   新しいターミナルを開き、コンテナIDを確認します   その後、ブラウザを開いてUDOO NeoのIPV4を検索すると、OpenThreadのWebページが表示されます。   左側でオプションフォームを選択すると、ネットワーク作成用の新しいページが表示されます。 次に、wpanctlのステータスを尋ねると、すべてのスレッド情報、アドレス、ネットワークのチャネルなどが表示されます。 sudo wpanctl status sudo wpanctl getprop Thread:OnMeshPrefixes Node A 同じ UDOO ターミナルで、境界ルーターの内部コミッショナーを開始し、事前共有キーを持つ Thread ノードがこのネットワークに参加できるようにします。 sudo wpanctl commissioner start; sudo wpanctl commissioner joiner-add “*” 120 J01NME; Node B REEDの例を使用して別のJN5189 / K32Wをフラッシュし、次のコマンドを入力して有効にし、Threadネットワークに参加させます。 \K32W061DK6\ボード\k32w061dk6\wireless_examples\openthread\reed ifconfig up joiner start J01NME 参加プロセスが完了したら、次のコマンドを入力して境界ルーターに接続します。 thread start 下の画像を見ると、ノードBコマンドに気づくでしょう。 外部インターネット64:ff9b::808:808にpingを実行して、インターネットにアクセスできることを確認します。 詳細については、SDK ドキュメントに含まれている OpenThread デモ アプリケーション ユーザーガイドをご覧ください。"\K32W061DK6\docs\wireless\OpenThread" 11 章 境界ルーターアプリケーションシナリオの実行 よろしくお願いします。 Mario JN Threadソフトウェア
View full article
KL系列ROM BOOTLOADER启动问题分析及解决方案 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> KL系列ROM BOOTLOADER启动问题分析及解决方案 1 摘要 客户在使用闪存容量大于128K的Kinetis芯片KL43、KL27、KL17时发现,如果代码从ROM启动而不是从闪存启动,那么关于LPUART和I2C的应用程序代码将运行异常,特别是当使用PTA1作为LPUART接收引脚时,UART发送功能没有问题,但是当PTA1接收到UART数据时,代码将运行到异常区域并且无法返回,代码将崩溃。该问题仅发生在从 ROM 启动时,并且在 BCA 0x3d0 地址中启用 uart 和 i2c 外设,BCA 区域中的 uart 外设启用将影响应用程序 PTA1 uart 接收,BCA 区域中的 i2c 外设启用将影响应用程序代码中的 i2c0 模块。如果从闪存启动或从 ROM 启动,但在 BCA 0x3d0 地址中禁用 uart 和 I2C 外设,则应用程序代码中的一切工作正常。 本文档将以UART问题为例,详细介绍问题的复现、测试、分析以及解决方案。从 ROM 引导加载程序启动时,I2C 问题是一样的。 2 问题复现与分析 测试准备: IDE: KDS 和IAR 硬件: FRDM-KL43 软件: 3.0和KSDK2.0_FRDM-KL43 我们主要通过两种方式复现uart接收问题:基于KSDK1.3.0的全新KDS PE项目和官方最新示例代码包KSDK2.0_FRDM-KL43。 2.1 新建kds项目中问题复现 由于KSDK2.0仍然不支持KDS IDE中的PE功能,因此我们使用KSDK1.3.0作为PE KSDK来创建新的KDS项目。 2.1.1创建 KDS KL43 项目 新的KDS PE项目创建非常简单,这里只描述与从ROM启动后UART问题相关的重点。首先新建一个基于KSDK1.3.0的KDS PE工程,选择芯片为MKL43Z256VLH4,MCG模式选择为HIRC,配置核心时钟为48Mhz,总线时钟为24Mhz。 然后添加uart模块fls_debug_console进行测试,因为FRDM_KL43使用的是PTA1和PTA2,所以console模块可以像下图这样配置,模块配置完成后,按代码生成按钮生成工程代码。 然后在文件main.c中添加简单的代码测试的主要功能: 字符a; 为了(;;) { PRINTF( “测试!\n” ); a=GETCHAR(); 放置字符(a); } 代码功能为:将“test!”打印到PC的COM口,然后等待uart数据,如果接收到数据,则将接收到的数据打印回去,并再次运行此循环函数。   2.1.2添加 BCA 区域 从KL43参考手册中我们可以得知,BCA起始地址是0X3C0: KDS新建的工程在链接文件中没有包含BCA区域,所以需要在链接文件中添加这个区域,并在启动文件里自己添加BCA数据。 2.1.2.1 将BCA flash划分为.ld文件文件 在ProcessorExpert.ld内存区域中添加以下代码来定义BCA起始闪存地址和闪存大小: m_bca(RX):起源 = 0x000003C0,长度 = 0x00000040 然后在SECTIONS区域添加以下代码: .bca: {              . = ALIGN(4); KEEP(*(.bca)) /* 引导加载程序配置区域 (BCA) */              . = ALIGN(4);            } > m_bca 最后ld文件如下: 对于ld文件的保护,我们可以将ld文件的属性改为只读,那么生成后这个文件就不会再变成初始文件了。 2.1.2.2 在启动文件中添加BCA数据 添加BCA flash区域划分代码后,我们还需要定义在启动文件中的BCA数据: /* BCA 区域 */ .部分 .bca,“一个”                 .ascii "kcfg"                            // [00:03] tag 。长的0xFFFFFFFF // [07:04] crc起始地址 。长的0xFFFFFFFF // [0B:08] crc字节计数 。长的0xFFFFFFFF // [0F:0C] crcExpectedValue 。字节0x03 // [10] 启用外围设备 I2C 和 UART 。字节0xFF // [11] i2c从设备地址 。短的3000 // [13:12] 外设检测超时(毫秒) 。短的0xFFFF // [15:14] usbVid 。短的0xFFFF // [17:16] usbPid 。长的0xFFFFFFFF // [1B:18] usbStringsPointer 。字节0xFF // [1C] 时钟标志 。字节0xFF // [1D] 时钟分频器 。字节0xFF // [1E] 启动标志 。字节0xFF // [1F] 保留*/ 更多细节请参考此图: 到目前为止,我们已经创建了包含BCA区域的FRDM-KL43测试项目,并从可在闪存地址0X40D中修改的ROM启动,0X40D中的位6-7是BOOTSRC_SEL位,00从闪存启动,10和11从ROM启动,有关FOPT的更多详细信息,请参阅表6-2。参考手册中的Flash选项寄存器(FTFA_FOPT)定义。 2.1.3测试结果与分析 现在,列出从 ROM 或闪存启动后的测试结果,并从 ROM 启动但启用外围设备。 启动自: ROM外设 测试结果 闪存 XX OK ROM 0XFF,启用所有 否,UART无法接收 0X08,启用USB 是的,UART可以接收 0X04,启用SPI 是的,UART可以接收 0X02,启用I2C 是的,UART可以接收 0X01,启用LPUART 否,UART无法接收 从测试结果来看,我们可以重现该问题。UART接收问题只发生在从ROM启动并且LPUART启用时,当我们用调试器运行它并逐步测试它时,我们可以发现在PTA1接收到数据后,代码将运行到异常区域。 注意: 调试此代码时,请选择JLINK作为调试器,因为P&E工具在调试时会自动保护KDS IDE中的FOPT区域,代码仍将从闪存运行,因此如果客户使用P&E工具,他们会发现PTA1仍然可以接收数据,这不是真正的结果,但是JLINK不会保护KDS IDE中的FOPT区域,它可以反映真实的结果。 使用JLINK作为调试器后,我们发现PTA1获取数据或者拉低后,代码会进入如下异常区域: 我们可以得到代码运行到defaultISR,并显示USB_IRQHander,但这并不是真正的USB_IRQHander,只是由于PC异常引起的。一般是由于缺少中断服务函数造成的。 现在,我们测试NVIC数据来检查哪个模块中断导致了这个问题,下图是通过启用ROM BCA区域中的LPUART和I2C外设得到的结果。 我们可以发现,即使我们从ROM启动后没有进行CPU和外设初始化,仍然有外设被启用,那么启用了什么中断呢?摘自 ARM Cortex-M0.pdf 权威指南: NVIC_ISER = 0x40000100,Vector46=IRQ30 和vector24=IRQ8 已启用,从 ROM 启动后不应禁用它。现在检查KL43参考手册,表3-2。中断向量分配,我们可以得到I2C0和PORTA中断已启用。 在进行CPU和外设初始化之前检查PORTA寄存器,PTA1启用端口中断,并在下降沿选择标志和中断。 这可以告诉我们为什么PTA1引脚存在uart接收数据的问题或者在PTA1上给出下降沿会运行不正常,因为默认情况下,即使我们将PTA1配置为uart接收功能,但代码没有清除IRQ和NVIC寄存器,当信号发生在PTA1引脚上时,它会引起PORTA中断,但是我们没有添加PORTA中断ISR功能,它对我们也没有用,那么PC就不知道去哪里了,所以它会运行不正常,进入默认ISR,并且无法恢复。如果你有兴趣,你可以添加PORTA_IRQHandler函数,你会发现代码会运行到这个函数。 2.2 KSDK2.0中的问题复现IAR项目 测试项目:SDK_2.0_FRDM-KL43Z\boards\frdmkl43z\demo_apps\hello_world 测试官方项目只是为了确保它确实是芯片硬件功能的问题,而不仅仅是 KDS 中新生成的代码的问题。 因为IAR IDE会保护0X400区域,那么我们如果要修改FOPT,就需要修改.board,首先添加 –enable_config_write。   然后修改startup_MKL43Z.s中的FOPT: __FlashConfig         DCD 0xFFFFFFFF         DCD 0xFFFFFFFF         DCD 0xFFFFFFFF         DCD 0xFFFFFFFE   ; 0xFFFF3FFE   __FlashConfig_End 因为BCA外设区域默认为0XFF,它启用所有外设,我们不需要单独定义BCA区域。 为了得到真实的测试结果,我们在主函数中添加了NVIC和PORTA_PCR1寄存器的printf代码, PRINTF("PORTA_PCR1=%X \n",PORTA->PCR[1]); PRINTF("NVIC=%X \n", NVIC->ICER[0U]); 并将修改后的KSDK示例代码下载到芯片中,经过测试,得到这样的结果: 你好世界。 PORTA_PCR1=A0205 NVIC=40000100 和新建工程从ROM启动后的结果一样,PORTA中断和I2C中断都开启,导致PTA1接收数据问题。 3 解决方案及测试结果 3.1 解决方案 从第二章的测试分析中,我们可以得知UART接收问题是由于从ROM启动后PORT中断和NVIC被启用引起的,这应该是由于退出ROM时,ROM忘记禁用它造成的。我们还可以从KL43参考手册第211页找到一些描述: 因此,如果客户想要解决这个问题,为了避免应用程序进入异常区域,我们可以像这样在应用程序代码中禁用NVIC,I2C NVIC是相同的: NVIC_DisableIRQ(8);//禁用I2C0中断 NVIC_DisableIRQ(30); //禁用PTA中断 3.2 测试结果 从添加 NVIC I2C 和 PORTA 禁用代码后的测试结果来看,uart 可以正常工作,如果您有兴趣测试,I2C 也可以正常工作。 4 结论 当客户使用闪存容量大于128K的Kinetis芯片KL43、KL27和KL17,并希望从ROM启动并在BCA区域启用LPUART和I2C时,请在应用程序代码中添加NVIC I2C(IRQ8)和PORTA(IRQ30)禁用代码: NVIC_DisableIRQ(8);//禁用I2C0中断 NVIC_DisableIRQ(30); //禁用PTA中断 到目前为止,我刚刚发现闪存大小超过 128K 的 KL43、KL27 和 KL17 存在此问题,其他具有 ROM 引导加载程序的 Kinetis 芯片没有此问题。 Kinetis L系列MCU 回复:KL系列ROM BOOTLOADER启动问题分析及解决方案 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 正确的是,需要禁用 NVIC 源和引脚源,以避免应用程序使用这些功能时可能发生意外中断的风险。 此致 Mark 回复:KL系列ROM BOOTLOADER启动问题分析及解决方案 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 您好,我收到了一位顾客的以下评论。是否可以审查 DOC-332389 的可能更新? **** 我实际上不同意 DOC-332389 中显示的解决方案,因为他们使用了过于简化的测试用例。他们提出的阻止 LPUART Rx 引脚的端口引脚中断的解决方案如下: NVIC_DisableIRQ(30); //禁用PTA中断   这会转到 NVIC 并禁用端口 A 上所有引脚的中断。如果您想从端口 A 上的任何其他引脚获取中断,则必须返回 NVIC 并重新启用 PTA 中断,这将允许相同的未处理中断发生。由于我们试图避免特定端口引脚(PTA1)上出现意外中断,我认为更好的解决方案是执行以下操作,其中“gpio”是修改 PTA1 所需要的: PORT_HAL_SetPinIntMode(gpioGetPortPtr(gpio),gpio->pinIdx,GpioIrq_Never); ****** 回复:KL系列ROM BOOTLOADER启动问题分析及解决方案 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 鲍勃 谢谢,听起来您的经历比文档中预期的更详细。 因此,几周后,当我开始在工厂中对需要 USB 编程(在新部件上)的基于 KL27 的部件进行新生产运行时,我将重新审视这个问题 - USB-MSD 加载器将被编程用于后续操作,因此 ROM 错误不会产生巨大的影响,但它将提供一个机会来更好地了解它的真实行为。 此致 Mark 回复:KL系列ROM BOOTLOADER启动问题分析及解决方案 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 马克·布彻写道: 您是否测试过在检测到 ROM BOOT LOADER 运行后命令重置的代码? RCM_FM = 0是默认值,因此可以被任何其他强制 BOOT 设置(例如 BOOTCFG0 或 FOPT[7])覆盖,这表明这将导致永远循环......   我还决定不命令软件重置,因为最初的重置原因(例如。由于看门狗的原因)丢失(由 SW 复位代替)。 Yes I tested.  It is what I found that worked after several experiments.  There are sections in the datasheet that don't seem to reflect how the part really works.  In booting FOPT et.al. appear to set internal latches that are not cleared until after the reset vector has been taken.  There is also the bug that if booting from the USB HID the bootloader will not reset via the software command from the PC.  It gets stuck in endless cycle of enumeration. To see if the part was reset by the Watchdog look at RCM_SSRS0 the 'Sticky' register. The datasheet values reflect Power Up (Vcc Rise), not all reset sources.  This can be seen in the SPIN bit.  SPIN indicates if there was a Reset Pin reset, clearing this bit at reset makes no sense, which is what the datasheet default value indicates.  I look at Sticky SWDOG to log it in my code; I have a complex timer/DMA/LPUART thing going on and am not convinced that the LPUART does not lock up at times leading the watchdog to bark.  I've not seen anyone else complaining about LPUART issues. 回复:KL系列ROM BOOTLOADER启动问题分析及解决方案 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 嗨,鲍勃 您是否测试过在检测到 ROM BOOT LOADER 运行后命令重置的代码? RCM_FM = 0是默认值,因此可以被任何其他强制 BOOT 设置(例如 BOOTCFG0 或 FOPT[7])覆盖,这表明这将导致永久循环: - ROM 加载器(例如由于 BOOTCGG0) - 软件重置 - ROM 加载器(例如由于 BOOTCGG0) - 软件重置 .. 我没有测试过这个但这正是我所期望的。 我还决定不命令软件重置,因为最初的重置原因(例如。由于看门狗的原因)丢失(由 SW 复位代替)。 以下是我在 uTasker 项目中使用的解决方法 - 请注意,可能的待处理中断也被清除(而不仅仅是屏蔽),因为意外的待处理外围设备中断也是启用外围设备时应用程序故障的根源,而这在“分析和解决方案”文档中是缺失的。 此致 Mark #if defined KINETIS_KL && defined ROM_BOOTLOADER && defined BOOTLOADER_ERRATA // {125}     if ((RCM_MR & (RCM_MR_BOOTROM_BOOT_FROM_ROM_BOOTCFG0 | RCM_MR_BOOTROM_BOOT_FROM_ROM_FOPT7)) != 0) { // if the reset was via the ROM loader         // PORT clock gate, pin mux and peripheral registers are not reset to default values on ROM exit         //         PORTA_PCR1 = PORT_PS_UP_ENABLE;                                  // set LPUAR0, I2C0 and SPI0 ports back to defaults         PORTA_PCR2 = PORT_PS_UP_ENABLE;         PORTB_PCR0 = PORT_PS_UP_ENABLE;         PORTB_PCR1 = PORT_PS_UP_ENABLE;         PORTC_PCR4 = PORT_PS_UP_ENABLE;         PORTC_PCR5 = PORT_PS_UP_ENABLE;         PORTC_PCR6 = PORT_PS_UP_ENABLE;         PORTC_PCR7 = PORT_PS_UP_ENABLE;         POWER_DOWN(5, (SIM_SCGC5_PORTA | SIM_SCGC5_PORTB | SIM_SCGC5_PORTC | SIM_SCGC5_PORTD | SIM_SCGC5_PORTE | SIM_SCGC5_LPUART0)); // power down ports and LPUART0         POWER_DOWN(4, (SIM_SCGC4_I2C0 | SIM_SCGC4_SPI0));                // power down I2C0 and SPI0         SIM_SOPT2 = 0;                                                   // set default LPUART0 clock source         IRQ0_31_CER = 0xffffffff;                                        // disable and clear all possible pending interrupts         IRQ32_63_CER = 0xffffffff;         IRQ64_95_CER = 0xffffffff;         IRQ0_31_CPR = 0xffffffff;         IRQ32_63_CPR = 0xffffffff;         IRQ64_95_CPR = 0xffffffff;         // UART cannot work at 57600 baudrate with default core clock (not worked around)         //         // COP is disabled in ROM and it cannot be re-enabled by an application that is jumped to from ROM         // - cannot be worked around; advise to use FTFL_FOPT_BOOTSRC_SEL_FLASH together with FTFL_FOPT_BOOTPIN_OPT_ENABLE         //     } #endif‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍ 回复:KL系列ROM BOOTLOADER启动问题分析及解决方案 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 谢谢你的分析。 归结为在任何代码开始时清除 NVIC,以及完全初始化所使用的任何外围设备的良好卫生习惯。 将其放在vectors.c中reset_init()的开头(或代码的等效名称)。   /* * 《ROM BOOTLOADER启动问题分析及解决方案》 * 在 KL 系列中”表示 KL43/27/17 引导加载程序存在错误。非线性矢量控制寄存器 * 如果通过有缺陷的引导加载程序到达这里,则需要清除。    */ NVIC_ICER |= ~0UL; NVIC_ICPR |= ~0UL; 要按照 Rastislav Pavlanin 的建议进行重置,无需任何框架或类似的东西,获取数据表重置值,请执行以下操作:   /* * RCM_MR 指示启动源,启动源保持设置 *直到下一次系统复位或软件可以写入逻辑1到 * 清除相应的模式位。当任一位被设置时 * NMI 输入被禁用,向量表被重新定位到 * ROM 基地址位于 0x1C00_0000。这些位应该通过 * 在执行 Flash 或    * SRAM.    * * 强制重置以清除 ROM 中的所有内容 * 引导加载程序确实如此,所以我们确定我们已经重置了数据表    * values.    * * 此方法适用于存在缺陷的 KL43/27/17 引导加载程序,因为 * 描述于:《从 * KL 系列中的 ROM BOOTLOADER”。    */   if( 0U != (RCM_MR & RCM_MR_BOOTROM_MASK) )     { RCM_MR = RCM_MR_BOOTROM_MASK; /* 清除指示通过 ROM 启动引导程序的位 */ RCM_FM = 0U; /* 下次复位时从 Flash 而不是 ROM 启动 */ SCB_AIRCR = (SCB_AIRCR_VECTKEY(0x05FAU) | SCB_AIRCR_SYSRESETREQ_MASK); /* 强制软件复位 */     } 回复:KL系列ROM BOOTLOADER启动问题分析及解决方案 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hi Jingjing, 它是在 .h 中定义的内联函数文件 静态内联 rcm_boot_rom_config_t RCM_GetBootRomSource(RCM_Type *base) {     return (rcm_boot_rom_config_t)((base->MR & RCM_MR_BOOTROM_MASK) >> RCM_MR_BOOTROM_SHIFT); } 此致问候 R. 回复:KL系列ROM BOOTLOADER启动问题分析及解决方案 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hi Rastislav, 感谢您的评论。 是的,你是对的,它花费了我很多时间来寻找根本问题,确实需要在从 ROM 启动后重置 NVIC。 您能告诉我您使用的函数 RCM_GetBootRomSource 来自哪里吗?是来自KSDK2.0吗API还是需要客户自己写?我检查了fsl_rcm.c,并没有找到这个API。 顺祝商祺! Jingjing 回复:KL系列ROM BOOTLOADER启动问题分析及解决方案 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hi Jingjing, 看起来您的代码在退出 ROM 引导加载程序代码后将向量表地址保留在 ROM 内存位置。这意味着如果您的应用程序代码程序想要进入中断处理程序(LPUART 或 I2C),NVIC(中断控制器)将从 ROM 获取向量并进入可能的 ROM 中断处理程序,该处理程序在此 ROM 代码位置处停顿。 此解决方案可能会有所帮助: 在您的应用程序代码中检查启动源(如果基于 ROM)。如果是,则清除启动源标志并生成系统重置,例如(在 SDK 2.0 中) 如果(RCM_GetBootRomSource(RCM)&kRCM_BootRomBoth)   { RCM_ClearBootRomSource(RCM);     NVIC_SystemReset();   } 这会将 VTOR(中断向量表)重新分配到闪存中。希望对您有所帮助。 此致问候 R.
View full article
NTAG5 Link Energy Harvesting - スーパーキャパシタ はじめに NTAG5は、強力なエネルギーハーベスティング機能(最大30mW)を提供します。便利なアプリケーションの1つは、スーパーキャパシタの充電であり、これは顧客のMCUやセンサーなどの電源として使用できます。 以下の一般的な回路図を参照してください。 インピーダンスチューニングにはC1とC1Pが使用されます。アンテナは通常、13.56MHz〜14MHzに調整されます。 R1 は、スーパーキャパシタの充電電流を制限するために使用されます。その値は選択したVOUT電圧によって異なりますが、最大出力電流は12.5mAであることに注意してください。 例えば。VOUT=2.4V、充電中= 10mA -> R1 = 240オーム 充電電流が高すぎたり、受信磁界の量が十分に高くない場合、VOUTが低下する可能性があることに注意してください。 D1は、次のように低ドロップダイオードである必要があります。RB520CS30L 使用スーパーキャップ:CPX3225A752D アンテナサイズ 一般に、タグとリーダー アンテナの形状を一致させるのが最善です。 最大の効率。リーダアンテナとタグアンテナの寸法に大きな違いがあると、結合係数が小さいため、通信性能とエネルギーハーベスティング性能が低下します。 スマートフォンとして、NFCアンテナはさまざまな寸法を持つことができます。1つのNFCタグアンテナを設計して、複数のスマートフォンに最高のパフォーマンスを提供するのは難しいかもしれません。 電話のNFCアンテナの寸法は、通常、約25 mm対20 mm(NFCフォーラムポーラークラス6)と50 mm対30 mm(NFCフォーラムポーラークラス3)です。 注:ただし、iPhoneなどでは異なる場合があります そのため、お客様は、エナジーハーベスティングNTAG5リンク設計にNFCアンテナの次のフォームファクタを検討できます。 より大きなデザインの場合(NFCフォーラムリスナークラス3):   丸型NFCアンテナ用 ->外径は約44ミリメートル   小規模なデザインの場合(NFCフォーラムリスナークラス6): 丸型NFCアンテナ用 ->外径は約25ミリメートル  Tomas Parizek  お客様アプリケーション・サポート  コネクテッドタグソリューション
View full article
PT2000スマートソレノイドドライバ Demo このデモでは、高圧(HP)燃料ポンプバルブを備えた一般的な4気筒直接燃料噴射(DFI)アプリケーションを示しています。 これは、PT2000に組み込まれた多くの柔軟なハードウェア、電圧および電流監視、および診断機能を導入しています。特に、PT2000に統合されたリアルタイムEOI(End of Injection)検出機能のデモを提供し、インジェクターの特性が時間の経過とともに変化する場合でも、各シリンダーに正確な量の燃料を供給することができます。 ユーザーがこれらのプログラム可能な機能を特定のアプリケーションに実装する方法を示します。関連するソフトウェア IDE とデバイス シミュレータを使用して説明します。シミュレータの結果と実際の結果との比較が表示されます。     特長: 3、4、5、または6のインジェクターまたはポンプソレノイドを2つまたは3つのバンク構成で制御し、72 Vの昇圧電圧で 正確なリアルタイム制御のための統合注入終了(EOI)測定 統合されたコード暗号化によるセキュリティと安全性 PT2000開発ツール一式(シミュレータ、IDE、トレーサー、EVB) 標準または独自のピーク&ホールド電流波形を実装する柔軟性   _________________________________________________________________________________________________________________________________________   製品 リンク PT2000 https://www.nxp.com/products/power-management/motor-and-solenoid-drivers/powertrain-and-engine-control/programmable-solenoid-controller-gate-driver:PT2000?&tid=vanPT2000 PT2000 評価キット KL25Z 4/6気筒用 PT2000 評価キット 4/6気筒用 |NXPの    注目: PT2000 IDE: Developer Studio PT2000 PSC用シミュレータ環境の設計   _______________________________________________________________________________________________________________________________________                 4気筒+燃料ポンプのデモンストレーション        A16 ソレノイドコントローラー
View full article
MLC提取工具的使用 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 本节介绍如何使用 MLC 提取器工具从 NAND FLASH 获取带有交错 MLC 数据的图像。MET 在目标硬件上运行,因此必须先将要提取的图像放置在硬件上。CDL 中有关如何执行此操作的详细说明,因此这里不再赘述。该程序假定 UART 5(LPC32x0 启动 UART)用作 UART 接口。 用此提取的最常见代码是块 0 中的 kickstart 加载程序。此加载程序用于从 NAND 启动 LPC32x0,设置系统,然后引导 NAND 块 1 及以后的辅助加载程序。 此示例显示在 Phytex LPC3250 板上,尽管它在其他板上的工作方式类似。 设置串行加载工具以加载“mlcextractor.bin”文件通过串行端口传输到开发板。 确保 LPC3250 上的 ServiceN 引脚被拉低以启用 UART 启动模式。按下串行加载器对话框窗口上的“加载箱/启动主”按钮。重置电路板,串行加载工具将把 MLC 提取器传输到目标电路板。图像加载后,您将看到一条消息,显示 NAND 中的块数和每块的页数。如果出现提示找不到 NAND 设备的消息,则需要使用与目标板上的 NAND 设备匹配的 NAND ID 重建图像。 关闭串口加载工具,打开一个支持XMODEM传输的终端程序(即Teraterm)。按空格键即可获取 MET 菜单。按下菜单定义的键可以更改要提取数据的起始块和块数。一旦选定,按“d”然后按“y”即可启动 xmodem 传输。 接下来,为 XMODE_cChecksum 接收会话设置终端程序。一旦启动,交叉数据和 ECC 代码将从 NAND 设备中读取并通过 XMODEM 传输到文件中。该结果文件可用于 NAND 编程。
View full article
SSEC_1.001_15.08.2012.PEupd <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 上证所 描述 SPHY组件的安全驱动程序 组件 SSEC.PEupd Dependencies 等待 许可 许可证:开源(LGPL) 版权:(c)版权所有 Erich Styger,2012,保留所有权利。 这是一个使用 Processor Expert 实现驱动程序的开源软件。 这是一个免费软件,根据以下条款的许可政策开放用于教育、研究和商业开发: * 这是一个免费软件,没有任何担保。 * 没有使用限制。您可以自行承担责任,将其用于个人、非营利或商业产品。 * 重新分发源代码必须保留上述版权声明。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 上证所 描述 SPHY组件的安全驱动程序 组件 SSEC.PEupd Dependencies 等待 许可 许可证:开源(LGPL) 版权:(c)版权所有 Erich Styger,2012,保留所有权利。 这是一个使用 Processor Expert 实现驱动程序的开源软件。 这是一个免费软件,根据以下条款的许可政策开放用于教育、研究和商业开发: * 这是一个免费软件,没有任何担保。 * 没有使用限制。您可以自行承担责任,将其用于个人、非营利或商业产品。 * 重新分发源代码必须保留上述版权声明。 组件交换
View full article
PID_Int_1.001_02.07.2012.PEupd <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> PID_Int 描述 实现整数 PID 控制器的驱动程序。 组件 PID_Int.PEupd Dependencies Tacho, MaxonF2140 许可 许可证:开源(LGPL) 版权:(c)版权所有 Erich Styger,2012,保留所有权利。 这是一个使用 Processor Expert 的开源软件。 这是一个免费软件,根据以下条款的许可政策开放用于教育、研究和商业开发: * 这是一个免费软件,没有任何担保。 * 没有使用限制。您可以自行承担责任,将其用于个人、非营利或商业产品。 * 重新分发源代码必须保留上述版权声明。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> PID_Int 描述 实现整数 PID 控制器的驱动程序。 组件 PID_Int.PEupd Dependencies Tacho, MaxonF2140 许可 许可证:开源(LGPL) 版权:(c)版权所有 Erich Styger,2012,保留所有权利。 这是一个使用 Processor Expert 的开源软件。 这是一个免费软件,根据以下条款的许可政策开放用于教育、研究和商业开发: * 这是一个免费软件,没有任何担保。 * 没有使用限制。您可以自行承担责任,将其用于个人、非营利或商业产品。 * 重新分发源代码必须保留上述版权声明。 组件交换
View full article
用于MCU的USB DFU引导加载程序 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 保罗·阿尔坎塔拉 RTAC Americas 2012年墨西哥 USB 设备固件更新 (DFU) 引导加载程序提供了一种简单可靠的方法,可以将新的用户应用程序加载到已预加载 USB DFU 引导加载程序的设备中。加载后,新的用户应用程序就可以在MCU中运行。USB DFU 引导加载程序需要在 PC 上运行的应用程序(USB DFU PC 应用程序)。DFU PC 应用程序支持使用 USB DFU 规范类中规定的特定请求将固件加载到设备。 支持以两种方式枚举USB DFU引导加载程序: -USB复合设备模式:也称为运行时模式。它由一个 DFU 设备加上另一个 USB 设备类组成。对于此实现,人机界面 设备(HID)鼠标设备用于避免增加引导加载程序内存大小。进入此模式之前,MCU 必须处于以下状态: MCU不含有效固件映像,或者不含固件。 对 MCU 施加外部操作,例如在重置事件期间按下按钮。这取决于 USB DFU 引导加载程序的实现。 -DFU 设备模式:当 DFU 准备根据 USB DFU PC 应用程序的请求上传或下载固件映像时使用。在此模式之前,MCU 处于 USB 复合设备模式。 引导加载程序是一个小型应用程序,用于将新的用户应用程序加载到设备中。因此,引导加载程序需要能够在用户应用程序和引导加载程序模式下运行。举个例子: 重置后,设备尝试运行用户应用程序。如果未找到用户应用程序或应用程序已损坏,设备将自动进入引导加载程序模式。如果应用程序有效并且用户想要运行引导加载程序,则需要进行外部干预 例如在重置时按下特定键即可强制设备进入引导加载程序模式。 附有完整的应用说明和软件。 回复:用于 MCU 的 USB DFU 引导加载程序 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> DFU PC Demo 软件的源代码是否可用(或者可以提供)? 回复:用于 MCU 的 USB DFU 引导加载程序 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 感谢您的评论。PLL 通过。代码有效,我将使用自己的代码测试引导加载程序。 网站上应该修改代码。 回复:用于 MCU 的 USB DFU 引导加载程序 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 是 回复:用于 MCU 的 USB DFU 引导加载程序 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 是的,VID 和 PID 在 usb_descriptor.c 中定义文件。 PC inf文件中的VID和PID也需要修改。 回复:用于 MCU 的 USB DFU 引导加载程序 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 将 MCG_C2 的值更改如下: //    MCG_C2 = MCG_C2_RANGE(2) | MCG_C2_HGO_MASK | MCG_C2_EREFS_MASK | MCG_C2_IRCS_MASK;    MCG_C2 = (MCG_C2_LOCRE0_MASK | MCG_C2_RANGE0(1) | MCG_C2_EREFS0_MASK); 回复:用于 MCU 的 USB DFU 引导加载程序 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 我已经在 IAR EW650+ FRDM-KL25Z上尝试过了。它不起作用。当我查看调试器时。这与 TWR 和 FRDM 之间的 GPIO 差异无关。我发现它挂在时钟设置 pll_init() 中。 主运动学.c锁相环初始化(pll_init)         SIM_CLKDIV1 = 0x1003000 // OUTDIV1 = 0x01, OUTDIV4 = 0x03         MCG_C2 = 0x2D // RANGE=2, HGO=1, EREFS=1, LP=0, IRCS=1         MCG_C1 = 0x98 // CLKS=2, FRDIV=3        ......         #ifndef EXTERNAL_OSC /* 等待振荡器初始化 */ while (!(MCG_S & MCG_S_OSCINIT_MASK)) //<=== 永远循环 OSCINIT {;}         #endif 目前我对KL25Z还不熟悉。您能给出一些建议吗? 回复:用于 MCU 的 USB DFU 引导加载程序 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 这与 MCF51JM 兼容吗? 回复:用于 MCU 的 USB DFU 引导加载程序 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 非常感谢这个非常有用的应用说明。 我想知道是否可以修改 USB VID/PID(因为我的公司拥有一个供应商 ID...)? 顺祝商祺! AV
View full article
V15 使用 NPN 镇流器电路的内部调节器 Hi , 我们正在使用 S32K312 开发板进行开发,并计划使用 EVB 原理图为我们的应用程序制作定制板(s32k312 和 s32k314 的单板)。我可以看到原理图中给出了 NPN 镇流器电路的 V15 电压域。 如果我使用 NPN 镇流器电路,我是否需要从外部电源提供 1.5V,或者如果使用跳线 J31 设置 2-3 = 关闭,我是否能够获得 1.5V 到 V15。 注意:我没有使用 F26 电路,而是使用了不同的电压调节器。 回复:使用 NPN 镇流器电路的 V15 内部调节器 你好@KarthikRaja 是的,只要 VRC_CTRL 作用,电流就会仅在 VDD_HV_NPN 和 V15 之间进行。 回复:使用 NPN 镇流器电路的 V15 内部调节器 Hi Vane, 感谢您的更新。 需要明确的是,当我选择跳线 2-3(闭合)时, V15_MCU 域将通过 VRC_CTRL MCU 引脚控制,从 NPN 镇流器电路本身获得 1.5V 电压。我的理解对吗? 回复:使用 NPN 镇流器电路的 V15 内部调节器 你好@KarthikRaja 当跳线 (J31) 位置为 1-2 时,FS26_VCORE 域 [+1.5V] 直接路由至 V15_MCU域。当为 2-3 时,选择 NPN 外部镇流器晶体管为 V15_MCU 域供电。当打开时,V15_MCU 域断开并与本地外部电源隔离。 S32K3 微控制器硬件设计指南第 2.7 节(修订版 D4,硬件设计包)提供了有关 V15(大电流逻辑电源电压)的建议。查看此文档,它可能对您有用。 B.R. VaneB
View full article
基于 eRPC 的 S32K1xx 系列 MCU 双 MCU 同步解决方案 NXP S32K1xx 系列 MCU 广泛应用于汽车车身控制和许多通用汽车应用,同时针对一些有特殊要求的应用,例如需要比产品组合所能提供的更多外设实例(例如6x CAN-FD、6x LIN 或 4 I2C)类似中端 BCM 或 DCU,提出了一种板载双/多 MCU 同步解决方案作为替代解决方案,以扩展 S32K1xx MCU 外设/内存资源和 CPU 处理能力。 eRPC ( Embedded R emote P rocedure C all)是由 NXP 创建的远程过程调用 (RPC) 系统 ( https://github.com/EmbeddedRPC/erpc/ )。RPC 是一种使用示例本地函数调用来调用远程系统上的软件例程的机制。 eRPC software architectureeRPC软件架构 图 1.eRPC软件架构 在这个项目中,我们将eRPC协议移植到S32K1xx平台,并测试和了解了它的性能。提供带有详细用户指南(本文档)的开箱即用软件包,以简化和加速用户对 S32K1xx 上的 eRPC 的评估。 连接两块 S32K144EVB 板来演示 eRPC 协议的使用。一个作为客户端,另一个作为服务器。客户端主板发起eRPC请求,服务器主板响应请求并执行服务。 图 2. S32K144-EVB 上的 eRPC 任务工作流程 项目中演示了三种类型的 MCU 扩展: MCU IO扩展:设置LED; MCU外设扩展:CAN、LIN报文转发、LED亮度调节; CPU处理能力扩展:矩阵乘法和加法数学运算。 请参阅附件中的示例项目和用户指南以了解更多详细信息。 图 3. 用户指南目录 •注意:尽管我们使用 S32K144-EVB 上的示例项目对该解决方案进行了大量测试,但当它集成到实际应用项目中时,客户仍然有责任自行确保总体质量,所有示例代码和用户指南文档仅供客户参考。 如果您对此解决方案有任何疑问,请在此处发帖,我们可以进行公开讨论。 最良好的问候, Enwei Hu(胡恩伟) GPIS 系统应用工程师。
View full article
Video - MP3 http streaming on Android (iMX51 EVK) <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> http://www.youtube.com/watch?feature=player_embedded&v=-qezzzutBeo   由dai0ane于2010 年 8 月 4 日上传 在运行于 iMX51 EVK 的 Android 上对 mp3 文件进行 Http 流传输 类别: 科学技术 执照: 标准 YouTube 许可   概述
View full article
SSEC_1.001_15.08.2012.PEupd <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> セック 形容 SPHYコンポーネントのセキュリティドライバ コンポーネント SSEC.PEupd Dependencies ウェイト ライセンス ライセンス : オープンソース (LGPL) 著作権:(c)著作権Erich Styger、2012、無断複写・転載を禁じます。 これは、Processor Expertを使用してドライバーを実装するオープンソースソフトウェアです。 これはフリーソフトウェアであり、次の条件のライセンスポリシーの下で教育、研究、および商用開発に開放されています。 *これはフリーソフトウェアであり、保証はありません。 ※使用制限はありません。あなたは、あなたの責任の下で、個人、非営利、または商用製品のためにそれを使用、変更、および再配布することができます。 ※ソースコードの再配布には、上記の著作権表示を保持する必要があります。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> セック 形容 SPHYコンポーネントのセキュリティドライバ コンポーネント SSEC.PEupd Dependencies ウェイト ライセンス ライセンス : オープンソース (LGPL) 著作権:(c)著作権Erich Styger、2012、無断複写・転載を禁じます。 これは、Processor Expertを使用してドライバーを実装するオープンソースソフトウェアです。 これはフリーソフトウェアであり、次の条件のライセンスポリシーの下で教育、研究、および商用開発に開放されています。 *これはフリーソフトウェアであり、保証はありません。 ※使用制限はありません。あなたは、あなたの責任の下で、個人、非営利、または商用製品のためにそれを使用、変更、および再配布することができます。 ※ソースコードの再配布には、上記の著作権表示を保持する必要があります。 コンポーネント交換
View full article
在 i.MX6Q SabreLite 上设置 QNX 6.50 SP1 开发环境 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Host : Ubuntu 11.10 第 1 部分 QNX 6.50 和 QNX 6.50 SP1 的安装 1.1 创建一个帐户并激活,该帐户将被分配一个30天的评估序列号,然后www.qnx.com ,并下载 qnxsdp-6.5.0-201007091524-linux.bin,qnxsdp-6.5.0SP1-201206271006-linux.bin; 1.2执行“sudo apt-get install ia32-libs” 1.3执行“sudo -E /your/path/qnxsdp-6.5.0-201007091524-linux.bin”,按照提示进行操作,输入收到的评估序列号,即可完成QNX 6.50的安装; 1.4注销并重新登录,到目前为止输入“qconfig”将返回以下消息: ------------------------------------------------------------------------------------------------------------------------- alanz@alanz-VirtualBox:~$ qconfig QNX Installations 安装名称:QNX 软件开发平台 6.5.0 版本:6.5.0 基本目录:/opt/qnx650 QNX_HOST:/opt/qnx650/host/linux/x86 QNX_TARGET:/opt/qnx650/target/qnx6 ------------------------------------------------------------------------------------------------------------------------- 1.5 执行“sudo chmod a+rw /etc/qnx/license/licenses” 1.6执行“sudo -E /your/path/qnxsdp-6.5.0SP1-201206271006-linux.bin” 1.7 注销并重新登录,到目前为止输入“qconfig”将返回以下消息: ------------------------------------------------------------------------------------------------------------------------- alanz@alanz-VirtualBox:~$ qconfig QNX Installations 安装名称:QNX 软件开发平台 6.5.0 版本:6.5.0 基本目录:/opt/qnx650 QNX_HOST:/opt/qnx650/host/linux/x86 QNX_TARGET:/opt/qnx650/target/qnx6 附加包 软件包名称:QNX 软件开发平台 版本:6.5.0SP1 基础:QNX SDP 6.5.0 安装路径:/opt/qnx650 ------------------------------------------------------------------------------------------------------------------------- 1.8下载bsp-nto650-freescale-mx6q-sabrelite-trunk-201301161142.zip,并解压; 第 2 部分。构建 i.MX6Q SabreLite QNX BSP 2.1 编辑 envsetup.sh 如下: ------------------------------------------------------------------------------------------------------------------------- #!/bin/bash 导出 QNX_HOST=/opt/qnx650/host/linux/x86 导出 QNX_JAVAHOME=/opt/qnx650/_jvm 导出 QNX_TARGET=/opt/qnx650/target/qnx6 导出 QNX_CONFIGURATION=/etc/qnx 导出 ARCH=arm 导出 CPULIST=arm 导出 VARIANTLIST=v7 导出 MAKEFLAGS=-I/opt/qnx650/target/qnx6/usr/include 导出PATH = $ PATH:/ opt / qnx650 / host / linux / x86 / usr / bin 导出 QCONFIG=/opt/qnx650/target/qnx6/usr/include/qconfig.mk 导出BSP_ROOT_DIR=/home/alanz/Downloads/QNX_Software/i.MX6Q_SabreLite4QNX ------------------------------------------------------------------------------------------------------------------------- 注意:BSP_ROOT_DIR 是 BSP 解压目录。 2.2执行“make clean”,然后执行“make”。生成的文件将位于 images/ifs-mx6q-sabrelite.raw 下 第 3 部分。运行 i.MX6Q SabreLite QNX BSP 3.1 将 images/ifs-mx6q-sabrelite.raw 复制到 SD; 3.2修改u-boot环境如下: ------------------------------------------------------------------------------------------------------------------------- setenv loadaddr '0x10800000' setenv bootcmd_sd 'mmc dev 0; fatload mmc 0:1 ${loadaddr} ifs-mx6q-sabrelite.raw; go ${loadaddr}' setenv bootcmd'运行bootcmd_sd' saveenv 启动 ------------------------------------------------------------------------------------------------------------------------- 3.3将 i.MX6Q SabreLite 与串行和以太网连接,打开,在串行 shell 中输入“qconn”和“ifconfig”。 第 4 部分。使用 QNX Momentics IDE 进行调试 4.1 输入“qde”激活 Momentics IDE 4.2右上角有多个以“xxx 视角”命名的图标,用于根据当前选择的“视角”上下文切换主窗口。单击“QNX 系统信息视角”创建一个目标,进行连接和调试,如下图所示。 4.3切换到“C/C++ 视角”创建 QNX C/C++ 项目,如下图所示。 4.4切换到“调试视角”执行“调试配置”,如下图所示。 然后它可以在目标 i.MX6Q SabreLite 板上调试程序。 回复:在 i.MX6Q SabreLite 上设置 QNX 6.50 SP1 开发环境 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hi 我是 QNX 新手。我成功地为 sabresmart 移植了 QNX BSP,并且能够运行在 BSP 目录之外创建的 Hello world 应用程序。但是像 mknod、mkdir 这样的二进制文件无法运行,并且创建的应用程序被放入预构建中,并且构建文件已更新,但令人惊讶的是它在目标上不可用,我已在 project.bld 中单独添加并重新构建了 ifs 并再次构建了整个项目,这就是应用程序在目标上可用的方式。我将二进制文件添加到 /bin 中,但它保存在 /proc/boot 中,我该如何链接到 /bin? 我需要知道如何使用 BSP 中提供的 i2c 驱动程序来访问 sabresmart sd 板上的传感器?有示例代码吗? 如果我想为 i2c 或任何示例资源管理器编写新的资源管理器,我该如何插入 QNX 内核,以及程序是什么 为此,它应该被编译为静态/共享吗?请求共享一个示例资源管理器驱动程序和程序以插入 QNX。寻求建议。 回复:在 i.MX6Q SabreLite 上设置 QNX 6.50 SP1 开发环境 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 非常感谢这个有用的指南..只有一件事..你可能希望将第 1.8 节变成一个链接(?)作为这个东西的新手,我最初很难找到 bsp-nto650-freescale-mx6q-sabrelite-trunk-201301161142.zip 下载 foundry27:查看维基页面:FreescaleImx6QSabreLite
View full article
i.MX 6シリーズアプリケーションプロセッサの画像処理を深く掘り下げる <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> i.MX 6シリーズまたはi.MX5xアプリケーションプロセッサを介して、センサーから画像処理ユニット(IPU)を通ってディスプレイまで画像がどのように流れるかを学びます。イメージパスの設定と制御、および変更を有効にするためにBSPとUbootをタッチする必要がある場所を学習します。このセッションには、i.MX 6シリーズのアプリケーション、プロセッサ、宿題に基づくインストラクター主導のデモンストレーションが含まれます。 プレゼンター: OliverB 発表場所:FTF 2014 Session ID: FTF-CON-F0119 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> i.MX 6シリーズまたはi.MX5xアプリケーションプロセッサを介して、センサーから画像処理ユニット(IPU)を通ってディスプレイまで画像がどのように流れるかを学びます。イメージパスの設定と制御、および変更を有効にするためにBSPとUbootをタッチする必要がある場所を学習します。このセッションには、i.MX 6シリーズのアプリケーション、プロセッサ、宿題に基づくインストラクター主導のデモンストレーションが含まれます。 プレゼンター: オリバー・ブラウン 発表場所:FTF 2014 Session ID: FTF-CON-F0119 i.MXアプリケーション・プロセッサ
View full article