Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
mbedtls 的弃用通知 你好 我发现了 mbedtls 的弃用通知: https://github.com/nxp-mcuxpresso/mbedtls/commit/1608d09ba2fac9cad07fd2bc603bc515aaeee3d1 MBEDTLS 版本 2.x 已标记为弃用,将在未来的版本中从 MCUXpresso SDK 中移除,并将替换为 MBEDTLS 3.x。我们鼓励用户迁移到 MBEDTLS 3.x。 我目前在一个裸机(非 Zephyr)项目的 i.MX RT1021 上使用恩智浦的 mbedTLS 2.28.10 分支,依靠 DCP 硬件加速,我有兴趣迁移到 mbedTLS 3.x(如通知中建议的那样),并使用 PSA 来获得不透明密钥(例如使用 OTPMK 支持的密钥)。 为了更好地了解迁移路径,我可以问几个问题吗? 恩智浦针对MCUXpresso SDK/裸机i.MX RT10xx设备(包括DCP加速)的mbedTLS 3.x分支已经有公共存储库或分支了吗?如果有,能否请您指给我看? 贵公司是否计划提供支持由 i.MX RT1021 硬件支持的不透明密钥的 PSA Crypto 集成(例如,使用带有 OTPMK 或其他硬件密钥源的 DCP)?是否会有相关的示例项目或文档? 如果有任何早期预览版或分支需要反馈,我很乐意在我的 RT1021 设置上进行测试。 非常感谢您抽出时间,为恩智浦 mbedTLS 集成所做的工作。 顺祝商祺! 最大值 Re: deprecation notice for mbedtls 你好 我知道你对在 i.MX RT1021 裸机项目上从 mbedTLS 2.28.10 迁移到 mbedTLS 3.x 很感兴趣,尤其是 DCP 硬件加速和不透明密钥的 PSA。 关于迁移路径: 1.弃用通知是正确的。mbedTLS 2.x 将在未来的版本中从 MCUXpresso SDK 中移除,取而代之的是 mbedTLS 3.x。 2。对于使用 DCP 硬件加速的 RT1021,迁移将需要进行一些更改。在 MbedTLS 3.x 中,硬件加速集成已更新为可与 PSA Crypto API 配合使用,这将支持您对不透明密钥的要求。 3.您可以通过 mbedTLS 3.x 中的 PSA 接口使用由 OTPMK 支持的密钥,这为在利用硬件加速的同时实现安全密钥存储提供了一种标准化方法。 目前,还没有专门针对 RT1021 和 MbedTLS 3.x 集成的公开早期预览分支。不过,我们欢迎您有兴趣参加测试。 作为参考,你可以在恩智浦分支中找到当前 mbedTLS 的实现,网址为:https://github.com/nxp-mcuxpresso/mbedtls 我建议大家关注该版本库和恩智浦 MCUXpresso SDK 更新,以了解即将进行的 MbedTLS 3.x 迁移。SDK 推出后,将包括演示 PSA Crypto API 在 RT 平台上通过硬件加速实现的示例。 此致
查看全文
インバータボードDevkit MotorGDのブレーキ抵抗器 NXPチームの皆様、こんにちは。 このメールがあなたに届いていることを願っています。 下記に示すように、インバータボード Devkit MotorGD 内のブレーキ抵抗器端子にコネクテッドされている MOSFET について質問します。データシートによると、MOSFET を駆動するにはゲートに 10 V が必要であると書かれていますが、ブレーキ抵抗器を操作するためにこの MOSFET を駆動するには、マイクロコントローラ ボード MPC5744P からそのような電圧をどのように供給すればよいのでしょうか。 Ahmed_Abd_ElHafez_0-1763761660957.png 5Vで駆動しようとしたところ、ブレーキ抵抗器を接続すると電圧が低下し、オン・オフの切り替えができなくなります。 Re: Brake Resistor in the inverter board Devkit MotorGD こんにちはピーター、 -「電圧」とは、MOSFET のゲート電圧を意味します。インバータボード上のMOSFETのゲートにコネクテッドされるMCUボードのG7ピンの電圧は5V近くですが、MCUボード(MPC5744P)をインバータボード(DevkitMotorGD)に取り付けると、ブレーキ抵抗器をコネクテッドする前であっても、G7ピンの電圧は半分の値(約2.5V)に低下し、その後ブレーキ抵抗器をコネクテッドすると、この電圧ではMOSFETのゲートを駆動できないと思われます。 -私が使用したブレーキ抵抗の値については、以下に示すようにいくつかの抵抗を使用しました - ちなみに、ブレーキ抵抗器は発電機として動作する機械のダンプ負荷として使用するつもりです Ahmed_Abd_ElHafez_0-1764016699858.png よろしくお願いします、 アハメド Re: Brake Resistor in the inverter board Devkit MotorGD こんにちは、 レベル シフターがあり、デフォルトでは 3.3 V に設定されています。5Vになっているか確認してもらえますか? petervlna_0-1764574064274.png ブレーキ抵抗器の選択は、抵抗器の電力定格によっても異なります。抵抗が小さいほど、より高い電力定格が必要になります。あまりに小さいと、大きな電流が急速に流れて破壊されるCANがあります。また、MOSFET の電力定格と最大電流も確認して考慮する必要があります。これは、MOSFET にも電流が流れ、小型パッケージ (SOT-23) では比較的弱いためです。そこには数アンペアあります...SOAによれば、±5Aの範囲でCANできますが、このような小さなパッケージでその電流に対して十分な速さで熱を放散できるかどうかはわかりません。 ブレーキ抵抗器の代わりに他の負荷を使用する場合も、同じことが言えます。 よろしくお願いいたします。 ピーター
查看全文
ソフトウェアはログインできません UIの設計にNXPのGuiderを使用していますが、現在のPCソフトウェアに「プロセスが完了していません。アクションは完了しませんでした。続行するには、プロセスを再度開始してください。」というメッセージが表示され続けます。 なぜこのようなことが起こるのか知っている人はいますか? Re: software can not login こんにちは@DO123 CANさらに詳しい情報を教えていただけますか?写真か動画か? この問題を再現したいです。 BR ハリー
查看全文
[S32K311 SAF] S32k311 BIST が MCU の電源オフをトリガーします こんにちは、チーム お客様: マレリ フェーズ:統合 お客様からのフィードバックによると、トリガー Bist の実行後に MCU の電源オフが発行されます。RTD 300とSAF 1.0.3に基づいてこの問題を再現しました。このプロジェクトの「out」にあるプロジェクトと elf ファイルを含む添付ファイルを参照してください。S32K311 bist について何か不足している点があるかどうかはわかりません。SO、あなた側でこの問題の検証に協力してください。 よろしくお願いいたします。 ジュンジエ SAFETY_SW Re: [S32K311 SAF] S32k311 bist will trigger MCU power-down こんにちは、チーム このチケットを割り当てる人はいますか?ありがとう! よろしくお願いいたします。 ジュンジエ Re: [S32K311 SAF] S32k311 bist will trigger MCU power-down こんにちは@RadoslavB 下記にビストレジスターを掲載します。この問題は、シグネチャ レジスタの MISR 設定によって引き起こされたと思われます。BIST の実行後に MCU の電源がオフになり、デバッガーはリセットを発行しない限り 311 に接続できませんでした。また、接続デバッグなしでコードを実行すると、コードは正常に実行されません。 よろしくお願いいたします。 ジュンジエ Re: [S32K311 SAF] S32k311 bist will trigger MCU power-down こんにちは@RadoslavB 下記にビストレジスターを掲載します。この問題は、シグネチャ レジスタの MISR 設定によって引き起こされたと思われます。BIST の実行後に MCU の電源がオフになり、デバッガーはリセットを発行しない限り 311 に接続できませんでした。また、接続デバッグなしでコードを実行すると、コードは正常に実行されません。 よろしくお願いいたします。 ジュンジエ Re: [S32K311 SAF] S32k311 bist will trigger MCU power-down こんにちは@RadoslavB 、 こちらは直接のお客様であるPrehです。プロジェクトは現在非常に緊急です。このCASEを高レベルで受け止めていただくか、この問題をできるだけ早く確認するための会議を開いていただけますか。お客様はすでに何度もこの問題をプッシュしていますので、ご理解のほどよろしくお願いいたします。 よろしくお願いいたします。 kerry Re: [S32K311 SAF] S32k311 bist will trigger MCU power-down こんにちは@kerryzhou 、 先週の電子メールでの議論のとおり、SAF BIST は K311 で完全にテストされていることを確認しました。 この問題は RTD 3.0.0 で発生する可能性が高いですクロック設定に関連するいくつかのバグがあるドライバ。 Junjie は、クロックのバグを確認できる例を提供しました。その後、新しい RTD バージョンに移行してバグを修正する予定です。 敬具、 ラドスラフ
查看全文
Android 15: i.MX8MP: WebGL レンダリングの問題 こんにちは@Bio_TICFSL 、 以前の投稿では、 Android 15.0.0 v1.0.0 での既知の WebGL レンダリングの問題について説明しています。 これを修正する新しいリリースはありますか? もしそうなら、実際の修正方法を共有してCANますか? よろしくお願いします。 よろしくお願いいたします。 桟橋 Android グラフィックスとディスプレイ Re: Android 15: i.MX8MP: WebGL rendering issue ありがとう@Bio_TICFSL Re: Android 15: i.MX8MP: WebGL rendering issue こんにちは、 ご指摘の i.MX8MP の Android 15.0.0 v1.0.0 における WebGL レンダリングの問題につきましては、現在この問題を具体的に修正した新しいリリースはございません。 この WebGL レンダリングの問題は、アプリケーション パッケージの命名に基づいて WebGL アクセスを制限する Android の WebView 実装のセキュリティ機能に関連しているようです。この問題は、WebGL 機能がアプリケーション パッケージ ID に「chromium」という単語が含まれている場合にのみ使用可能であり、他の命名規則では失敗するため発生します。 この問題に対処する新しいリリースはまだありませんが、WebView を初期化する前に、アプリケーション コードに次の回避策を実装できます。 ```java Build.VERSION.SDK_INT >= Build.VERSION_CODES.O の場合 { WebView.setWebContentsDebuggingEnabled(true); } Web設定 webSettings = webView.getSettings(); webSettings.setJavaScriptEnabled(true); webView.setWebChromeClient(新しいWebChromeクライアント()); webSettings.setAllowFileAccessFromFileURLs(true); webSettings.setAllowUniversalAccessFromFileURLs(true); // この行を追加すると、すべてのアプリケーションで WebGL が有効になります webSettings.setMediaPlaybackRequiresUserGesture(false); 「」 この構成により、パッケージ名の制限が回避され、WebGL は Chromium 以外のパッケージ名を持つアプリケーションでも適切に機能できるようになります。 よろしくお願いします。
查看全文
关于安全启动的 FULL_MEMORY 与 AB_SWAP 更新的说明 (S32K3) # 你好,恩智浦团队 我成功执行了FULL_MEMORY更新,HSE 固件也顺利安装,没有出现任何错误。 在继续进行安全启动配置之前,我需要澄清以下内容: FULL_MEMORY 更新是否足以启用安全启动,还是 AB_SWAP 更新是强制性的? 换句话说,如果我只执行 FULL_MEMORY,或者必须将设备移至 AB_SWAP 更新状态,能否实现安全启动? 我是否需要在 FULL_MEMORY 之后运行 CQC_UPDATE 和 SBAF_UPDATE,还是只有在特定情况下才需要(例如,未来的固件升级)? 固件更新步骤之后,下一步是直接进行安全启动密钥配置和 SMR/SECBOOT 配置吗? 请确认固件安装后在 S32K3 上启用安全启动的恩智浦推荐顺序。 谢谢! Re: S32K344 – Application stuck at WaitForHSEFWInitToFinish() + Unable to download latest HSE firmwa #Hello@lukaszadrapa先生, 我想知道关于我们的询问是否有任何更新? 请帮助我们解决这个错误。 Re: S32K344 – Application stuck at WaitForHSEFWInitToFinish() + Unable to download latest HSE firmwa #Hello@lukaszadrapa 在运行程序时,我遇到了一个问题,程序被卡在Default_Handler 中。调试时,我发现了两个错误:UsageFault和HardFault。 我附上了相关的图片以供参考。能否请您审查一下,并指导我下一步如何解决这个问题? Re: S32K344 – Application stuck at WaitForHSEFWInitToFinish() + Unable to download latest HSE firmwa S32K344 的最新版本是 0.2.55.0,因此我建议使用这个版本。0.2.1.0 版本已经过时。 "固件闪存成功" - 您使用了哪种安装方法?能否检查地址为 0x4039_C028 的 HSE GPR 寄存器中的第 0 位是否已设置? 如果在 WaitForHSEFWInitToFinish() 中挂起,说明固件尚未安装,或者由于 HSE 中的某些致命错误而无法启动固件。 请共享 0x4039_C028 中 HSE GPR 寄存器的值,以及 MU_0 模块中 FSR 和 GSR 寄存器的值。 从何处下载 HSE 固件 - 转到 S32K3 标准软件: https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K3-STDSW-D   选择:汽车 SW - S32K3 - HSE 固件 选择固件版本: 0.2.55.0 K3xx STD SR-RTM HSE 固件版本 K3x2 的服务版本,K3x4 Std HSE FW 此致, Lukas S32K344 – Application stuck at WaitForHSEFWInitToFinish() + Unable to download latest HSE firmware #Thank you@lukaszadrapafor your guidance. 我正在研究 S32K344 EVB。我使用 HSE 固件进行了刷新: "C:\NXP\HSE_FW_S32K3XX_0_2_1_0" 固件刷新成功了,但当我运行应用程序时,它却卡在了那里: WaitForHSEFWInitToFinish(); 我想确认一下: 这是 S32K344 正确/兼容的 HSE 固件版本吗? 通常是什么原因导致应用程序停留在 WaitForHSEFWInitToFinish() 内? 如何下载最新的 HSE 固件版本? 当我在恩智浦网站上打开 "文档"→"安全"时,页面显示为空。 我已经提交了保密协议申请,但还没有收到任何回复。 有其他方法可以访问最新固件吗? 请指导我如何解决这个问题并访问正确的固件代码包。 谢谢! Re: Clarification on FULL_MEMORY vs AB_SWAP Update for Secure Boot (S32K3) 你好@Sanjana_k 1。两个版本的 HSE 固件均可使用安全启动。 2。只有当你有一些装有过时 SBAF 的旧设备时,才应进行 SBAF 更新。S32K344 的 HSE 固件最新版本为 0.2.55,兼容的 SBAF 版本为 00 05 00 00 00 0F 00 06 (0.15.0)。请参阅 HSE 固件参考手册中的 " 14.6.4.1 Secure BAF 版本号 " 部分,了解从何处获取当前 SBAF 的版本。 CQC_UPDATE 是一个可以提供 ADKP 的项目,可以推进生命周期。在我们的开发过程中,推进生命周期是最后一项工作,但如果需要,您可以提供 ADKP。只是不要提前生命周期,因为许多 HSE 操作只能在 CUST_DEL 生命周期内完成。 3.如前所述,安全启动配置应作为应用程序完成后的最后操作之一进行一次。 4。我们提供安全启动应用笔记,包括演示项目。可从以下网址下载: https://www.nxp.com/products/S32K3 应用笔记可以在这里找到: 文档-> 安全文件-> 安全启动应用笔记 v0.1.1.0(AN744511) 相关演示项目可在此处下载: 设计资源 -> 软件 -> 安全文件 -> SecureBootAppNoteDemo (SW745310) 问候, Lukas Re: S32K344 – Application stuck at WaitForHSEFWInitToFinish() + Unable to download latest HSE firmwa 你好@Sanjana_k "在运行程序" 时 - 具体是哪个项目?根据您的截图,固件已经安装完毕,因此目前只剩下您的项目了。您可以尝试逐步修改代码,查看崩溃的具体位置,也可以尝试按照本文档进行操作: https://community.nxp.com/t5/S32K-Knowledge-Base/How-To-Debug-A-Fault-Exception-On-ARM-Cortex-M-V7M-MCU-S32K3XX/ta-p/1595570 此致, Lukas
查看全文
S32K14X CSEC PRAMデータ充填問題 demo(cesc_keyconfig) では次のように述べられています: 平文 = 00112233445566778899aabbccddeeff 暗号文 = 69c4e0d86a7b0430d8cdb78070b4c55a PRAM に入力するときにデータが 32 ビット反転されるのはなぜですか? リンク プレーンテキスト = 0x00112233 0x44556677 暗号文=0x69c4e0d8 0x6a7b0430。 これを説明する文書はありますか? 回复: S32K14X CSEC pram data fillling problem PRAM の説明を見ると、s32kRM_r9 では pram インターフェースはビッグ エンディアンであり、s32kRM_r14 では pram インターフェースはリトルエンディアンであるということが書かれています。どうしたの?チップのデザインが変更されたのでしょうか?それともs32kRM_r9のエラーでしょうか? Re: S32K14X CSEC pram data fillling problem こんにちは@ 1113240626 Senlent_1-1764050023677.png Re: S32K14X CSEC pram data fillling problem こんにちは@ 1113240626 これに時間を無駄にする必要はありません。 API「CSEC_WriteCommandBytes()」が PRAM をどのように埋めるかを確認CAN。 Senlent_0-1764211862291.png Re: S32K14X CSEC pram data fillling problem こんにちは。ご返信ありがとうございます。 s32RM_rel14では下図のようになります。
查看全文
GTM_CFG_Tool 许可证申请 没有电子邮件地址可以获取试用许可证代码。 软件自动发送电子邮件,电子邮件地址不是 nxp,而是飞思卡尔,返回的原因是"由于网络不稳定或防火墙过滤,无法连接到收件人的服务器" 有什么办法能让我获得试用许可证吗?谢谢! image001(07-20-17-43-45).jpg image005(07-20-17-43-45).jpg   Re: GTM_CFG_Tool License request 你好 .@mikedoidge、 我也遇到了同样的错误。 您能帮帮我吗? 顺祝商祺! GTM_CFG_Tool License request GTM_CFG_Tool 许可证申请 Re: GTM_CFG_Tool License request 你好 .@mikedoidge、 我也遇到了同样的错误。 您能帮帮我吗? 顺祝商祺! 杰伊 Re: GTM_CFG_Tool License request 你好@lihui1、 此错误信息来自 FlexLM 许可证管理软件。这表明主机操作系统的时间/日期被修改。这样做的目的是防止 FlexLM 许可证应用程序的用户将操作系统的系统时间/日期更改为过去的时间/日期,从而在许可证过期后延长应用程序的使用时间。我认为没有办法禁用这个网络安全功能。还有其他主机可以使用吗?我可以为不同的电脑提供新的许可证。 顺祝商祺! Mike Re: GTM_CFG_Tool License request 亲爱的迈克: 出现错误,提示系统数据已回退。 系统数据无法设置,因为我们客户的系统被软件锁定了。 有什么办法可以解决吗? dbefd008-13b6-414a-a75a-8019d991c668.png   Re: GTM_CFG_Tool License request 你好@lihui1、 请放置所附许可证文件(license.txt)"" 的目录中,并将其重命名为 license.lic. 这样就完成了所需的安装设置,现在应该可以完全正常运行了。 如果您需要进一步帮助,或有任何意见或问题,请随时与我们联系。 顺祝商祺! Mike Re: GTM_CFG_Tool License request 亲爱的迈克: 注册人姓名: liam 公司名称: lincontrol 街道地址: qingshui 城市: wuhan 州/省: hubei 邮编/邮政编码:430000 Country: China Email Address: [email protected] 许可证信息 主机 ID:c5f839e 平台:Windows 8-6.2 许可证类型:Demo_MPC5746M 许可证申请类型:试用版 仅供参考! 谢谢! Re: GTM_CFG_Tool License request 你好@lihui1、 请将申请附在本主题中,我们会为您生成许可证。许可证将锁定节点,因此我们需要生成的申请表中包含的详细信息。 顺祝商祺! Mike
查看全文
Installing MCUXpresso for VSC and SDK (Japanese blog) 0. What is this article about? NXP's software development environment for microcontrollers, MCUXpresso , is compatible with Visual Studio Code (VSC), a source code editor distributed free of charge by Microsoft. Anyone can easily install it by simply installing the extension "MCUXpresso for VSC" and following a few steps! You can start running sample code right away .😃 This blog post will provide a step-by-step guide on how to install MCUXpresso for VSC and the SDK , a tool for creating code for each microcontroller. * In this article, we will use FRDM-MCXA153 as the example board. スクリーンショット 2025-11-13 5.59.05.png 💡 We have released a video explaining the installation procedure. Click this link to watch it. スクリーンショット 2025-11-18 5.17.32.png table of contents 0. What is this article about? 1. What is MCUXpresso for Visual Studio Code? 2. Preparation: For macOS 2.1 Installing Homebrew 3. Installing Visual Studio Code 4. Installing MCUXpresso for VSC 5. Installing the toolchain 6. Importing the SDK 7. Ready! 8. Bonus: To test the operation of the circuit board as is... 8.1 Importing Sample Projects 8.2 Running the Sample Project Reference materials 1. What is MCUXpresso for Visual Studio Code? The various sample codes for general-purpose microcontrollers provided by NXP can be run using MCUXpresso , a software development environment provided free of charge by NXP. There are two types of MCUXpresso: 1) MCUXpresso for Visual Studio Code is provided as a plug-in for VSC. Types of MCUXpresso Below is the abbreviation How to provide ① MCUXpresso for Visual Studio Code ①MCUXpresso-VSC VSC Plug-ins ② MCUXpresso ID E ②MCUX-IDE All in one application In this blog, I will introduce how to install MCUXpresso-VSC and the SDK . MCUXpresso-VSC runs on Windows, macOS, and Linux, and can be operated with the same user interface on all operating systems. To run the sample code on MCUXpresso-VSC, first install VSC , MCUXpresso-VSC (plugin) , and toolchain (which generates code that runs on the microcontroller) . Then import the SDK * that matches the microcontroller/board you are using. *SDK stands for Software Development Kit and contains the driver code and configuration information required for each microcontroller. The SDK must be installed for each microcontroller or board (target) you want to create. By the way, ②MCUX-IDE can also perform the same tasks as MCUXpresso-VSC. MCUX-*IDE includes an editor for editing source code, a toolchain such as a compiler and linker, and software that organizes code into projects and manages them along with various settings. Compared to MCUXpresso-VSC, everything needed for development is gathered together in one place, allowing for a smoother flow from installation to development work. On the other hand, compared to MCUX-IDE, MCUXpresso-VSC has a structure where necessary tools are added as extensions (plug-ins), allowing you to customize the various functions you need. We hope you will choose the environment that is easiest for you to use and develop in. For information on installing MCUXpresso-IDE, see " Installing MCUXpresso IDE and SDK (Japanese blog) " * IDE stands for Integrated Development Environment , an integrated development environment application . スクリーンショット 2025-11-12 16.01.57.png Now, let's explain how to install MCUXpresso-VSC and SDK step by step. This article uses macOS as an example, but the installation can be done on Windows and Linux using almost the same steps. 2. Preparation: For macOS Windows and Linux OS users should proceed to the next step, " Installing Visual Studio Code ." This "Preparation" step is only necessary for macOS users . If you're a macOS user and have already installed Homebrew , you don't need to reinstall it. Proceed to the next step, " Installing Visual Studio Code ." On macOS, Homebrew is used to manage the tools required for MCUXpresso-VSC (compilers and linkers: software to create code for the microcontroller) and the software needed to install and run them. Homebrew is software called a "package manager," and it must be installed first. 2.1 Installing Homebrew If you go to the Homebrew website, you will find the command for installation. Open "Applications > Utilities > Terminal" on your Mac, copy and paste the command into it, and run it. スクリーンショット 2025-11-12 9.55.02.png Homebrew Site Homebrew installation command (from the above site) /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" スクリーンショット 2025-11-12 10.09.47.png Terminal application on Mac スクリーンショット 2025-11-12 10.13.07.png Pasted command into terminal   Once the command has finished, follow the instructions on the screen to execute the next command (starting from the screen displayed after the first command is executed). You can also copy and paste the command from the screen and execute it. echo >> /Users/demo/.zprofile echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/demo/.zprofile eval "$(/opt/homebrew/bin/brew shellenv) To confirm that the installation was successful, enter the command "brew help" and if the following message appears, the installation is complete. Once you have confirmed the display, you can exit the terminal. スクリーンショット 2025-11-12 10.17.51.png This concludes the preparations for macOS only. 3. Installing Visual Studio Code Visual Studio Code (VSC) is distributed as an application for various operating systems. First, go to this distribution page and download and install the application that matches your operating system. スクリーンショット 2025-11-12 9.15.21.png Once the installation is complete, start VSC. In this article, the theme has been changed to white to make the screen examples easier to see. スクリーンショット 2025-11-12 10.42.53.png   4. Installing MCUXpresso for VSC Next, install the extension (plug-in) MCUXpresso for VSC. Click the "Extensions" icon in the activity bar on the left side of VSC to search, and click the install button for MCUXpresso for VSC that appears to complete the installation process quickly. スクリーンショット 2025-11-12 15.56.13.png During installation, you may get an error message saying "west not found", but you can ignore this as we will install it shortly. スクリーンショット 2025-11-13 8.48.45.png 5. Installing the toolchain Next, download the toolchain installer from MCUXpresso for VSC. スクリーンショット 2025-11-12 10.59.13.png Once the download is complete, the installer will start automatically. First, the installer will check the version and ask for permission to send data to improve operability, so press the appropriate button. After that, a screen will appear where you can select the items to install. スクリーンショット 2025-11-12 11.03.04.png If you are using the FRDM-MCX board, you only need to select "MCUXpresso SDK Developper" and "LinkServer". When you click, a blue band will appear on the left edge of each item. After checking these, press the "Install" button. スクリーンショット 2025-11-12 11.05.03.png The installation will take a while. I am reinstalling it to write this article, but it was stuck at 20% progress for 4 minutes while I was writing this article 🤨 Update (2026-07-24): Progress is now displayed as a text message at the bottom of the window. This may take some time depending on the internet traffic, so please be patient. However , if it seems like it's taking too long, press the cancel button and try again . スクリーンショット 2025-11-12 11.08.26.png Once the installation is complete, the following screen will appear, prompting you to restart VSC. *Don't forget to do this! スクリーンショット 2025-11-12 11.26.28.png 6. Importing the SDK (As mentioned in the previous section) Once the toolchain installation is complete, exit VSC and then restart it . Next is importing the SDK. In this example, we will import from the SDK distribution location for various boards stored on the NXP server (it is also possible to import a custom SDK using the SDK builder on the NXP website, but this time we will explain using the simplest example). First, click on the MCUXpresso-VSC extension icon in the VSC activity bar (far left) and click on the "Import Repository" button. Select "REMOTE ARCHIVE" in the tab that opens to the right. スクリーンショット 2025-11-12 11.37.16.png In the "Package" column at the top of the tab, search for the board you will be using. If you type "153" in, FRDM-MCXA153 will appear, so select this. スクリーンショット 2025-11-12 15.52.04.png This will display additional input fields on the same screen. In the "Location" field, specify the folder where the SDK will be installed. There is no set location, so you can specify any location you like, but it is safer to use a folder where files can be written and whose path does not contain multi-byte characters such as Japanese. Checking "Create Git Repository" is optional, but if you don't need it, uncheck it. This will save disk space on your PC. Next, check "I agree," but before doing so, be sure to read the SDK license linked above it. Once you've reached this point, all you have to do is press the "Import" button. スクリーンショット 2025-11-12 16.11.28.png 7. Ready! Now you're ready to go! Using the commands in the QUICKSTART PANEL in the upper left, you can create a new project or import and run a project from the SDK, GitHub, or a downloaded project. 8. Bonus: To test the operation of the circuit board as is... 8.1 Importing Sample Projects The SDK includes sample code . So far we have installed the SDK using the FRDM-MCXA153 as an example, so we will try out the sample code included. First, connect the board to the computer with a USB cable. For the FRDM-MCXA153, use the USB connector labeled "MCU-Link" (see photo). IMG_4594.JPG Now let's import the sample code. In the MCUXpresso-VSC panel, click the "Import Example from Repository" button. スクリーンショット 2025-11-12 12.14.50.png In the tabs on the right Select the imported SDK in the "Repository:" field Select FRDM-MCXA153 in the "Board:" field. In "Template:", select the top one in the list This sample code checks the pin input/output operation of the microcontroller, and when a button on the board is pressed, it recognizes it and turns the LED on/off. スクリーンショット 2025-11-12 12.16.16.png After selecting a template, specify the location where you want to import the sample code in "Location:". This folder is also optional. Below that is the toolchain selection. If this is your first time installing such tools, there is only one option. Finally, press the "Import" button. スクリーンショット 2025-11-12 12.30.18.png Once the import is complete, a project with the same name as the template will appear in the PROJECTS column. スクリーンショット 2025-11-12 12.32.17.png You may be prompted to "reconfigure" when importing. This is because there are multiple configuration settings for building the code (compiling, linking, etc.). In this case, you can ignore it, but if you press the "Configure Now" button, select one of them (either is fine). スクリーンショット 2025-11-13 5.40.56.png 8.2 Running the Sample Project When you hover the cursor over the imported project, a button icon will appear. Press the green right-facing triangle button (the Debug button) to start a debug session. org.gif Once the code has been built (compiled and linked) and written to the microcontroller, the debug interface will appear and you will be able to run the program. スクリーンショット 2025-11-12 12.39.42.png When the debug interface is displayed, pressing the icon button with the symbol "|▷" at the top will start the microcontroller's operation. スクリーンショット 2025-11-12 13.19.32.png In this state, the LED will turn on and off repeatedly each time you press the SW2 button on the board. スクリーンショット 2025-11-12 13.35.17.png If the board is not connected , the following screen will appear. Please check the connection and try again. スクリーンショット 2025-11-12 16.13.55.png This LED on/off program outputs serially. You can also see this using the serial monitor in VSC. スクリーンショット 2025-11-12 16.29.23.png If the display width is narrow, the "SERIAL MONITOR" display will be collapsed. Click on the "..." next to "PROBREMS OUTPUT DEBUG CONSOLE..." to display it. スクリーンショット 2025-11-13 9.06.03.png The image below shows what happens after pressing the "Start Monitoring" button and then pressing SW2 on the board. スクリーンショット 2025-11-12 16.48.45.png The program will stop when you press the "□" button on the debug screen. スクリーンショット 2025-11-12 16.33.01.png Reference materials Tutorial video: Let's get started! MCUXpresso for Visual Studio Code Related information: Installing MCUXpresso IDE and SDK (Japanese blog) Change history: 2025-11-13: First Edition 2025-11-14: Added a link to an installation procedure video / Added a section for reference materials. 2026-07-24: Added chapter numbers and table of contents. Enclosed the video introduction in "0. What is this article about?" within a box. Enclosed the introductory instructions in "2. Preparation: For macOS" within a box and added an anchor link to "Installing Visual Studio Code". Added improvement to "5. Installing the Toolchain" by adding progress display. ========================= We are currently unable to respond to comments in the "Comment" section of this post. We apologize for the inconvenience, but when making inquiries, please refer to " Technical Questions to NXP - How to Contact Us( Japanese Blog) ". (If you are already an NXP distributor or have a relationship with NXP, you may ask your question directly to the person in charge.) MCUXpresso for VSC (Visual Studio Code) can be used free of charge for software development of NXP's MCX series microcontrollers. In addition, various sample codes that can be used with MCUXpresso for Visual Studio Code are provided, which can be used not only for operation verification but also as the basis for various projects. By reading this article, anyone can easily install the VSC development environment and SDK and even run sample code! introduction MCUXpresso MCUXpresso SDK MCX Japanese blog
查看全文
恩智浦汽车以太网:MACSec基础知识第2部分 - 系统配置(日语博客) 介绍 上次,我们讲解了汽车以太网 MACSec 的基本技术。 在第二部分中,我们将解释如何组合和使用兼容 MACSec 的设备。 MACSec兼容的系统配置 下图展示了在车载以太网系统中放置兼容 MACSec 的设备的示例。一般来说,有三种可行的方法,我们将依次解释每种方法的优缺点。 情况 1:进入主机控制器 情况二:将其放入 Switch 情况 3:进入 PHY 时 対応ソリューション1.png 情况 1:当主机控制器启用 MACSec 时 対応ソリューション2.png 以下是启用 MACSec 的主机控制器的特性: 特征 优点 缺点 ・异常检测和欺诈过滤由主机控制器执行。 - 在设置和更改 MACSec 功能方面具有极大的灵活性 ・主机控制器上的 MACSec 控制处理负载 ・MACSec 控制由主机控制器执行 主流 ・主机控制器中必须实施安全软件。     ・只有当恶意数据到达主机控制器时,异常情况才能被检测或阻止。   情况 2:当交换机兼容 MACSec 时 対応ソリューション3.png 特征 优点 缺点 ・异常检测和欺诈过滤由交换机执行。 ・在恶意数据到达主机控制器之前,即可检测并阻止异常情况。 ・MACSec功能的设置和更改灵活性有限 ・MACSec 控制在交换机侧执行。 -不要对主机控制器施加 MACSec 控制的处理负载 *恩智浦计划推出一款兼容 MACSec 的交换机。   情况 3:当 PHY 与 MACSec 兼容时 対応ソリューション4.png 特征 优点 缺点 ・异常检测和欺诈过滤由PHY执行。 ・在恶意数据到达主机控制器之前,即可检测并阻止异常情况。 ・MACSec功能的设置和更改灵活性有限 ・MACSec 控制在 PHY 端执行。 -不要对主机控制器施加 MACSec 控制的处理负载     ・NXP PHY 与非 MACSec PHY 引脚兼容。     ・TLV(如下所述)移除可通过PHY执行。   *NXP 提供兼容 MACSec 的 100BASE-T1 和 1000BASE-T1 PHY 产品。 (同时还将提供兼容 10BASE-T1S、2.5G 和 10G 的 PHY) MACSec传输时序问题 MACSec有助于提高安全性,但由于通信帧较长,因此存在传输时序问题。 通信フレーム構成.png 如上图所示,与原始通信帧配置相比,MACSec 兼容的通信帧长度增加了安全标签和 ICV(完整性校验值)的长度,如橙色所示。 Tx_Timing Issue1.png 如果 MII 信号以高频率进入 PHY,则下一个 MII 信号可能在 PHY 发送 MACSec 兼容通信帧时到达 PHY,与帧定时重叠,导致丢包。 (在上图中,标有 X 的 MII 数据包不能从 PHY 发送。) 方案一:MAC层扩展IPG Tx_Timing Issue2.png 防止 PHY 输入的 MII 信号与正在发送的 MACSec 帧之间产生干扰的一种方法是在软件端故意延迟 MII 的发送(直到数据包之间的间隔达到允许的最小值)。 缺点包括以下几点: MII 传输频率降低 需要在软件端进行调整处理。 方案二:软件中的TLV头部 Tx_Timing Issue3.png   另一种干扰对抗措施是在软件端对 MII 信号执行 TLV 填充(插入上图中浅蓝色所示的间隔符),以使时序与 MACSec 通信帧传输对齐。 该方法的缺点与方案 1 的缺点相同。 MII 传输频率降低 需要在软件端进行调整处理。 另一方面,它具有方案 1 所不具备的优势。 如果接收端是 MACSec 兼容的 PHY(例如 NXP 产品),则会在 PHY 端移除 TLV Pad(从而降低接收主机控制器的处理负载)。 用例 最后,我们来看看当 MACSec 功能添加到汽车以太网系统时会发生什么。 在这个例子中,恶意用户将攻击节点插入到车载以太网中。 Usecase1.png MACSec 功能允许您阻止未经授权的信号。 -对于无需考虑窃听风险和 MII 帧与以太网帧之间时间干扰的网络,此方法就足够了。 为了构建一个更安全的网络,使其能够抵抗窃听和对 MII 和 Ether 帧的定时干扰,请使用以下配置。 Usecase2.png 概括 在汽车以太网中,MACSec 可以在三个位置实现:主机控制器、交换机和 PHY。每个位置的异常检测时序、处理负载和实现难易程度各不相同,因此根据您的目标选择合适的位置至关重要。虽然实现 MACSec 可以阻止未经授权的信号并防止窃听,但也需要调整传输时序,并且需要采取措施防止丢包,例如在软件端进行 IPG 调整和 TLV 填充。 参考信息 恩智浦汽车以太网网页 TJA1104,支持 MACsec 的 ASIL B 级汽车以太网 100BASE-T1 PHY 收发器网页 TJA1121,支持 MACsec 的 ASIL B 级汽车以太网 1000BASE-T1 PHY 收发器网页 S32J100,支持 MACsec 的以太网交换机和网络控制器网页 =========================== 我们目前无法 回复 此帖子“ 评论”部分的评论。 对于由此造成的不便,我们深表歉意。如有任何疑问, 请 参考“ 如何就 技术问题 联系 NXP ( 日语 博客 ) ” 。 (如果您已经是 恩智浦的 分销商或 与 恩智浦 有业务往来 ,您可以直接咨询负责人。) 本页概述了汽车以太网的 MACSec 技术。 在第二部分中,我们将解释如何组合 MACSec 兼容设备。 (阅读时间:10分钟) 汽车以太网 通信标准 安全 日本博客
查看全文
CAN总线/协议概述及特性(日语博客) CAN概述   CAN是什么? 它代表的是控制器区域网络,而不是车辆区域网络。 它是一种简单且高度可靠的网络,广泛应用于汽车、工业设备等领域。 CAN的历史 年 历史 1986 博世是第一个正式发布CAN 协议的公司,不久之后,飞利浦(现为恩智浦半导体)成为首批发布集成 CAN 控制器的 MCU 的半导体制造商之一。 1993 国际标准化组织(ISO)将CAN标准化为ISO 11898。此后,它被拆分为三个标准: ISO 11898-1 描述了该协议的数据链路层。 - ISO 11898-2 描述了高速 CAN 的物理层(最大波特率为 1Mbps) ISO 11898-3 是后来发布的,涵盖了低速 CAN(最大波特率为 125kbps)的 CAN 物理层,也称为容错 CAN。 2012 博世发布了CAN FD 1.0(具有灵活数据速率的 CAN),这是一个支持更高数据速率的升级标准。 2018 CAN XL (加长型 CAN)问世,可实现更高的数据速率和数据长度。 与 CAN 类型的比较 物品 (经典)CAN CAN FD 加拿大 XL 出现年份 1986 2012 2018 最大数据长度 8 字节 64 字节 2048 字节 最大传动速度 1 Mbps 5-8 Mbps 10-20 Mbps 帧格式 标准帧:11 位 ID 标准帧:11 位 ID 扩展帧:29 位 ID 标准帧:11 位 ID 兼容性 - 向下兼容 CAN 向下兼容 CAN FD *CAN XL的数据长度增加到2048字节,提高了与以太网(最大1500字节)的兼容性。例如,在进行以太网到CAN XL或CAN XL到以太网的协议转换时,可以在一个帧内完成封装。 使用以太网到 CAN FD 时,需要将数据切成 64 字节的块来创建帧。 CAN帧格式比较 Keita_Nagashima_0-1746181380046.png 示例:CAN FD 标准数据帧格式 当数据大小不超过 16 字节时: Keita_Nagashima_0-1747110508669.png 如果数据大小为 20 到 64 字节: Keita_Nagashima_1-1747110532063.png 场地 解释 SOF(帧起始) 发送一个占主导地位的“0”来通知其他ECU即将收到消息。 仲裁 ID(基础 ID) (以下简称“ID”) 识别消息和优先级。标准 CAN (CAN 2.0A) 帧具有 11 位 ID,而扩展 CAN (CAN 2.0B) 帧具有 29 位 ID。 RRS(远程发送请求) 作为远程请求替换,主导值固定为“0”。 集成开发环境 指示这是标准格式帧(11 位标识符)还是扩展格式帧(29 位标识符)。 联邦国防军 它被称为灵活数据格式 (FDF) 位,用于指示帧是经典 CAN 还是 CAN FD。 主导“0”:CAN 隐性“1”:CAN FD 余 保留位。固定为显性“0”。 布里斯托尔 比特率切换。在 BRS 比特采样点切换到更快的比特率。* 调整采样点时必须小心。 电离层 错误状态指示器。指示发送节点的错误状态。占主导地位的“0”表示错误激活。 DLC(数据长度代码) 以字节为单位存储数据长度(0 到 64 字节) 数据 包含实际数据值,其长度由 DLC 字段决定。 物品数量 CAN FD 中添加了一个 4 位区域。从 SOF 到数据字段包含的填充位总数除以 8 所得的余数存储为一个 3 位格雷码值。第 4 位存储偶校验位。 CRC(循环冗余校验) 用于检查数据完整性的错误检测代码。 CRC分隔符 必须是隐性“1”。 ACK(确认时隙) 验证 CRC 校验过程是否正确。 ACK 分隔符 必须是隐性“1”。 帧结束 (EOF) 7 位。帧结束用隐式“1”表示。 CAN 功能 以下是CAN总线的五个典型特征。 特点 1:每个 ECU 共享同一总线 Keita_Nagashima_0-1746775179235.png 特点 2:简化的总线配置和差分信号提高了可靠性 ・CAN总线发送和接收数字数据“0”和“1”。 ・“0”称为“显性”, “1”称为“隐性” 。 Keita_Nagashima_2-1746182323802.png 功能 3:优先级由较小的 ID 号决定! 多个节点可能同时开始传输,在这种情况下,优先级较高的消息会优先“赢得”总线访问权限。 ・如果设备 A(ID = 110 0 1000111 (0x647))和设备 B(ID = 110 1 1111111 (0x6FF))同时发送消息(如下图所示),由于设备 A 的 ID 较小,因此它会继续发送消息。设备 B 将等待总线空闲后再重新发送。 Keita_Nagashima_0-1746688656240.png 功能 4:过滤并接收必要数据(CAN、CAN FD) 总线上的所有节点都可以发送和接收消息,并且始终监听待广播的消息。任何节点发送的消息都会被广播。 每个节点中的 CAN 控制器可以实现一个过滤器,该过滤器检查广播消息的 ID,如果 ID 在一定范围内则接受该消息,忽略超出该范围的消息。 在下面的示例中,节点 1 发送一条包含当前车辆速度的消息。该消息的ID为0x121 ,因此 - 节点 2 接受ID 范围为 0x100 到 0x1FF 的数据。 - 节点 3接受 ID 在 0x320 到 0x352 范围内的数据,但此消息的 ID 超出了此范围,因此它忽略了该数据。 Keita_Nagashima_0-1746692882498.png 特性 5:通过错误检测功能提高可靠性 在汽车或工业系统等容不得故障的系统中,可靠性至关重要。为了提高可靠性,系统采用了广泛的错误检测技术,包括在消息级别和比特级别进行错误检查。如果在任一级别检测到错误,则消息不被接受,接收节点会生成一个错误帧。 在消息级别,有CRC 校验(当接收节点计算出的 CRC 值与发送帧中包含的 CRC 值不匹配时,就会发生 CRC 错误)和格式校验(由于 SOF、EOF、ACK 定界符和 CRC 定界符位的逻辑是固定的,如果检测到相反的逻辑,就会发生错误)。 在比特级别,发送节点接收自身发送的消息,并逐位监控(比特监控)。如果读取到的比特与总线上发送的数据比特相反,则会产生错误。 此外,还有一种称为“位填充规则”的机制,如果连续出现五个逻辑电平相同的位,则会插入一个填充位(一个与这五个连续位状态相反的位)。这确保了帧边缘保持网络同步。填充帧由接收节点进行解填充。位填充适用于帧中的所有字段,但 CRC 分隔符、ACK 字段和 EOF 除外。连续出现六个极性相同的位会违反位填充规则,因此被视为错误。 功能概述 综上所述,CAN 总线在汽车和工业应用中具有诸多优势。 成本更低——每个ECU节点都可以通过单个CAN接口进行通信,从而减少布线量、重量和成本。 坚固耐用——CAN高速总线具有很强的抗电磁干扰能力,其差分信号传输方式使其具有极强的抗噪声能力。部分CAN控制器和接收器提供工业级和扩展温度范围的产品。 优先级– 帧开头包含的仲裁 ID 决定了优先级,有助于避免消息之间的冲突。 过滤器——网络上的每个节点都可以接收和发送消息,并确定消息是否合适或应该忽略。 错误检测——CAN 规范包含内置的错误处理机制,每个节点都会检查传输错误,从而提高可靠性。 最后 ・CAN 是一种已应用多年的网络,而恩智浦半导体是一家历史悠久的 CAN 公司。恩智浦半导体提供各种 CAN 解决方案,包括集成 CAN 控制器的微控制器和处理器、 CAN 收发器、系统基础芯片,以及配套的开发工具、软件、各种文档和技术支持。 要开始使用 CAN,请使用S32 Design Studio IDE 、 MCUXpresso IDE和基于模型的设计工具箱 (MBDT)中包含的示例。 ・点击此处查看有关实际运行 CAN 的文章。 1. 使用环回测试验证 CAN 总线功能。一块 FRDM 板即可满足测试需求。 我尝试使用恩智浦半导体的MCX微控制器和SDK运行CAN环回(日本博客) 2. 执行 CAN 通信,并获取和解析 CANFD 帧。*测试需要两块 FRDM 板。 使用恩智浦MCX微控制器进行基本CAN通信:两台连接单元的实际设备测试(日文博客) ========================= 我们目前无法回复此帖子“评论”部分的评论。 对于由此造成的不便,我们深表歉意。如有任何疑问,请参阅“ NXP技术问题-如何联系我们(日语博客) ”。 (如果您已经是恩智浦的分销商或与恩智浦有合作关系,您可以直接询问负责人。) 本节介绍 CAN 总线/协议的概述和特点。 恩智浦半导体长期以来一直参与 CAN 总线技术,并提供各种 CAN 产品,包括微控制器、处理器和收发器。 界面 技术聚焦 日本博客
查看全文
恩智浦技术咨询 - 如何联系我们(日语博客) 如果您不知道如何使用 NXP 产品,或者即使阅读了文档也无法理解其内容,NXP 提供了一个联系点。 在本文中,我们将以通俗易懂的方式解释如何进行查询。 *自2025年6月起,我们将接受日语咨询。 *使用问答平台前,您必须注册一个MyNXP账号。只需三个简单步骤即可免费注册。 如何联系我们 访问支持门户 → 创建新案例(进度:1/8) 访问支持门户。 ・点击下图所示的“创建新案例”开始创建案例(查询详情)。 Keita_Nagashima_3-1755498552302.png   选择目标 NXP 产品(进度:2/8) Keita_Nagashima_1-1755498372940.png   请输入问题详情(进度:3/8) ・请尽可能详细地描述您的问题(开发环境、软件版本、问题发生的频率、条件等)。 Keita_Nagashima_5-1755499128912.png   选择项目 → “创建新项目”或“选择现有项目” (进度:4/8)   如果是第一次创建项目,请选择“创建新项目”。 ・如果您已经创建了项目,请点击“完成创建”继续。 Keita_Nagashima_0-1755671978766.png 注:请用英文输入最终申请名称。   选择沟通方式(*仅限创建新项目时) (进度:5/8) ・标准是“基于电子邮件”。 Keita_Nagashima_8-1755500271850.png 向项目中添加成员(仅在创建新项目时) (进度:6/8) ・请确保您的“电子邮件地址”正确,以免将错误的人添加为成员。 - “名字”和“姓氏”仅用于项目内的身份识别,因此我们建议使用您的英文名字。 您可以稍后添加成员。 Keita_Nagashima_9-1755500760159.png 创建完成(进度:7/8) Keita_Nagashima_10-1755501216580.png 上传文件(如有必要)  (进度:8/8) Keita_Nagashima_11-1755501268158.png 最终确认 如果内容没有问题,请点击“完成”按钮结束操作。 Keita_Nagashima_12-1755501420087.png 常见问题解答 问:我还没有收到回复。 答:如果您在提交问题后的两个工作日内没有收到回复,请在支持页面选择“在线聊天”,并使用相关案例编号联系客服代表。日语在线客服通常在工作日上午 10:00 至下午 6:00 提供服务。只有当页面语言设置为日语时,客服人员才会回复。 问:谁会回复我的支持工单(案例)? 答:您可以向熟悉该产品的恩智浦工程师寻求答案。 问:提交支持工单(案例)是否需要付费? 答:本文中提到的支持工单是免费使用的。 问:我必须先创建一个项目才能创建一个案例吗? A:项目就像一个文件夹,用来整理案例,它的创建至关重要。 问:你们如何划分项目? 答:这取决于用户。大多数情况下,它是针对每个最终产品或电路板类型创建的。在某些情况下,它可以供参与单个项目的所有各方使用。 问:受访者会用日语回答问题吗? 答:用户可以用日语提问,但目前答案会以英语提供。不过,我们正在努力开发一项新功能,即当用户用日语提问时,除了英语答案外,还会提供人工智能翻译的答案供参考。我们预计这项功能将于九月底上线。 问:如果我最初的问题解决后又出现了相关问题,该怎么办? 答:通常情况下,我们会采用问答形式,所以请您创建一个新工单,并在主题栏中添加您之前咨询的工单编号,并明确注明这是一个相关问题。但是,如果您想重新查询原工单的答案,可以在工单关闭后的30天内重新打开。 详细问答 问:案例可以发布内容和评论,但是如何使用这些功能呢? 答:电子邮件回复会被记录为帖子。评论只能通过支持门户发布。评论容易被忽略,因此我们建议您通过电子邮件或支持门户向客服人员发送消息。 问:我以为我已经通过电子邮件回复了,但它却自动被识别为一个新案件。 答:如果您回复邮件时更改了邮件主题或识别码,系统可能会误将其识别为新的咨询并自动注册。由此给您带来的不便,我们深表歉意。请您尽快关闭自动注册的案例,并通过支持门户提交新的案例,以恢复之前的邮件往来。 问:我想在对话进行到一半时添加抄送成员,该如何操作? A:将你想抄送的成员添加到项目邀请(参与者)中,并在支持门户上发布新帖子。 问:我的案子被结案了,尽管我没有主动结案。 答:NXP 代表回复后,此案例将在 7 天内自动关闭。如果回复未能解决您的问题,请通过电子邮件回复或通过支持门户联系代表。 问:我可以把案件附件中的日语文件发上来吗? 答:您也可以上传包含日语的文件。但是,图像数据和PDF格式的文件可能无法使用翻译工具进行转换,因此请使用Word或Excel等文件格式。如果负责人难以理解文件,他们可能会要求您提供英文补充信息。 如果您不知道如何使用 NXP 产品,或者即使阅读了文档也无法理解其内容,NXP 提供了一个联系点。 在本文中,我们将以通俗易懂的方式解释如何进行查询。 *自2025年6月起,我们将接受日语咨询。 介绍 日本博客
查看全文
88W9098 软重启失败(电源循环正常) 我们正在评估用于 TI TMDS64EVM 评估板的 88W9098 WiFi/BT 模块,主要用作接入点。该芯片是 uBlox JODY-W377-00B 模块的一部分。 它工作正常,包括作为接入点。但是,软重启时却无法初始化。我们必须进行一次完整的电源循环,它才能正常恢复。 故障信息为 无线局域网:下载 FW 失败,nowwait:0 我们正在使用 https://github.com/nxp-imx/mwifiex分支 lf-6.6.52_2.2.0 和相应的 PCIE-UART W9098 固件版本 17.92.1.p149.53 在此之前,我们使用的是带有相应固件的 lf-6.6.3_1.0.0,但在软重启时也出现了内核崩溃。电源循环工作正常。 软重启时出现故障的是 mlan/mlan_pcie.c 中的 wlan_pcie_dnld_fw()。Callstack wise (most recent last) is: woal_request_fw() woal_init_fw_dpc() mlan_dnld_fw() wlan_pcie_dnld_fw () wlan_pcie_dnld_fw() 中的活动基本上是这样的(代码中的 /* */ 注释): wlan_pcie_init() // 成功 /* 检查固件是否已在运行 */ wlan_pcie_check_fw_status() // ret == -1: 尝试 300 次获取状态 /* 检查其他接口是否正在下载 */ wlan_pcie_check_winner_status() // ret == 0 OK /* 通过辅助程序下载固件映像 */ wlan_pcie_prog_fw_w_helper(); // ret == 0 OK /* 检查固件是否下载成功 */ wlan_pcie_check_fw_status(pmadapter, poll_num); // ret == -1 *FAILS* 奇怪的是,如果我手动关闭 hostapd,使用"ifconfig" 关闭接口,并执行 rmmod mlan、moal 和 cfg80211,之后软重启也不会失败。 因此,重启后模块仍在运行固件,但对再次下载固件没有反应。 控制台串行调试信息附后、故障发生在" WLAN: Fail download FW with nowwait: 0" 行。 欢迎提出意见和建议... Re: 88W9098 fails on soft reboot (power cycle ok) 为了解决这个问题,我们将 PD#(模块RESET)连接到系统RESET,这解决了问题。 基本上,该模块在 RESET 时仍在运行旧固件,因此驱动程序无法再次加载固件。 Re: 88W9098 fails on soft reboot (power cycle ok) 好的,我们认为这是硬件问题,导致 PCIe RESET 无法到达模块。 为了解决这个问题,我暂时将 moal/mlan 的加载/卸载设置为真正的 systemd 服务,这样重启时它就会对 moal 和 mlan 执行"rmmod" 。 这将导致模块上的固件停止运行,从而使其在下次重启时正常启动。 它无法处理诸如看门狗 RESET 之类的事情,但现在已经足够了。 如果他们能在启动时检测到模块已经在运行固件并命令其RESET,那将是对 moal/mlan 驱动程序的一个不错的改进。 谢谢你的帮助,丹尼尔。 Re: 88W9098 fails on soft reboot (power cycle ok) 您好, 我测试了两种方法(RESET按钮和代码),但它仍然对我有效。 我通过 PCIe M.2 接口连接了模块。 我正在分享我的测试结果。如果发现什么问题,请告诉我。 此致, 丹尼尔 Re: 88W9098 fails on soft reboot (power cycle ok) 你好,丹尼尔,谢谢你的测试、 实际上,我们使用的是内核 6.6.52 和 PCIE9098--17.92.1.p149.131-MM6X17437.p3-GPL。直到几周前,它还是以同样的方式出现故障,所以我认为这不是问题。 一个可能的显著硬件区别是,我们在 JODY-W377-00B 上的模块位于 M.2 E 卡上,该卡连接到 PCIe 的适配器板。 问题:如果你执行硬件 RESET (例如开发板上的 RESET 按钮)或者通过不按正常关机顺序执行的直接 Linux 重启命令,它是否也能正确地重新初始化?下面是 C 代码: #include #include #include #include #include int reboot(int op); int main(void) { sync(); if (reboot(LINUX_REBOOT_CMD_RESTART)) { perror("reboot"); return EXIT_FAILURE; } return EXIT_SUCCESS; } 我们正在调查您的板和我们的板之间可能存在的硬件差异。 谢谢, Pontus Re: 88W9098 fails on soft reboot (power cycle ok) 您好, 我在内核 6.6.52(使用最新的恩智浦 Linux 电路板支持包)中对此进行了测试,使用了以下驱动程序和 fw pcie9098--17.92.1.p149.53-mm6x17505.p4-GPL。我没有 JODY-W377-00B 模块,但我在 i.MX8MP-EVK 上用 AW-XM458 进行了测试。它在我这边起作用了。请参见 logs1.txt。 您是否可以尝试使用与我相同的版本? 如果您发现任何其他不同之处,请告诉我。 此致, 丹尼尔 Re: 88W9098 fails on soft reboot (power cycle ok) 谢谢! 我会在我这边试试。 此致, 丹尼尔 Re: 88W9098 fails on soft reboot (power cycle ok) 您好,感谢您的回复、 "soft reboot" 我指的不是电源循环。例如,"sudo/sbin/reboot --reboot" 或" /usr/sbin/shutdown-r now" 或直接从 C 语言通过"reboot(LINUX_REBOOT_CMD_RESTART);" 。 如前所述,所有这些模块都无法重新启动(见附件"fail.txt"早些时候)。它最初是通过一个简单的 udev 规则触发信号的 " insmod " 命令启动的。 我发现使模块正确启动的唯一方法是重新启动电源。 这是在 TI AM642 EVM 上的 Linux 6.6.69 上进行的。 Re: 88W9098 fails on soft reboot (power cycle ok) 感谢您提供的信息。 请确认以下内容。 在软重启之前,一切正常。请告诉我您是如何执行软重启的。 如果重新启动,一切正常。 此致, 丹尼尔 Re: 88W9098 fails on soft reboot (power cycle ok) 控制台跟踪没有附加到上一条信息中。 再次尝试....
查看全文
i.mx93 低功耗启动 你好@AldoG、 我们计划在 Yocto 6.12 上进行 i.MX93 低功耗启动。 启动到 cm33 后,有没有办法从 cm33 启动 Linux? Re: i.MX93 low power boot 你好,@WolsYang! 要在 A 核心中启动 Linux 你可以在 U-boot 终端中使用 "启动" 命令 Re: i.MX93 low power boot 你好@Chavira 在rpmsg_lite_pingpong_rtos/linux_remote中,我看到了这样的描述 主内核从RESET中版本辅助内核,然后建立内核间通信 但我没有看到任何类似于在 rpmsg_lite_pingpong_rtos/linux_remote/main_remote.c 也在 "准备演示 "中 3.启动 Linux 电路板支持包到 u-boot,然后从 SD 卡中加载 M 内核映像即可运行。(之前将图像放入 SD 卡)。=> load mmc 1:1 0x80000000 /rpmsg_lite_pingpong_rtos_linux_remote.bin => cp.b 0x80000000 0x201e0000 0x20000 => bootaux 0x1ffe0000 0 4。在启动 linux 之前,在 u-boot " mmcargs " env 中添加 " clk_ignore_unused " 5. 启动到 linux。运行"echo '7 4 1 7'> /proc/sys/kernel/printk" 更改信息级别。 我认为是先启动 a-core 然后使用 u-boot 启用 m-core Re: i.MX93 low power boot 你好,@WolsYang! 您可以在下面的链接中找到 i.MX93-EVK 示例中使用多内核的完整程序: https://github.com/nxp-mcuxpresso/mcux-sdk-examples/tree/main/mcimx93evk/multicore_examples 致以最崇高的敬意, Chavira Re: i.MX93 low power boot 你好,@ Chavira、 我们有这方面的例子吗? 据我了解,在启动 m-core 之后,u-boot 任务已经完成,并将关闭。 例如,10 分钟后,现在只有 m-core 在运行,如何启动 a-core linux? Re: i.MX93 low power boot 你好,@WolsYang! 在 i.MX93 中,两个内核可以协同工作,甚至可以同时工作。 M 内核启动后,您可以继续在 A 内核上启动 Linux。但是,根据您的配置,您可能需要对设备树进行一些调整。 众所周知,两个内核都可以访问大部分外设。因此,务必确保 A 内核的设备树中禁用 M 内核使用的任何外围设备。这样可以防止资源冲突,确保两个内核稳定运行。 顺祝商祺! 查维拉 Re: i.MX93 low power boot 你好,@ Chavira、 抱歉描述不清。 我的意思是,在启动 .bin 之后,我只在 u-boot 的 m-core 中启用 .bin内容,u-启动 将关闭(如果不正确,请告诉我) 因此,在调出 .bin只有 m-core 中的内容,如何在 a-core 中启动 Linux? Re: i.MX93 low power boot 你好,@WolsYang! 感谢您联系恩智浦支持中心! 在 M 内核上不可能运行 Linux,因为它是为实时、低功耗任务而设计的,不具备支持完整 Linux 操作系统所需的资源。 致以最崇高的敬意, Chavira
查看全文
HSE 应用程序更新 - 如何在全内存模式下更新应用程序 我正在阅读 745220-S32K3 HSE 培训 - 2022 年 10 月(2.0)、有关全内存的 HSE FW 更新程序的章节。 我有点困惑,似乎这样做的目的是更新 HSE FW 本身,而不是更新应用程序代码。 我本以为 HSE FW 会在出厂时被固定,并用于验证应用程序下载的 OTA。 如何更新应用程序代码?能否对下载进行加密并使用 HSE 进行解密? S32K344-WB Re: HSE Application Update - How to update the application in Full Memory Mode RM758225-RM00286 HSE-B 固件参考手册——V2.5 (2.5) .pdf。是我需要的。谢谢。 Re: HSE Application Update - How to update the application in Full Memory Mode A1。 请阅读表 37。RM758225-RM00286 HSE-B 固件参考手册的主要目录——V2.5 (2.5) .pdf。 HSE 固件存储在安全的 HSE 内存区(HSE 代码闪存)中。 请阅读 RM758225-RM00286 HSE-B 固件参考手册 ——V 2.5 (2.5) .pdf 的固件安装期间的第 3.2.4 章闪存布局 (FULL_MEM) 以及 S32K344、S32K314 和 S32K324 设备的 3.5.5 闪存 布局。 A2.HSE 可在现场更新,但不能卸载。您无需在每次下载应用程序时更新 HSE FW。 请阅读 RM758225-RM00286 H SE-B 固件参考手册第 11 章 HSE 固件更新 ——V2.5 (2.5) .pdf。 很抱歉,我对此不太熟悉。与 HSE 相关的问题不适合在公众场合讨论。建议在 https://www.nxp.com/support/support:SUPPORTHOME?tid=sbmenu 上提交 支持票单 。我的同事会帮你的。 Re: HSE Application Update - How to update the application in Full Memory Mode 谢谢您的回复。这就解决了一个问题。 在我的项目中,我有一个引导加载器和一个应用程序。引导加载程序只加载一次,在现场永不更新。通常情况下,我会使用引导加载程序下载新的应用程序映像并写入闪存。 我通常使用 CRC 校验的基本方法来验证新图像。 在阅读有关 HSE 的信息后,我发现它似乎可以用来对应用程序进行更安全的更新。从您的电子邮件和文件中,我现在明白了必须首先加载 HSE FW。 这就是我对整个过程的理解,假设我使用的是全内存方法,而不是 A/B 交换。 我安装了 HSE FW,我想应该有相关的 HSE 硬件。HSE 是否有自己的受保护存储区,还是使用产品板的 NVM 来存储密钥。?HSE 固件存储在产品闪存中还是存储在安全的 HSE 存储区中? HSE 可在现场更新,但不能卸载。每次下载应用程序时都需要更新吗? 当我通过像 ARINC 429 这样的通信总线下载新应用程序时。HSE 固件对此进行了身份验证。据我所知发送方使用对称密钥创建 GMAC 代码,该代码与新的应用程序映像一起通过总线发送。HSE 通过自己的密钥副本重新创建 GMAC。然后将两者进行比较,以验证应用程序映像。 使用的钥匙可以更换吗?怎么做 总的来说,这似乎不太安全。我错过了什么?如果黑客得到了这个密钥,他们就可以下载他们想要的软件。 此外,是否有可能在下载前对图像进行加密,然后让 HSE 使用不同的非对称密钥进行解密?怎么做? 因为我将使用全内存模式,所以我想我不需要创建 NVM 密钥目录。是这样吗?BSB 使用 ADKP 一次性生成密钥。存放在哪里? HSE 是否会自动验证下载,还是需要我提出申请?如果现在由 HSE 来完成这项任务,那么我的引导加载程序在验证过程中扮演什么角色?引导加载程序仍需要为下载新映像提供便利。 谢谢您的帮助。请纠正我说的任何不正确的地方。如果您能更好地解释这个过程,那就再好不过了。 Re: HSE Application Update - How to update the application in Full Memory Mode HI 是的。 这是为了更新 HSE FW 本身,而不是更新应用程序代码。 关于 OTA,建议参考之前的讨论:带 A/B 交换 OTA 更新的双应用程序引导加载器 - S32K3XX 祝好, Robin ------------------------------------------------------------------------------- 注: - 如果本帖回答了您的问题,请点击"ACCEPT AS SOLUTION" 按钮。谢谢! - 我们会在最后一次发帖后的 7 周内跟踪主题,之后的回复将被忽略 如果您以后有相关问题,请另开新主题并参考已关闭的主题。 -------------------------------------------------------------------------------
查看全文
PCF2131TFY バッテリー消費量 PCF2131TFY を使用している製品では、一部のボードで数日のうちにバッテリーが消耗するという断続的な問題が発生しています。装着されている電池はCR2032です。この問題を診断するために考慮すべき事項や検討すべき点はありますか?それとも、この部分に既知の問題があるのでしょうか? Re: PCF2131TFY Battery Draw 結局、問題はすべての PCB 上に過剰かつ洗浄されていないはんだフラックスがあり、それが過剰な電流の引き込みとバッテリーの消耗を引き起こしていたことが判明しました。 Re: PCF2131TFY Battery Draw 未使用のピンについては、以下の提案設定に従ってください。 お客様は、アプリケーションで使用していない場合は、CLKOUT ピンと TS1-4 ピンをオープンのままにしておくことができます。 CLKOUT_ctlレジスタ(13h)ビット[2:0] = 111bを設定することにより、CLKOUTピンをハイインピーダンスモードに設定できます。また、Control_4レジスタ(03h)のビット[7:4] = 0000b、Control_5レジスタ(04h)のビット[7:4] = 0000bに設定して、TS1-4ピンを非アクティブピンに設定します。   Re: PCF2131TFY Battery Draw プライベートメッセージを送信しました。 Re: PCF2131TFY Battery Draw ハイ ここで回路図を共有してもらえますか?
查看全文
マターのサンプルアプリからシリアル出力がない こんにちは。FRDM -MCXW71ボードを使って、NXPのGitHubリポジトリにあるマターサンプル(light-switch-combo-app、Lock-app、contact-sensor-appなど)を実行しようとしています。READ.mdに記載されているセットアップ手順はすべて慎重に実行しました。blhostを使用して最新のNBU .sb3イメージをCM3コアに書き込み、 J-Linkを使用して.srecファイルをCM33コアに書き込みました。電源、USB接続、シリアル設定など、すべて確認済みで、問題はありません。 それにもかかわらず、シリアルモニターにはまったく出力が表示されません。スイッチを一度押しても、ただ静かにそこに留まります。また、LED 2も点滅していません。 ハードウェアの問題を排除するために、簡単な Hello World デモと LED 点滅デモもフラッシュしてみましたが、シリアルに正しく出力されるSO、UART は間違いなく動作しており、LED もすべて正常です。 同じ問題に遭遇した人はいますか?ご提案があればぜひお願いします! よろしくお願いします! FRDMトレーニング プロトコル:Matter Re: No Serial Output from Example Apps in Matter サポートしていただき本当にありがとうございます!最新バージョンを試したところ、MCXW71 ボード上でプログラムを正常に実行でき、すべてが期待どおりに動作しているようです。 さらに、私はもともと次のリンクの例に従っていました: https://github.com/nxp-appcodehub/ap-frdm-mcxw71-light-switch-combo-app/tree/main/examples/light-switch-combo-app/nxp/mcxw71およびhttps://github.com/NXP/matter/tree/release/v1.4.0/examples/light-switch-combo-app/nxp/mcxw71 Re: No Serial Output from Example Apps in Matter こんにちは、 使用している NXP マター Github リリースへのリンクを正確に教えていただけますか?デフォルトのブランチは release/v1.4.0 です。最新リリースの 1 つは v1.4.0.2 です: https://github.com/NXP/matter/tree/v1.4.0.2/examples/contact-sensor-app/nxp これを試してみてはいかがでしょうか? 当社側で問題を再現できるようになるまで、VS Code を使用して問題のデバッグを試してみることができます。環境の設定方法の詳細については、開発ツールセクションのリリースノートをCANください: https://github.com/NXP/matter/releases/tag/v1.4.0.2 BR、 ミハイ
查看全文
MPC5746C 的寄存器保护 这些是我为 MPC5746C 实现寄存器保护下锁定机制的模块。 0xFFFB0140, /* CMU------------*/ 0xFFFB0040, /* FXOSC----------*/ 0xFFFB0180, /* MC_CGM --------*/ 0xFFFB8000, /* MC_ME ---------*/ 0xFFFA8000, /* MC_RGM --------*/ 0xFFF50000, /* MEMU_0 -------*/ 0xFFFB0080, /* PLLDIG --------*/ 0xFFFA0400, /* PMCDIG --------*/ 0xFFFC0000, /* SIUL2 ---------*/ 0xFFFB0100, /* SXOSC ---------*/ 0xFFF9C000 /* LPU_CTL -------*/ 样本 1:(0xFFFB0000,偏移 - 0x4,32 位保护) 寄存器:与 ME_MCTL(模式控制寄存器,32 位保护,偏移 0x4,见表 77-5)匹配。 基地址:0xFFFB0000。 保护大小:32 位(所有四个字节均受保护)。 计算 正常地址:基数 + 偏移量 = 0xFFFB0000 + 0x4 = 0xFFFB0004 镜像地址(区域 3):基数 + 0x2000 + 偏移 = 0xFFFB0000 + 0x2000 + 0x4 = 0xFFFB2004 软锁定位地址(区域 4): 区域 4 中的偏移量:offset/4 = 0x4 / 4 = 0x1。 地址: base + 0x3800 + offset/4 = 0xFFFB0000 + 0x3800 + 0x1 = 0xFFFB3801。 对于 32 位寄存器,所有四个 SLB(SLB0—SLB3)控制四个字节(例如,0x4 到 0x7)。 软锁定 选项 1:写入镜像地址: 向 0xFFFB2004 写入 32 位值(例如,0x80000000 可启动模式转换;有关有效值,请参阅 MC_ME 章节)。 这将更新 0xFFFB0004 的 ME_MCTL,并在 0xFFFB3801 的 SLBRn 寄存器中设置 SLB0-SLB3。 示例*(volatile uint32_t *)0xFFFB2004 = 0x80000000; 选项 2:直接写入 SLB: 写入 0xFFFB3801,设置 SLB0-SLB3。 写入 0xFF(WE0—WE3=1,SLB0—SLB3=1)以锁定所有四个字节。 示例*(volatile uint8_t *)0xFFFB3801 = 0xFF; 解锁 写入 0xF0 至 0xFFFB3801(WE0-WE3=1,SLB0-SLB3=0)以清除 SLB0-SLB3,解锁寄存器。 示例*(volatile uint8_t *)0xFFFB3801 = 0xF0; 硬锁定 将 0x00000001 写入 0xFFB3FFC 以设置 GCR.HLB,锁定 SLB 直到 RESET。 示例*(volatile uint32_t *)0xFFFB3FFC = 0x00000001; 下面是一个寄存器设置示例,它的所有 4 个地址设置都是启用的,可以是 R/W。 下面是一个寄存器设置示例,其中基址 + 偏移& 镜像地址已启用,可以设置为 R/W,其他地址不能设置。 这带来了一个严重的问题,因为 SLB 位确认了软锁定,而 GCR 位的设置则是为了实现硬锁定。 对于所有 MC_CGM 带帽寄存器,我都发现了同样的问题。 这些不同行为的原因是什么?有些地址可以修改和变更,有些则被保留。 Re: Register Protection for MPC5746C 你好 如果我硬锁任何一个模块,所有其他模块都会自动被硬锁定,这在电源模式下会出现问题。因为我不希望 FXOSC/SXOSC 和 CMU 在这里被硬锁定。 寄存器保护采用 P 桥。 petervlna_0-1754636157965.png PBRIDGE 上有 MC_CGM 模块: petervlna_1-1754636218800.png 然后将外设映射到 MC_CGM 下。看来您需要使用 SLB 而不是 HLB 来解决这个问题。 因为 HLB 会锁定整个 MC_CGM。 顺祝商祺! Peter Re: Register Protection for MPC5746C 嗨,彼得 、 感谢您的帮助。我现在可以为所有模块配置软锁和监测 SLB 了。 我还有一个关于硬锁 GCR 位的问题。根据您的解释,所有 MCCGM 上限模块(即 CMU、FXOSC、SXOSC、PLDIG 和 MCCGM)应具有一个共同的基地址,即 0xFFFB0000。 现在根据第 77.1.1 节寄存器保护配置,N OTE讨论了电源模式下的操作。 mayank22_0-1754552830865.png 正如我所说,在相同的基本地址下,如果我硬锁任何一个模块,所有其他模块都会自动被硬锁定,这在低电源模式下会出现问题。因为我不希望 FXOSC/SXOSC 和 CMU 在这里被硬锁定。 有没有办法解决这个问题? 感谢并致意 Re: Register Protection for MPC5746C 你好 以下是 SLB 的结果 CMU_LFREFR 32 - 地址基数和偏移量 CGM 模块的基数为 0xFFFB_0000 CMU 偏移为 0x140 petervlna_0-1753947014813.png CGM LFREFR 从模块基数偏移 0x14C petervlna_1-1753947034996.png petervlna_4-1753947541951.png 我通过写入镜像为 CMU_LFREFR 设置了 SLB petervlna_3-1753947365013.png 顺祝商祺! Peter Re: Register Protection for MPC5746C 嗨,这也不起作用。 CMU_LFREFR 32 偏移 0xCh 受保护的大小-16(字节 2 和 3) 0xFFFB0000,/* CMU----------*/ 基地址 -0xFFFB000C 镜像地址 -0xFFFB200C SLB - 0xFFFB3803 GCR - 0xFFFB3FFC mayank22_0-1753789974341.png Re: Register Protection for MPC5746C 你好 查看简单测试:MC_CMU - CSR petervlna_0-1753772600568.png 基地址 - 0xFFFB014C - 这是偏移地址。不是基地。 MC_CMU 模块的基数为 0xFFFB 0140。 镜像地址 -0xFFFB214C 即基座 + 偏移 + 镜像 SLB -0xFFFB3943 以参考手册中的整个 CGM 的地址为基准: petervlna_1-1753772881109.png 所以计算结果是 0xFFFB0000 + 3800 + SLB 的位置 GCR - 0xFFFB413C 同上 0xFFFB0000+3FF0 顺祝商祺! Peter Re: Register Protection for MPC5746C 嗨,彼得,这里有一些 SLB 和 GCR 失效的示例。 请检查这些地址并确认它们是否显示不同的行为。如果不是,那么这些模块会有什么问题? 1.MC_CMU - 0xFFFB0140 - { MODULE_CMU, 0xC,REG_SIZE_16}, CMU_LFREFR 基地址 - 0xFFFB014C 镜像地址 -0xFFFB214C SLB -0xFFFB3943 GCR - 0xFFFB413C mayank22_0-1753700010986.png 2.MC_CMU - 0xFFFB0140 { MODULE_CMU, 0x18,REG_SIZE_32}, CMU_MDR 基本地址 - 0xFFFB0158 镜像地址 - 0xFFFB2158 SLB - 0xFFFB3946 GCR - 0xFFFB413C mayank22_1-1753700066515.png 3.PLLDIG 0xFFFB0080 - PLLDIG_PLLCR { MODULE_PLLDIG, 0x20, REG_SIZE_16}, PLLDIG_PLLCR 基本地址 - 0xFFFB00A0 镜像地址 - 0xFFFB20A0 SLB - 0xFFFB0F5D GCR - 0xFFFB407C mayank22_4-1753700213295.png 4.PLLDIG 0xFFFB0080 - { MODULE_PLLDIG, 0x28,REG_SIZE_32}. { MODULE_PLLDIG, 0x28,REG_SIZE_32}, PLLDIG_PLLDV 基本地址 - 0xFFFB00A8 镜像地址 - 0xFFFB20A8 SLB - 0xFFFB388A GCR - 0xFFFB407C mayank22_5-1753700236791.png 5.PMCDIG 0xFFFA0400 - { MODULE_PMCDIG, 0x0,REG_SIZE_32}. { MODULE_PMCDIG, 0x0,REG_SIZE_32}、 基本地址 - 0xFFFA0400 镜像地址 - 0xFFFA2400 SLB - 0xFFFA3C00 GCR - 0xFFFA43FC mayank22_6-1753700259740.png 6.PMCDIG 0xFFFA0400 - { MODULE_PMCDIG, 0x10,REG_SIZE_32}.{ MODULE_PMCDIG, 0x10,REG_SIZE_32}、 基本地址 - 0xFFFA0410 镜像地址 - 0xFFFA2410 SLB - 0xFFFA3C04 GCR - 0xFFFA43FC mayank22_7-1753700335502.png Re: Register Protection for MPC5746C 你好 我已经检查了 PREG_PROT,它的行为就像参考手册中描述的那样: 在 ME_CGM 寄存器 SC_DC0 上: 基数:0xFFFB0000 + 偏移 7E8 镜像0xFFFB07E8 = 基数 (0xFFFB0000) + 偏移 (7E8) + 镜像 (0x2000) 在示例中,我通过软锁锁定了 SC_DC0 形式的 ME_CGM 模块。 petervlna_0-1753172674705.png 具体情况如下: petervlna_1-1753172729779.png 区域 4:为 1.5 KB,包含软锁位,区域 1 中每字节一位。与一个模块寄存器字相关的四个软锁位排列在存储器映射中的字节边界处。软锁定位寄存器可使用位掩码直接写入。 因此,必须将软锁定位的面积除以 8,才能看到相应的 SLB 设置。 基础(模块的)+ 3800 +(区域 1 的每字节一位) petervlna_2-1753172994361.png petervlna_3-1753173019294.png 对于硬锁位,整个模块只有一个。 区域 5 的大小为 512 字节,用于保存保护模式的配置位。每个模块都有一个配置硬锁位,可以防止对软锁位进行任何进一步的修改,并且只能在设置后通过系统 RESET 来清除。其他位如果被设置,将允许用户访问受保护的模块。 基数(模块) 0xFFFB0000 + 偏移 3FFC 因为 GCR 位于 5 号区域的末端。 petervlna_5-1753173243793.png petervlna_4-1753173057363.png 顺祝商祺! Peter Re: Register Protection for MPC5746C 你好 我会进行测试,并尽快给您答复。 顺祝商祺! Peter
查看全文
RW612 和开放线程函数 txpower 使用搭载 McuXpresso/Zephyr 4.2.0 的 u-blox IRIS-W106-10B (RW612)。大多数功能在 openthread 中都能正常运行。设备可以进入网状网络和 ping 等。但是软件中缺少一些功能。例如,使用 OTplatradiosetTransmippower () 会导致 RESET。 旁注:API 应支持带符号的整数,因为例如,-1 dBm 是有效的设置。 我注意到有一个例子是供应商设置的发射功率,在我将其插入后它不起作用。我认为它应该连接到 OTPlatradiosetTransmitpower () 函数中。 #define spinel_prop_vendor_nxp_get_set_txpowerlimit_cmd(spinel_prop_vendor__begin+ 0x10B) 另外,也许相关的是,获取 eui64 不起作用。我重新设计了该函数以返回 hwinfo 地址的低 8 字节:hwinfo_get_device_id。我怀疑这可能不正确。 从 C 应用程序设置 Tx 功率对我们的应用程序至关重要。 谢谢 Re: RW612 and Openthread function txpower 你好@joanou. 我可以推断你正在将 OpenThead 示例移植到 Zephyr,如果我说错了,请指正。正如我之前提到的,我建议你将Zephyr存储库中的OpenThread Shell示例作为参考和/或测试,以检查与传输功率控制相关的其他移植细节,本示例中包含了该示例。 如果该示例对您有用,请告诉我。 Re: RW612 and Openthread function txpower 您好, 我在使用 nxp_ot_cli 样本时进行了一些定制。下面是 main()。 我还为spinel 的 SPINEL_PROP_VENDOR_NXP_GET_SET_TXPOWERLIMIT_CMD 回调 添加了供应商钩子。 我为 modules/openthread/platform/radio_spinel.cpp 添加了以下内容 +otError otPlatRadioGetVendorMaxTransmitPower(otInstance *aInstance, uint8_t *aPower) +{ + otError error; + + OT_UNUSED_VARIABLE(aInstance); + + if (psRadioSpinel == NULL) + { + otLogWarnPlat("psRadioSpinel for max tx get is null"); + return OT_ERROR_GENERIC; + } + + VerifyOrExit(aPower != NULL, error = OT_ERROR_INVALID_ARGS); + error = psRadioSpinel->GetVendorMaxTransmitPower(*aPower); + +exit: + return error; +} + +otError otPlatRadioSetVendorMaxTransmitPower(otInstance *aInstance, uint8_t aPower) +{ + if (psRadioSpinel == NULL) + { + otLogWarnPlat("psRadioSpinel for set max Tx power is null"); + return OT_ERROR_GENERIC; + } + + OT_UNUSED_VARIABLE(aInstance); + return psRadioSpinel->SetVendorMaxTransmitPower(aPower); +} + 修改了 openthread 模块,以支持供应商钩子。 修改:include/openthread/platform/radio.h 修改: src/lib/spinel/CMakeLists.txt 修改: src/lib/spinel/radio_spinel.cpp 修改: src/lib/spinel/radio_spinel.hpp 修改: src/lib/spinel/spinel.h 修改: src/lib/spinel/spinel_driver.cpp SPINEL_PROP_VENDOR_NXP_GET_SET_TXPOWERLIMIT_CMD = (SPINEL_PROP_VENDOR__BEGIN + 0x10B)、   int main(void) { 日志文件("nxp_ot_cli entry"); k_sleep(K_MSEC(500)); ot_context = openthread_get_default_context(); __确定(ot_context != NULL, "Fatal: OpenThread context not available!"); ot_instance = openthread_get_default_instance(); __确定(ot_instance != NULL, "Fatal: OpenThread instance not available!"); 日志文件("设置开放线程领导权重"); otThreadSetLocalLeaderWeight(ot_实例, 2); 日志文件("完成设置领导权重"); k_sleep(K_MSEC(500)); 日志文件("设置 openthread 无线电最大发射功率为 12/2 dBm ..."); 错误 err1 = otPlatRadioSetVendorMaxTransmitPower(ot_instance, 12); 日志文件("设置开放线程无线电最大发射功率: %s(错误=%d)", otThreadErrorToString(otThreadErrorToString(err1), err1); k_sleep(K_MSEC(500)); uint8_t aPower = 0; 日志文件("获取开放线程无线电发射功率 ..."); 错误 err2 = otPlatRadioGetVendorMaxTransmitPower(ot_instance, &aPower); 如果((aPower % 2 == 0))     { 日志文件("获取开放线程无线电发射功率为 %u或 %u.0 dBm、 %s(err=%d)", aPower, aPower/2, otThreadErrorToString(err2), err2);    } 不然     { 日志文件("获取开放线程无线电发射功率为 %u或 %u.5 dBm、 %s(err=%d)", aPower, aPower/2, otThreadErrorToString(err2), err2);    } //LOG_INF("Loop now"); 虽然(1)     { 日志文件("现在循环"); k_sleep(K_MSEC(1000));    } 返回 0; } Re: RW612 and Openthread function txpower 你好,@joanou,希望你一切都好。 您是在自定义应用程序中进行测试,还是在任何现有示例中进行测试?如果是现有范例,您做了哪些修改? 此外,能否请您测试一下 openthread"shell" 示例?该示例提供了一条更改传输功率的输入命令。 请告诉我这是否对您有效,或者您是否看到了不同的行为。
查看全文
MIMXRT1160 独特 ID 电子保险丝 MIMXRT1160 在 0x900-0x910 处有一个 64 位的唯一 ID 熔丝。该值可以用作设备唯一 ID,还是跨处理器/批次的 " 唯一 "?如果是这样,还有其他预编程的寄存器或熔丝可用作设备唯一ID吗? 谢谢! Re: MIMXRT1160 Unique ID eFuse 你好@tbonkers、 感谢您提供的最新信息。 关于 " 我的要求是为每台设备都有一个唯一的 ID,我想如果我能使用熔丝 0x900 的值那就太好了。" 你是说你使用了熔丝 0x900 的值,一个 32 位数据?如果是这样,我认为这不是一个好的选择,因为 32 位数据并不是唯一的。 但是,如果你使用熔丝值 0x900 和 0x910,那么 64 位数据是唯一的(唯一 ID),那就没问题了。 希望它能帮到你。 敬上 MayLiu Re: MIMXRT1160 Unique ID eFuse 你好, 我的要求是为每台设备都有一个唯一的 ID,我想如果我能使用熔丝 0x900 的值那就太好了。 从你的回复中,我了解到每个单位的熔丝值确实是唯一的-如果我错了,请纠正我。 谢谢 Re: MIMXRT1160 Unique ID eFuse 你好@tbonkers、 非常感谢您关注我们的产品并使用我们的社区。 是的,IMXRT1160 具有恩智浦配置的 64 位唯一 ID。 mayliu1_0-1754970106981.png 关于 "如果是这样的话,还有其他预编程的寄存器或熔丝可用作设备唯一 ID 吗?" 能否告诉我您的要求的更多细节? 在 IMXRT1160 中,已经在 0x900-0x910 处提供了一个 64 位设备唯一 ID 熔丝。 mayliu1_1-1754970965556.png 顺祝商祺! MayLiu
查看全文