Multi Source Translation Content

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

Multi Source Translation Content

Discussions

Sort by:
SAF85xx - RTD - 暗号 - CryptoPrimitiveSupportContext こんにちは、 私たちのお客様であるデンソーは、Crypto モジュールで問題に遭遇しました。 問題 CriptoDriverObject には 2 つの非対称アルゴリズムが構成されています。1 つは保存と復元コンテキスト機能が有効 (プリミティブ サポート コンテキスト: True) であるため必須であり、もう 1 つは無効 (プリミティブ サポート コンテキスト: False) であるため必須です。これらの設定後、デンソーは Crypto_43_HSE_CheckForContextErrorDetOff() 関数からの 'CRYPTO_43_HSE_NO_DET_RET_NOK' 出力を監視しました。両方の構成が有効(プリミティブ サポート コンテキスト: True)に設定されている場合、Crypto_43_HSE_CheckForContextErrorDetOff() 関数からのエラー出力を監視できません。 質問1 RTD_CRYPTO_43_HSE_UM.pdf の 3.5 ドライバの制限には、次の説明のような 5 番目のポイントがあります。この説明は、デンソーから報告された問題に関連していますか?「コンフィギュレータツールを使用して暗号プリミティブに複数のアルゴリズムファミリ、セカンダリファミリ、またはモードを追加することは可能ですが、各フィールドへの最初のエントリのみが考慮され、検証され、生成された構成ファイルに影響を与えます。これは、CRYPTO_43_HSEドライバがプリミティブの選択された構成を検証できる唯一の方法であるためです。」 質問2 コンテキストの保存と復元機能が有効になっていて、コンテキストの保存と復元機能が必要ないCASEは、コンテキストの保存と復元機能が無効になっている場合と比較して、いくらかのオーバーヘッドが予想されます。NXP はオーバーヘッドを示すことができますか? 質問3 NXP にはドライバ制限の問題を修正する計画がありますか? SAF85XX 優先度: 中 SECURITY_CRYPTO Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext ピーターS まず最初にあなたが言及した制限について説明したいと思います。 つまり、CryptoPrimitiveAlgorithmFamily、Mode、SecondaryFamily の設定では、1 つ以上の要素を設定することは可能ですが、生成CANのは最初の要素の設定のみです。 下の画像を参照してください: あなたの問題について: 参照されている CryptoDriverObject が 1 つあり、CryptoPrimitives が 2 つあることを理解しています。CryptoPrimitiveAlgorithmFamily、Mode、および SecondaryFamily に複数の要素を構成した場合、それが明確ではありません。 各 CryptoPrimitiveAlgorithmFamily、Mode、および SecondaryFamily に 1 つの要素のみが構成されていると仮定します。 次に、関数Crypto_43_HSE_CheckForContextErrorDetOff() の現在の実装を示します。 - CRYPTO_43_HSE_NO_DET_RET_NOK -> 現在のジョブのモードが CONTEXT であり、次の場合: -キープリミティブに一致するジョブプリミティブ情報が見つかりません - またはジョブの入出力長がHSEから提供されたデータを保持するのに十分ではありません - CRYPTO_43_HSE_NO_DET_RET_OK -> 場合 -現在のジョブのモードはCONTEXTではありません - または、ジョブのプリミティブ情報がキープリミティブと一致するかどうかを調べ、ジョブのinput/outputLengthはHSEから提供されたデータを保持できます。 「Crypto_43_HSE_CheckForContextErrorDetOff() 関数からのエラー出力を監視できませんでした」について詳しく説明していただけますか?この関数の出力には2つの可能性があると思います。 CryptoPrimitiveAlgorithmFamily、Mode、SecondaryFamily のそれぞれに 1 つの要素のみを構成した場合、それは前述の制限とは関係ないことがわかります。 あなたが直面している状況をよりよく理解できるように、この機能の目的として、現在の構成ファイルとジョブ情報を共有していただけますか? Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext コメントありがとうございます。 ドライバ制限の説明内容と意味を理解しました。それでは、今回のドライバ制限はデンソー側の問題とは関係ありませんので、経緯をご説明の上、改めてお伺いしたいと思います。 [問題] デンソーは、2 つの CryptoDriverObject を非対称アルゴリズムとして構成しました。Vector DaVinci 構成では、Save&Restore Context 機能が有効 (Primitive サポート Context: True) になっている必要があり、もう 1 つは無効 (Primitive サポート Context: False) になっている必要があります。 デンソーはこれらの設定を使用して、Crypto_43_HSE_CheckForContextErrorDetOff() 関数からの「CRYPTO_43_HSE_NO_DET_RET_NOK」出力を監視しました。 両方の構成が有効(プリミティブ サポート コンテキスト: True)に設定されている場合、Crypto_43_HSE_CheckForContextErrorDetOff() 関数からの予想される出力として 'CRYPTO_43_HSE_NO_DET_RET_OK' を監視できます。 (Q1)コンテキストの保存と復元機能を有効にするには、すべてのオブジェクトを有効に設定する必要がありますか?コンテキストの保存と復元機能は各オブジェクトごとに設定できますか? (Q2)すべてを有効にする必要がある場合、コンテキストを保存するためのオーバーヘッドが予想されます。NXPのCANは、必要な Save&Restore Context 機能オブジェクトがない場合のオーバーヘッドを示すことができますか? Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext こんにちは@hiroshiHirashima 1. コンテキストの保存と復元は、すべてのプリミティブに対して有効にする必要はありません。この設定はプリミティブごとに独立しており、他のプリミティブには影響しません。 2. すべてのプリミティブでこのオプションが有効になっている場合のメモリ オーバーヘッドに関する情報は見つかりませんでした。 Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext こんにちは@hiroshiHirashima 前回の返信のとおり、現在の構成ファイルと、この関数 (CryptoPrimitiveSupportContext) の入力としてのジョブ情報を共有していただけますか。SO、直面している状況をよりよく理解できます。 Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext わかりました。それでは、コンテキストの保存と復元機能は個別に構成する必要があることが理解できました。 現在、デンソーはこの問題に直面しており、2 つのプリミティブのうち 1 つが有効でもう 1 つが無効になっているCASEに予期しない動作が発生したと報告しています。 動作を確認して再現してみることは可能でしょうか? Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext お客様が以下の添付ファイルを共有しました。添付ファイルをご覧ください。さらに質問や不明な点がある場合はお知らせください。 Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext @Hirashima ひろし ありがとう すぐに確認してフィードバックします Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext @Hirashima ひろし この問題の根本原因を見つけました。 設定では、同じサービス、アルゴリズム ファミリを持ちながら異なるprimitiveSupportContext を持つ 2 つのプリミティブを設定しました。 静的定数Crypto_43_HSE_PrimitiveType Crypto_43_HSE_aPrimitives_Crypto_43_Hse_Asym [ 2U ] = {     { CRYPTO_SIGNATUREVERIFY、 (uint8)CRYPTO_ALGOFAM_ECCNIST、 (uint8)CRYPTO_ALGOMODE_NOT_SET、 (uint8)CRYPTO_ALGOFAM_SHA2_256、 (ブール値) FALSE },     { CRYPTO_SIGNATUREVERIFY、 (uint8)CRYPTO_ALGOFAM_ECCNIST、 (uint8)CRYPTO_ALGOMODE_NOT_SET、 (uint8)CRYPTO_ALGOFAM_SHA2_256、 (ブール値) TRUE    } };   機能の論理において Crypto_43_HSE_CheckForContextErrorDetOff() は、pJob と構成されたプリミティブをマップする最初のプリミティブのみをチェックします。この場合はCrypto_43_HSE_aPrimitives_Crypto_43_Hse_Asym [0] このプリミティブは primitiveSupportContext = FALSE であるため、NOK を返し、2 番目のプリミティブはチェックされません。 Autosar_SWS_Crypto 仕様を確認しましたが、プリミティブを一意に設定する必要がある記述が見つかりません。これは、Crypto ドライバのバグのようです。 回避策として、primitiveSupportContext = FALSEの最初のプリミティブを削除してください。 修正のために開発チームにチケットhttps://jira.sw.nxp.com/browse/FWCRYPTO-607を発行しました。 Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext @Hirashima ひろし 私の提案は、 Crypto_43_HSE_aPrimitives_Crypto_43_Hse_Asym [0]を削除するべきだということです。 そして、リストCrypto_43_HSE_aPrimitives_Crypto_43_Hse_Asym は 1 つのプリミティブのみを保持します。 現在、このエラーを回避するために、お客様は両方の構成を「TRUE」に設定しています。 -> なぜお客様は同じ構成の 2 つのプリミティブを保持しているのでしょうか? Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext 調査していただきありがとうございます。" 取り除く 回避策についてちょっと質問があります。「 primitiveSupportContext = FALSE 」が削除された場合、パラメータは「 TRUE 」に設定されますか?現在、お客様はこのエラーを回避するために、両方の構成を「TRUE」に設定しています。 Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext @Hirashima ひろし 正解です。 そして、それを作る。EB Tresos で CryptoPrimitiveRef を 1 つだけ保持するように設定することをお勧めします。 次のようになります: Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext 私の理解を添付しました(左:お客様構成 / 右:回避策)。添付のスクリーンショットを確認して、コメントがあればお知らせください。 Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext Crypto_43_HSE_aPrimitives_Crypto_43_Hse_Asym[0]が参照される理由の説明を追加していただけますか? 添付のスクリーンショットのようにソース コードを見ると、u32ObjectIdx = 1 が設定されていますが、u32ObjectIdx はどこかで u32ObjectIdx = 0 として上書きされていますか? Re: SAF85xx - RTD - Crypto - CryptoPrimitiveSupportContext 私の質問は無視してください。
View full article
S32N55: Host reason in gPTP frames Hi team, The customer encountered an issue. They implemented the gPTP protocol themselves and found that when receiving frames, the gPTP frame’s host reason is 0. When the host reason is 0, the timestamp of this frame is not saved by RTD drivers. In NXP’s gPTP software, the received frame’s host reason is 8 (NETC_ETH_IP_HOSTREASON_SW_PTP). I’d like to ask: how can we make the host reason of the received frame be 8? Best Regards, Bridget GPTP_STACK Re: S32N55: Host reason in gPTP frames Hi team, Could you please answer this question? Thank you. Re: S32N55: Host reason in gPTP frames Hi @Bridget , there is necessary to enable timestamping on each port of the NETC switch where you want to receive timestamp information. We do not have other details from you of what tools/versions customer use - so we can provide you just with this general information. In our case where we use Tresos and RTD it is directly done in each port configuration of switch plugin. best regards, Tomas Re: S32N55: Host reason in gPTP frames Hi Bridget, please follow UM for EthSwt from RTD - the parameter should be  For more details please consult with RTD. I would also suggest to check our gPTP example for N5 - but in your first message you wrote, that customer implemented own the gPTP - so probably you do not have our example. best regards, Tomas Re: S32N55: Host reason in gPTP frames Hi Tomas, The customer use the SW32N_RTD_R21-11_1.8.0_CD05. They want to receive the gPTP frames in RTU and get the receive timestamps. They can receive the frames after enabling broadcast frame reception. Timestamp functionality is also enabled. But they find that to obtain the reception timestamp, the frame's host reason needs to be NETC_ETH_IP_HOSTREASON_SW_PTP (this macro equals 8), as shown in the code in the screenshot below. However,  their Rx BD has a host reason of 0. Could you please advise how to configure it so that the host reason becomes 8? Best Regards, Bridget Re: S32N55: Host reason in gPTP frames I already answered the two questions which you have - please check.
View full article
在 QorIQ Layerscape ARMv8 平台上移植 OpenWrt/LEDE <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> OpenWrt 是一个高度可扩展的 GNU/Linux 发行版,适用于嵌入式设备(通常是无线路由器),OpenWrt 从一开始就构建为功能齐全、易于修改的路由器操作系统。LEDE基于OpenWrt,面向广泛的无线SOHO路由器和非网络设备。本文档介绍如何在QorIQ LS1012/LS1043平台上移植和运行OpenWrt/LEDE。 1. 在 QorIQ Layerscape 平台上移植 OpenWrt/LEDE 源代码 2. 部署 OpenWrt/LEDE 镜像来启动系统 3. 验证 LEDE 系统中的 VLAN 接口和 PFE QorIQ LS1设备 回复:在 QorIQ Layerscape ARMv8 平台上移植 OpenWrt/LEDE <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好, 您能否指出我需要做哪些更改才能在 ls1012a 的 Freedom 参考板上部署 openwrt? 在此先感谢您的帮助, 回复:在 QorIQ Layerscape ARMv8 平台上移植 OpenWrt/LEDE <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 王一平您好, 我正在研究 NXP 主板型号:LS1012A RDB 主板,RevB。我正在使用 yocto 源 LS1012A-SDK-SOURCE-20161230-yocto.iso。 我能够从 SD 卡刷新并启动 yocto kernel.itb 和 rootfs。但是使用默认的 yocto 构建图像,以太网接口不起作用。 因此,我按照“Porting Openwrt on QorIQ Layerscape ARMv8 Platforms.pdf”中的步骤尝试了 openWrt。并面临与 miguel lopez 解释的同样的问题。“Boot Loader”下没有选项可供选择,没有.bin构建后生成的文件。 需要以下澄清.. 1. 我们需要应用您在第一篇帖子中附加的补丁文件吗? 2. 这里使用的 u-boot 和内核版本是什么?在 LS1012ARDB 上启用以太网接口的内核配置是什么? 3.如何生成启动LS1012ARDB板所需的uboot、内核和其他映像文件。 回复:在 QorIQ Layerscape ARMv8 平台上移植 OpenWrt/LEDE <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好, miguel lopez , 抱歉,我没有注意到您之前的评论,我之前没有关注这个页面。 我记得所有针对LS1012/LS1043 的 NXP 补丁都已经被 LEDE 社区接受了。最新版本是 v8,在这个版本中,固件rcw/uboot-32b/ppfe 应该首先上传到 github。 构建的flash镜像应该包含rcw/uboot/fman/ppfe/dtb/kernel/rfs,在地址0处对该flash镜像进行编程后,就可以设置系统了。 我去年已经删除了我的 LEDE 工作区。 我需要克隆最新的LEDE源代码来为您做验证,稍后会给您反馈。 谢谢! 依萍
View full article
DES-N2017 Mentor Graphics:i.MX 6 多核 SoC 设计的虚拟分析 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 通过精确建模 i.MX 6,可以在虚拟平台上运行编译后的代码,从而可以在典型的项目设计工作流程中节省大量时间,并更好地了解可用的设计空间。本文研究了一种多核 Linux 设计,其中托管了一个用于跟踪海床深度的应用程序,该应用程序在 X86 主机上实现。该设计以近乎实时的方式进行模拟,并且在 i.MX 6 和托管软件本机代码应用程序上都可以获得详细的调试数据。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 通过精确建模 i.MX 6,可以在虚拟平台上运行编译后的代码,从而可以在典型的项目设计工作流程中节省大量时间,并更好地了解可用的设计空间。本文研究了一种多核 Linux 设计,其中托管了一个用于跟踪海床深度的应用程序,该应用程序在 X86 主机上实现。该设计以近乎实时的方式进行模拟,并且在 i.MX 6 和托管软件本机代码应用程序上都可以获得详细的调试数据。 设计 | 软件与服务
View full article
使用 OpenSDA (miniUSB) 端口对 TWR-KW2x 板进行编程 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> TWR-KW2x 板的 OpenSDA 使用 MSD(大容量存储设备)应用程序进行编程,这就是您看到它被列为磁盘驱动器的原因。 使用该固件,您可以拖放 .bin和 .srec文件到电路板上,这样就会闪烁,但您将无法调试。 为了使电路板支持下载/调试功能,OpenSDA 的固件必须是调试应用程序(“DEBUG-APP_Pemicro_v108.SDA”)。 但是PeMicro发布了一个新的固件,它在同一固件中支持这两种功能。您还可以在 https://www.pemicro.com/opensda/ 上找到最新的OpenSDA固件。 例如:支持TWR-KW24D512的调试和MSD功能的固件:“MSD-DEBUG-TWR-MKW24D512_Pemicro_v114.SDA”。 您可以找到附件中的文档,其中包含修改 TWR 板上的 OpenSDA 固件的说明,基本上您必须: 1. 拔掉电路板 2. 在 J30 中插入跳线,将设备置于引导加载程序模式 3. 插入开发板(Mini-USB) 4. 设备将被枚举为“驱动器磁盘”,但现在带有“引导加载程序”标签 5. 将.SDA固件拖放到驱动器(MSD-DEBUG-TWR-MKW24D512_Pemicro_v114.SDA) 6.拔掉电路板 7. 移除跳线 8. 插入开发板(Mini-USB) 现在您应该看到该板被枚举为“OpenSDA - CDC 串行端口”(允许您下载/调试)并且还列为磁盘驱动器(允许您将图像拖放到板上)。 注1:如果无法识别“OpenSDA - CDC 串行端口”驱动程序,您可以在 TWR 的磁盘驱动器 (MSD) 中找到该驱动程序 注2:跳线必须位于 J29 处才能进行调试 希望这些信息对您有帮助。 您可以在www.freescale.com/TWR-KW2x上找到更多信息--> 下载 -> 板级支持包和 BeeKit 无线连接工具包 Kinetis W系列MCU 回复:使用 OpenSDA(miniUSB)端口对 TWR-KW2x 板进行编程 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 我们也可以重新编程以使用 OpenSDAv2 吗: https://community.freescale.com/docs/DOC-100720#comment-12723 其中有一句话是,PE Micro 引导加载程序无法被擦除,并且 JTAG 被禁用。如果是这样(并且希望仅适用于较旧的自由板),为什么 TWR-KW2x 有一个用于 k20(OpenSDA)的 10 针 JTAG?
View full article
飞思卡尔 MQX ™ 4.0.2发布 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 全新 Freescale MQX ™ 4.0.2 版本现已在www.freescale.com/MQX上发布 ·         可用文件                    # 名称 描述 1 FSL_MQX_发布说明_4_0_2 飞思卡尔 MQX ™ RTOS 4.0.2发行说明 2 FSL_MQX__FFS_发布说明_4_0_2 飞思卡尔 MQX ™ FFS 软件包 4.0.2发行说明 3 FSL_MQX_ATHEROS_发布说明_4_0_2 飞思卡尔 MQX ™ Atheros Wifi 软件包 4.0.2发行说明 4 飞思卡尔 MQX RTOS 4.0.2Atheros Wifi 套餐 适用于 MQX ™ 4.0.2 的 Atheros Wifi 解决方案 5 飞思卡尔 MQX RTOS 4.0.2FFS 包 MQX ™ 4.0.2 的 NAND 闪存文件系统解决方案 6 飞思卡尔 MQX RTOS 4.0.2 MQX ™源代码。包括 RTOS、文件系统、TCP/IP 和 USB 主机/设备软件堆栈。不需要安装 MQX ™ 4.0。 ·         有什么新鲜事? 哦   AutoEVB Vybrid A5 和 M4 板支持包 §  支持双核 Vybrid 处理器的 CortexA5 和 CortexM 内核 §  支持标准IO驱动程序集 哦   Vybrid BSP扩展 §  RTC 和 NAND 闪存驱动程序移植到 Vybrid 平台 §  通过处理 4KB 内存块扩展 MMU 支持 §  推出新的 QuadSPI 驱动程序 §  已启用 CortexM4 启动选项。 §  从 QuadSPI 闪存直接执行代码 – 提供 XIP。Vybrid QuadSPI 引导加载程序中演示的功能。 推出了 eDMA 驱动程序的第一个版本——该驱动程序是实验性的,将在下一个 MQX 版本中进一步扩展。未提供文档。 哦   Kinetis SPI 驱动程序已更新为使用 eDMA 驱动程序。 哦   硬件计时器驱动程序支持扩展到 Systick 和 GPT HW 模块。Kinetis 和 Vybrid BSP 已更新,利用硬件计时器来提供 MQX 滴答时间。 哦   ENET 驱动程序中启用了 RTCS 硬件校验和加速(用于 TCP 和 UDP);好处是增加了吞吐量并减少了处理器负载。对于 K60N512 平台,此选项默认启用。 哦   HTTP 服务器经过重新设计,可提供更快、更强大的解决方案。服务器 API 经过简化和更改,以符合 RTCS 标准。 哦   作为 RTCS 网络套件的一部分,提供了新的 SMTP 客户端功能。客户端提供了一个简单的 API 来处理电子邮件。新的 RTCS Shell 命令“电子邮件”展示了其功能。 哦   此版本中删除了 security_email、security_webserver 和 security_telnet 演示应用程序。RTCS shell 和 httpsrv 示例应用程序中演示了网络功能。 哦   多核通信(MCC)库更新至1.1版本。修复了 mcc_send() 函数中缓存宏的错误使用。 ·         已知问题 哦   有关已知问题和限制,请参阅发行说明。
View full article
在 KDS 中使用 FRDM-KL25 板上的加速度计 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> KDS中的加速度计   说明:   这是在 KDS 中使用 FRDM-KL25Z128M4 板上的加速度计制作的一个小项目。 该程序将电路板的 3D 位置输出到终端,例如 9600 波特的 Tera Term。 还使用了 PWM,其强度取决于与零位置的偏移。 红色 LED 强度随 X 偏移而增加。 蓝色 LED 强度随 Y 偏移而增加。 只需按任意键即可开始数据输出。   代码部分取自http://mcuoneclipse.com/2012/09/21/tutorial-accelerating-the-kl25z-freedom-board/   问题:   当棋盘向角落倾斜时,似乎存在“死区”。 处于“死区”时,终端不会输出任何内容。   即使板子是平的,LED 也会持续闪烁。 这是因为即使电路板处于静止状态,加速度计偶尔也会输出 1。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> KDS中的加速度计   说明:   这是在 KDS 中使用 FRDM-KL25Z128M4 板上的加速度计制作的一个小项目。 该程序将电路板的 3D 位置输出到终端,例如 9600 波特的 Tera Term。 还使用了 PWM,其强度取决于与零位置的偏移。 红色 LED 强度随 X 偏移而增加。 蓝色 LED 强度随 Y 偏移而增加。 只需按任意键即可开始数据输出。   代码部分取自http://mcuoneclipse.com/2012/09/21/tutorial-accelerating-the-kl25z-freedom-board/   问题:   当棋盘向角落倾斜时,似乎存在“死区”。 处于“死区”时,终端不会输出任何内容。   即使板子是平的,LED 也会持续闪烁。 这是因为即使电路板处于静止状态,加速度计偶尔也会输出 1。 概述
View full article
实践研讨会:学习如何使用 MCUXpresso 软件和工具快速启动和运行 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 本次实践课程介绍了 MCUXpresso 工具套件(IDE、SDK、配置工具),并向用户展示如何使用基于 Arm ® Cortex ® -M 内核的数千个 Kinetis 和 LPC MCU 快速开始开发。使用 Kinetis、LPC 或 i.MX RT 开发硬件,与会者将构建自定义 SDK、配置引脚和时钟设置、生成项目、导入和调试应用程序。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 本次实践课程介绍了 MCUXpresso 工具套件(IDE、SDK、配置工具),并向用户展示如何使用基于 Arm ® Cortex ® -M 内核的数千个 Kinetis 和 LPC MCU 快速开始开发。使用 Kinetis、LPC 或 i.MX RT 开发硬件,与会者将构建自定义 SDK、配置引脚和时钟设置、生成项目、导入和调试应用程序。 i.MX 应用处理器 Kinetis Cortex ® -M 微控制器 LPC微控制器 软件和工具
View full article
HOWTO: S32DS for Vision 2018.R1 から S32DS 3.x へのアプリケーション プロジェクトの移行 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 以前のバージョンの S32 Design Studio で作成されたプロジェクトを使用できますが、ビルドを変更する必要があります 構成設定とプロジェクト構造。 ISPアプリケーションプロジェクトの移行 次に、ISP アプリケーション プロジェクトを構成する方法について説明します。 [ファイル] > [インポート...] をクリックします。>一般] > [既存のプロジェクト] を [ワークスペース] に移動し、[次へ] をクリックします。 [参照] をクリックしてプロジェクトの場所を参照し、[OK] をクリックして [プロジェクトをワークスペースにコピー] オプションを選択し、[完了] をクリックします。 ビルド構成設定からすべての VSDK 固有の設定を削除します。 「Project Explorer」ビューでプロジェクトを右クリックし、コンテキスト・メニューの「Properties」をクリックします。 C/C++ ビルド コンフィギュレーション>を開き、A53 ビルド構成の次の設定を削除します。 標準 S32DS C コンパイラ/標準 S32DS C++ コンパイラ > プリプロセッサ: [定義済みシンボル ] リストから VSDK_UMAT_USE_OPENCV を削除します。 標準 S32DS C コンパイラ/標準 S32DS C++ コンパイラ > インクルード: [インクルード パス] リストからすべての${S32DS_VSDK_DIR}パスを削除します。 標準 S32DS C++ リンカ > ライブラリ: ライブラリ および ライブラリ検索パス の一覧からすべてのライブラリを削除します。 プロジェクトのプロパティの左ペインで [SDK ] をクリックし、 VSDK_MODULE_WIN を A53 ビルド構成にアタッチします。 typedefs.h を削除します。A53_incフォルダから。 APEX2アプリケーションプロジェクトの移行 APEX2アプリケーションプロジェクトの設定方法をご紹介します。 [ファイル] > [インポート...] をクリックします。>一般] > [既存のプロジェクト] を [ワークスペース] に移動し、[次へ] をクリックします。 [参照] をクリックしてプロジェクトの場所を参照し、[OK] をクリックして [プロジェクトをワークスペースにコピー] オプションを選択し、[完了] をクリックします。 一部のビルド構成設定を削除します。 「Project Explorer」ビューでプロジェクトを右クリックし、コンテキスト・メニューの「Properties」をクリックします。 C/C++ ビルド コンフィギュレーション > を開き、A53 および TEST_A53 ビルド構成の次の設定を削除します。 標準 S32DS C コンパイラ/標準 S32DS C++ コンパイラ > プリプロセッサ: [定義済みシンボル ] と [未定義シンボル ] リストをクリアします。 標準 S32DS C コンパイラ/標準 S32DS C++ コンパイラ > インクルー ド:[インクルード${S32DS_VSDK_DIR} パス] リストからすべての パスを削除します。 標準 S32DS C++ リンカ > ライブラリ: ライブラリ と ライブラリの検索パス の一覧をクリアします。 APU ビルド設定の次の設定を削除します。 APU C コンパイラ/APU C++ コンパイラ > プリプロセッサ: [定義済みシンボル ] リストをクリアします。 APU C コンパイラ/APU C++ コンパイラ > インクルー ド: インクルード${S32DS_VSDK_DIR} パス リストからすべての パスを削除し、 インクルード ファイル リストをクリアします。 APU C++リンカ > 一般 : スクリプトファイルを削除します。 APU C++ リンカ > ライブラリ: ライブラリ と ライブラリの検索パス のリストをクリアします。 EMU と TEST_EMU ビルド構成の次の設定を削除します。 クロス G++ コンパイラ > プリプロセッサ: [定義済みシンボル ] リストをクリアします。 クロス G++ コンパイラ > インクルード: ${ProjDirPath}パスを除くすべてのパスをインクルード パス リストから削除します。 G++ リンカ > ライブラリ間: ライブラリ と ライブラリの検索パス リストをクリアします。 Project_Settings/Scripts/gen_apu_load.tcl ファイルを、新しい S32 Design Studio で作成された任意の APEX2 プロジェクトからのコピーに置き換えます。 typedefs.h を削除します。A53_incフォルダから、S32V_APU.lcfはProject_Settings/Linker_Filesから。 「Project Explorer」ビューでプロジェクトを右クリックし、コンテキスト・メニューの「SDK」をクリックします。すべてのビルド構成に VSDK_MODULE_WIN アタッチします。 更新された Visual Graph Tools プロジェクトからソース コードを出力します。 APEX2エミュレータを使用してアプリケーションをデバッグする場合は、デバッグ構成設定を更新します。 Project Explorer ビューでプロジェクトを右クリックし、コンテキスト メニューの [Debug As and Debug Configurations...] をクリックします>。 左側のウィンドウで、[C/C++ アプリケーション] の下の構成を開きます。 右側のウィンドウで、[ 環境 ] タブに移動します。PATH 値を編集します。 ${S32DS_GCC_TOOLCHAIN_DIR};${S32DS_OPENCV_DIR}/x86/mingw/bin  次に、[ ネイティブ環境を指定した環境に置き換える ] チェック ボックスをオンにします。 [デバッガー] タブに移動し、GDB デバッガーの場所を更新します。 ${S32DS_GCC_TOOLCHAIN_DIR}/gdb.exe APEX2 Graph Projectの移行 APEX2グラフ図を更新する方法をご紹介します。 [ファイル] > [インポート...] をクリックします。>一般] > [既存のプロジェクト] を [ワークスペース] に移動し、[次へ] をクリックします。 [参照] をクリックしてプロジェクトの場所を参照し、[OK] をクリックして [プロジェクトをワークスペースにコピー] オプションを選択し、[完了] をクリックします。 グラフ図を開きます。 [パレット] ペインで、[カーネルの追加] をドラッグしてキャンバスにドロップします。 古いプロジェクトで使用されていたカーネルを選択します。検索ボックスにカーネル名を入力し始めるか、フィルタリングボタンを使用してカーネルの場所を指定できます。[OK] をクリックします。 古いカーネルを削除し、 入力 要素と 出力 要素を新しく追加したカーネルのそれぞれのポートに接続します。 図の各カーネルについて、5 から 7 の手順を繰り返します。 キャンバスを右クリックし、コンテキスト メニューの [ダイアグラムの検証 ] をクリックします。検証の問題が見つかった場合、[ 問題] ビューにエラーまたは警告が表示されます。エラーの原因となった要素は、図上に赤い十字アイコンでマークされているため、簡単に見つけて修正できます。 APEX2プログラムの移行プロジェクト APEX2プログラム図のアップデート方法をご紹介します。 [ファイル] > [インポート...] をクリックします。>一般] > [既存のプロジェクト] を [ワークスペース] に移動し、[次へ] をクリックします。 [参照] をクリックしてプロジェクトの場所を参照し、[OK] をクリックして [プロジェクトをワークスペースにコピー] オプションを選択し、[完了] をクリックします。 プログラム図を開きます。 [パレット] ペインで、[Graph からプロセス] をドラッグし、キャンバスにドロップします。 更新されたグラフを選択します。[OK] をクリックします。 古いプロセスを削除し、 インレット 要素と アウトレット 要素を新しく追加したプロセスのそれぞれのポートに接続します。 図上の各プロセスについて、5〜7の手順を繰り返します。 キャンバスを右クリックし、コンテキスト メニューの [ダイアグラムの検証 ] をクリックします。検証の問題が見つかった場合、[ 問題] ビューにエラーまたは警告が表示されます。エラーの原因となった要素は、図上に赤い十字アイコンでマークされているため、簡単に見つけて修正できます。
View full article
采用 GaN 技术,适用于 1GHz 以上蜂窝频段的高功率射频应用 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 本次会议将介绍恩智浦针对蜂窝频段高功率应用的差异化GaN技术,包括全系列蜂窝射频功率产品。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 本次会议将介绍恩智浦针对蜂窝频段高功率应用的差异化GaN技术,包括全系列蜂窝射频功率产品。
View full article
eIQサンプルアプリ - TfLite Lab 4[1] <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> この ラボ 4 では、 eIQ ソフトウェア用の推論エンジン を使用して、i.MX8 ボード上の TensorFlow Lite アプリケーション デモを開始する方法について説明します。 eIQサンプルアプリ - 概要 eIQサンプルアプリ - はじめに Code Auroraで入手可能なソースコードを取得します。 TensorFlow Lite MobileFaceNets MIPI/USBカメラ OpenCVを使用した顔検出   このアプリケーションデモでは、Haar Feature based Cascade Classifiers を使用してリアルタイムの顔検出を行います。XML という名前の顔用の事前トレーニング済みの Haar Feature ベースのカスケード分類子は、OpenCV に既に含まれています。face の XML ファイルは opencv/data/haarcascades/ フォルダに保存されています。 また、コードauroraにも載せられています。詳細については、「Haar Cascades を使用した顔検出」をお読みください。 MobileFaceNets の TensorFlow Lite 実装 MobileFaceNets は、ホスト PC でより高いパフォーマンスを得るために、より小さなバッチ サイズと入力サイズで再トレーニングされます。このデモでは、トレーニング済みのモデルがソース ファイルとして読み込まれます。 ボードの設定 ステップ1 - eIQサンプルアプリからデモをダウンロードし、/ opt / tfliteフォルダに配置します。次に、srcフォルダを入力します。 root@imx8mmevk:~# cd /opt/tflite/examples-tflite/1-example/src/ root@imx8mmevk:/opt/tflite/examples-tflite/1-example/src# このフォルダには、次のファイルが含まれている必要があります。 . ├── face_detect_helpers.cpp ├── face_detect_helpers.h ├── face_detect_helpers_impl.h ├── face_recognition.cpp ├── face_recognition.h ├── haarcascade_frontalface_alt.xml ├── メイクファイル ├── MFN.H ├── プロファイリング.h └── スレッドプール.h ステップ2 - ボード上のソースコードをコンパイルします。 root@imx8mmevk:/opt/tflite/examples-tflite/1-example/src# make ステップ 3 - デモを実行します。 root@imx8mmevk:/opt/tflite/examples-tflite/1-example/src# ./FaceRecognition-c 0 -h 0.85 注:-cは、カメラインデックスを指定するために使用されます。「0」は、MIPI/USBカメラが/dev/video0にマウントされていることを意味します。-h は予測スコアのしきい値です。 ステップ 4 - 顔データ セットに新しい人物を追加します。 デモの実行中は、 最大 1 つの 顔がリアルタイムで検出されます。顔が検出されたら、GUIの右側にあるキーボードをクリックして、新しい人の名前を入力できます。次に、[新しい人物を追加] をクリックして、顔をデータ セットに追加します。 簡単に言うと、 1.顔を検出します。 2. 新しい人の名前を入力します。 3. 「新しいユーザーを追加」をクリックします。 注:新しいフェイスが追加されると、現在のディレクトリに「data」という名前のフォルダが作成されます。データセットから新しい顔を削除する場合は、「データ」で削除してください。
View full article
LS1012A 平台上的数据包转发引擎 (PFE) 以太网端口设置 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> LS1012A集成硬件数据包转发引擎,提供高性能以太网接口。本文档介绍了PFE硬件和软件分解及数据流程,设置两个PFE以太网端口以实现通过PFE转发以太网数据包,如何修改PFE驱动程序和dts文件以在LS1012A定制板上设置单个PFE以太网端口。 PFE硬件结构 PFE 软件分解和数据流 设置两个 PFE 以太网端口,实现以太网数据包转发 在 LS1012A 定制板上设置单个 PFE 以太网端口 QorIQ LS1设备
View full article
FRDM-STBC-AGM04 - 裸机示例项目 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> **************************************************************************************************************** * 此代码是为 NXP FRDM-KL25Z + FRDM-STBC-AGM04 板编写的 *并演示如何读取加速度(MMA8652FC)、磁场(MAG3110) * 和角速率(FXAS21002C)数据使用中断技术。 * * 默认情况下,所有传感器均通过 I2C 控制。 * * I2C从机地址: * MMA8652FC-> 0x1D * MAG3110-> 0x0E * FXAS21002C -> 0x20 * * J7 选择 MCU I2C 总线作为 SDA: * 2:3 -> I2C_SDA1 (PTC2) * * J8 选择 MCU I2C 总线作为 SCL: * 2:3 -> I2C_SCL1 (PTC1) * * INT1_8652 连接到 PTD4,INT1_MAG3110 连接到 PTA5 引脚和 * INT1_21002 连接到 PTA4 引脚。 ***************************************************************************************************** 原始附件已移至: FRDM-KL25Z-FRDM-STBC-AGM04-Basic-read-using-I2C-and-interrupts.rar
View full article
NXP IoTセキュリティステーションF <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> NXPのセキュリティソリューションとユースケース。安全なIoT接続を迅速かつ簡単に導入する方法です。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> NXPのセキュリティソリューションとユースケース。安全なIoT接続を迅速かつ簡単に導入する方法です。 識別とセキュリティ
View full article
MagniV PLLカリキュレータ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> この計算機は、S12ZVL、S12ZVC、S12ZVMB、S12ZVM、S12ZVH、S12VRなどのMagniVデバイス用に作成され、ジャンクション温度Tj <= 150°Cで認定されています。 PLL レジスタの設定は、SYNR、REVDIV、および POSTDIV として示されています。これらのレジスタの説明は、各デバイスのリファレンスマニュアルに記載されています。 オシレーターとバスのクロック周波数は、リストから選択することも、手動で書き込むこともできます。値は「Enter」または「Calculate」ボタンで計算されます。 MagniVPLLCalc.exeがついています。
View full article
センサー_マルチマーケット_may16.pdf <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
View full article
CodeWarrior 10 Command Line Interface – usage and examples Inside {CW10 install folder}\eclipse there is ecd.exe which is used to run build projects from command line. this article focuses on ecd.exe usage with examples. Especially How to use ecd.exe command to build, generateMakefiles,make and reference a project. General
View full article
[S32K3工具部分]:如何使用IAR编译器或IAR项目来编译S32K3 MCAL项目 [S32K3 tool part]:如何使用 IAR 编译器或 IAR 项目来编译 MCAL 项目 1. 摘要     通过定期观察,我发现仍有许多客户在使用MCAL+IAR等平台,包括使用IAR编译器和直接使用IAR IDE的客户。事实上,我在早年从事工业MCU开发工作时,也特别青睐IAR IDE——其编译速度快、效率高,且生成代码的体积小。但是,当我接触汽车MCU后,我发现其普及率并不高,我也注意到部分客户在将MCAL导入IAR时遇到了各种问题。因此,我将直接撰写一篇工具文章,用于介绍如何使用IAR编译器或IAR IDE项目将恩智浦S32K MCAL与EB tresos MCAL结合编译。 本文结合 S32K344 和 RTD600,说明了如何使用 IAR 编译器编译 MCAL 项目,以及如何将 MCAL 直接导入 IAR IDE 项目 2. IAR 编译器与 S32K3 RTD MCAL 项目 2.1 S32K3 硬件和软件 SW32K3_S32M27x_RTD_R21-11_6.0.0 S32K3X4-EVB 基于 Dio_TS_T40D34M60I0R0 IAR:IAR EW for Arm 9.70.1 EB tresos 29.0.0 2.2 使用IAR编译器CMD方法编译MCAL项目步骤 2.2.1 复制一个 RTD MCAL 新项目 打开路径 C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins 复制Dio_TS_T40D34M60I0R0,并将其重命名为Dio_TS_T40D34M60I0R0_IAR kerryzhou_0-1759479138916.png 图1 2.2.2 编译EB tresos项目 使用EB tresos工具打开以下EB tresos项目: C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Dio_TS_T40D34M60I0R0_IAR\examples\EBT\S32K3XX\Dio_Example_S32K344\TresosProject 生成代码: kerryzhou_1-1759479139017.png 图2 2.2.3 Vscode 打开 Dio_TS_T40D34M60I0R0_IAR 项目 使用 VS Code 打开以下路径文件夹: C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Dio_TS_T40D34M60I0R0_IAR\examples\EBT\S32K3XX\Dio_Example_S32K344 当然,您也可以使用命令行直接打开此文件夹路径,只要确保其与mk和makefile scr位于同一层路径中即可 kerryzhou_2-1759479139074.png 图3 2.2.4   修改Project_parameters.mk 主要修改以下几点: TOOLCHAIN = iar IAR_DIR = C:/IAR/ewarm-9.70.1 TRESOS_DIR = C:/EB/tresos_29_0_0 PLUGINS_DIR = C:/NXP/SW32K3_S32M27x_RTD_R21-11_6.0.0/eclipse/plugins IAR的路径必须与所使用的IAR软件版本一致,以确保能够找到对应的IAR编译器。 kerryzhou_3-1759479139116.png 图4 2.2.5   修改Check_build_params.mk 将以下内容添加到 check_build_params.mk 中: else ifeq ($(TOOLCHAIN),iar) ifeq ("$(wildcard $(IAR_DIR)/arm/bin/iccarm.exe)","") $(error Invalid path set to the IAR compiler. \ The provided path: from project_parameters.mk IAR_DIR=$(IAR_DIR) is invalid!) Endif kerryzhou_4-1759479139165.png 图5 2.2.6        修改Makefile Makefile 需要进行以下 5 点修改: (1) 编译器变更 ifeq (${TOOLCHAIN},iar) CC := $(IAR_DIR)/arm/bin/iccarm.exe LD := $(IAR_DIR)/arm/bin/ilinkarm.exe AS := $(IAR_DIR)/arm/bin/iasmarm.exe # Intel Hexadecimal Flash image tool GENHEX := $(IAR_DIR)/arm/bin/ielftool.exe HEX_OPTS := --ihex OUT_OPTS := -o endif kerryzhou_5-1759479139311.png 图6 (2) SRC_DIRS 添加 TOOLCHAIN SRC_DIRS += $(foreach mod,$(MCAL_MODULE_LIST),$(PLUGINS_DIR)/$(mod)_$(AR_PKG_NAME)/src) \ $(foreach mod,$(MCAL_MODULE_LIST_ADDON),$(PLUGINS_DIR_ADDON)/$(mod)_$(AR_PKG_NAME_ADDON)/src) \ $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/startup/src \ $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/startup/src/m7 \ $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/startup/src/m7/$(TOOLCHAIN) kerryzhou_6-1759479139439.png 图7 (3)链接器文件修改 ifeq ($(LOAD_TO),flash) ifeq (${TOOLCHAIN},iar) LINKER_DEF:= $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/build_files/${TOOLCHAIN}/linker_flash_$(DERIVATIVE_LOWER).icf else LINKER_DEF:= $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/build_files/$(TOOLCHAIN)/linker_flash_$(DERIVATIVE_LOWER).ld endif else ifeq (${TOOLCHAIN},iar) LINKER_DEF:= $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/build_files/$(TOOLCHAIN)/linker_ram_$(DERIVATIVE_LOWER).icf else LINKER_DEF:= $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/build_files/$(TOOLCHAIN)/linker_ram_$(DERIVATIVE_LOWER).ld endif endif kerryzhou_0-1759486694885.png 图8 (4) 编译器选项变更 ifeq ( ${TOOLCHAIN}, iar) ################################################################################ # IAR 编译器选项 ################################################################################ clib := $(IAR_DIR)/arm/lib     CCOPT           +=  --cpu=Cortex-M7 \                         -DAUTOSAR_OS_NOT_USED \                         -DUSE_MCAL_DRIVERS \                         --fpu=FPv5-SP \                         --cpu_mode=thumb \                         --endian=little \                         -e \                         -Ohz \                         --debug \                         --no_clustering \                         --no_mem_idioms \                         --do_explicit_zero_opt_in_named_sections \                         --require_prototypes \                         --no_wrap_diagnostics \                         --diag_suppress=Pa050 \                         $(MISRA) \ -D$(PLATFORM) \                         -D$(DERIVATIVE) \                         -DIAR \ -DUSE_SW_VECTOR_MODE \                         -DENABLE_FPU \                         -DD_CACHE_ENABLE \ -DI_CACHE_ENABLE                             LDOPT           :=  --entry _start \ --启用堆栈使用 \                         --skip_dynamic_initialization \                         --no_wrap_diagnostics \                         --cpu=Cortex-M7 \                         --fpu=FPv5-SP                         ASOPT := $(ASOPT) \                         --cpu Cortex-M7 \                         --cpu_mode thumb \ -g \ -r \                         -DMULTIPLE_CORE endif kerryzhou_8-1759479139911.png 图9 kerryzhou_9-1759479140195.png 图10 那么,这些IAR编译选项是如何形成的呢?您可以参考RTD600的版本说明,其中包含相应的描述 kerryzhou_10-1759479140292.png 图11 (5)Elf 相关更改 ifeq ( ${TOOLCHAIN}, iar) %.elf: %.o $(LINKER_DEF)               @echo“正在链接$@”               @$(LD) $(ODIR)/*.o $(LDOPT) --config $(LINKER_DEF) --map $(ODIR)/ -o $(ODIR)/$@@               @$(GENHEX) $(HEX_OPTS) "$(ODIR)/$(ELFNAME).elf" "$(ODIR)/$(ELFNAME).hex" else %.elf: %.o $(LINKER_DEF)               @echo“正在链接$@”               @$(LD) -Wl,-Map,"$(MAPFILE)" $(LDOPT) -T $(LINKER_DEF) $(ODIR)/*.o -o $(ODIR)/$@@               @$(GENHEX) $(HEX_OPTS) "$(ODIR)/$(ELFNAME).elf" $(OUT_OPTS) "$(ODIR)/$(ELFNAME).hex" endif kerryzhou_11-1759479140481.png 图12 2.2.7   编译以生成elf 指挥官: make clean 使用make进行编译 生成 ELF 文件: kerryzhou_12-1759479140695.png 图13 生成后,可以将elf烧录到S32K344 EVB板上进行测试。测试结果显示,板载红灯闪烁,则表明IAR编译器可以在命令行模式下运行。 3. 将 RTD MCAL 导入 IAR IDE 项目 本章将介绍如何创建IAR IDE项目并导入MCAL驱动程序,以实现S32K3 MCAL与EB tresos结合运行。 3.1 MCAL IAR IDE 项目 2 种方法 两种方法的区别以及如何导入MCAL驱动程序: (1)直接将 RTD MCAL 驱动程序复制到 IAR IDE 项目目录 (2)将 IAR IDE 项目驱动程序连接到原始 RTD 驱动程序路径 kerryzhou_13-1759479140899.png 图14 3.2 MCAL IAR IDE 项目导入步骤 3.2.1 创建新的 RTD MCAL IAR 项目文件夹    创建一个新文件夹,并将其命名为:S32K344_DIO_MCAL_RTD600_IAR 3.2.2 为IAR项目创建子文件夹 生成:EB tresos 项目代码       Include:应用相关的include文件      Mcal:来自RTD的mcal驱动程序副本 src:项目主文件       Tresos_Project:EB tresos项目 kerryzhou_14-1759479140922.png 图15 3.2.3 创建EB tresos项目 (1) 按照以下路径创建EB tresos项目:S32K344_DIO_MCAL_RTD600_IAR\Tresos_Project\Mcal_Dio_S32K344_RTD600_IAR (2)添加模块:BaseNXP、Dem、Dio、EcuC、Mcu、Platform、Port、Resource (3) 将RTD xdm文件复制到以下路径: C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Dio_TS_T40D34M60I0R0\examples\EBT\S32K3XX\Dio_Example_S32K344\TresosProject\Dio_Example_S32K344\config 至:S32K344_DIO_MCAL_RTD600_IAR\Tresos_Project\Mcal_Dio_S32K344_RTD600_IAR\config (4)EB tresos 生成项目 EB tresos 代码将生成到文件夹: S32K344_DIO_MCAL_RTD600_IAR\Generate kerryzhou_15-1759479141010.png 图16 3.2.4 将RTD相关驱动程序复制到IAR项目文件夹 (1)BaseNXP:header、include、src (2) Det:include、src (3)Dio: include, src (4)Mcu: include, src (5)平台:build_files、include、src、startup (6) 端口:include、src (7)Rte: include, src 将RTD文件夹复制到IAR项目是一种方法,如果您不想复制文件,也可以使用链接器直接添加RTD安装路径驱动程序。 kerryzhou_16-1759479141081.png 图17 3.2.5 IAR IDE 创建 IAR 项目 (1) 项目->创建新项目   (2) 在IAR项目中,添加群组   项目中相关文件夹的结构如图18所示,其中包括:   生成:Include和src->EB tresos项目生成代码   Mcal:Base、Det、Dio、Mcu、平台、端口、Rte->Mcal驱动程序   Src:Main.c->项目主代码    (3) 将RTD mcal相关驱动程序添加到IAR项目 RTD MCAL相关驱动程序文件可以直接从RTD安装路径下载,或复制到IAR项目中的文件夹,这两种方法均能达到相同的效果。 kerryzhou_17-1759479141217.png 图18 (4)IAR 项目平台文件夹添加结果: kerryzhou_18-1759479141232.png 图19 (5)主代码添加 可以从以下路径复制Main.c: C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Dio_TS_T40D34M60I0R0\examples\EBT\S32K3XX\Dio_Example_S32K344\src 至 S32K344_DIO_MCAL_RTD600_IAR\src 备注:  //#include "check_example.h" // Exit_Example(TRUE); 3.2.6 IAR项目选项配置 (1)常规选项→目标→设备→NXP S32K344 (2)C/C++ 编译器->预处理器 附加包含目录: 使用从RTD安装路径复制的IAR项目文件夹驱动程序,目录如下: $PROJ_DIR$\Generate\include $PROJ_DIR$\mcal\BaseNXP_TS_T40D34M60I0R0\header $PROJ_DIR$\mcal\BaseNXP_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Mcu_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Platform_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Rte_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Platform_TS_T40D34M60I0R0\startup\include $PROJ_DIR$\mcal\Det_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Dio_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Port_TS_T40D34M60I0R0\include $PROJ_DIR$\include 如果您使用RTD安装路径驱动程序,请使用以下目录: $PROJ_DIR$\Generate\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\BaseNXP_TS_T40D34M60I0R0\header C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\BaseNXP_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Mcu_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Platform_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Rte_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Platform_TS_T40D34M60I0R0\startup\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Dio_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Port_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Det_TS_T40D34M60I0R0\include $PROJ_DIR$\include 已定义符号: S32K3XX S32K344 IAR USE_SW_VECTOR_MODE D_CACHE_ENABLE I_CACHE_ENABLE ENABLE_FPU 额外选项: --no_clustering --no_mem_idioms --do_explicit_zero_opt_in_named_sections --require_prototypes --no_wrap_diagnostics 语言1:   检查是否需要原型 诊断 抑制以下诊断: Pa050 kerryzhou_19-1759479141564.png 图20 (3)链接器: 需要添加两点: $PROJ_DIR$\mcal\Platform_TS_T40D34M60I0R0\build_files\iar\linker_flash_s32k344.icf 库->入口符号: _start kerryzhou_20-1759479141785.png 图21 (4)调试器 设置:PE micro,运行到主程序 额外选项: 使用命令行选项: --drv_vector_table_base=__ENTRY_VTABLE kerryzhou_21-1759479141872.png 图22 3.2.7 编译IAR项目 项目->全部重新编译 kerryzhou_22-1759479141894.png 图23 3.2.8  测试结果 下载与调试结果: kerryzhou_23-1759479142011.png 图24 下载并运行后,板上的红色 LED 灯闪烁,表明 IAR IDE MCAL 导入方法项目已成功运行。
View full article
Automotive Ethernet AVB Demo: ADAS System and a complete Infotainment Solution Demo This demo shows an infotainment and ADAS system based on NXP Ethernet components and is divided in three main parts: Infotainment, Network and ADAS. In the infotainment part, a “Head Unit” ECU plays locally an MPEG movie and also streams it over Ethernet to the second “Rear Seat Unit” ECU. Both ECUs also execute in the backroad the NXP AVB SW stack. This enables the two ECUs to be perfectly synchronized with each other. Therefore the two ECUs can playback the very same video (and audio) frame at the same time on their local displays. In the network part the new Automotive Ethernet Switch (SJA1105EL) and PHYs (TJA1100HN) implement the Ethernet connectivity of the system. The switch executes the AVB “gPTP” synchronization SW that enables the infotainment application described above to operate. In the ADAS part a surround view camera captures a video stream and streams it to a “Cluster” ECU also connected via the automotive Ethernet network. The camera is based on the NXP “MPC5604E ” Salsa processor and on a competitor’s BroadR-Reach PHY. This also shows the interoperability of the TJA1100HN PHY with competitor’s products. Features: All displays are implemented with NXP i.MX6 processor, and a full implementation of the NXP Ethernet AVB Stack running on Linux. The camera is based on an NXP Salsa processor (MPC5304EKIT) . The Switch board that connects all displays and the camera uses the NXP SJA1105EL Automotive Ethernet switch and the TJA1100HN BroadR-Reach Ethernet PHY ______________________________________________________________________________________________________________ Featured NXP Products: Product Link IEEE 100BASE-T1 compliant Automotive Ethernet PHY Transceiver TJA1100HN | Automotive Ethernet PHY Transceiver | NXP  i.MX 6 Series i.MX 6 Series Applications Processors | Multicore Arm Cortex-A7/A9/M4 | NXP  Audio Video Bridging Software https://www.nxp.com/design/design-services/audio-video-bridging-software:AVB-SOFTWARE?&fsrch=1&sr=4&pageNum=1 Development Kit Enabling Video Over Ethernet with NXP® MPC5604E MCU NXP® MPC5604EKIT:Development Kit | NXP  ___________________________________________________________________________________________________________ Automotive
View full article
Zephyr 模块、子系统和功能的资源 如果您对这些资源有任何疑问或问题,请 提出新问题,恩智浦支持团队将为您解答。 引导加载程序 Zephyr 将开源MCUboot引导加载程序作为一个模块包含在内,并使其易于用作 Zephyr 应用程序的引导加载程序。 NXP i.MX RT 系列上的 MCUboot 和 Zephyr 使用 MCUboot 和 Sysbuild 构建示例,以及 VS Code 中带有 MCUboot 的 Zephyr 应用 Zephyr MCUBoot + TF-M 处理器间通信 (IPC) 和多核 Zephyr 包含一个IPC子系统。Zephyr 还集成了开源OpenAMP框架,以便使用 RPMsg 协议实现核心之间的通信。 Zephyr OpenAMP 多核示例 RT1170构建双核图像 多核性能 电源管理(PM) Zephyr 包含一个电源管理子系统,受许多 NXP SOC 支持。 网络研讨会:利用 Zephyr OS 功能和模块加速开发 NXP SmartWatch 演示和网络研讨会:最大限度地降低 i.MX RT500 的功耗 PSA 和可信固件 (TF-M) FRDM-RW612 上的 TF-M PSA 加密示例 Zephyr MCUBoot + TF-M 启动代码及流程 为了便于移植,Zephyr 管理应用程序中未包含的启动代码。SOC、内存、设备驱动程序和一些子系统在 main() 之前初始化。 网络研讨会: Zephyr OS 和 NXP 让应用程序可移植性变得简单 添加自定义启动代码 返回Zephyr知识中心
View full article