Multi Source Translation Content

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Multi Source Translation Content

ディスカッション

ソート順:
MIMXRT700-EVK フラッシュエラー こんにちは、 NXP LinkServerを使って MIMXRT700-EVK にアプリケーションをフラッシュできません。 ハードウェア/ソフトウェア: ボード: MIMXRT700-EVK MCU:MIMXRT798S デバッガ:搭載MCU-Link MCU-Linkファームウェア:V3.172 リンクサーバー: 26.6.137 OS:Ubuntu Linux 電源はJ54から供給されます。 フラッシュ処理中、LinkServerは以下を報告します。 Error: Wire Ack Fault - target connected? Error: Wire not connected Failed on connect: Ee(42). Could not connect to core. No connection to chip's debug port Flash operation exited with code 1 MCU-LinkはPCによって正しく検出され、LinkServerはプローブを検出できます。 重要なハードウェアの観察点は、D4の赤いLEDが点灯していないことです。MIMXRT700-EVKのドキュメントによると、D4はMCU/リセットの状態を示し、ONは通常のプロセッサ活動、OFFはプロセッサがリセット中であることを示します。 RT700のプリコネクトスクリプトも実行しましたが、SWD接続は依然として以下のエラーで失敗します。 Error: Wire Ack Fault - target connected? Error: Wire not connected サポートリクエスト 何かアドバイスをいただけますか: 基板がJ54から電源供給されているのに、 D4 LEDが消灯しているのはなぜですか? RT700プロセッサをリセット状態からどうやって解除 できますか? リセット、起動、またはハードウェア構成の確認が必要な項目はありますか? アプリケーションをフラッシュするためにLinkServerのコネクティビティを復元するには、どのような復旧手順を使えばよいでしょうか? 評価ボード Re: MIMXRT700-EVK Flashing Error こんにちは、@Aparna1 さん。 おそらく、電力がMCUや基板全体に適切に分配されておらず、搭載デバッガにだけ送られている可能性が高いです。 緑色のD10 LEDも消灯していますか? J2のジャンパー位置がピン7と8をショートさせていることを確認してください。 BR、 エドウィン。 Re: MIMXRT700-EVK Flashing Error これはUSB接続後の状態です Re: MIMXRT700-EVK Flashing Error こんにちは、 はい、以下の点を確認しました。 緑色のD10 LEDが点灯しています。 J2はピン7と8を短絡させている。 私の方で追加の確認が必要な場合はお知らせください。 よろしくお願いいたします。 アパルナ Re: MIMXRT700-EVK Flashing Error こんにちは、 チケットの状況を教えていただけますか?まだ返答を待っています。   よろしくお願いします。    
記事全体を表示
The TCP client in S32K358 is not receiving the handshake packet. I've created a TCP client thread. When the handshake function is executed, I can see the messages sent by the client to the server and the messages sent by the server to the client using Wireshark. However, in the final step, the TCP client doesn't return a frame. I've been monitoring the GMAC receive interrupt and found it's stuck in a loop. The MCU TCP client hasn't received the final acknowledgment frame, so it hasn't sent the final handshake acknowledgment frame. What could be the reason? Re: S32K358 中TCP 客户端握手包接收不到 Hello @sunshine88, Are you using the lwip example provided inside the RTD package? If yes, could you share your RTD version?  Can you also share which status is being returned to RxStatus?  As requested on your other community post (LWIP TCP/IP Server-Client Hands-On), I've sent you a private message with the Lwip_HandsOn project for S32K148. Best regards, Julián
記事全体を表示
MIMXRT700-EVK 刷写错误 你好, 我无法使用 NXP LinkServer 将我的应用程序刷写到MIMXRT700-EVK上。 硬件/软件: 电路板:MIMXRT700-EVK MCU:MIMXRT798S 调试器:板载 MCU-Link MCU-Link固件版本:V3.172 链接服务器:26.6.137 操作系统:Ubuntu Linux 电源通过 J54 提供 刷写过程中,LinkServer 报告: Error: Wire Ack Fault - target connected? Error: Wire not connected Failed on connect: Ee(42). Could not connect to core. No connection to chip's debug port Flash operation exited with code 1 PC 可以正确检测到 MCU-Link,LinkServer 可以检测到探针。 重要的硬件观察结果是D4红色LED指示灯不亮。根据MIMXRT700-EVK文档,D4指示MCU/RESET状态,其中ON表示处理器正常活动,OFF表示处理器处于RESET状态。 我还执行了RT700预连接脚本,但SWD连接仍然失败,并显示以下错误: Error: Wire Ack Fault - target connected? Error: Wire not connected 支持请求 请问您能否提供以下建议: 为什么 当电路板通过 J54 供电时, D4 LED 灯不亮 ? 如何使RT700处理器退出RESET状态? 是否需要检查任何RESET、启动或硬件配置? 我应该使用哪种恢复程序来恢复LinkServer 的连接,以便我可以刷写应用程序? 评估板 Re: MIMXRT700-EVK Flashing Error 嗨@Aparna1 , 电源很可能没有正确分配给 MCU/电路板的其他部分,而是只分配给了板载调试器。 绿色的D10 LED指示灯也熄灭了吗? 请确保 J2 的跳线位置将引脚 7 和 8 短接。 BR, 埃德温。 Re: MIMXRT700-EVK Flashing Error 您好, 是的,我已经核实了以下内容: 绿色D10 LED指示灯亮起。 J2 将引脚 7 和 8 短接。 如果还需要我进行任何额外的检查,请告知。 问候, 阿帕娜 Re: MIMXRT700-EVK Flashing Error 这是连接 USB 后的状态 Re: MIMXRT700-EVK Flashing Error 您好, 请问我的工单有什么最新进展吗?我仍在等待回复。   谢谢!    
記事全体を表示
如何使用 DSP 控制 MPC5644A 您好,我想了解如何在MPC5644A中使用和配置DSP。 Re: How to use DSP for MPC5644A 你好, MPC5644A 不包含专用 DSP 外设或 DSP 协处理器。DSP 功能是通过集成到 e200z4 CPU 内核中的信号处理扩展 (SPE) 提供的。无需单独配置DSP。要利用 DSP 功能,必须在编译时启用 SPE 支持,允许编译器或应用程序代码使用 SPE 指令,例如 SIMD 和 MAC 操作。 顺祝商祺! Peter
記事全体を表示
S32K358のTCPクライアントはハンドシェイクパケットを受信していません。 TCPクライアントスレッドを作成しました。ハンドシェイク関数が実行されると、Wiresharkを使用してクライアントからサーバーに送信されたメッセージとサーバーからクライアントに送信されたメッセージを確認できます。しかし、最終ステップでTCPクライアントはフレームを返しません。GMAC受信割り込みを監視していたところ、ループに陥っていることがわかりました。MCU TCPクライアントは最終確認フレームを受信していないため、最終ハンドシェイク確認フレームを送信していません。原因は何でしょうか? Re: S32K358 中TCP 客户端握手包接收不到 こんにちは、@sunshine88 さん。 RTDパッケージ内のlwip例を使っていますか?もしそうなら、RTDのバージョンを教えていただけますか? RxStatusに返却されるステータスも教えてもらえますか? 他のコミュニティ投稿(LWIP TCP/IP サーバー・クライアント・実践形式)でのご要望通り、Lwip_HandsOnプロジェクトのプライベートメッセージを送りました。S32K148。 よろしくお願いします、 ジュリアン
記事全体を表示
Is i.MX 9 "there yet"? I started a project in a few years ago and NXP's i.MX 9 line of MPUs were beginning to be released but they were largely unobtainable so I went with a beefy i.MX 8. At this stage, it's way more power than I need and I'd like to move to a much smaller MPU. I was planning on getting the smallest i.MX 8 but the i.MX91 is the smallest cpu they have. I was wondering if I would be better off with the 91 instead of a more mature 8. Thermals are my primary concern so I would assume new is always better, but I just don't know if they are "there yet" since they are still fairly new. A more apples to apples port moving to an 8 could also be a motivator. Re: Is i.MX 9 "there yet"? Hi @ceva156  What is the main purpose of your project? Which IMX8 series product are you currently using? B.R Re: Is i.MX 9 "there yet"? Hello, Don’t need the heavier multimedia GPU capabilities of the i.MX8, the i.MX91 could be a much better fit and give you a simpler, lower-power design. Re: Is i.MX 9 "there yet"? Hello, I’d lean toward the i.MX91 if thermals and size are your main priorities. 
記事全体を表示
i.MX 9 准备好了吗? 几年前我开始了一个项目,当时 NXP 的 i.MX 9 系列 MPU 开始发布,但它们基本上无法获得,所以我选择了性能强大的 i.MX 8。现阶段,它的性能远远超过我的需求,我想换用性能小得多的微处理器。我原本打算买最小的 i.MX 8,但他们最小的 CPU 是 i.MX91。我一直在想,如果选择91型而不是更成熟的8型,会不会更好。散热是我最关心的问题,所以我认为新的总是更好,但我不知道它们是否已经“达到标准”,因为它们还比较新。更公平的比较,例如将港口升级到 8 级,也可能是一个激励因素。 Re: Is i.MX 9 "there yet"? 你好@ceva156 您的项目的主要目的是什么?您目前使用的是哪款IMX8系列产品? BR Re: Is i.MX 9 "there yet"? 你好, 如果不需要 i.MX8 的强大多媒体 GPU 功能,i.MX91 可能更合适,并且能提供更简单、更低功耗的设计。 Re: Is i.MX 9 "there yet"? 您好,如果您最看重散热性能和尺寸,我会推荐 i.MX91。
記事全体を表示
How to use DSP for MPC5644A Hello, I would like to know how to use and configure DSP in MPC5644A Re: How to use DSP for MPC5644A Hello, MPC5644A does not contain a dedicated DSP peripheral or DSP coprocessor. DSP functionality is provided through the Signal Processing Extension (SPE) integrated into the e200z4 CPU core. There is no separate DSP configuration required. To utilize DSP features, the application must be compiled with SPE support enabled, allowing the compiler or application code to use SPE instructions such as SIMD and MAC operations. Best regards, Peter
記事全体を表示
Functional Safety in Motor Control with AMMCLib and ASCLib When developing motor control for automotive and industrial systems, functional safety is a core requirement to ensure a motor does not produce unintended torque or speed. However, implementing complex algorithms like Field-Oriented Control (FOC) as a functionally safe component introduces severe architectural complexity, significantly increases development effort, and degrades overall performance. To solve this, NXP utilizes a safety decomposition approach that divides the application into a non-safety-related part (QM) and a safety-related part (ASIL). For this approach, NXP plans to provide the Automotive Safety Checker Library (ASCLib), which delivers ready-to-use safety checkers for the safety part. This enables high safety compliance without requiring a redesign of the QM motor control (MC) part. The Perfect Match: AMMCLib (QM) + ASCLib (ASIL) Many applications use highly optimized NXP's Automotive Math and Motor Control Library (AMMCLib) for the motor control part. While AMMCLib delivers exceptional performance, it is a Quality Management (QM) level library. Compliance with safety standards (such as ISO 26262) required teams to build custom safety mechanisms around the QM-level AMMCLib, consuming significant time and effort. NXP's ASCLib solves this by providing standardized, production-ready safety checkers. This eliminates proprietary safety software development and significantly reduces time-to-certification. Untitled Diagram (1).png How AMMCLib and ASCLib Fit Together The block diagram below illustrates a standard FOC system using this concept. The blue motor control blocks represents the QM-level AMMCLib functions, while the green blocks represent the ASCLib checkers that monitor key points to ensure safety. This architecture is based on the IEEE Low Complexity Safety Concept for FOC PMSM. source-NXPcommunity5.drawio.png This reference architecture shows that integrating ASCLib requires no changes to the existing QM motor control architecture. Full data-type compatibility allows ASCLib checkers to map directly to AMMCLib signals, ensuring seamless interconnection. The architecture assumes that Freedom from Interference (FFI) between the safety-related and QM software components is ensured. While standard FOC is a common use case, ASCLib is not limited to it. Thanks to its modular, independent blocks, the library supports alternative topologies and advanced techniques - including sensorless FOC and single-shunt current measurement. Inside ASCLib: A Layered Safety Architecture The ASCLib features a highly structured, layered software model organized hierarchically into Layers and Packages: pavelsvadbik_0-1784127185062.png The Service Layer (Top Layer) Exposes high-level functionalities directly to the safety application through two independent packages: High-Level Checkers (HLC): Wide range of application-level safety checkers tailored for various motor control systems. Fault Manager (FMG): Sophisticated fault-handling component managing error synchronization, configuration, and application notifications. The Core Layer (Foundational Layer) Provides the low-level building blocks utilized by the Service Layer. It consists of two essential packages: Low-Level Checkers (LLC): Delivers fundamental mathematical and verification functions. Fault-Debouncing (FDB): Provides generic fault debouncing algorithms. Developer Tip: The entire library is fully modular, isolated, and independent. If your application requires a unique checker, you can easily build your own custom checkers using the existing low-level blocks inside the LLC and FDB packages. Furthermore, the Fault Management (FMG) package is entirely optional—you are not forced to use it and can implement your own application-level error handling instead.   Not Just For Automotive Don't let the name fool you. While ASCLib has "Automotive" in its title and natively supports ISO 26262 workflows, its safety principles are universal. ASCLib applies perfectly to industrial systems complying with IEC 61508. To fit seamlessly into your existing development workflow, ASCLib features a dual-delivery option: Pure C Source Files: For direct integration into any bare-metal or RTOS-based embedded project. BAM (Bit Accurate Models): Ready-to-use blocks for Model-Based Design (MBD), allowing you to drag, drop, and simulate your safety architecture directly in MATLAB®/Simulink®. Key Benefits for Developers AMMCLib Remains QM: Keep using your existing, highly optimized AMMCLib code for core motor control. Model-Based development: Accelerate your design cycle by building and simulating your entire safety part using dedicated ASCLib BAM directly in MATLAB®/Simulink® before generating target C code. Accelerated Certification: Pre-designed safety checkers and integrated fault management significantly simplify your safety compliance and auditing processes. Get Started and Share Your Thoughts ASCLib is designed to be completely MCU-independent, giving you the flexibility to deploy it across various NXP hardware platforms. To accelerate your development, it is planned to be fully verified and ready to integrate with NXP’s automotive and industrial MCUs. By separating control from safety, you get the best of both worlds: maximum motor performance and uncompromising safety. Working on an upcoming ISO 26262 or IEC 61508 motor control project? Let’s discuss in the comments how the AMMCLib + ASCLib approach can simplify your design. We would also highly appreciate it if you could take a moment to fill out our quick survey below to share your insights with us! This project has received national funding from the MEYS and the funding from European Union’s Horizon Europe research and innovation framework programme under grant agreement No. 101112274. The ISOLDE project, nr. 101112274 is supported by the Chips Joint Undertaking and its members Austria, Czechia, France, Germany, Italy, Romania, Spain, Sweden, Switzerland. Building functionally safe motor control systems doesn’t have to mean sacrificing performance or redesigning your architecture. Discover how NXP combines AMMCLib and ASCLib to separate safety from motor control, reduce development effort, and accelerate certification—without compromising efficiency. Motor Control Re: Functional Safety in Motor Control with AMMCLib and ASCLib does ASCLib ONLY works together with AMMCLib? when and how should we promote ASCLib? Re: Functional Safety in Motor Control with AMMCLib and ASCLib Hi, ASCLib is NOT limited only to AMMCLib. While ASCLib is fully compatible with AMMCLib at the data type level, it can technically be integrated with any other library or custom algorithms without any limitations.   Regarding the promotion: ASCLib is not officially released yet. However, we are actively sharing information about it to gather real-world feedback. We would highly appreciate customer feedback on what their current gaps are and how ASCLib could help fill them. Re: Functional Safety in Motor Control with AMMCLib and ASCLib Hi, looks like very powerful lib, is ASCLib plan to be a premium (paid) software? what materials can we use to discuss with customer? any plan to have a beta version?
記事全体を表示
AMMCLibとASCLibを用いたモーター制御における機能安全 オートモーティブやインダストリアルシステム向けのモータ制御を開発する際、機能安全は、モーターが意図しないトルクや速度を発生させないことを保証するための重要な要件です。 しかし、フィールド指向制御(FOC)のような複雑なアルゴリズムを機能的に安全なコンポーネントとして実装すると、アーキテクチャが著しく複雑化し、開発工数が大幅に増加し、全体的なパフォーマンスが低下します。 この問題を解決するために、NXPはセーフティ分解アプローチを採用しています。これにより、アプリケーションは安全関連以外の部分(QM)と安全関連の部分(ASIL)に分割されます。この枠組みの中で、NXPはASCLIB (オートモーティブ セーフティ チェッカーライブラリ)を提供しています。セーフティ部分向けのすぐに使えるセーフティチェッカーを提供することで、QMモータ制御部分を再設計することなく、高いセーフティ基準への準拠を実現できます。 完璧な組み合わせ:AMMCLIB(QM)+ASCLIB(ASIL) ほとんどの顧客は、コアとなるMC処理に、高度に最適化されたNXP AMMCLIB (自動車用数学およびモーター制御ライブラリ)を利用しています。AMMCLIBは優れたパフォーマンスを発揮するものの、品質管理(QM)レベルのライブラリである。 ISO 26262などの安全規格に準拠するためには、チームはQMレベルのAMMCLIBを中心に独自の安全機構を構築する必要があり、多大な時間と労力がかかった。このプロセスを効率化するため、NXPは標準化された、すぐに実用化可能なソリューションとしてASCLIBを提供しています。包括的な事前検証済み安全チェックツールを提供することで、独自の安全ソフトウェア開発の必要性を大幅に削減し、設計から認証までのサイクルを加速します。 AMMCLIBとASCLIBの連携方法 この概念が実際にどのように適用されるかを説明するために、以下のブロック図は標準的なフィールド指向制御(FOC)システムの例を示しています。このシナリオでは、モーター制御ブロックは既存のQMレベルのAMMCLIBコード上で動作し、ASCLIB安全チェッカーが重要なポイントを監視して安全性を確保します。このアーキテクチャは、 FOC PMSM向けのIEEE低複雑度セーフティコンセプトに基づいています。 このリファレンスアーキテクチャは、ASCLIBを統合する際に、既存のQMモータ制御アーキテクチャに変更を加える必要がないことを示しています。完全なデータ型互換性により、ASCLIBチェッカーはAMMCLIB信号に直接マッピングできるため、シームレスな相互接続が保証されます。 標準的なFOCは一般的な使用例ですが、ASCLIBはそれに限定されるものではありません。モジュール式で独立したブロックのおかげで、このライブラリは、センサーレスFOCやシングルシャント電流測定など、代替トポロジーや高度な技術をサポートしています。 ASCLIBの内部構造:階層型セーフティアーキテクチャ ASCLIBは、階層的にレイヤーとパッケージに整理された、高度に構造化された階層型ソフトウェアモデルを特徴としています。 サービス層(最上位層) 2つの独立したパッケージを通じて、高度な機能を安全アプリケーションに直接公開します。 高レベルチェッカー(HLC):さまざまなモータ制御システム向けにカスタマイズされた、幅広いアプリケーションのセーフティチェッカー。 障害マネージャ(FMG):エラーの同期、構成、およびアプリケーション通知を管理する高度な障害処理コンポーネント。 コア層(基礎層) サービス層で使用される低レベルの構成要素を提供します。これは2つの重要なパッケージで構成されています。 低レベルチェッカー(LLC):基本的な数学的機能と認証機能を提供します。 フォールトデバウンス(FDB):汎用的なフォールトデバウンスアルゴリズムを提供します。 💡 開発者向けヒント:ライブラリ全体は完全にモジュール化され、分離されており、独立しています。アプリケーションに独自のチェッカーが必要な場合は、LLCおよびFDBパッケージ内の既存の低レベルブロックを使用して、独自のカスタムチェッカーを簡単に構築できます。さらに、障害マネジメント(FMG)パッケージは完全にオプションであり、使用を強制されることはなく、代わりに独自のアプリケーションレベルのエラー処理を実装することも可能です。 オートモーティブに限らない 名前に惑わされないでください。ASCLIBは名称に「オートモーティブ」という言葉を含み、 ISO 26262ワークフローをネイティブにサポートし、そのセーフティ原則は普遍的なものです。ASCLIBは、IEC 61508に準拠したインダストリアルシステムに最適です。 既存の開発ワークフローにシームレスに統合できるよう、ASCLIBは2種類の配信オプションを提供しています。 純粋なC言語ソースファイル:ベアメタルまたはRTOSベースの組み込みプロジェクトに直接統合できます。 BAM(ビット精度モデル):モデルベース設計(MBD)用のすぐに使えるブロックで、セーフティアーキテクチャをMATLAB/Simulinkに直接ドラッグ&ドロップしてシミュレーションできます。 開発者にとっての主なメリット AMMCLIBは引き続きQM用です。コアMCには、既存の高度に最適化されたAMMCLIBコードを引き続き使用してください。 モデルベース開発:専用のASCLIB BAMを使用してMATLAB/Simulink内でセーフティ部品全体を構築およびシミュレーションしてからターゲットCコードを生成することで、設計サイクルを加速します。 認証手続きの迅速化:事前に設計されたセーフティブロックと統合された障害マネジメント機能により、セーフティ基準への準拠と監査プロセスが大幅に簡素化されます。 さあ、始めて、あなたの考えを共有しましょう ASCLIBは完全にMCUに依存しないように設計されているため、さまざまなハードウェアプラットフォームに柔軟に展開できます。開発を加速させるため、本製品は既に完全な検証済みであり、NXPのオートモーティブおよびインダストリアルMCUとの統合に対応しています。制御と安全性を分離することで、最高のモーター性能と妥協のない安全性という、両方の利点を享受できます。 近々、ISO 26262またはIEC 61508規格に準拠したモーター制御プロジェクトに取り組んでいますか?AMMCLIB + ASCLIB アプローチが設計をどのように簡素化できるかについて、コメント欄で議論しましょう。または、以下のフォームからフィードバックをお寄せください。[フォームへのリンク] 機能的に安全なモーター制御システムを構築することは、性能を犠牲にしたり、アーキテクチャを再設計したりすることを意味するものではありません。NXPがAMMCLIBとASCLIBを組み合わせることで、セーフティと制御を分離し、開発労力を削減し、認証を迅速化する方法を、効率性を損なうことなくご紹介します。 モータ制御 Re: Functional Safety in Motor Control with AMMCLib and ASCLib ASCLibはAMMCLibとの組み合わせでのみ動作するのでしょうか?ASCLibはいつ、どのように普及させるべきでしょうか? Re: Functional Safety in Motor Control with AMMCLib and ASCLib こんにちは、 ASCLibはAMMCLibだけに限定されるものではありません。ASCLibはデータ型レベルでAMMCLibと完全に互換性がありますが、技術的には他のライブラリやカスタムアルゴリズムとも制限なく統合可能です。   プロモーションについて: ASCLibはまだ正式にリリースされていません。しかし、私たちは実際の現場からのフィードバックを収集するために、積極的に情報共有を行っています。現在のギャップやASCLibがどのようにそれを埋められるかについて、お客様からのフィードバックを大変ありがたく思います。 Re: Functional Safety in Motor Control with AMMCLib and ASCLib こんにちは、とても強力なライブラリのようですが、ASCLibはプレミアム(有料)ソフトウェアになる予定ですか?お客様と話す際に使える資料は何でしょうか?ベータ版をリリースする予定はありますか?
記事全体を表示
使用 ammClib 和 ASClib 实现电机控制的功能安全 在为汽车和工业系统开发电机控制时,功能安全是确保电机不会产生意想不到的扭矩或速度的核心要求。 但是,将诸如磁场定向控制 (FOC) 之类的复杂算法作为功能安全的组件实现会带来严重的架构复杂性,显著增加开发工作量并降低整体性能。 为了解决这个问题,恩智浦采用了功能安全分解方法。这将应用程序分为非功能安全相关部分 (QM) 和功能安全相关部分 (ASIL)。在此框架内,恩智浦提供了 ASCLIB(汽车功能安全检查器库)。它为功能安全部分提供即用型功能安全检查器,使您无需重新设计 QM 电机控制部件即可实现高度的功能安全合规性。 完美匹配:AMMCLIB (QM) + ASCLIB (ASIL) 大多数客户依靠高度优化的恩智浦 AMMCLIB(汽车数学和电机控制库)来实现核心 MC。AMMCLIB 性能出众,是质量管理 (QM)级别的库。 遵守功能安全标准(例如ISO 26262)要求团队围绕质量管理级别的AMMCLIB建立自定义功能安全机制,这需要花费大量的时间和精力。为了简化这一流程,恩智浦现在提供 ASCLIB 作为标准化的生产就绪解决方案。通过提供一整套预先验证的功能安全检查器,它显著减少了对专有功能安全软件开发的需求,并加快了设计到认证的周期。 AMMCLIB 和 ASCLIB 如何配合使用 为了说明这一概念如何转化为实践,下面的方框图提供了标准磁场定向控制 (FOC) 系统的示例。在这种情况下,电机控制模块根据您现有的 QM 级 AMMCLIB 代码运行,而 ASCLIB 功能安全检查器则监测关键点以确保安全。该架构基于 FOC PMSM 的 IEEE 低复杂度功能安全概念。 该参考架构表明,集成 ASCLIB 无需更改现有的 QM 电机控制架构。全面的数据类型兼容性允许 ASCLIB 校验器直接映射到 AMMCLIB 信号,确保无缝互联。 虽然标准 FOC 是一种常见的用例,但 ASCLIB 并不局限于此。该库采用模块化独立模块,支持其他拓扑结构和先进技术,包括无传感器 FOC 和单并联电流测量。 ASCLIB 内部:分层功能安全架构 ASCLIB 具有高度结构化的分层软件模型,该模型按层次结构组织为层和包: 服务层(顶层) 通过两个独立的软件包将高级功能直接暴露给功能安全应用程序: 高级检查器 (HLC):为各种电机控制系统量身定制的各种应用级功能安全检查器。 故障管理器 (FMG):复杂的故障处理组件,用于管理错误同步、配置和应用程序通知。 核心层(基础层) 提供服务层使用的低级构造块。它由两个基本套餐组成: 低级检查程序(LLC):提供基本的数学和验证功能。 故障排除 (FDB):提供通用的故障排除算法。 💡 开发人员小贴士 整个程序库是完全模块化、孤立和独立的。如果您的应用程序需要一个独特的检查器,则可以使用 LLC 和 FDB 包中现有的低级块轻松构建自己的自定义检查器。此外,故障管理 (FMG) 包完全是可选的——您无需强制使用它,而是可以实现自己的应用程序级错误处理。 不仅用于汽车 别让名字骗了你。尽管ASCLIB的标题中有 " Automotive " 并且原生支持 ISO 26262 工作流程,但其功能安全原则是通用的。ASCLIB 完全适用于符合 IEC 61508 标准的工业系统。 为了与您现有的开发工作流程无缝衔接,ASCLIB 提供了双重交付选项: 纯 C 源文件:可直接集成到任何裸机或基于 RTOS 的嵌入式项目中。 BAM(位精确模型):用于基于模型的设计 (MBD) 的即用型模块,允许您直接在 MATLAB/Simulink 中拖放和仿真功能安全架构。 开发人员的主要优势 AMMCLIB 保留 QM:继续使用现有的、高度优化的 AMMCLIB 代码来处理核心 MC。 基于模型的开发:在生成目标 C 代码之前,直接在 MATLAB/Simulink 中使用专用 ASCLIB BAM 构建和仿真整个功能安全部件,从而加快设计周期。 加速认证:预先设计的功能安全模块和集成的故障管理可显著简化您的功能安全合规和审计流程。 开始并分享您的想法 ASCLIB 的设计完全独立于 MCU,因此您可以灵活地在各种硬件平台上部署它。为了加快您的开发,它已经过全面验证,可以与恩智浦的汽车和工业微控制器集成。通过将控制与功能安全分开,您可以获得两全其美的效果:最高的电机性能和毫不妥协的功能安全性。 正在执行即将到来的 ISO 26262 或 IEC 61508 电机控制项目?让我们在评论中讨论 AMMCLIB + ASCLIB 方法如何简化您的设计,或通过下面的表格分享您的反馈:[表格链接] 构建功能安全的电机控制系统并不意味着要牺牲性能或重新设计架构。了解恩智浦如何将AMMCLIB和ASCLIB相结合,在不影响效率的情况下将功能安全与控制分开,减少开发工作量并加快认证。 电机控制 Re: Functional Safety in Motor Control with AMMCLib and ASCLib ASCLib 是否只能与 AMMCLib 配合使用?我们应该何时以及如何推广 ASCLib? Re: Functional Safety in Motor Control with AMMCLib and ASCLib 您好, ASCLib 并不局限于 AMMCLib。虽然 ASCLib 在数据类型级别上与 AMMCLib 完全兼容,但从技术上讲,它可以与任何其他库或自定义算法集成,没有任何限制。   关于此次促销活动: ASCLib尚未正式发布。但是,我们正在积极分享相关信息,以收集真实世界的反馈。我们非常希望收到客户的反馈,了解他们目前存在哪些不足,以及 ASCLib 可以如何帮助他们弥补这些不足。 Re: Functional Safety in Motor Control with AMMCLib and ASCLib 您好,ASCLib 看起来是一个非常强大的库,请问它计划成为一款付费软件吗?我们可以使用哪些材料与客户进行讨论?有计划推出测试版吗?
記事全体を表示
MCUXpresso for VS Code: Create, Build, and Debug a new Project using AI     A step-by-step walkthrough of how to use Copilot chat to import a multi-task FreeRTOS example for the LPCXpresso55S69, building it, debugging it, and analyzing memory usage – all driven from a single natural-language prompt. Introduction This tutorial shows how GitHub Copilot AI, along with the MCUXpresso for VS Code extension, can drive a complete FreeRTOS workflow from natural-language prompts: importing an SDK example, building it, debugging it, and analyzing the resulting artifact.   Instead of clicking through views, wizards, and commands, an embedded software engineer describes the intended outcome in plain language and the agent orchestrates the extension's language model tools to carry out each step.   In this scenario, the engineer asks the MCUXpresso agent to accomplish an end-to-end task: Get started quickly with a FreeRTOS example from MCUXpresso SDK. Target the LPCXpresso55S69 board. Import the new project as a freestanding example into the VS Code workspace, then build it. Freestanding will prompt for a folder to save the project. Start debugging and automatically resume execution after 10 seconds. Analyze the build artifact to see how much memory is used. Open the linker file used to build the artifact. The MCUXpresso agent decomposes this request into a sequence of tool calls – discovering boards and SDK revisions, listing suitable examples, importing the chosen example, building all configurations, launching and resuming the debug session, opening the Image Info view, and finally opening the linker script. The sections below follow that same order. The MCUXpresso agent leverages skill files that outline how to perform actions through the extension's own tools, so the steps it takes maps directly to functionality you could also trigger manually from the MCUXpresso for VS Code UI. System Architecture FreeRTOS Multi-Task Example — LPCXpresso55S69 System Architecture Overview Hardware 💻 Host PC MCUXpresso for VS Code MCUXpresso Agent/Skills     USB 🔗 Debug Probe On-board LinkServer CMSIS-DAP     SWD TARGET 📟 LPCXpresso55S69 Runs FreeRTOS example   Component Description Host PC Runs VS Code with the MCUXpresso for VS Code extension and the Copilot AI agent and skills. The agent properly imports the SDK example, builds it, launches the debug session, and opens the Image Info and linker views. Debug Probe The on-board LinkServer / CMSIS-DAP debug probe on the LPCXpresso55S69. Bridges USB from the Host PC to the SWD debug interface of the target MCU, and hosts the GDB server used during debugging. LPCXpresso55S69 Target evaluation board (LPC55S69 dual-core Arm Cortex-M33). Runs the FreeRTOS example with multiple tasks. Getting started The engineer describes the whole goal to the MCUXpresso agent in a single natural-language prompt, and the agent carries out each step below in order. Prerequisites This tutorial assumes the environment has already been prepared with the MCUXpresso Installer, which was previously used to install all required dependencies. Before starting you should have: Visual Studio Code with the MCUXpresso for VS Code extension installed and activated, and GitHub Copilot Chat available. All toolchain and tooling dependencies installed via the MCUXpresso Installer: the Arm GNU toolchain, LinkServer debug probe support, CMake and Ninja, and the west / SDK management tooling. MCUXpresso SDK v26.06 installed via the extension. One LPCXpresso55S69 board connected to the Host PC over USB (using the on-board LinkServer / CMSIS-DAP debug probe). If any dependency is missing, the MCUXpresso agent can open the MCUXpresso Installer for you (see Troubleshooting).   Step 1 – Import a FreeRTOS example The engineer opens Copilot Chat and describes the whole goal to in a single prompt – the board, the preferred kind of example (FreeRTOS, multiple tasks), the SDK version, and the follow-up actions. The engineer states the complete goal in natural language.   To satisfy the request, the agent first establishes the context and locates a suitable example using the extension's discovery tools: mcuxpresso_listSupportedBoards – confirms the LPCXpresso55S69 is a supported board. mcuxpresso_listRemoteRevisions – selects the requested MCUXpresso SDK v26.06 revision. mcuxpresso_listSupportedExamples – finds a FreeRTOS example with multiple tasks (for example a freertos_generic example). mcuxpresso_browseFolder – lets the engineer pick the destination folder for the imported example. Choosing where the example will be imported.   The agent confirms the example selection before importing.   The example is fetched and imported into the workspace.   Step 2 – Build the project Once the example is imported, the agent builds it using mcuxpresso_buildProjectAllConfigs , which compiles all configured build configurations for the project. The agent triggers a build of all configurations.   After a successful build, the imported project is visible in the extension's Projects view, ready for debugging and further analysis. The built project appears in the Projects view.   Step 3 – Debug the project The agent starts a debug session with mcuxpresso_startDebug . This launches the GDB server against the LPCXpresso55S69 through the on-board LinkServer / CMSIS-DAP debug probe, flashes the artifact, and halts at the program entry.   Because the engineer asked to automatically resume execution after 10 seconds, the agent then calls mcuxpresso_continueDebug to resume the program, letting the FreeRTOS tasks run on the target. The debug session starts, then execution is resumed automatically. The complementary tool mcuxpresso_pauseDebug can halt the running program again if you want to inspect state after resuming.   Step 4 – Open Image Info To analyze how much memory the firmware uses, the agent opens the Image Info view with mcuxpresso_openImageInfo . This inspects the build artifact and reports the memory footprint – the sizes of the code and data regions and how they map onto the device's flash and RAM. Image Info reports the artifact's memory usage; the linker script is opened alongside it.   Step 5 – Open the Linker Script Finally, the agent opens the linker file used to build the artifact with mcuxpresso_openLinkerScript . The linker script defines the memory regions and section placement referenced by the Image Info analysis, so the engineer can correlate the reported memory usage with the actual linker configuration (shown in the same screenshot above). Verifying the Result  The workflow is successful when all of the following hold: The FreeRTOS example was imported and appears in the Projects view (you can also confirm with mcuxpresso_listProjectsFromWorkspace ). The build completed without errors and produced a build artifact. The debug session started and execution was resumed after the requested delay. The Image Info view shows the artifact's memory usage. The linker script used for the build is open in the editor. Videos The following videos capture the steps for creating and debugging a project using AI in the MCUXpresso for VS Code extension. 1. Create and import a freestanding SDK project for your NXP board using Copilot in VS Code. (function() { var wrapper = document.getElementById('lia-vid-6405639429112w960h540r214'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (view in My Videos) 2. Build, debug, and analyze memory usage for a FreeRTOS Hello World project with Copilot. (function() { var wrapper = document.getElementById('lia-vid-6405639049112w960h540r139'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (view in My Videos) Troubleshooting Most issues in this workflow come from missing or incomplete dependencies. In almost all cases the fix is to (re)run the MCUXpresso Installer – the MCUXpresso agent can open it for you with mcuxpresso_openInstaller .   Symptom Likely cause Suggested action Project was not imported A west tooling issue (missing or misconfigured SDK management tooling) Start the MCUXpresso Installer ( mcuxpresso_openInstaller ) and (re)install the SDK / west dependencies, then retry the import. Build error A west issue, or no Arm GNU toolchain installed Start the Installer to install or repair the Arm GNU toolchain and build tooling, then rebuild. No debug probe support LinkServer / debug probe support is not installed Start the Installer and install LinkServer / debug probe support, then reconnect the board. Debug session does not start GDB server failed to launch, or probe/toolchain support is missing Inspect the GDB server terminal output for errors. If probe or toolchain support is missing, start the Installer to install it, then start debugging again. Examples
記事全体を表示
Getting Started: MCUXpresso for VS Code Installation & Setup for AI Introduction This Getting Started guide explains how to configure MCUXpresso for VS Code so GitHub Copilot agents can use available AI skills and MCP servers effectively when developing with MCUXpresso software and tools. If you already have MCUXpresso for VS Code installed, you can skip to Step 2 to enable Agentic AI features.  Note: The AI support in the MCUXpresso for VS Code extension is currently an experimental option. Users must enable the support after the extension is installed. Install the Tools The MCUXpresso Installer installs everything you need from a single application. Work through the prerequisites and the two steps below to reach a system that is ready to evaluate the NXP Agentic AI features with GitHub Copilot in VS Code. Prerequisites   Prerequisite Version Link MCUXpresso Installer 26.09+ Download   Note: The MCUXpresso Installer will install ALL software required – VS Code, the extension, and other software dependencies. Follow the instructions below and a single step will establish the base setup.   Step 1 – Install MCUXpresso for VS Code Installer options Enter Administrator mode. On Windows, you may need to run the installer as an administrator to avoid permission-related installation issues. Download and install the MCUXpresso Installer utility.  Launch MCUXpresso Installer from your desktop. Select the following components to install: MCUXpresso SDK Developer Arm GNU Toolchain Standalone Toolchain Add-ons LinkServer MCUXpresso Configuration Tools Note: All other components in the Installer are not required for initial development but can be added later based on other use cases. Click the Install button. Note: The Show details button will expand the selected kits to reveal other items installed as dependencies.   A green check mark will appear next to each item once installation has successfully completed. Step 2 – Enable Experimental AI in MCUXpresso for VS Code Open VS Code Settings Open Settings for the MCUXpresso for VS Code extension to enable the experimental features that support Agentic AI development: Launch VS Code. Open Settings with the shortcut Ctrl + , (Ctrl and comma). Filter by typing mcupresso experimental copilot . Click the box to enable the MCUXpresso Agentic AI resources. Close and relaunch VS Code to finish Agentic AI setup. Done: Your system is now ready to begin evaluating the NXP Agentic AI features using GitHub Copilot in VS Code.   Step 3 – Set up GitHub Copilot AI in VS Code AI features in VS Code require the user to log in to a valid GitHub account. You can use a personal account and receive a Free license, or use a corporate account that may provide Business-level Copilot access.   Display the GitHub Copilot Chat pane. Click on the Right Pane icon in the upper-right corner. Click on the GitHub Copilot icon in the lower-right corner. Log in to a valid GitHub account and authorize VS Code to link with the account. Done: The GitHub Copilot AI features are now active in the Chat pane. Videos The following videos help cover the Getting Started process with GitHub Copilot in VS Code:  1. Connect a GitHub account to Copilot in VS Code and verify it with a simple AI prompt. (function() { var wrapper = document.getElementById('lia-vid-6405641613112w960h540r180'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (view in My Videos) 2. Use Copilot Chat agents, models, context, dictation, history, targets, and permissions in VS Code (function() { var wrapper = document.getElementById('lia-vid-6405640756112w960h540r272'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (view in My Videos) 3. Configure Copilot tools, skills, workspace access, models, and privacy settings in VS Code. (function() { var wrapper = document.getElementById('lia-vid-6405642238112w990h540r360'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (view in My Videos) Getting Started
記事全体を表示
Kinetis W:[主题] CoAP 基础知识和实践 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Thread 使用 UDP 上的单播和多播传输提供应用程序框架实现所需的基本服务。 线程规范仅关注网络层;由于它与应用层无关,因此可以设计许多应用层无问题运行。 在该实验室中,用户将使用该应用层的约束应用协议 (CoAP),因为 Thread 堆栈使用 CoAP 进行大多数多跳网络管理和调试消息。 受限应用协议 (CoAP) 是一种专门用于物联网中受限节点和受限网络的 Web 传输协议。它使用具有四种方法的二进制 RESTful 协议 邮政 得到 放 删除 CoAP 还使用 ACK 响应;可确认(请求 ACK)和不可确认的消息。 Thread 堆栈使用 CoAP 来处理大多数多跳网络管理和调试消息   目标 通过本实验用户将修改固件以实现以下列表: 添加2个新的COAP URI资源“/resource1”和“/resource2”。 如果按照 CoAP 标准的规定收到 CON 请求,则在“/resource1”中发送 ACK 消息。ACK 消息中包含默认有效载荷。 所有发往“/resource1”的数据包都将触发一个 NON POST 数据包回复(独立于预期的 ACK 数据包),该回复发往具有默认有效负载的“/resource2”URI 路径。 在 shell 中打印所有 CoAP 事务,以充分了解请求何时发送以及何时收到响应,并指明方法和资源,例如 如果收到了 CON POST,则在 shell 上打印“收到了‘NON’数据包,‘POST’带有有效载荷‘ ’ 如果发送了 NON POST,则在 shell 上打印“已发送‘NON’数据包,带有有效载荷‘ ’的‘POST’ 实验室期望的流程行为如图 1 所示。 图 1 实验室期望行为示意图   设置 在下面的列表中,带有破折号(—)的组件将用于创建此实验室。   2 FRDM-KW41Z —牧师一个 来自最新 NXP 版本的 连接软件 。 — Thread Router 合格设备项目 串行终端 — TeraTerm   图2 FRDM-KW41Z   修改固件 将在 router_eligible_device_app.c 文件 中进行以下更改 。 1.定义在 shell 中用于访问资源的 URI 路径名。 #定义APP_RESOURCE1_URI_PATH“/resource1” #定义 APP_RESOURCE2_URI_PATH“/resource2” 2. 使用 coapUriPath_t 声明 URI 资源。使用此结构时,用户必须输入 URI 路径的长度和上一步创建的路径。 const coapUriPath_t gAPP_RESOURCE1_URI_PATH = {SizeOfString(APP_RESOURCE1_URI_PATH), APP_RESOURCE1_URI_PATH}; const coapUriPath_t gAPP_RESOURCE2_URI_PATH = {SizeOfString(APP_RESOURCE2_URI_PATH), APP_RESOURCE2_URI_PATH}; 3.创建资源的回调。此回调将处理接收到的数据包并根据接收到的 COAP 方法类型执行所需的操作。 static void APP_CoapResource1Cb(coapSessionStatus_t sessionStatus, void *pData, coapSession_t *pSession, uint32_t dataLen); static void APP_CoapResource2Cb(coapSessionStatus_t sessionStatus, void *pData, coapSession_t *pSession, uint32_t dataLen); 4. 为接收到的数据包添加回调处理程序,在此函数中将定义根据接收到的 COAP 方法类型执行哪些操作。 APP_CoapResource1Cb 静态无效APP_CoapResource1Cb ( coapSessionStatus_t 会话状态, 无效* pData, coapSession_t *pSession, uint32_t 数据长度 ) { 静态 uint8_t pMySessionPayload[3]={0x31,0x32,0x33}; 静态uint32_t pMyPayloadSize = 3; coapSession_t *pMySession = NULL; pMySession = COAP_OpenSession(mAppCoapInstId); COAP_AddOptionToList(pMySession,COAP_URI_PATH_OPTION,APP_RESOURCE2_URI_PATH,SizeOfString(APP_RESOURCE2_URI_PATH)); 如果(gCoapConfirmable_c == pSession->msgType) { 如果(gCoapGET_c == pSession->代码) { shell_write("'CON' 数据包已接收 'GET',有效载荷为:"); } 如果(gCoapPOST_c == pSession->代码) { shell_write("'CON' 数据包已接收带有有效载荷的 'POST':"); } 如果(gCoapPUT_c == pSession->代码) { shell_write("'CON' 数据包已接收 'PUT',有效载荷为:"); } 如果(gCoapFailure_c!=sessionStatus) { COAP_Send(pSession,gCoapMsgTypeAckSuccessChanged_c,pMySessionPayload,pMyPayloadSize); } } 否则,如果(gCoapNonConfirmable_c == pSession->msgType) { 如果(gCoapGET_c == pSession->代码) { shell_write("'NON' 数据包已接收 'GET',有效载荷为:"); } 如果(gCoapPOST_c == pSession->代码) { shell_write("'NON' 数据包接收到了带有有效载荷的 'POST': "); } 如果(gCoapPUT_c == pSession->代码) { shell_write("'NON' 数据包已接收 'PUT',有效载荷为:"); } } shell_writeN(pData,dataLen); shell_write("\r\n"); pMySession->msgType=gCoapNonConfirmable_c; pMySession->代码=gCoapPOST_c; pMySession->pCallback =NULL; FLib_MemCpy(&pMySession->remoteAddr,&gCoapDestAddress,sizeof(ipAddr_t)); COAP_SendMsg(pMySession,pMySessionPayload,pMyPayloadSize); shell_write("'NON' 数据包以 'POST' 形式发送,有效载荷为:"); shell_writeN((char*)pMySessionPayload,pMyPayloadSize); shell_write("\r\n"); } 每个 UDP 端口可以有一个 COAP 实例,如果应用程序只使用一个端口,则一个实例就足够了。 每个实例可以有多个 COAP 会话,每个数据包/事务都有一个 COAP 会话。在这种情况下,由于期望的结果是获得不同的 ACK 响应,因此需要使用新资源创建新的会话。 APP_CoapResource2Cb   静态无效APP_CoapResource2Cb ( coapSessionStatus_t 会话状态, 无效* pData, coapSession_t *pSession, uint32_t 数据长度 ) { 如果(gCoapNonConfirmable_c == pSession->msgType) { shell_write("'NON' 数据包接收到了带有有效载荷的 'POST': "); shell_writeN(pData,dataLen); shell_write("\r\n"); } } 5. 创建回调后,必须在函数APP_InitCoapDemo(void)中将其注册到 CoAP 回调数组中。 {APP_CoapResource1Cb, (coapUriPath_t*)&gAPP_RESOURCE1_URI_PATH}, {APP_CoapResource2Cb,(coapUriPath_t*)&gAPP_RESOURCE2_URI_PATH},   关于 CoAP 库的使用,有一些事情需要提及,这些事情在本实验室中没有使用,但可能对其他类型的应用程序有用。 当使用COAP_SendMsg()时,会话将默认自动关闭,除非使用pSession->autoClose进行指示。 发送消息时有两个选项: 可确认( CON ) :等待 ACK 回复,直到收到消息后才会关闭会话,或者在重传次数耗尽时关闭会话。 不可确认( NON ) :对于 NON,在发送消息后立即生效。 如果发送了一条消息但没有得到响应,则会在每个 COAP_ACK_TIMEOUT (以毫秒为单位)后发送一次重新传输,重新传输将以指数方式发送:首先在随机(2,3)秒后,接下来将超时时间加倍,依此类推,直到 达到 COAP_MAX_RETRANSMIT 。 重传停止后,会话将自动关闭并通知应用程序失败,应用程序回调将以状态 gCoapFailure_c 调用 。 当调用回调时当前会话仍然有效,但退出函数后CoAP会话将关闭它。有两种不同的解决方法: 必须创建一个新会话 设置pSession->autoClose = FALSE 。如果 autoClose 设置为 FALSE,请不要忘记使用COAP_CloseSession()从应用程序关闭会话。     运行演示 1.下载修改后的固件到开发板 2. 为每块板子打开一个串口终端,波特率为115200 图3 串行终端及其配置  3. 在其中一个板子的终端输入“ thr create ” ,该板子将成为领导者。 图 4 带有命令“thr create”的板 1 图 5 执行“thr create”命令后的 Board 1   4. 网络创建完成后, 在第二块板的终端中 输入“thr join” 。 图 6 使用命令“thr join”的板 2 图 7 执行“thr join”命令后的板 2 5. 在两个串行终端中输入命令“ifconfig” 。此命令将显示板的所有地址。 图 8 使用“ifconfig”命令后,板 1 图 9 执行“ifconfig”命令后的板 2   6. 为了测试创建的回调,必须发送 CoAP 消息。必须输入以下命令; coap                                                                                      coap CON POST fe80::5df0:2bf0:d69b:1b3c  /resource1 hello                                                                                      图10 CoAP命令发送 7. 发送的结果必须是这样的: —董事会 1 董事会 1 将向董事会 2 请求资源 1 图 11 发送 CoAP 命令之前的 Board 1 由于它已被编码,另一块板将发送 ACK 并打印消息。 图 12 发送 CoAP 命令后的 Board 1 —董事会 2 图13 收到CoAP命令后的Board 2 如果使用CON消息,请求板将收到响应,而如果消息是NON类型,则不会收到响应。 当使用这种类型的消息时,无论包类型如何,发送消息时都会打开一个新会话,并且它将发送非类型的消息。
記事全体を表示
Kinetis W: [スレッド] CoAPの基本と実践 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Threadは、UDPを介したユニキャストおよびマルチキャスト伝送を使用して、アプリケーションフレームワークの実装に必要な基本サービスを提供します。 スレッドの仕様は、ネットワーク層にのみ焦点を当てています。多くのアプリケーション層は、アプリケーション層に依存しないため、問題なく実行するように設計できます。 このラボでは、Threadスタックがマルチホップネットワーク管理およびコミッショニングメッセージのほとんどにCoAPを使用するため、ユーザーはこのアプリケーション層のConstrain Application Protocol(CoAP)を使用します。 制約付きアプリケーションプロトコル(CoAP)は、モノのインターネット(Internet of Thing)の制約付きノードと制約付きネットワークで使用する専用のWeb転送プロトコルです。これは、4つのメソッドを持つバイナリRESTfulプロトコルを使用します 投稿 取得 置く 削除 CoAP は ACK 応答も使用します。CONfirmable (ACK が要求されました) メッセージと NONconfirmable メッセージ。 Thread スタックは、マルチホップ ネットワーク管理およびコミッショニング メッセージの大部分に CoAP を使用します   目標 このラボを通じて、ユーザーはファームウェアを変更して次のリストを実現します。 2 つの新しい COAP URI リソース "/resource1" と "/resource2" を追加します。 CoAP 標準で指定されているように CON 要求を受信した場合に備えて、"/resource1" で ACK メッセージを送信します。ACK メッセージにデフォルトのペイロードを含めます。 "/resource1" 宛てのすべてのパケットは、デフォルトのペイロードを持つ "/resource2" URI パス宛ての NON POST パケット応答 (予想される ACK パケットとは無関係) をトリガーします。 すべてのCoAPトランザクションをシェルに出力して、リクエストが送信され、レスポンスがいつ受信されたかを完全に理解し、メソッドとリソースを示します。 CON POST を受信した場合は、シェルに「'NON' packet received, 'POST'」とペイロード ' ' を印刷します。 NON POSTが送信された場合は、シェルに「'NON'パケットが送信されました。ペイロード' 'とともに'POST'を印刷 します ラボが望ましい行動をとるプロセスを図1に示します。 図1 実験室の望ましい行動を示す図   設定 次のリストでは、ダッシュ (—) の付いたコンポーネントが、このラボの作成に使用されるコンポーネントです。   2 FRDM-KW41Z — 牧師 ある 最新のNXPリリースの 接続ソフトウェア 。 — Thread Router Eligible Device プロジェクト シリアルターミナル — テラターム   図2 FRDM-KW41Z   ファームウェアの変更       router_eligible_device_app.c ファイル では、次の変更が加えられます 。 1. シェルでリソースにアクセスするために使用する URI パス名を定義します。 #define APP_RESOURCE1_URI_PATH "/resource1" #define APP_RESOURCE2_URI_PATH "/resource2" 2. URI リソースを coapUriPath_t で宣言します。この構造体を使用する場合、ユーザーは URI パスの長さと、最後の手順で作成したパスを入力する必要があります。 定数 coapUriPath_t gAPP_RESOURCE1_URI_PATH = {SizeOfString(APP_RESOURCE1_URI_PATH), APP_RESOURCE1_URI_PATH}; 定数 coapUriPath_t gAPP_RESOURCE2_URI_PATH = {SizeOfString(APP_RESOURCE2_URI_PATH), APP_RESOURCE2_URI_PATH}; 3. リソースのコールバックを作成します。このコールバックは、受信したパケットを処理し、受信したCOAPメソッドのタイプに応じて必要なアクションを実行します。 static void APP_CoapResource1Cb(coapSessionStatus_t sessionStatus, void *pData, coapSession_t *pSession, uint32_t dataLen); static void APP_CoapResource2Cb(coapSessionStatus_t sessionStatus, void *pData, coapSession_t *pSession, uint32_t dataLen); 4.受信したパケットのコールバックハンドラを追加すると、この関数では、受信したCOAPメソッドのタイプに応じて実行されるアクションが定義されます。 APP_CoapResource1Cb static void APP_CoapResource1Cb(coapSessionStatus_t sessionStatus,void *pData,coapSession_t *pSession,uint32_t dataLen){ static uint8_t pMySessionPayload[3]={0x31,0x32,0x33}; 静的uint32_t pMyPayloadSize=3; coapSession_t *pMySession = NULL; pMySession = COAP_OpenSession(mAppCoapInstId); COAP_AddOptionToList(pMySession,COAP_URI_PATH_OPTION, APP_RESOURCE2_URI_PATH,SizeOfString(APP_RESOURCE2_URI_PATH)); if (gCoapConfirmable_c == pSession->msgType) { if (gCoapGET_c == pSession->code) { shell_write("'CON' パケットはペイロードと共に 'GET' を受け取りました: "); } if (gCoapPOST_c == pSession->code) { shell_write("'CON' パケットはペイロードと共に 'POST' を受信しました: "); } if (gCoapPUT_c == pSession->コード) { shell_write("'CON'パケットはペイロードを含む'PUT'を受信しました:"); } if (gCoapFailure_c!=sessionStatus) { COAP_Send(pSession, gCoapMsgTypeAckSuccessChanged_c, pMySessionPayload, pMyPayloadSize); } } else if(gCoapNonConfirmable_c == pSession->msgType) { if (gCoapGET_c == pSession->code) { shell_write("'NON' パケットはペイロードと共に 'GET' を受け取りました: "); } if (gCoapPOST_c == pSession->code) { shell_write("'NON' パケットはペイロードと共に 'POST' を受信しました: "); } if (gCoapPUT_c == pSession->code) { shell_write("'NON' パケットはペイロードと共に 'PUT' を受信しました: "); } } shell_writeN (pData, dataLen); shell_write("\r\n"); pMySession -> msgType=gCoapNonConfirmable_c; pMySession -> コード = gCoapPOST_c; pMySession -> pCallback =NULL; FLib_MemCpy(&pMySession->remoteAddr,&gCoapDestAddress,sizeof(ipAddr_t)); COAP_SendMsg(pMySession, pMySessionPayload, pMyPayloadSize); shell_write("'NON'パケットはペイロード付きで'POST'を送信しました: "); shell_writeN((char*) pMySessionPayload, pMyPayloadSize); shell_write("\r\n"); } アプリケーションが 1 つのポートのみを使用する場合は、UDP ポートごとに 1 つの COAP インスタンスが存在する可能性があります。 インスタンスごとに複数の COAP セッションが存在する可能性があり、COAP セッションはパケット/トランザクションごとです。この場合、ACK の応答が異なることが望ましい結果であったため、新しいリソースを使用して新しいセッションを作成する必要があります。 APP_CoapResource2Cb   static void APP_CoapResource2Cb(coapSessionStatus_t sessionStatus,void *pData,coapSession_t *pSession,uint32_t dataLen){ if (gCoapNonConfirmable_c == pSession->msgType) { shell_write("'NON' パケットは 'POST' をペイロードと共に受信しました: "); shell_writeN(pData, dataLen); shell_write("\r\n"); } } 5. コールバックを作成した後 、コールバックは関数 APP_InitCoapDemo(void) の CoAP コールバック配列に登録する必要があります {APP_CoapResource1Cb, (coapUriPath_t*)&gAPP_RESOURCE1_URI_PATH}, {APP_CoapResource2Cb, (coapUriPath_t*)&gAPP_RESOURCE2_URI_PATH},   CoAPライブラリの使用については、このラボでは使用されなかったが、他のタイプのアプリケーションに役立つ可能性のある点がいくつかあります。 COAP_SendMsg() を使用すると 、 pSession->autoClose の使用方法で示されない限り、セッションはデフォルトで自動的に閉じ ます。 メッセージの送信には、次の 2 つのオプションがあります。 確認可能(CON):ACKの応答を待ち、メッセージを受け取るまでセッションを閉じるか、再送信が使い果たされたときにセッションを閉じます。 確認不可 (NON😞 NO の場合、メッセージを送信した直後。 メッセージが送信され、応答がなかった場合、再送信はCOAP_ACK_TIMEOUTごとに(ミリ秒単位)送信され、再送信は指数関数的に送信されます:最初はランダム(2、3)秒後、次にタイムアウトを2倍にするなど、COAP_MAX_RETRANSMITに達するまで続きます。 再送信が停止すると、セッションは自動的に閉じられ、アプリケーションにエラーが通知され、ステータス gCoapFailure_c でアプリケーションコールバックが呼び出されます。 コールバックが呼び出されても、現在のセッションはまだ有効ですが、CoAP セッションは関数の終了後にコールバックを閉じます。これには2つの異なる作業があります。 新しいセッションを作成する必要があります auto>Close が FALSE に設定されている場合は、アプリケーションからセッションを閉じることを忘れないでください。COAP_CloseSession() を使用して、アプリケーションからセッションを閉じることを忘れないでください 。     デモの実行    1. 変更したファームウェアをボードにダウンロードします 2. 各ボードのシリアル端子をボーレート 115200 で開きます 図3 シリアル端末とその構成  3. ボードの端末タイプ「thr create」の1つでは、このボードがリーダーになります。 図 4 ボード 1 とコマンド "thr create" 図 5 ボード 1 のコマンド「thr create」の後   4.ネットワークが作成されたら 、2番目のボードの端末に 「thrjoin」 と入力します。 図 6 「thr join」コマンドが設定されたボード 2 図 7 ボード 2 のコマンド "thr join" の後 5. 両方のシリアル端末で、コマンド「ifconfig」を入力します。このコマンドは、ボードのすべてのアドレスを表示します。 図 8 ボード 1 のコマンド "ifconfig" の後 図 9 ボード 2 のコマンド "ifconfig" の後   6. 作成されたコールバックをテストするには、CoAP メッセージを送信する必要があります。次のコマンドを入力する必要があります。 coap                                                                                      coap CON POST fe80::5df0:2bf0:d69b:1b3c  /resource1 hello                                                                                      図 10 送信する CoAP コマンド 7. 送信の結果は、次のようになる必要があります。 ― ボード1 ボード 1 は、ボード 2 にリソース1を要求します 図 11 CoAP コマンドを送信する前のボード 1 コード化されたとおりに、他のボードはACKを送信し、メッセージを印刷します。 図 12 CoAP コマンドを送信した後のボード 1 — ボード2 図 13 CoAP コマンドを受信した後のボード 2 CON メッセージを使用する場合、リクエスターボードは応答を受け取りますが、メッセージが NON T ype の場合、応答はありません。  このタイプのメッセージをパッケージタイプとは無関係に使用すると、メッセージの送信時に新しいセッションがオープンされ、NON タイプのメッセージが送信されます。
記事全体を表示
Kinetis W: [Thread] CoAP basics and hands on   Thread provides basic services required for application frameworks implementation with the usage of Unicast and Multicast transmissions over UDP. Thread specification is only focused on the network layer; many application layers can be designed to run without any problem as it is application layer agnostic.  In this laboratory the user will work with the Constrain Application Protocol (CoAP) for this application layer as the Thread stack uses CoAP for most of the multi-hop network management and commissioning messages. The Constrained Application Protocol (CoAP) is a specialized web transfer protocol to use with constrained nodes and constrained networks in the Internet of Thing.  It uses a binary RESTful protocol with four methods POST GET PUT DELETE   CoAP also uses ACK responses; CONfirmable (ACK requested) and NONconfirmable messages. The Thread stack uses CoAP for the majority of multi-hop network management and commissioning messages   Objectives Through this laboratory the user will modify the firmware to achieve the following list: Add 2 new COAP URI resources “/resource1” and “/resource2”. Send an ACK message in “/resource1” in case a CON request was received as specified by the CoAP standard. Include a default payload in the ACK message. All packets destined to “/resource1” will trigger a NON POST packet reply (independent from the expected ACK packet) destined to “/resource2” URI path with a default payload. Print in shell all CoAP transactions to fully understand when a request was sent and when a response was received, indicating the method and the resource, e.g. If a CON POST was received, print on shell “‘NON’ packet received, ‘POST’ with payload of ‘ ’ If a NON POST was sent, print on shell “‘NON’ packet sent, ‘POST’ with payload ‘ ’   The process desired behavior by the laboratory is shown in figure 1.   Figure 1 Diagram showing the desired behavior of the laboratory     Setup In the following list, the components with a dash (—) will be the ones used to create this laboratory.   2 FRDM-KW41Z       — Rev.  A Connectivity Software from the latest NXP release.       — Thread Router Eligible Device project Serial Terminal       — TeraTerm   Figure 2 FRDM-KW41Z      Modifying Firmware         The following changes will be made in the router_eligible_device_app.c file.  1. Define the URI path names that will be used in the shell to access the resources. #define APP_RESOURCE1_URI_PATH                       "/resource1" #define APP_RESOURCE2_URI_PATH                       "/resource2"     2. Declare the URI resources with coapUriPath_t. When using this struct the user must enter the length of the URI path and the path created in the last step. const coapUriPath_t gAPP_RESOURCE1_URI_PATH = {SizeOfString(APP_RESOURCE1_URI_PATH), (uint8_t *)APP_RESOURCE1_URI_PATH}; const coapUriPath_t gAPP_RESOURCE2_URI_PATH = {SizeOfString(APP_RESOURCE2_URI_PATH), (uint8_t *)APP_RESOURCE2_URI_PATH};     3. Create the callbacks for the resources. This callbacks will handle the packet received and perform the desired action depending on the type of COAP method received. static void APP_CoapResource1Cb(coapSessionStatus_t sessionStatus, void *pData, coapSession_t *pSession, uint32_t dataLen); static void APP_CoapResource2Cb(coapSessionStatus_t sessionStatus, void *pData, coapSession_t *pSession, uint32_t dataLen);       4. Add the callback handler for the packet received, in this function it will be defined which action will be performed depending on the type of COAP method received. APP_CoapResource1Cb static void APP_CoapResource1Cb ( coapSessionStatus_t sessionStatus, void *pData, coapSession_t *pSession, uint32_t dataLen ) {   static uint8_t pMySessionPayload[3]={0x31,0x32,0x33};   static uint32_t pMyPayloadSize=3;   coapSession_t *pMySession = NULL;   pMySession = COAP_OpenSession(mAppCoapInstId);   //COAP_AddOptionToList(pMySession,COAP_URI_PATH_OPTION, APP_RESOURCE2_URI_PATH,SizeOfString(APP_RESOURCE2_URI_PATH)); pMySession->pUriPath = (coapUriPath_t *)&gAPP_RESOURCE2_URI_PATH;     if (gCoapConfirmable_c == pSession->msgType)   {     if (gCoapGET_c == pSession->code)     {       shell_write("'CON' packet received 'GET' with payload: ");     }     if (gCoapPOST_c == pSession->code)     {       shell_write("'CON' packet received 'POST' with payload: ");     }     if (gCoapPUT_c == pSession->code)     {       shell_write("'CON' packet received 'PUT' with payload: ");     }         if (gCoapFailure_c!=sessionStatus)     {       COAP_Send(pSession, gCoapMsgTypeAckSuccessChanged_c, pMySessionPayload, pMyPayloadSize);     }   }   else if(gCoapNonConfirmable_c == pSession->msgType)   {     if (gCoapGET_c == pSession->code)     {       shell_write("'NON' packet received 'GET' with payload: ");     }     if (gCoapPOST_c == pSession->code)     {       shell_write("'NON' packet received 'POST' with payload: ");     }     if (gCoapPUT_c == pSession->code)     {       shell_write("'NON' packet received 'PUT' with payload: ");     }      }   shell_writeN(pData, dataLen);   shell_write("\r\n");   pMySession -> msgType=gCoapNonConfirmable_c;   pMySession -> code= gCoapPOST_c;   pMySession -> pCallback =NULL;   //FLib_MemCpy(&pMySession->remoteAddr,&gCoapDestAddress,sizeof(ipAddr_t)); FLib_MemCpy(&pMySession->remoteAddrStorage.ss_addr, &gCoapDestAddress, sizeof(ipAddr_t));   //COAP_SendMsg(pMySession,  pMySessionPayload, pMyPayloadSize); COAP_Send(pMySession, gCoapMsgTypeNonPost_c, pMySessionPayload, pMyPayloadSize);   shell_write("'NON' packet sent 'POST' with payload: ");   shell_writeN((char*) pMySessionPayload, pMyPayloadSize);   shell_write("\r\n"); }   There can be one COAP instance per UDP port, in case the application only uses one port, one instance will be enough. There can be multiple COAP sessions per instance, a COAP session is per packet/transaction. In this case as the desired result was to have a different response of the ACK, it will be necessary to create a new session with the new resource. APP_CoapResource2Cb   static void APP_CoapResource2Cb ( coapSessionStatus_t sessionStatus, void *pData, coapSession_t *pSession, uint32_t dataLen ) {   if (gCoapNonConfirmable_c == pSession->msgType)   {       shell_write("'NON' packet received 'POST' with payload: ");        shell_writeN(pData, dataLen);       shell_write("\r\n");   }  }   5. After creating the callbacks, those must be registered in the CoAP callback array in the function APP_InitCoapDemo(void)     {APP_CoapResource1Cb, (coapUriPath_t*)&gAPP_RESOURCE1_URI_PATH}, {APP_CoapResource2Cb, (coapUriPath_t*)&gAPP_RESOURCE2_URI_PATH},   There are some things to mention of the usage of the CoAP library that were not used for this laboratory but might be useful for other types of applications. When using COAP_Send() the session will close automatically by default unless it is indicated with the usage of pSession->autoClose. There are two options while sending the message: Confirmable (CON): It waits for an ACK reply and until it gets the message it will close the session or it will close the session when retransmissions are exhausted. Non-confirmable (NON): For NON, immediately after sending the message. In case a message was sent and there was no response a retransmission will be sent each COAP_ACK_TIMEOUT (in miliseconds), the retransmissions are sent exponentially: first after random (2, 3) seconds, next doubles the timeout and so on, until COAP_MAX_RETRANSMIT is reached. After retransmissions stop, the session is automatically closed and informs the application of failure the application callback will be called with status gCoapFailure_c. When the callback is called the current session is still valid, but CoAP session will close it after exiting the function. There are two different work this out: A new session must be created Set pSession->autoClose = FALSE. If autoClose is set to FALSE, without forgetting to close the session from application, using COAP_CloseSession().     Running the demo    1. Download the modified firmware in the boards 2. Open a serial terminal for each board with a baud rate of 115200 Figure 3 Serial terminal and its configuration  3. In one of the board’s terminal type “thr create”, this board will be the leader. Figure 4 Board 1 with command "thr create" Figure 5 Board 1 after the command "thr create"   4. Once the network has been created type “thr join” in the second board’s terminal.   Figure 6 Board 2 with command "thr join" Figure 7 Board 2 after command "thr join" 5. In both serial terminals type the command “ifconfig”. This command will display all the addresses of the board.   Figure 8 Board 1 after command "ifconfig" Figure 9 Board 2 after command "ifconfig"   6. To test the callbacks created, a CoAP message must be sent. The following command must be typed;   coap                                                                                      coap CON POST fe80::5df0:2bf0:d69b:1b3c  /resource1 hello                                                                                      Figure 10 CoAP command to send 7. The result of sending must look like :   — Board 1 The board 1 will request the board 2 the resource1 Figure 11 Board 1 before sending the CoAP command As it was coded the other board will send an ACK and print the message. Figure 12 Board 1 after sending the CoAP command — Board 2 Figure 13 Board 2 after receiving the CoAP command If using the CON message the requester board will receive a response, while if the message is a NON type it will not have the response.   When using this types of messages independently of the package type when sending a message a new session will be open and it will send a NON type of message.
記事全体を表示
KW43 Knowledge Hub The KW43 product family is a low-power, secure, single-chip wireless MCU that integrates a high performance, Bluetooth Low Energy, Bluetooth Channel Sounding, EdgeLock Secure Accelerators, and various MCU peripherals targeted for Automotive applications. The KW43 family utilizes an Arm® Cortex®-M33 core (Armv8-M architecture) running up to 96 MHz for customer applications. The family includes memory configurations of up to 1.5MB flash and 256 KB SRAM across all listed part numbers. All devices in the family integrate a state-of-the-art, scalable security architecture including Arm’s TrustZone®-M, a resource domain controller and an isolated EdgeLock Secure Accelerators supporting hardware cryptographic accelerators, random number generators and key generation, storage, and management along with secure debug. All members of the KW43 family are designed to be compliant to a SESIP Level 3 certification following the Arm PSA Level 3 profile. KW43 uses dual Arm Core Cortex-M33 (‘CM33’) and supports multiple interfaces and security features. One is for application and system use and other is for radio link layer and both cores share a common flash of 1.5 MB. The devices include a full certified Bluetooth LE 6.x controller stack with support for up to 10 simultaneous connections in any controller/peripheral combination. The multiprotocol radio subsystem integrated in the KW43 Family is energy efficient and is designed for Wi-Fi coexistence. The radio is supported with tested software stacks for Bluetooth Low Energy for standalone and hosted applications to enable a range of Automotive, IoT and industrial applications. There is also software and hardware support for 2.4 GHz proprietary protocols. To address ranging requirements, the Localization Engine (LCE) is integrated into the system for enhanced localization performance. The KW43 series is supported by the MCUXpresso Developer Experience to optimize, ease and help accelerate embedded system development. Early access program The KW43 is in pre-production, developers can get started today with the KW45/KW47, which is pin and software compatible.   you can request access contacting NXP sales team - Pascal Bernard ([email protected]) Join KW47 early access program here: KW43 Early Access Training Bluetooth Low energy 6.0 NXP Introduction Interested in Bluetooth technology? Bluetooth® Low Energy Primer – Essential reading for understanding BLE fundamentals. Bluetooth® Specifications – Full list of standards, protocols, and technical documents. Awards and Recognition - Every year, the Bluetooth Special Interest Group (SIG) celebrates the hard work and commitment of working groups, committee members, and contributors who have been recognized by their peers as making a difference in advancing Bluetooth technology.                2024: Channel Sounding              2025: Channel sounding amplitude-based attack resilience, LE test mode enhancements and Ranging profile and service.  Bluetooth AI Assistant - Amber Bluetooth Feature Overview Bluetooth_5.0_Feature_Overview  Bluetooth_5.1_Feature_Overview  Bluetooth_5.2_Feature_Overview Bluetooth_5.3_Feature_Overview Bluetooth_5.4_Feature_Overview Bluetooth_6_Feature_Overview Bluetooth_6.1_Feature_Overview Bluetooth_6.2_Feature_Overview Bluetooth_6.3_Feature_Overview Bluetooth Core Specification Core Specification 4.0 Core Specification 4.1 Bluetooth 4.1 FAQ Core Specification 4.2 Bluetooth 4.2 FAQ Core Specification 5.0 Core Specification 5.1 Core Specification 5.2 Core Specification 5.3 Core Specification 5.4 Core Specification 6.0 Core Specification 6.1 Core Specification 6.2 Core Specification 6.3 RF Switch Comparison Absorptive/Reflective Standards Comparison ETSI / FCC / ARIB requirements BLE Channel Sounding  - Overview BLE Channel Sounding - RF Hardware BLE Channel Sounding - ANSYS Modeling Tools  BLE Channel Sounding - Antenna Prototypes Validation Measurements Equipment Wireless Equipment: This article provides the links to the Equipment that helps to the project development  Useful Links How to import and run demo examples with MCUXpresso for Visual Studio Code: This article gives information on how to import and run demo examples from the new SDK with ARM GCC toolchain, in MCUXpresso for Visual Studio Code. [MCUXSDK] How to use GitHub SDK for KW4x, MCXW7x, MCXW2x - NXP Community this community post provides step by step how to use GitHub SDK [MCUXSDK] GitHub SDK - Documentation for Bluetooth LE platforms - NXP Community this community post provides the documentation for BLE platforms.  How to use the HCI_bb on Kinetis family products and get access to the DTM mode:  This article is presenting two parts: How to flash the HCI_bb binary into the Kinetis product. Perform RF measurement using the R&S CMW270 BLE HCI Application to set transmitter/receiver test commands: This article provides the steps to show how user could send serial commands to the device. Bluetooth LE HCI Black Box Quick Start Guide: This article describes a simple process for enabling the user controls the radio through serial commands. KW43
記事全体を表示
KW45ナレッジハブ KW45の3コア・アーキテクチャには、96 MHzのCM33アプリケーション・コア、専用のCM3無線コア、分離型のEdgeLockセキュア・エンクレーブが統合されています。専用のSRAMを備えたフラッシュ・ベースの無線コアにより、高度な設定とアップグレードが可能なソフトウェア実装の無線が得られ、メイン・コア上のリソースをお客様のアプリケーション領域に活用できます。 Bluetooth Low Energy 5.3準拠の無線は、最大24のセキュアな同時接続に対応しています。EdgeLockセキュア・エンクレーブの分離された実行環境は、一連の暗号化アクセラレータ、キー・ストア処理、セキュアなライフサイクル管理を備え、メイン・コアのセキュリティ負荷を最小限に抑えます。 さらに、KW45 MCUにはFlexCANが搭載され、車載用または産業用CAN通信ネットワークへのシームレスな統合を実現できます。FlexCANモジュールは、CANのフレキシブル・データ・レート(CAN FD)に対応でき、帯域幅の拡大とレイテンシの低減に役立ちます。 KW45のブロック図 KW45アーキテクチャブロック図 書類 リファレンス・マニュアル Datasheet Errata Secure Referenceマニュアル** 認証 SESIP認定 SESIP ST PSA認証 RED 認証 欧州連合適合宣言書(EVK) 欧州連合適合宣言書(LOC) 日本MIC KW45-LOC _TELEC-20250221 添付ファイルをご覧ください Bluetooth仕様 Bluetooth_5.0_Feature_Overview  Bluetooth_5.1_Feature_Overview Bluetooth_5.2_機能_概要 Bluetooth_5.3_機能_概要 Bluetooth_5.4_Feature_Overview Bluetooth_6_Feature_Overview 評価ボード KW45 KW45-EVK KW45-EVK回路図 KW45-EVK 設計ファイル KW45-EVKユーザー・マニュアル KW45-LOCユーザーマニュアル KW45-EVKスタート・ガイド アプリケーション・ノート ソフトウェア、ハードウェア、ペリフェラル: AN14122:KW45でのRTCの使用方法 このアプリケーション・ノートでは、BLEデモでRTCペリフェラルを構成および使用する方法について説明します。 AN14141:KW45 Bluetooth Low Energy用接続スタックでウォッチドッグ・タイマ・モジュールを有効にする このアプリケーション・ノートでは、接続スタック・デモにWDOGタイマを実装するプロセスについて説明します。 AN13855:KW45/K32W1でOTAPクライアント・サービスをBluetooth LEペリフェラル機器に統合する このアプリケーション・ノートでは、Over the Air Programming(OTAP)クライアント・サービスをBLEペリフェラル機器に統合するステップとプロセスを説明します。 AN13584:Kinetis KW45およびK32W1ロードプル・レポート このアプリケーション・ノートでは、ロードプル特性での測定方法と関連する結果について説明します。 AN13860:OTAPツールを使用してKW45/K32W1にファームウェアの更新イメージを作成する このアプリケーション・ノートでは、OTAPを使ってKW45ボードでイメージを作成および更新するステップについて説明します。 AN14077:KW45(1MB)からKW45(512kB)に移行するステップ このアプリケーション・ノートでは、1MBフラッシュから512kBフラッシュへの移行に必要な初期ステップについて説明します。 電力管理: AN13230:Kinetis KW45およびK32W1 Bluetooth LEの電力消費分析 このアプリケーション・ノートでは、KW45ワイヤレスMCUの電力消費、ハードウェアの設計、低電力動作向けの最適化に関する情報を紹介します。 AN13831:KW45/K32W1電力管理ハードウェア このアプリケーション・ノートでは、KW45/K32W1 MCUで電力管理専用の各種モジュールの使用方法について説明します。 RF: AN13687:K32W1による802.15.4アプリケーションの接続テスト このアプリケーション・ノートでは、K32W1 802.15.4のRF性能を実行するために接続テスト・ツールを使用する方法について説明します。 AN13728:KW45 RFシステムでのBluetooth LEおよびIEEE 802.15.4アプリケーションの評価レポート このアプリケーション・ノートでは、BLE(2FSK変調)およびIEEE 802.15.4(OQPSK変調)でKW45ボードを使用する場合の無線周波数(RF)評価テストの結果を報告します。テストの実行時に使用可能なセットアップとツールについても説明します。 AN14098:KW45-LOC RFテスト・レポート このアプリケーション・ノートでは、KW45B41Zローカライゼーション・ボードの基本的なRFテストの結果を報告します。  AN13228:KW45-EVK RFシステムでのBLEアプリケーションに関する評価レポート このアプリケーション・ノートでは、2つの周波数シフト・キー変調を用いて、BLEアプリケーションでKW45B41Z-EVKを使用する場合のRF評価テストの結果を報告します。 AN13229:BLEアプリケーションで、KW45-EVKとRFシステムの共存に関する評価レポート このアプリケーション・ノートでは、KW45B41Z-EVKをBLEアプリケーション(2FSK変調)で使用する場合のRF評価テストの結果を報告します。 AN13512:Kinetisワイヤレス・ファミリ製品のBLEとWi-Fiアプリケーションとの共存 このアプリケーション・ノートでは、K32W1/4X低エネルギー製品のWi-Fi信号に対する耐性、およびWi-Fiとの共存状態の改善方法を取りあげます。  セキュリティ: AN13859:KW45/K32W1システム内プログラミング(ISP)ユーティリティ このアプリケーション・ノートでは、ISPモードでKW45/K32W1 MCUを起動するステップと、MCUと通信するために多様なシリアル接続を確立するステップについて説明します。 AN1403:量産時に、シリアル・ワイヤ・デバッグ(SWD)を介してアプリケーションと無線ファームウェア用にKW45フラッシュをプログラミングする このアプリケーション・ノートでは、量産時にSWDを介して必要なすべての設定を書き込み、焼き込み、プログラミングするステップについて説明します。  AN13883:SPSDKを使用してISP経由でKW45無線ファームウェアを更新する このアプリケーション・ノートでは、ISPモードでKW45/K32W1 MCUを起動するステップと、セキュア・バイナリで無線ファームウェアを更新するステップを説明します。 AN14109:SECツールを使用してKW45およびK32W148セキュアにブートするこのアプリケーション・ノートでは、SEC GUIツールで署名済みイメージとセキュア・バイナリを使用して、KW45/K32W1 MCUをセキュアにブートするステップを説明します。 AN13838:SPSDKコマンド・ライン・ツールを使用してKW45およびK32W148をセキュアにブートする このアプリケーション・ノートでは、SPSDKコマンド・ライン・ツールで署名済みイメージとセキュア・バイナリを使用して、KW45/K32W1 MCUをセキュアにブートするステップを説明します。 AN13931:KW45およびK32W148でのライフサイクルを管理する このアプリケーション・ノートでは、SEC GUIとSPSDKコマンド・ライン・ツールを使用してKW45/K32W1 MCUのライフサイクルを移行するステップを説明します。  AN14174:NPXを使用して、KW45/K32W148のフラッシュ暗号化を実行する このアプリケーション・ノートでは、KW45/K32W1 MCUでオンザフライ暗号化を有効にするステップを説明します。 AN14158:KW45/K32W148で認証をデバッグするこのアプリケーション・ノートでは、フィールドでアプリケーションをセキュアにデバッグするためにデバッグ認証を実行する方法を説明します。  AN14544:MPUおよびMCU向けのEdgeLock 2GOサービス このアプリケーション・ノートでは、NXPデバイス向けのEL2GOサービスを紹介します。このサービスにより信頼できない環境でも信頼できる形でデバイスをプロビジョニングできます。  サポート KW45に関して疑問点がある場合は、ワイヤレスMCUコミュニティ(こちら)に質問を投稿しましょう! 便利なリンク リファレンスデザイン - NXP Community [MCUXSDK]KW4x、MCXW7x、MCXW2xにGitHub SDKを使用する方法 - NXPコミュニティ GitHub SDKの使用方法をステップ別に紹介しています。 [MCUXSDK]GitHub SDK - Bluetooth LEプラットフォームのドキュメント - NXPコミュニティ BLEプラットフォーム用ドキュメントを提供しています。  KW45/KW47/MCXW71/MCXW72でのSignal Frequency Analyzer(SFA)モジュールを使用したクロック測定 - NXPコミュニティ:このコミュニティでは、Signal Frequency Analyzerの使用方法に関する手順を提示しています。 KW45(自動車)またはK32W1/MCXW71(IoT/産業)で初めてPCBを適切に構築する最良の方法... コミュニティ : KW45またはK32W148、およびMCXW7を使用してPCBを構築するためのリンクと、無線性能、低電力、無線認証(CE/FCC/ICC)に関するあらゆる要素を掲載しています。 HCI_bbをKinetisファミリ製品で使用してDTMモードにアクセスする方法:この記事は次の2つの部分に分かれています。 HCI_bbバイナリを Kinetis製品へフラッシュする方法。 R&S CMW270を使用してRF測定を行う BLE HCIアプリケーションによるトランスミッタ/レシーバテストコマンドの設定:この記事では、ユーザーはどのようにすればシリアルコマンドをデバイスに送信できるかを示す手順を説明します。 Bluetooth LE HCI Black Boxクイックスタートガイド:この記事では、ユーザーが無線をシリアルコマンドで制御できるようにするためのシンプルなプロセスを説明します。 Kinetis(K32/38/KW45およびK32W1/MCXW71)パワー・プロファイル・ツール:Kinetis(KW35/KW38/KW45)およびMCX W7x(MCX W71)パワー・プロファイル・ツールに的を絞ったページです。お使いのアプリケーション(自動車またはIoT)での電力消費量を試算したり、ソリューションのバッテリ寿命を評価したりするのに役立ちます。 KW45/K32W1 32MHzおよび32kHzの発振余裕度:この記事では、回路の発振余裕度の適切な構成について説明しています。 KW45ベースのCSの1対多デモ NXP - チャネル・サウンディング   トレーニング BLE Introduction  RFスイッチの比較 吸収型と反射型 規格の比較 ETSI/FCC/ARIB要件 BLEチャネルサウンディング - 概要 BLEチャネル・サウンディング - RFハードウェア BLEチャネル・サウンディング - ANSYSモデリング・ツール BLEチャネル・サウンディング - アンテナのプロトタイプの検証測定 機器 ワイヤレス機器:この記事には、プロジェクト策定に役立つ機器へのリンクが掲載されています。 開発ツール  SDKビルダ: MCUXpresso SDKは、オープンソースのドライバ、ミドルウェア、リファレンス例のアプリケーションを提供し、ソフトウェア開発を加速させます。 SDK GitHub:GitHubで公開されているSDKのオープンソースのドライバ、ミドルウェア、リファレンス例 NXP MCUXpresso:MCUXpresso IDEは高度な編集、コンパイル、デバッグ機能を提供し、MCU固有のデバッグ機能も追加されています。すべての汎用Arm Cortex-Mとの接続をサポートします。 NXP SPSDK:信頼性が高く使いやすいPython SDK統合ライブラリです。NXP MCUポートフォリオ全体で動作するので、お客様のクイックプロトタイピングから本番環境デプロイまで対応する強力な基盤となります。 NXP SECツール:GUIベースのアプリケーションMCUXpresso Secure Provisioning Toolは、NCP MCUデバイスのブータブル実行ファイルの生成とプロビジョニングをシンプル化するものです。 NXP OTAP Tool:ユーザーがNXP開発ボードのOver-the Air)ファームウェア・アップデートを実行するのに役立つアプリケーションです。 Config Tool: 構成ツールの統合スイート「MCUXpresso Config Tools」を利用すると、開発者はカスタムSDKをすばやく構築したり、ピン、クロック、ペリフェラルを利用して初期化Cコードを生成したり、カスタム・ボード・サポート用の値を登録したりできます。 ワイヤレスMCU用のSDKの例:ワイヤレスの例では、多くの一般的なBluetooth構成を取りあげています。 **セキュア・ファイルには追加のアクセス権をリクエストする必要があります。  ハンズオン・トレーニング 製品: K32W1 プロトコル:802.15.4 プロトコル:BLE→コネクティビティ プロトコル:Bluetooth プロトコル:Matter プロトコル:Thread プロトコル:Zigbee
記事全体を表示
KW45 Knowledge Hub KW45’s three-core architecture integrates a 96 MHz CM33 application core, dedicated CM3 radio core and an isolated EdgeLock Secure Enclave. The Flash-based radio core with dedicated SRAM delivers a highly configurable and upgradeable software-implemented radio, freeing resources on the main core for customer application space. The Bluetooth Low Energy 5.3-compliant radio supports up to 24 simultaneous secure connections. The EdgeLock Secure Enclave’s isolated execution environment provides a set of cryptographic accelerators, key store operations and secure lifecycle management that minimizes main core security responsibilities. The KW45 MCU additionally integrates FlexCAN, helping enable seamless integration into an automobile’s in-vehicle or industrial CAN communication network. The FlexCAN module can support CAN’s flexible data rate (CAN FD) for increased bandwidth and lower latency. KW45 Block Diagram KW45 Architecture Block Diagram Documents Reference Manual Datasheet Errata Secure Reference manual** Security Certifications  SESIP Level 2 Cert SESIP Level 2 ST PSA Level 2 Certification Regulatory Certifications RED Certification EUROPEAN UNION DECLARATION OF CONFORMITY (EVK) EUROPEAN UNION DECLARATION OF CONFORMITY (LOC) Japan MIC KW45-LOC _TELEC-20250221 Bluetooth Qualifications Qualified Products | Bluetooth® Technology Website Qualification Workspace - KW45/MCX W71 Bluetooth IInterested in Bluetooth technology? Bluetooth® Low Energy Primer – Essential reading for understanding BLE fundamentals. Bluetooth® Specifications – Full list of standards, protocols, and technical documents. Awards and Recognition - Every year, the Bluetooth Special Interest Group (SIG) celebrates the hard work and commitment of working groups, committee members, and contributors who have been recognized by their peers as making a difference in advancing Bluetooth technology, like NXP! 2024: Channel Sounding 2025: Channel sounding amplitude-based attack resilience, LE test mode enhancements and Ranging profile and service.  Bluetooth AI Assistant - Amber   Bluetooth Feature Overview Bluetooth_5.0_Feature_Overview  Bluetooth_5.1_Feature_Overview  Bluetooth_5.2_Feature_Overview Bluetooth_5.3_Feature_Overview Bluetooth_5.4_Feature_Overview Bluetooth_6_Feature_Overview Bluetooth_6.1_Feature_Overview Bluetooth_6.2_Feature_Overview Bluetooth_6.3_Feature_Overview Bluetooth Core Specification Core Specification 4.0 Core Specification 4.1 Bluetooth 4.1 FAQ Core Specification 4.2 Bluetooth 4.2 FAQ Core Specification 5.0 Core Specification 5.1 Core Specification 5.2 Core Specification 5.3 Core Specification 5.4 Core Specification 6.0 Core Specification 6.1 Core Specification 6.2 Core Specification 6.3 Evaluation boards KW45 KW45-EVK KW45-EVK Schematic KW45-EVK Design Files KW45-EVK User manual KW45-LOC User manual KW45-EVK Getting Started Application Notes Software, Hardware and Peripherals: AN14122 : How to use RTC on KW45 This application note describes how to configure and use the RTC peripheral in a BLE demo AN14141 : Enabling Watchdog Timer Module on KW45 Bluetooth Low Energy Connectivity Stack This application note describes the process to implement the WDOG timer in a Connectivity Stack demo. AN13855 : KW45/K32W1 Integrating the OTAP Client Service into a Bluetooth LE Peripheral Device This Application note provides the steps and process for integrating the Over the Air Programming Client Service into a BLE peripheral device. AN13584 : Kinetis KW45 and K32W1 Loadpull Report This application note describes measurement methodology and associated results on the load-pull characteristics. AN13860 : Creating Firmware Update Image for KW45/K32W1 using OTAP tool This application note provides the steps to create and upgrade the image on the KW45 board via OTAP. AN14077 : Steps to migrating KW45 (1MB) to KW45 (512kB) This application note describes the initial steps require to migrate from 1MB flash to 512kB flash. AN14746 : EEPROM Emulation for the KW45B41Z and K32W148 This document describes the process for the EEPROM emulation for the KW45B41Z and K32W148. AN14298 32kHz Cystal-Less Mode on KW45: This application note provides information on the 32 kHz Crystal-less mode on the KW45 device. This mode allows you to reduce the cost of the system, without compromising the 32 kHz clock accuracy.  AN13227 Hardware Design Considerations for KW45B41Z and K32W148 Bluetooth LE Devices: This application note describes printed-circuit board (PCB) design considerations for the KW45B41Z83AFTA, and KW45B41Z82AFTA and K32W1480VFTAT MKW35A, MKW36A, MKW35Z, and MKW36Z 40-pin HVQFN (6x6) and 48-pin Laminated QFN (HVLQFN-7x7 pitch 0.5 mm) wettable flank) package and KW45B41Z83AFPA and KW45B41Z82AFPA MKW35A, MKW36A, MKW35Z, and MKW36Z 40-pin HVQFN (6x6) and 40-pin Laminated QFN (HVLQFN-6x6 pitch 0.5 mm) wettable flank) package Power Management: AN13230: Kinetis KW45 and K32W1 Bluetooth LE Power Consumption Analysis This application note provides information about the power consumption of KW45 wireless MCUs, the hardware design and optimized for low power operation. AN13831: KW45/K32W1 Power Management Hardware This application note describes the usage of the different modules dedicated to power management in the KW45/K32W1 MCU. AN14664 Coin cell Hardware Recommendations for Kinetis Bluetooth LE Applications: This document describes some hardware and software solutions to minimize the peaks of current at the coin cell level RF: AN13687 : K32W1 Connectivity test for 802.15.4 Application This application note describes how to use the connectivity test tool to perform K32W1 802.15.4 RF performance. AN13728 : KW45 RF System Evaluation Report for Bluetooth LE and IEEE 802.15.4 Applications This application note provides the radio frequency evaluation test results of the KW45 board for BLE (2FSK modulation) and for IEEE 802.15.4 (OQPSK modulation) applications. Also describes the setup and tools that can be used to perform the tests.  AN14098: KW45-LOC RF Test Report This application note provides basic RF test result of the KW45B41Z localization board.  AN13228 : KW45-EVK RF System Evaluation Report for BLE Applications This application note provides the RF evaluation test result of the KW45B41Z-EVK for BLE application using two frequency Shift Keying modulation. AN13229 : KW45-EVK Co-existence with RF System Evaluation Report for BLE application This application note provides the RF evaluation test results of the KW45B41Z-EVK for BLE application (2FSK modulation) AN13512 : Kinetis Wireless Family Products BLE Coexistence with Wi-Fi Application This application note provides the K32W1/4X low energy family products immunity on Wi-Fi signals and methods to improve coexistence with Wi-Fi  AN14294 : Out of Band Implementation with KW45 This document explains the steps required to set up an Out of Band (OOB) pairing connection between two KW45 EVK boards, using UART and CAN communication interfaces to share OOB data. AN2731 Compact Planar Antennas for 2.5GHz Communication: This document is not an exhaustive inquiry into antenna design. It is instead focused on helping the customers understand enough board layout and antenna basics to select a correct antenna type for their application, as well as avoiding typical layout mistakes that cause performance issues that lead to delays AN14645 How to Use Random Static Device Address for Bluetooth Application: This document introduces how to enable Random Static Device Address for a Bluetooth Low Energy application. The default device address type in the SDK is Public Device Address. AN14112 Car Connectivity Consortium (CCC) Digital Key R3 - Bluetooth LE Vehicle Keyless Access System: This document provides a hardware and software platform to implement a simple CCC Digital Key Release 3.0 system. The hardware and software components of this system allow the user to get familiar with the CCC Digital Keys R3 specification and how it can be implemented using NXP products and tools. AN13953 Integrating NFC Reader Library in a KW4X Bluetooth Low Energy Application:  This document gives instructions on how to create a Bluetooth Low Energy (Bluetooth LE) project for the EVK-KW45 development board and MCUXpresso IDE, and how to integrate NFC Reader Library. AN13049 Wi-Fi/Bluetooth/802.15.4 M.2 Key E Pinout Definition: This document defines M.2 usage for both NXP Wi-Fi/Bluetooth and Tri-Radio M.2 module design Security: AN13859 : KW45/K32W1 In-System Programming Utility This application note provides steps to boot KW45/K32W1 MCU in ISP mode and establish various serial connections to communicate with the MCU. AN14003 : Programming the KW45 Flash for Application and Radio Firmware via Serial Wire Debug during mass production This application note describes the steps to write, burn and programming all the necessary settings via SWD in mass production.  AN13883 : Updating KW45 Radio Firmware Via ISP Using SPSDK This application note provides steps to boot KW45/K32W1 MCU in ISP mode and update the radio firmware with secure binary. AN14109 : KW45 and K32W148 Secure  Boot Using the SEC Tool This application note provides steps to do secure boot KW45/K32W1 MCU using signed images and secure binaries on the SEC GUI tool. AN13838 :  KW45 and K32W148 Secure  Boot Using the SPSDK Command line Tool This application note provides steps to do secure boot KW45/K32W1 MCU using signed images and secure binaries on the SPSDK command line tool. AN13931 : Managing Lifecycles on KW45 and K32W148 This application note provides steps to do transition lifecycles KW45/K32W1 MCU using the SEC GUI and SPSDK command line tools.  AN14158: Debug Authentication on KW45/ K32W148 This application note describes how to do debug authentication to securely debug an application in the field.  AN14544 : EdgeLock 2GO Services for MPU and MCU This application note introduces the EL2GO services for NXP devices. This allows trust provisioning of the device in an untrusted environment.  AN14174: KW45/K32W1 Flash Encryption using NPXThis application note provides steps to do enable on-the-fly encryption on KW45/K32W1 MCU. AN14158: debug authentication on KW45/K32W148 This application note describes the steps for debug authentication using the Secure Provisioning SDK tool (SPSDK). AN15038 EdgeLock 2GO Provisioning MCUs via Product Type using Secure Provisioning (SEC) Tool:  This document offers an outline of the EdgeLock 2GO platform and discusses the "Device provisioning via product type" flow. The document focuses on the initial device provisioning using secure objects from the EdgeLock 2GO cloud server. AN14670  EdgeLock 2GO Provisioning via SPSDK for MCUs: This document offers an outline of the EdgeLock 2GO platform and discusses the “Device provisioning via proxy” flow. The document focuses on the initial device provisioning using secure objects from the EdgeLock 2GO cloud server.  AN14624 EdgeLock 2GO Provisioning via Secure Provisioning Tool (SEC) for MCUs: This document offers an outline of the EdgeLock 2GO platform and discusses the "Device provisioning via proxy" flow. Useful Links [MCUXSDK] How to use GitHub SDK for KW4x, MCXW7x, MCXW2x - NXP Community this community post provides step by step how to use GitHub SDK [MCUXSDK] GitHub SDK - Documentation for Bluetooth LE platforms - NXP Community this community post provides the documentation for BLE platforms.  Clock Measuring using the Signal Frequency Analyzer (SFA) module for KW45/KW47/MCXW71/MCXW72 - NXP Community : this community provides the steps on how to use the Signal Frequency Analyzer  The best way to build a PCB first time right with KW45 (Automotive) or K32W1/MCXW71 (IoT/Industrial)... Community : In this community provides the important link to build a PCB using a KW45 or K32W148 and MCXW71 and all concerning the radio performances, low power and radio certification (CE/FCC/ICC) How to use the HCI_bb on Kinetis family products and get access to the DTM mode:  This article is presenting two parts: How to flash the HCI_bb binary into the Kinetis product. Perform RF measurement using the R&S CMW270 BLE HCI Application to set transmitter/receiver test commands: This article provides the steps to show how user could send serial commands to the device. Bluetooth LE HCI Black Box Quick Start Guide : This article describes a simple process for enabling the user controls the radio through serial commands. Kinetis (../45/47/43;MCX W71/72/70) & MCX W23 Power Profile Tools (including Localization):  This page is dedicated to the Kinetis (KW35/KW38/KW45/KW47/KW43) and MCX W7x (MCX W71/W72/W70) Power Profile Tools. It will help you to estimate the power consumption in your application (Automotive or IIoT) and evaluate the battery lifetime of your solution. KW45/K32W1 32MHz & 32kHz Oscillation margins: this article provides the properly configuration for the Oscillation margins for the circuit. KW45/MCXW71 Changing Clocking peripherals from FRO6M to other clock sources:  This article provides a comprehensive guide to selecting and configuring alternative clock sources   Reference Designs Bluetooth Ranging Access Vehicle Enablement System - NXP Community Blue Ravens (Bluetooth Ranging Access Vehicle Enablement System) is a system solution developed by NXP to assist customers in designing their own BLE-based car access solutions using NXP products. Demo (video) KW45 Based CS 1 to Many Demo NXP - Channel Sounding   Training BLE Introduction  RF Switch Comparison Absorptive/Reflective Standards Comparison ETSI / FCC / ARIB requirements BLE Channel Sounding  - Overview BLE Channel Sounding - RF Hardware BLE Channel Sounding - ANSYS Modeling Tools  BLE Channel Sounding - Antenna Prototypes Validation Measurements     Equipment Wireless Equipment: This article provides the links to the Equipment that helps to the project development  Development Tools  SDK builder: The MCUXpresso SDK brings open-source drivers, middleware, and reference example application to speed your software development. SDK GitHub: SDK open-source Drivers, middleware and reference examples in Github NXP MCUXpresso: MCUXpresso IDE offers advanced editing, compiling and debugging features with the addition of MCU-Specific debugging. Supports connections with all general-purpose Arm Cortex-M.  NXP SPSDK: Is a unified, reliable, and easy to use Python SDK library working across the NXP MCU portfolio providing a strong foundation from quick customer prototyping up to production deployment. NXP SEC Tool: The MCUXpresso Secure Provisioning Tool us a GUI-based application provided to simplify generation and provisioning of bootable executables on NCP MCU devices. NXP OTAP Tool: Is an application that helps the user to perform an over the air firmware update of an NXP development board. Config Tool: MCUXpresso Config Tools, an integrated suite of configuration tools, these configuration tools allow developers to quickly build a custom SDK and leverage pins, clocks and peripheral to generate initialization C code or register values for custom board support. SDK Examples for Wireless MCUs: The wireless examples feature many common Bluetooth configurations. **For secure files is necessary to request additional access.  KW45
記事全体を表示
KW45 知识中心 KW45 的三核架构集成了一个 96 MHz CM33 应用核心、专用 CM3 无线模块内核和一个隔离的 EdgeLock 安全区域。基于闪存的无线模块内核具有专用 SRAM,可提供高度可配置和可升级的软件实施无线模块,从而将主内核上的资源释放给客户应用空间。 符合低功耗蓝牙 5.3 标准的无线模块最多可同时支持 24 个安全连接。EdgeLock 安全区域的隔离执行环境提供了一套加密加速器、密钥存储操作和安全生命周期管理,最大限度地减少了主要内核安全责任。 KW45 MCU 还集成了 FlexCAN,有助于无缝集成到汽车的车载或工业 CAN 通信网络中。FlexCAN 模块可以支持 CAN 的灵活数据传输速率 (CAN FD),以实现更高带宽和更低延迟。 KW45 方框图 KW45 架构框图 文件 参考手册 Datasheet Errata Secure Reference 手册** 认证 SESIP 认证 SESIP ST PSA认证 RED 认证 欧盟符合性声明 (EVK) 欧盟符合性声明(LOC) 日本 MIC KW45-LOC _TELEC-20250221请参见下方附件 蓝牙规范 蓝牙 5.0 功能概述 蓝牙 5.1 功能概述 蓝牙 5.2 功能概述 Bluetooth_5.3_功能概述 Bluetooth_5.4_功能概述 Bluetooth_6_Feature_Overview 评估板 KW45 KW45-EVK KW45-EVK 原理图 KW45-EVK设计文件 KW45-EVK 用户手册 KW45-LOC 用户手册 KW45-EVK快速入门 应用笔记 软件、硬件和外设: AN14122 :如何在 KW45 上使用 RTC本应用笔记介绍了如何在 BLE 演示中配置和使用 RTC 外围设备 AN14141:在 KW45 低功耗蓝牙连接堆栈中启用看门狗定时器模块 。本应用笔记描述了在连接堆栈演示中实现 WDOG 定时器的过程。 AN13855:将 OTAP 客户端服务集成到 KW45/K32W1 蓝牙 LE 外围设备中 本应用笔记提供了将空中编程客户端服务集成到 BLE 外围设备的步骤和过程。 AN13584:Kinetis KW45 和 K32W1 负载拉动报告 本应用笔记描述了负载拉动特性的测量方法及相关结果。 AN13860:使用 OTAP 工具为 KW45/K32W1 创建固件更新镜像 本应用笔记提供了通过 OTAP 工具在 KW45 开发板上创建并升级镜像的步骤。 AN14077:将 KW45 (1MB) 迁移至 KW45 (512kB) 的步骤  本应用笔记描述了从 1MB 闪存迁移至 512kB 闪存所需的初始步骤。 电源管理: AN13230:Kinetis KW45 和 K32W1 蓝牙低功耗 (BLE) 功耗分析  本应用笔记提供了关于 KW45 无线微控制器 (MCU) 的功耗信息,包括硬件设计及优化以实现低功耗运行。 AN13831:KW45/K32W1 电源管理硬件  本应用笔记描述了在 KW45/K32W1 微控制器中用于电源管理的不同模块的使用方法。 射频: AN13687:K32W1 802.15.4 应用连接性测试 本应用笔记介绍了如何使用连接性测试工具来测试 K32W1 802.15.4 的射频性能。 AN13728:KW45 射频系统评估报告(适用于蓝牙低功耗和 IEEE 802.15.4 应用)本应用笔记提供了 KW45 开发板在蓝牙低功耗(2FSK 调制)和 IEEE 802.15.4(OQPSK 调制)应用中的射频评估测试结果。还描述了可以用于执行测试的设置和工具。  AN14098: KW45-LOC 射频测试报告  本应用笔记提供了KW45B41Z定位板的基本射频测试结果。  AN13228:用于 BLE 应用的 KW45-EVK 射频系统评估报告 本应用笔记提供了 KW45B41Z-EVK 在 BLE 应用中使用二进制频移键控调制的射频评估测试结果。 AN13229:KW45-EVK 与射频系统共存的评估报告(适用于 BLE 应用)本应用笔记提供了 KW45B41Z-EVK 在 BLE 应用(2FSK 调制)中的射频评估测试结果 AN13512:Kinetis 无线产品系列 BLE 与 Wi-Fi 共存应用  本应用笔记介绍了 K32W1/4X 低功耗产品系列对 Wi-Fi 信号的抗干扰能力,并提供了改善与 Wi-Fi 共存的方法  安全性: AN13859:KW45/K32W1 系统内编程工具  本应用笔记提供了在 ISP 模式下启动 KW45/K32W1 微控制器并建立各种串行连接以与微控制器通信的步骤。 AN1403:在批量生产中通过串行线调试(SWD)为KW45闪存编程以应用和无线固件 。本应用笔记详细介绍了在批量生产中通过SWD编写、烧录和设置所有必要参数的步骤。  AN13883: 通过 SPSDK 使用 ISP 更新 KW45 无线电固件  本应用笔记提供了在 ISP 模式下启动 KW45/K32W1 MCU 并使用安全二进制文件更新无线电固件的步骤。 AN14109:使用SEC工具实现KW45和K32W148安全启动 本应用笔记提供了使用 SEC GUI 工具,通过签名镜像和安全二进制文件实现 KW45/K32W1 MCU 安全启动的步骤。 AN13838:KW45 和 K32W148 安全启动使用 SPSDK 命令行工具本应用笔记提供了使用 SPSDK 命令行工具,通过签名镜像和安全二进制文件实现 KW45/K32W1 MCU 安全启动的步骤。 AN13931:KW45 和 K32W148 的生命周期管理 本应用笔记提供了使用 SEC GUI 和 SPSDK 命令行工具来转换 KW45/K32W1 MCU 的过渡生命周期的步骤。 AN14174:KW45/K32W148 使用 NPX 进行闪存加密本应用笔记提供了在 KW45/K32W1 微控制器上启用实时加密的步骤。 AN14158:KW45/K32W148 上的调试认证本应用笔记介绍了如何进行调试认证,以便在现场安全地调试应用程序。  AN14544:EdgeLock 2GO 服务适用于 MPU 和 MCU 本应用笔记介绍了 NXP 设备的 EL2GO 服务。该服务允许在不受信任的环境中为设备进行信任配置。 支持 如果您对 KW45 有任何疑问,请在我们的无线 MCU 社区中留下您的问题!此处 有用链接 参考设计 - NXP 社区 [MCUXSDK] 如何使用 GitHub SDK 适用于 KW4x、MCXW7x、MCXW2x - NXP 社区此社区帖子逐步介绍了如何使用 GitHub SDK [MCUXSDK] GitHub SDK - 蓝牙 LE 平台文档 - NXP 社区此社区帖子提供了 BLE 平台的文档。  使用 KW45/KW47/MCXW71/MCXW72 的信号频率分析仪 (SFA) 模块进行时钟测量 - NXP 社区:该社区提供了如何使用信号频率分析仪的步骤 首次正确构建 PCB 的最佳方式是使用 KW45(汽车)或 K32W1/MCXW71(物联网/工业)... 社区:在此社区中,您可以找到使用 KW45 或 K32W148 和 MCXW71 构建 PCB 的重要链接,所有链接均涉及无线电性能、低功耗和无线电认证 (CE/FCC/ICC) 如何在 Kinetis 系列产品上使用 HCI_bb 并进入 DTM 模式:本文分为两部分: 如何将HCI_bb二进制文件烧录到Kinetis产品中。 使用 R&S CMW270 进行射频测量 BLE HCI 应用程序设置发射机/接收机测试命令:本文提供了相关步骤,展示用户如何向设备发送串行命令。 Bluetooth LE HCI 黑盒快速入门指南:本文介绍了一个简单流程,能让用户通过串行命令控制无线电。 Kinetis (K32/38/KW45 & K32W1/MCXW71)功率配置工具: 此页面专门介绍 Kinetis (KW35/KW38/KW45) 和 MCX W7x (MCX W71) 功率配置工具。它将帮助您估算您的应用程序(汽车或物联网)的功耗,并评估您解决方案的电池寿命。 KW45/K32W1 32MHz 和 32kHz 振荡裕度:本文提供了电路中振荡裕度的正确配置。 基于 KW45 的 CS 1 对多演示NXP - 信道探测   培训 BLE Introduction  射频开关比较 吸收型/反射型 ETSI / FCC / ARIB 标准比较与要求 BLE 信道探测  - 概述 BLE 信道探测 - RF 硬件 BLE 信道探测 - ANSYS 建模工具 BLE 信道探测 - 天线原型验证测量 设备 无线设备: 本文提供了有助于项目开发的设备链接  开发工具  SDK 构建器: MCUXpresso SDK 提供开源驱动程序、中间件和参考示例应用程序,以加快软件开发。 SDK GitHub:SDK 开源驱动程序、中间件和参考示例在 GitHub 上。 NXP MCUXpresso: MCUXpresso 集成开发环境 (IDE) 提供了高级编辑、编译和调试功能,并增加了 MCU 专用的调试功能。支持与所有通用 Arm Cortex-M 的连接。  NXP SPSDK:是一个统一、可靠且易于使用的Python SDK库,适用于 NXP MCU 产品组合,为客户快速制作原型到生产部署提供坚实的基础。 NXP SEC工具: MCUXpresso安全配置工具是一款基于 GUI 的应用程序,用于简化在 NCP MCU 设备上生成和配置可启动的可执行文件。 NXP OTAP Tool: 是一款帮助用户对 NXP 开发板执行空中固件更新的应用程序。 配置工具: MCUXpresso 配置工具是一套集成的配置工具套件,这些工具允许开发人员快速构建自定义 SDK,并利用引脚、时钟和外设生成初始化 C 代码或自定义板支持的寄存器值。 无线 MCU 的 SDK 示例: 这些无线示例包含许多常见的蓝牙配置。 **对于安全文件,必须请求额外的访问权限。  动手实践培训 产品:K32W1 协议:802.15.4 协议:BLE -> 连接性 协议:蓝牙 协议:Matter 协议:Thread 协议:Zigbee
記事全体を表示