Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
LPC55SXX 安全启动和闪存修改 大家好, 我们有一个使用 LPC55S06 微控制器的应用程序,我们想在其中添加安全启动和内存加密功能。 除了常规固件和编译过程中确定的一些静态数据集外,我们还需要在片上闪存中保存一些运行时数据。我们想知道这些用例是否相互兼容,或者对闪存的任何写入是否会在下一个安全启动周期中不可避免地导致签名失效。 换句话说,是否有可能假设生成一个包含闪存页面 1 到 x 中所有静态存储空间的二进制文件,然后配置 Prince/Secure 启动 以验证这些内存部分,但忽略除初始 .sb 之外的另一部分 x 到 y文件用于动态内存? 你能否给出一些关于如何使用安全配置工具设置内存布局和配置闪存区域/加密的提示? 预先致谢, Johannes Re: LPC55SXX secure boot and flash modification 你好@johannes_ferch 感谢您的回复。 对于最新的问题,我已帮您创建了一个新的私人票务。 我会在新邮件中回复您。 谢谢! BR 爱丽丝 Re: LPC55SXX secure boot and flash modification 你好,@Alice_Yang、 感谢您的回复,这些信息已经非常有用了! 感谢您根据我们的使用情况/要求提供建议。我试图通过以下概述和内存布局(当然,如果技术上更方便,我们也可以进行调整)来大致形象地描述和说明我们要实现的目标: 第 1 项包含我们的业务逻辑,该逻辑是从源代码版本到常规二进制文件中的。编译和链接后,我们获取生成的十六进制文件,并在版本后步骤中附加一些静态数据(第 2 项:应用程序所需的特征图、查询表等),这会生成一个包含代码和静态信息的 .hex 文件。这是我们想要一个安全的启动映像的工件,在设备启动期间对其进行签名和验证。 在 Item/Region 3 中,我们希望能够存储一些特定于设备的动态数据,这些数据不能成为上述设备通用工件的一部分。我们的生产工作流程将在每个单元上编程上述工件,然后执行应用程序。运行后,我们使用串行协议提供设备特定的信息,例如序列号、批号等,这些信息将在生产期间通过 UART 检索并保存在非易失性存储器中。这些信息之后不会被修改。最后,商品会被代码包,软件包和发货。 一旦部署到现场,我们还希望在运行期间将一些使用时间信息持久保存到同一动态区域(只是在环形缓冲区中跟踪一些使用时间等,没有什么特别的)。我们采取不同的记忆部分,以避免干扰生产过程中提供的信息。 1.您有什么具体建议值得我们考虑? 2。这样的东西对于 PRINCE 配置有感知吗? 3.我看了您提到的 PRINCE en/decryption SDK 示例--在什么情况下我们需要包含类似"PRINCE_FlashProgramWithChecker "这样的函数?如果我们不需要加密,是否也可以禁用配置中的区域 2,以避免这种额外的复杂性? 非常感谢, Johannes Re: LPC55SXX secure boot and flash modification 你好@johannes_ferch 1) 启用安全启动后,对底层内存的任何修改是否会因为哈希值不再匹配而自动使安全启动签名失效? -> > 在安全启动期间,整个闪存未经过验证。您可以指定安全映像的长度。 2) 能否通过在内存中进行空间分隔来避免这种情况?例如,在一个 PRINCE 区域(如0 下文)和动态数据(例如 1 下文)? ->> 是。 3)关于您的用途,我建议您描述一下您的要求和应用细节,我们将为您提供建议。 谢谢! BR 爱丽丝 Re: LPC55SXX secure boot and flash modification 嗨,爱丽丝、 感谢您的答复和提供的资源。 我知道 LPC55 系列设备的 PRINCE 区域与文档不同,但我还不清楚 PRINCE 和安全启动是如何协同工作的。我已经在安全配置工具中看到了相应的下拉菜单(见下文),但是我自己无法想出一个心理模型。在安全启动期间的图像验证期间使用哪些数据,仅使用最初编程的区域或整个片上存储器? 也许对我目前的问题更有针对性: 启用安全启动后,对底层内存的任何修改是否会因为哈希不再匹配而自动使安全启动签名失效? 是否可以通过在内存中进行空间分隔来规避这一问题?例如,在一个 PRINCE 区域(如0 下文)和动态数据(例如 1 下文)? 为了获得更多背景/动机,我们希望在动态数据区域内的每台设备上存储一个设备特定的序列号,这在固件/映像创建期间尚不清楚。我们仍然希望获得安全启动的好处,但不想失去存储一些字节数据的可能性。还是这些用例不兼容,我们是否必须依赖一些外部存储器IC? 谢谢, Johannes Re: LPC55SXX secure boot and flash modification 你好@johannes_ferch 是的,PRINCE 可以配置为加密不同的内存区域。 SDK 中提供了 PRINCE 演示,请参考演示了解实施细节。 详情请参阅 UM -> " 44.17 PRINCE 实时加密或解密详情". 要使用高效密码学标准(SEC)工具进行安全启动,您可以参考以下主题。 https://community.nxp.com/t5/MCX-Microcontrollers-Knowledge/MCUXN947-Security-Configuration-Secure-Boot-Lifecycle/ta-p/1986577 谢谢。 BR 爱丽丝
查看全文
S32K314 でデバッグ ポート暗号化を有効にすると、どのような HSE 機能が影響を受けますか? S32K314にHSEファームウェアをインストールし、HSEプロパティを設定してデバッグポートの暗号化認証を有効にしました。認証方法はパスワードベースで、現在のライフサイクルはOEMです。この状況では、 HSE関連のどの機能が影響を受けますか? Re: 关于S32K314开启调试口加密后会对HSE哪些功能有影响? 現在の設定では、次の HSE 関連の機能と動作が影響を受けます。 - 安全なデバッグアクセス デバッグ アクセスは制限されており、アプリケーション デバッグ キー/パスワード (ADKP) を使用した認証が必要です。 デバッグ エントリ中に認証を適切に処理するには、SECUREDEBUG ターゲット ラベルを使用するようにデバッガー (S32DS または Lauterbach Trace32 など) を構成する必要があります。 - ライフサイクルに依存する制限 ライフサイクルが OEM_PROD または IN_FIELD に進むと、安全なデバッグが必須になります。 ライフサイクルを進める前に、キー カタログのフォーマットと ADKP のプロビジョニングを完了する必要があります。これらの操作は CUST_DEL ライフサイクルでのみ許可されます。 ライフサイクルが進むと、事前に設定されていない限り、HSE ファームウェアを再インストールしたり、特定の HSE 機能を再構成したりすることはできません。 - 影響を受けるHSEサービス ご使用の構成では、次の HSE サービスが影響を受けるか、必要になります。 ProgramADKPService: デバッグ パスワードを設定するために使用されます。 AdvanceLifecycleService: デバイスを OEM_PROD ライフサイクルに移動します。 セキュア デバッグ モードの選択: 構成する必要があります (静的または動的)。 デバッグ認証: スクリプトまたはデバッガー構成 (例: debug_authorization.cmm、debug_App_ADKP.py) を介して処理する必要があります。 - デバッグに関する考慮事項 認証が失敗した場合、または正しく構成されていない場合は、デバッグがブロックされます。 記述子を初期化し、HSE サービスを正しくトリガーするには、特別なスクリプトまたは HSE DemoApp の例を使用する必要がある場合があります。
查看全文
LPC55S16 - 错误 @0x38000 使用 LPCS55S16 PCBA 在很大程度上基于参考设计。不使用安全功能。 使用 MCUXpresso 进行引脚配置、电路板支持包生成等... 但使用 IAR 来执行应用程序开发调试。 正在集成嵌入式系统学院的第三方引导加载程序。 按照他们的说明建立内存映射,应用程序 FLASH 基本上应从 0x4400 - 0x3CFFB 运行。 我知道 PFR 位于 0x3D000。 使用 IAR 的默认闪存加载器,但当我尝试从调试环境中推出修改后的应用程序时,却得到了错误信息: 如果我将应用程序闪存的上限降至小于 0x38000,就不会出现问题。 知道发生了什么事吗? 我意识到闪存被分割成 32KB 的区域,允许安全和非安全混合访问,而 0x38000 与最后一个区域的起始点对齐。 但是,正如我已经说过的,我们并没有使用安全模式,而且我查看了相关寄存器,也没有发现最后一个区域为什么要用于安全使用。 为什么不能访问 0x38000 和 PFR 开始之间的闪存? 谢谢。 Re: LPC55S16 - Error @0x38000 嗨,@JK_265、 您使用的具体零件编号是什么?如"图 1 所示。LPC5500 系列闪存布局" 以下应用说明:LPC5500 系列闪存编程技巧,其中 LPC55s1x 有两种变体,一种可以编程到 0x3_CFFF,另一种则不能。 BR, Edwin.
查看全文
针对 MCSPTE1AK344 的 AMMCLib 基准测试 公司:MACNICA 联系人姓名:矢 泽悠也设备:S32K344 队员们好 客户目前正在评估在 S32K344 上使用 AMMCLib 进行电机控制应用的情况,并要求提供性能指标以评估其实时可行性。具体来说,他们希望了解 AMMCLiB 函数在 160 MHz 内核上执行时的计算负荷和执行时间。 在题为 "面向汽车电机控制应用的恩智浦软件和工具解决方案(TP-TD-AUT217)"的演讲中,为 S32K144 电机控制 FOC 无传感器示例提供了 AMMCLib 基准。 我们是否有适用于 MCSPTE1AK344 平台(或一般用于 S32K3xx 设备的 ammClib 功能)的 ammClib 基准测试数据可以与客户共享? 提前感谢您的帮助。 祝您愉快 致以最崇高的敬意, Leonardo AMMCLib 优先级:高 Re: AMMCLib Benchmarks for MCSPTE1AK344 非常感谢! Re: AMMCLib Benchmarks for MCSPTE1AK344 嗨,莱昂纳多、 我在此分享 S32K3xx 最新的 AMMCLib 基准测试结果。这些数据涵盖了在 160 MHz 内核上运行的关键 ammClib 函数的执行时间和计算负载,与 TP-TD-AUT217 演示中参考的 S32K144 基准进行了相关的比较。 致以最诚挚的问候, David
查看全文
IW611 Wifi 模块驱动程序和固件 您好, 我想澄清版本 wifi 驱动程序的步骤以及一些与 IW611 有关的问题。请帮忙看看。谢谢。 我正在使用内核 5.10,根据我的理解,为 IW611 版本 wifi 驱动程序的步骤如下。如果我说错了,请指正。 1) 克隆仓库:http://github.com/nxp-imx/mwifiex.git 查看与我的内核版本最接近的版本,即: lf-5.10.y_1.0.0 问 : 该 lf-5.10.y_1.0.0 分支上次更新是在 4 年前。该分支的源代码是否是最新的,是否支持 IW611 的所有功能? 2) export KERNELDIR=< PATH TO KERNEL SOUCES> ,指向 5.10 内核源代码。 3) 更新 $CROSS_COMPILE 3) cd 进入 wlan_src 4) 清理干净 && 生成版本 其他问题 对于https://github.com/nxp-imx/imx-firmware.git中的固件,我如何知道 IW611 使用的是哪个固件?另外,我的情况是否也需要查看 lf-5.10.y_1.0.0 分支? IW611 瑞安 Re: IW611 Wifi module driver and firmware 你好@RyanKhor 问 : 该 lf-5.10.y_1.0.0 分支上次更新是在 4 年前。该分支的源代码是否是最新的,是否支持 IW611 的所有功能? --> 我们为每个版本提供功能列表,你可以查看。适用于i.MX应用处理器的嵌入式Linux|恩智浦半导体 中的固件 https://github.com/nxp-imx/imx-firmware.git我如何知道 IW611 使用的是哪个固件?另外,我的情况是否也需要查看 lf-5.10.y_1.0.0 分支? --> iw611 和 iw612 使用相同的固件。 顺祝商祺! 肖恩
查看全文
MPC5746C 闪存写入解释 你好 我正在使用 MPC5746C 控制器,我注意到无法擦除小于 16KB 的数据块(请参阅此帖子:MPC5746 擦除和写入查询 - NXP Community)。 但 MCU 只能写入小于 16 KB 的数据块,而且只有在扇区已被擦除的情况下才能写入。就我而言,我写的是 4KB 的连续块,两次编程之间可能相隔几分钟、几小时或几天。 我想通过引用 MCU 参考手册或任何恩智浦文档的某些部分,向我的同事解释 MCU 的哪些功能可以实现这种行为。 我在参考手册(MPC5746C 参考手册,修订版 6.1,2019 年 1 月)中找到了这段摘录:" 读取嵌入式闪存会返回一页 256 位的数据,这些数据可能会缓冲在闪存控制器的迷你缓存 中。闪存编程可按双字(64 位)、页(256 位)或四页(1024 位) 。 逐块擦除闪存。" 从这段摘录中,我是否可以得出这样的结论:如果一个 16 KB 的数据块被擦除,我是否可以以每双字、每页或每四页的方式写入该数据块,直至其最后一个地址?只要我不试图对已编程的地址进行编程。 我没找到哪里说过要先擦除闪存才能编程。这是因为 NXP 决定不描述闪存的固有特性吗? Re: MPC5746C Flash Write explanation 从这段摘录中,我是否可以得出这样的结论:如果一个 16 KB 的数据块被擦除,我是否可以以每双字、每页或每四页的方式写入该数据块,直至其最后一个地址? - 是的,你说得对。 我没找到哪里说过要先擦除闪存才能编程。这是因为 NXP 决定不描述闪存的固有特性吗? - 这是所有闪存的基本原理。如果在编程前没有擦除,则称为过度编程,在某些情况下也会使用这种方法(EEPROM 仿真)。
查看全文
[AZBIL/PLC/][SE050]关于 SE050 的 "软件物料清单 "的问题 专家们好 客户是 AZBIL,他们想知道是否有 SE050 的 SBOM 文档。"软件物料清单 "包括 ROM ID、小程序版本、使用的库、许可证、漏洞详情和依赖关系树等信息。我们是否有此类信息可与他们分享? 已与 AZBIL 签署了一份 NDA。 顺祝商祺! 坎 Re: [AZBIL/PLC/][SE050]Question about the “Software Bill of Materials” for SE050 你好,Kan、 集成电路本身没有 SBOM,因为我们的产品不包含任何公共库,而是作为交钥匙系统交付的。恩智浦会报告产品本身存在的任何漏洞,客户无需深入了解集成电路的 SW。 我们的 MW 包含 MW 本身的元器件和许可证清单,但不包含 IC。 亲切的问候, Michael
查看全文
s32g a53 qnx で pfe のドキュメントをダウンロードするにはどうすればいいですか? こんにちは、NXP QNX に PFE を適用するためのマニュアルは見つかりましたが、 「PFE_S32G_A53_QNX_UserManual.pdf」および「PFE_S32G_A53_QNX_IntegrationManual.pdf」のドキュメントをダウンロードする場所が見つかりませんでした。どうすれば入手CANますか? s32g での QNX PFE エラー Re: How to download the doc of pfe on s32g a53 qnx? こんにちは、 @SandalWood 投稿ありがとうございます。 あなたが言及した文書は次のソフトウェアパッケージに含まれています。NXPアカウントからダウンロードしてみてください。 お役に立てれば幸いです。 BR チェイン
查看全文
Communication by I2C in JCOP4.x To communcation JCOP4.x by I2C, please find example code for reference Please also check items as folllwing in advance. 1. Confirm base OS support I2C 2. Check parameter configuration      I2C_SPI_PARAMS      ATR_I2C_IF_BYTES Smart Cards Re: Communication by I2C in JCOP4.x Please use default value for parameter I2C_SPI_PARAMS and ATR_I2C_IF_BYTES Re: Communication by I2C in JCOP4.x The code was helpful, but has an error in it in I2CTester.java: This section should be -  case I2C_TRANSFER:     //The communications configuration needs to be set up for each call of the API.     //All TLV TAGS to do this must be present in the input buffer     len = I2cMaster.i2cMaster(buf, ISO7816.OFFSET_CDATA, len, buf, (short)0, (short)225);     apdu.setOutgoingAndSend((short) (0), len); (e.g. the output length should match the return length from the I2CMaster.i2cMaster call, and the buffer length shouldn't be set by the length of the incoming command, but should be closer to  the  length of the APDU buffer) Re: Communication by I2C in JCOP4.x Here's the fixed I2C_Tester.java file.  For some unknown reason, this forum doesn't support uploads of .java files - so I added a .c at the end.  Save the file, remove the .c and you should be able to compile this. This fixes a few bugs in the sample code provided by NXP. Re: Communication by I2C in JCOP4.x For some reason, the code I sent didn't upload.  Let me try again.  This is corrected I2C_Tester.java - but .java files aren't supported as uploads for some reason so this is here as .txt
查看全文
RTD 6.0.0 中 BCTU DMA FIFOx 请求编号差异 队员们好 报告一下 在使用S32K39-37-36 - eMIOS/BTCU/SAR-ADC/DMA - [RTD600] 时,我发现了以下差异(可能会让用户感到困惑): 根据S32K396RM 中附带的S32K39_and_S32K37_and_S32K36_DMAMUX_map.xlsx文件,BCTU DMA FIFOx 请求的 DMAMUX 源编号从 0 开始: 在资源管理器 CDD (Rm)驱动程序中是相同的: 但在Bctu_Ip驱动程序中,FIFO 的编号从 1 开始。 因此, Bctu_Ip 驱动器中的 FIFO 1 与 Rm 驱动器中的 FIFO 0 相对应。这就奇怪了。 提前感谢您的帮助。 祝您愉快 致以最崇高的敬意, Leonardo 优先级:中等 RTD 来源:恩智浦内部来源:恩智浦内部 Re: BCTU DMA FIFOx requests numbering discrepancies in RTD 6.0.0 你好@_Le_、 按照参考手册中的 BCTU 进行操作,然后 Bctu_Ip 驱动程序,FIFO 编号从 1 开始,开发的 RTD 团队遵循此信息。 BCTU 的 DMAMUX 源已按照S32K39_and_S32K37_and_S32K36_DMAMUX_map.xlsx执行 正如你所说的那样。 因此,这个问题与 S32K39_and_S32K37_and_S32K36_DMAMUX_map.xlsx 和参考手册之间的映射信息有关。 这不是 RTD 驱动程序的问题,您应该向文档团队提出这个问题。 顺祝商祺! 丹
查看全文
Rt1176_evkb OTA イーサネット経由 私は rt1176 evkb を使用しています。コードのダンプとデバッグには j-link とシリアル リンカーを使用できます。イーサネット経由で OTA を適用する場合、それがどのように可能かを教えてください。また、そのためのガイダンスも提供します。@nxp #NXPAnalogComp FRDMトレーニング ハンズオン・トレーニング i.MXRT 102x i.MXRT 105x Re: Rt1176_evkb OTA Via Ethernet こんにちは、ラビラジさん。 次のThreadが役に立つかもしれません: 解決済み: RT1170 FOTA の例が必要です - NXP コミュニティ 解決済み: RT1170 - フィールドファームウェアアップデート - NXPコミュニティ よろしくお願いいたします。 グスタボ Re: Rt1176_evkb OTA Via Ethernet こんにちは、 私は i.MX RT1176 EVKB に取り組んでおり、OTA (Over-The-Air) アップデートを実装するためのオプションを検討しています。Lightweight IP (LWIP) スタックを使用せずに、 MAC 間通信 (つまり、生のイーサネット フレームの使用) によってイーサネット経由で OTA アップデートを実行できるかどうかを知りたいです。 OTA を純粋に MAC レイヤーで処理する (LWIP をバイパスする) 例、SDK サポート、または推奨されるアプローチはありますか? あるいは、LWIP (または別の IP スタック) は OTA 実装に必須ですか? ありがとう。 — ラビラジ Re: Rt1176_evkb OTA Via Ethernet こんにちは、 イーサネットを介した OTA の実装は一般的な要件です。通常の方法は、ファイルのアップロードを処理CANシンプルな Web サーバーをデバイス上で実行することです。 このために、 Mongoose Networking Library をCAN。これは、HTTP、MQTT、WebSocket などの幅広いネットワーク プロトコルを提供する組み込みシステム用の軽量ライブラリです。主な機能は強力な HTTP サーバーです。大容量ファイルのアップロードを処理するためのサポートが組み込まれているため、Mongoose では使いやすい API を通じてサポートされている Over-the-Air (OTA) ファームウェア アップデートに最適です。このライブラリは十分に文書化されており、ベアメタルや RT1170 ボード上の RTOS 環境など、さまざまなプラットフォーム間で簡単にポータブルできるように設計されています。 実用的な出発点として、Mongoose を使用した実用的な OTA 実装を示す、RT1170 用のシンプルな MCUXpresso プロジェクトを作成しました。直接インポートして、どのように動作するかをCAN確認します。 注意: 私は Mongoose 開発チームの一員です。これが始めるのに役立つことを願っています。
查看全文
I2Cインターフェースを備えたCLRC663 plus I2C インターフェースを備えた CLRC66303HN を使用する必要があります。 NxpNfcRdLib_RC663 を I2C を使用するように変換する方法の例はありますか? DAL は SPI インターフェースのみをサポートしているようです。 Re: CLRC663 plus with I2C interface I2C を備えたコンポーネントを宣伝しているのに、このインターフェースを使用する可能性を提供していないのは少し残念です。 CASEを開けてみようと思います。 よろしくお願いいたします。 マーティン Re: CLRC663 plus with I2C interface 残念ながら、I2C ベースの例はありません。 解決済み: CLRC663/610 と i2c 通信の例 - NXP コミュニティ
查看全文
LPC1768 CAN 驱动程序中的 RBS 位未设置 CAN 控制器配置正确 - 位定时已设定,进入正常模式,可看到接收到的帧。收到帧时,寄存器CANxRFS、CANxRID 和 CANxRDA会正确更新。我正在 LPC1768 上实现一个波特率为 500 kbps 的中断驱动 CAN 驱动程序。 但是,即使接收到完整的 CAN 帧,也不会在 canxSR 或 canxGSR 中设置 RBS(接收缓冲区状态)位。我没有在CANxCMR中设置RRB位来版本接收缓冲区,因此在版本缓冲区之前,RBS位应保持设置状态。 能否解释一下为什么 RBS 位可能无法设置,或者在这种设置下 LPC1768 CAN 是否存在任何已知问题? 感谢您的支持。 LPC17xx Re: RBS bit not setting in LPC1768 CAN driver 你好@Nisarga 根据你的描述 我想您可以查看 AFMR 注册表。 我认为,如果绕过了接收过滤,报文就会直接进入接收寄存器(CANxRFS/RID/RDA/RDB),而不会更新 RBS。 敬请查阅。 BR 哈利
查看全文
How to modify the LISTSTAR register in the S32K312 BCTU module? Hello Everyone,      LISTSART is a read-only register. In the S32K3XXRM, these two locations describe the functionality of LISTSART.     1) Is the value of the LISTSART register unmodifiable?     2) Is the reset value of LISTSART[LISTZE] equal to the maximum number of channels in CL?     3) If LISTSTAR[LISTSZ] cannot be modified, what are the use cases for this register? Thanks. Re: How to modify the LISTSTAR register in the S32K312 BCTU module? Hi, 1) yes, it is read only 2) it indicates the size of the CL in number of elements. 32 is implemented 3) module use it to indicate last list element. It wraps the pointer to list address 0 when the CL pointer reaches the last available list address/element (LISTSTAR[LISTSZ] minus 1) BR, Petr
查看全文
在 S32K311 中实现写入操作的闪存驱动程序 您好, 我在向pFlash写入数据时遇到了问题,我按照参考手册进行了操作,但我仍然无法写入内存。请帮我解决这个问题。因为时间紧迫。 我还附上了我的代码供你参考。 谢谢! Re: FLash driver implementation for write operation in S32K311 嗨,丹尼尔 1.我尝试使用参考手册中提到的所有寄存器组合进行解锁,包括: PFLASH.PFCBLK_SSPELOCK[0].R = 0x00000000U; //闪存块0 PFLASH.PFCBLK_SSPELOCK[1].R = 0x00000000U; //闪存块 1 FLASH.SPELOCK.R = 0x00000000U; FLASH.SSPELOCK.R = 0x00000000U; FLASH.XSPELOCK.R = 0x00000000u; FLASH.XSSPELOCK.R = 0x00000000u; PFLASH.PFCBLK_SPELOCK[0].R = 0x00000000U; PFLASH.PFCBLK_SPELOCK[1].R = 0x00000000U; PFLASH.PFCBLK_SPELOCK[2].R = 0x00000000U; PFLASH.PFCBLKU_SPELOCK[0].R = 0x00000000U; // UTEST 块锁定 但是,DFlash 始终保持锁定状态,任何擦除/编程尝试都会设置 PES=1。 请您澄清一下: S32K311 上 D-Flash 块的正确寄存器和寄存器索引。 S32K311 上的 D-Flash 是否需要特殊的解锁机制(UTEST 熔丝、FCCU、生命周期状态等)。 任何显示成功的 D-Flash 解锁 + 写入的参考示例。 2.无法解锁最后 256 KB P-Flash: 即使使用了上述所有寄存器组合,0x004B0000 - 0x004FFFFF位置或以上的任何内容仍会被锁定。 该区域是由不同的锁块(2 号锁块?)控制,还是与 D-Flash 共享? Re: FLash driver implementation for write operation in S32K311 你好,@emb-enockal、 要对从 0x00480008 开始的 8 字节进行编程,你需要在 DATA [2-3] 寄存器中写入数据。 关于锁,我周二之前都不在办公室,现在无法在硬件上进行测试。 我建议你使用 RTD 驱动程序 (C40_Ip) 作为参考。 此致, 丹尼尔 Re: FLash driver implementation for write operation in S32K311 嗨,丹尼尔 谢谢你的澄清。 是的,我意识到我试图从我正在编程的同一个 PFlash 块中执行写入功能。将写例程移到另一个块后,它开始工作了。 不过,我有两个后续问题: pFlash 连续写入 当我在地址 0x00480000 处写入 8 个字节时,它就会成功。 但是,如果我尝试在 0x0048000 8 处写入接下来的 8 个字节,操作就会失败。 写入成功的下一个地址是 128 字节之后。 看起来控制器只允许在 128 字节(四页)边界处进行编程。 有没有办法在同一个四页中连续编程较小的块(8 字节),或者必须同时写入所有 128 字节? DFlash 解锁问题 根据建议,我尝试使用SPELOCK[2]和SSPELOCK[2] 解锁 Block_2,但该程序块仍被锁定。 我还尝试清除模块级和平台级锁定寄存器,但 DFlash 区域仍然无法解锁。 以下是我尝试的解锁顺序: PFLASH.PFCBLK_SSPELOCK[0].R = 0x00000000U; //闪存块0 PFLASH。pfcblk_sspelock[1].R= 0x00000000U; //闪存块 1 FLASH.SPELOCK.R = 0x00000000U; FLASH.SSPELOCK.R = 0x00000000U; FLASH.XSPELOCK.R = 0x00000000u; FLASH.XSSPELOCK.R = 0x00000000u; 能否请您帮助我理解解锁 DFlash Block_2 的正确方法,并确认是否支持在同一四页内连续写入? 感谢您的帮助。 Re: FLash driver implementation for write operation in S32K311 你好,@emb-enockal、 闪存编程代码不得位于正在编程的同一闪存块中。 如果需要对同一闪存块进行编程,请确保将执行代码放在 SRAM 中。 在此示例中,C40_Ip API 位于 SRAM 中: 有关参考,请参阅:https://community.nxp.com/t5/S32K-Knowledge-Base/S32K312-C40-Ip-SRAM-RTD-500-DS35/ta-p/2074245。 DFlash 位于 Block_2,由 SPELOCK[2] 和 SSPELOCK[2] 锁定。 此致, 丹尼尔 Re: FLash driver implementation for write operation in S32K311 大家好, 我被 S32K311(48 引脚)的 PFlash/DFlash 编程卡住了。现在,当我在写入函数的末尾设置断点时,我可以对P-Flash 进行编程,但如果我不保留该断点,CPU 就会跳转到反汇编,并且 RWE 标志被设置为 1。 此外,我也无法解锁 D-Flash(所有解锁尝试似乎都被忽略)。请告知。 我观察到的是 只有当我在写入函数中保留一个断点时,PFlash 写入序列才会完成。如果我移除该断点,CPU 会在写入请求后立即进入反汇编(看起来像是中断/读取故障)。 尽管写入了以下解锁序列,D-Flash 仍然处于锁定状态: PFLASH.PFCBLKU_SPELOCK[0].R = 0x00000000U; /* 清除 UTEST 块锁(已尝试) */ /* 清除模块锁 */ FLASH.SPELOCK.R = 0x00000000U; FLASH.SSPELOCK.R = 0x00000000U; /* 平台级块解锁 */ PFLASH.PFCBLK_SPELOCK[0].R = 0x00000000U; PFLASH.PFCBLK_SSPELOCK[0].R = 0x00000000U; 还附上了代码供您参考。 Re: FLash driver implementation for write operation in S32K311 你好,@emb-enockal、 您能详细介绍一下这些问题吗? 您是否看到任何错误标记? 为了简单起见,我建议从阻断法开始: 数据寄存器必须与四页面对齐。 您不能从正在编程的程序块中执行代码。 此致, 丹尼尔 Any support, information, and technology (“Materials”) provided by NXP are provided AS IS, without any warranty express or implied, and NXP disclaims all direct and indirect liability and damages in connection with the Material to the maximum extent permitted by the applicable law. NXP accepts no liability for any assistance with applications or product design. Materials may only be used in connection with NXP products. Any feedback provided to NXP regarding the Materials may be used by NXP without restriction.
查看全文
SWO Data Trace functionallity (on MCXA156) Hello NXP Community, I have been experimenting with the Debug functionalities of the MCXA156 Controller and its respective development board. My setup: (FRDM-MCXA156) as well as MCXA156 in a custom board. MCUXpresso IDE v25.6 [Build 136] [2025-06-27] MCU Link pro Debugger So far with various examples from the NXP Expresso SDK I was able to cover most of debugging needs. (Breakpoints, Datawatch points, ITM printf redirect, Interrupt tracing etc.) Somehow I am stuck with usage of Data Watch Trace/Stream over SWO. I am at a point where I think I have misunderstood the capabilities of the MXCA156 debugging feature. To my understanding the MCXA156 supports ITM and DWT. With this it should be possible to add read/write data comperators and stream/trace out the appropriate data over the SWO pin. With my setup it seems I cant get to work the "SWO Data" window to work even if all other tracing feature seems to work fine. I am on the right track with my setup or does the MCUXpresso IDE simply not supporting my use-case yet? Best regards Alex Re: SWO Data Trace functionallity (on MCXA156) Hello @AlexRu  To use SWO, you can follow the provided step guide. Hardware Requirements: Ensure that the chip’s SWO pin is connected to the debugger’s SWO interface. (This is FRDM-MCXN947 board) Software Configuration: When creating a new project, select “Redirect printf/scanf to ITM” to redirect printf/scanf output to ITM. 2. Configure the Trace Clock: CLOCK_AttachClk(kTRACE_DIV_to_TRACE); /*! Switch TRACE to TRACE_DIV */ /*! Set up dividers */ CLOCK_SetClkDiv(kCLOCK_DivTraceClk, 3U); /*! Set TRACECLKDIV divider to value 3 */ 3. Configure ITM Console View in MCUXpresso IDE: Open SWO ITM Console. Configure the corresponding Core Clock and Trace Clock in both the IDE settings and your code    . 4. View the Output Results. For details on SWO and DWT usage, please refer to MCUXpresso_IDE_25.06_Instruction_Trace_Guide.pdf. You can find this guide under MCUXpresso IDE install path.  BR Alice   Re: SWO Data Trace functionallity (on MCXA156) Hi Alice, thank you very much for your detailed visualisations on how to setup the SWO Tracing. In my case I already verified the electrical connection of the SWO pin (MXCA-156 PCB) to my MCU-Link Pro Debug Probe. The PDF you mentioned has indeed more detailed information and extends my knowledge. Nevertheless it does not really explain/disprove my assumutions of DWT usage. In my setup I already see data from Interrupt returns and Interrupt entry points in the "SWO Interrupts" windows: (this is live data from my SW! Meaningfull data and correct timing information.) With this information I verfied that my electrical connection via SWO pin is working, trace clocks are enabled and frequency is as expected in my SWO Trace Config. What I am missing (or maybe there is a misunderstanding on my side?) is the function to trace Data via a Data Watch comparator (DWT) to the SWO trace pin in window "SWO Data". After enabeling the "play" button I dont receive any trace information:  I even veriefied that with my config of MXCA156 the data watchpoints are limited to 2 comparators, so the IDE seems to be able to set them and warns about too many Data Watch points set (I did it intentionally to check the plausibility): So my question is: Does the IDE support this method of debugging or is there a misunderstanding on my side and the DWT does not provide this kind of Data tracing capabilities at all? Re: SWO Data Trace functionallity (on MCXA156) Hello @AlexRu  Thanks for your reply. Could you please let me know which data you want to use DWT to watch? Also, please share a project that can reproduce the issue and provide a video showing all the steps you took. I will use this information to reproduce and check the issue on my side. Thank you! BR Alice Re: SWO Data Trace functionallity (on MCXA156) Hello @Alice_Yang , I did prepare a minimalistic Project based on the SDK Example (LED Blinky) for the FRDM-MCXN236 Demonstration Board. (demo_apps -> LED_BLINKY_PERIPHERAL) The MCXN236 Board setup seems to show the same effect as the MCXA156 Board I used before. I just wanted to confirm this behaviour on another Board. Pin config set P0_2 -> Output SWO (Default in this example) Enabled the TRACECLK and TRACECLKDIV (1) as this example uses BOARD_BootClockFRO12M() Added following code to see some action on glocal ram variables: volatile uint32_t debug_cnt = 0; void SysTick_Handler(void) { /* Toggle pin connected to LED */ GPIO_PortToggle(BOARD_LED_GPIO, 1u << BOARD_LED_GPIO_PIN); debug_cnt++; //<- added for demonstration purpose }  Attachments: Zip with demo project, video of my debug session. You can see that "SWO Data" does not show any tracing data. Global variables window shows the increment of debug_cnt in SysTick_Handler cycle of ~1s. Also "SWO Interrupts" shows the entry and exit of SysTick_Handler() reliably so the electrical connection of SWO trace seems to work correctly. Let me know if I can provide more info to narrow down this issue. I would also be happy if you could confirm whether my expectation of tracing a global/static RAM variable with DWT is possible. Or I have a misunderstanding. Re: SWO Data Trace functionallity (on MCXA156) Hi Alice, thank you for your effort. So it seems that MCUXpresso does not support the "data trace" debugging currently. Is it possible to request this for future releases? From my outsider perspective it seems that there is not much missing to make it work. SWO Interrupt seems to work just finde and extends to advanced debugging functionalities. SWO Data tracing whould further extend the possibilities for Debugging in NXPs Xpresso Toolchain. Best regards Alex Re: SWO Data Trace functionallity (on MCXA156) Hello @AlexRu  I tested on my side. This cannot output the variable’s value in real time. It can only check the variable’s value when debugging is paused. BR Alice Re: SWO Data Trace functionallity (on MCXA156) Hello @AlexRu  Thank you for your reply. I will forward this request to the MCUXpresso development team and keep you updated on any progress. Thank you.   BR Alice
查看全文
架构和寄存器级代码 我想要恩智浦 s32k311 的这种架构图,这样我就能了解其工作原理,我想为每个外设和模块编写寄存器级裸机代码....,请帮帮我。 Re: architecture and register level code 你好@piyush1 该微控制器平台基于运行频率高达 120 MHz 的单核 ARM Cortex-M7,包括以下关键功能: NVIC — 嵌套向量中断控制器 FPU – 浮空点单元 MPU - 内存保护单元 DSP - 数字信号处理能力 高速缓存和 TCM 内存配置包括: 1 MB PFlash,带 ECC(纠错码) 64 KB DFlash,带 ECC 128 KB RAM,带 ECC 为了清晰起见,总线架构采用颜色编码: AHB(高级高性能总线):绿色和浅蓝色 APB(高级外围设备总线):深蓝色 AIPS(AHB 到外设桥接器):红色和棕色 - 桥接 AHB 与外设模块 AXBS(高级交叉开关):主互连,管理总线主站和从机端口之间的通信,并在多个主设备访问同一个从机时处理仲裁。 网络安全由 HSE-B(硬件安全引擎 — B 型)处理。提供加密服务和安全启动功能。 关于整合: 平台上的元器件与内核(例如 AXBS、eDMA 控制/状态、XRDC)紧密耦合。 平台外元器件通常是未直接连接到内核的外围模块(例如 ADC、通信接口)。 其他参考图,请参阅 S32K3xx 数据表,修订版 11 的图 2。 Re: architecture and register level code 好的,我从参考手册中得到了示意图现在详细解释一下这个架构这样我就能理解所有东西,我可以配置时钟控制设置、外围设备、总线、存储器地址和寄存器级编程 Re: architecture and register level code 你好@piyush1 我们没有相同的示意图;但是,我们提供了设备的简化方框图。请参阅 S32K3xx 参考手册修订版 10 的图 5。 为了更深入地了解 S32K3 系列每个功能的运行方式,我们建议您查看 S32K3xx 参考手册,其中详细解释了所有功能。此外,还有培训演示和应用笔记可能会有所帮助。这些资源可在 S32K3 产品页面(S32K3 汽车通用微控制器)的文档部分找到。 请注意,目前可用于 S32K3 设备的唯一软件开发工具包是实时驱动程序 (RTD),可从 S32K3 xx 标准软件中获得。 BR、VaneB
查看全文
如何在使用 PE 下载固件时格式化 D-flash 您好, 我们的项目遇到了一个有关 D-闪存擦除的问题。闪烁 .elf 文件时或 .S19 文件时,我们发现 D-闪存在闪存过程后并没有被清除--它仍然保留着残余值。我们希望每次通过 PE 闪存时都能擦除 D 闪存。此外,该项目还使用了 S32K314 芯片。请问原因何在?谢谢! Re: How to format D-flash while downloading firmware with PE 你好,@gumu、 PE Micro 调试器不是恩智浦的产品。 S32DS IDE 内置了适用于基于 Eclipse 的 Arm IDE 的 GDB 服务器插件,这是一款 PE Micro 产品。 https://www.pemicro.com/products/product_viewDetails.cfm?product_id=15320151 该插件有此选项: 请联系 PE Micro 支持部门,了解有关其专有算法的详细信息、 谢谢! 顺祝商祺! 丹尼尔
查看全文
IMX1170 EVKB - 在 FreeRTOS 中运行 LVGL 任务和 SPI 任务时出现 SPI 通信数据丢失问题 在运行 LVGL 任务和 SPI 任务时遇到问题,如果运行 LVGL 任务,数据就会丢失。如果 LVGL 任务已注释,则 SPI 不会丢失数据。SPI 运行频率为 2 MHZ,我们正在使用LPSPI_SlaveTransferNonBlocking()。 ,SPI 外设配置为传输 。 Re: IMX1170 EVKB - SPI communication dataloss Issue while Running LVGL task and SPI task in FreeRTOS 您好, 请参考官方的 lvgl 示例,看看是否存在基于相同硬件的性能问题。 此外,如果您使用 NXP GUI Guider 工具进行开发,还可以了解如何提高性能。 Re: IMX1170 EVKB - SPI communication dataloss Issue while Running LVGL task and SPI task in FreeRTOS @Sam_Gao @Jack310West 当前 lvgl TASK 优先级小于 SPI 任务优先级。 我已尝试更改刷新率,但没有发现任何明显改善。 ,在 freertos 配置中,我们启用了时间切片功能,同时还启用了抢占功能。 Re: IMX1170 EVKB - SPI communication dataloss Issue while Running LVGL task and SPI task in FreeRTOS 您好, 合理的做法是提高 SPI 任务的优先级,使其高于 LVGL 的优先级,或优化 LVGL 的性能(如降低刷新率、简化用户界面),并确保 LVGL 中没有关键部分长时间禁用中断。 Re: IMX1170 EVKB - SPI communication dataloss Issue while Running LVGL task and SPI task in FreeRTOS 通过降低时钟频率,效果会更好,但我们的使用情况需要 2 mhz,还有其他建议吗? Re: IMX1170 EVKB - SPI communication dataloss Issue while Running LVGL task and SPI task in FreeRTOS 您好! LVGL 运行时会丢失 SPI 数据,而注释 LVGL 时不会丢失,这强烈表明存在资源争用或 CPU 饥饿现象。LVGL 任务可能消耗了太多 CPU 周期,导致 SPI 任务或其中断服务例程 (ISR) 无法及时处理 LPSPI_SlaveTransferNonBlocking() 完成。提高 SPI 任务的优先级,使其高于 LVGL 的优先级,优化 LVGL 的性能(如降低刷新率、简化用户界面),并确保 LVGL 中没有关键部分长时间禁用中断。暂时降低 SPI 时钟速度也有助于确认它是否是吞吐量瓶颈。
查看全文
カスタムMIMXRT1176AVM8AボードでNXP SDKsサンプルを実行する方法 MIMXRT1176AVM8A プロセッサ (MIMXRT1170-EVK とは異なります) を搭載したカスタム ボードがあります。SDK サンプルを実行したいのですが、必要な変更に関するガイダンスが必要です。 ハードウェアのセットアップ: MCU: MIMXRT1176AVM8A (EVKとは異なります)。 外部フラッシュ: S25FL128L (QSPI、16 MB) (EVK の W25Q512NWEIQ とは異なります)。 SDRAM: W9812G6KB-6J (32 MB) *(EVK の W9825G6KH-5I とは異なります)。 その他の変更: LED、UART ピンなどの異なる GPIO。 助けが必要なこと: Flex-SPI NORフラッシュセットアップ: S25FL128L (Winbond ではない) を使用しているため、適切に起動するために flex SPI または config C ファイルを更新するにはどうすればよいですか? SDRAMの初期化: EVK は異なる SDRAM チップを使用します。DCD 設定をどのように調整すればよいですか? デバッグのヒント: SDK サンプルをカスタム ボードに移植する場合によくある落とし穴は何ですか? リクエスト: 誰かシェアしてくれませんか: SDK の例を適応させるためのステップバイステップの手順はありますか? カスタム Flex SPI/SDRAM セットアップの構成例はありますか? よろしくお願いいたします! Re: How to Run NXP SDK Examples on Custom MIMXRT1176AVM8A Board 周波数が 800MHz を超えない限りは問題ありません。 BR、 オマール Re: How to Run NXP SDK Examples on Custom MIMXRT1176AVM8A Board MIMXRT1176AVM8A の Cortex-M7 コアの動作周波数は 800 MHz です。MIMXRT1176DVMAA (EVK のプロセッサ) の場合は 1 GHz です。 Re: How to Run NXP SDK Examples on Custom MIMXRT1176AVM8A Board いいえ、コンポーネントは同じですが、パッケージが異なります。 BR、 オマール Re: How to Run NXP SDK Examples on Custom MIMXRT1176AVM8A Board EVK は MIMXRT1176DVMAA を使用しているため、MIMXRT1176AVM8A プロセッサの EVK サンプルを使用すると問題はありますか? Re: How to Run NXP SDK Examples on Custom MIMXRT1176AVM8A Board このドキュメントを参照してください: FLEXSPI NOR Flashのデバッグを有効にする方法\ このドキュメントには、異なるフラッシュ メモリを使用するときにデバッグを可能にするためのガイドラインが記載されています。 より詳しい資料として、こちらが参考になるかもしれません: i.MX RT FLEXSPI ブートガイド - NXPコミュニティ SDRAM に関しては、SDK の例を参照してメモリを構成することをお勧めします。DCD は同じ SDRAM 構成を使用するため、ブート時にロードされます。ここでは、SDRAMパラメータの設定方法の例をいくつか示します。解決済み:MIMXRT1176 SEMC設定(デュアル16ビットSDRAM(W9812G6KH)) - NXPコミュニティ よろしくお願いします、 オマール
查看全文