Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
示例 S32K118-SRAM-keep_data_over_SW_reset v0_1 S32DS.ARM.2.2 ******************************************************************************** * Detailed Description: * The purpose of this example is show how to keep data in SRAM memory over SW * reset. SW reset is triggered by pressing the SW3 button on the S32K118EVB. * Reset is delayed for 514 LPO cycles. In the RCM interrupt, SRAMU_RETEN is * cleared allowing to retain SRAM data during the reset. After SW reset, * SRAMU_RETEN is set to allow accesses to SRAM. * File startup_S32K116.S in modified to skip ECC RAM initialization for SW reset * source. To check whether stored data stayed unmodified in the SRAM, specified * address is read and the LED lights up. * ------------------------------------------------------------------------------ * Test HW: S32K118EVB-Q064 * MCU: S32K118 LAMLH 0N97V QTZE1802B * Fsys: fsys = 48MHz * Debugger: Lauterbach Trace32 * Target: Debug * Terminal: 19200-8-no parity-1 stop bit-no flow control * EVB connection: default ******************************************************************************** Revision History: Ver Date Author Description of Changes 0.0 May-17-2023 David Tosenovjan Initial version *******************************************************************************/
查看全文
SynGas OBD 节油器是否合法?真实的深度 SynGas 评论 2026 SynGas 评论:SynGas OBD Fuel Saver 是否合法?这是我在亲自测试之前的第一个问题。2026 年的油价依然居高不下,很多驾驶员都在寻找提高燃油效率的现实方法,而不需要昂贵的汽车改装或复杂的改装系统。 SynGas是一款简单的即插即用设备,可连接到车辆的OBD2端口,并声称通过根据实际驾驶习惯使用汽车的ECU来优化燃油消耗。它的有趣之处在于,它并不承诺立竿见影的神奇效果。取而代之的是,该设备在最初的 150 英里内会经历一个学习阶段,以便更好地了解加速、制动和整体驾驶模式,然后才能更有效地调整燃油优化。 点击此处查看 SynGas 的最新详情和官方信息 2026 年,节油技术已成为一个热门话题,因为人们正在积极寻找经济实惠的方法来降低交通成本。SynGas通过提供即插即用的方法来直接利用这一趋势,而不是昂贵的ECU调整或持续购买燃料添加剂。 那么,SynGas OBD 节油器是否合法? 根据研究、用户反馈和500英里后的真实驾驶观察,它似乎是真正的OBD2燃料优化设备,而不是另一个随机的互联网花招。然而,现实的期望很重要。这并不神奇,每辆车或每位驾驶员的结果也不尽相同。最大的价值似乎来自于长期的日常使用,尤其是对于通勤者和长时间在路上行驶的驾驶员来说。 点击此处查看 SynGas OBD 节油器的工作原理和当前供应情况:     Re: Is SynGas OBD Fuel Saver Legit? An Honest Depth SynGas Reviews 2026 您的问题似乎与恩智浦 QorIQ 系列(数字网络)处理器无关。 请在正确的社区区块中提交您的问题。
查看全文
用于 IMX8MPLUS 的 LPDDR4 美光 MT53E1536M32D4DE-046 AA T: C 是一 款 48Gb (6GB) LPDDR4 动态随机存取存储器(DRAM) 元器件。 它在技术上与 i.MX 8M Plus 处理器兼容吗?由于 LPDDR4 兼容性问题,我的 IMX8MPLUS 板面临很多挑战。我的板是为大小为 32Gbit (4GB) 的双列双通道 LPDDR4 设计的。我找不到任何有现货的 LPDDR4。与其他 32Gbit (4GB) 但双通道单列的 LPDDR4 面临密码兼容性问题。请在这方面帮助我。我能否使用 MT53E1536M32D4DE-046 AAT: C 代替 32Gbit (4G B) LPDDR4。 Re: LPDDR4 for IMX8MPLUS 它可能不会使用 6GB LPPDR4 来取代当前的 4GB,因为使用 x32bus 的 6GB 需要 4 个引脚,而 I.mx8 plus 只有 2 个引脚。 Re: LPDDR4 for IMX8MPLUS 你好@Vighnesh imx8MP 可以毫无问题地支持 MT53E1536M32D4DE-046 AAT: C LPDDR4,我们已经验证了这款动态随机存取存储器(DRAM)。而且它有两个等级,而不是4个等级。 B.R Re: LPDDR4 for IMX8MPLUS 感谢您的确认。看来我犯了一个错误...
查看全文
CAAMのパフォーマンス こんにちは、 添付のプロジェクト例(SDK 25.06.00 CAAM サンプルから派生したもの)では、CRC のみを計算して CAAM のパフォーマンスを測定したいと考えています。実際、サンプルを実行してみたところ、すぐに動作が遅すぎると感じました。これを実現するために、私はDWT->CYCCNTレジスタを使用します。 ソフトウェアによる実装とも比較してみました。 RT1170-EVKBで実行したところ、以下の結果が得られました。   最初の計算がCAAMのようなアクセラレータにとって既に遅すぎるように思えるなら(ソフトウェア実装よりもさらに遅い)、2番目の計算はとんでもないものだ。 何が問題なのですか?SDKのバグかもしれません。 よろしくお願いいたします 最大 Re: CAAM performaces こんにちは@Kan_Li ご返信ありがとうございます。 残念ながら、あなたの回答はまさに私が抱いていた懸念を裏付けるものでした。添付されたプロジェクトファイルは、返信前に開かれることすらなかったようです。 私がこう言う理由は非常に単純かつ客観的です。プロジェクトは既にCAAM_CRC()を使用しているからです。それは私が見落としていた理論上の可能性でも、試すのを忘れていた代替手段でもありません。添付の例に既に示されており、私の測定結果ではまさにその経路が最も悪い結果を示しました。 念のためもう一度明確にしておきますが、私はドライバの使い方に関する一般的な質問を投稿したわけではありません。NXPのサポート担当者が直接ビルド、実行、動作確認ができるように、SDKのサンプルを基にした完全なプロジェクトを作成し、添付しました。 同じCRCの計算結果を比較しました。 ソフトウェアにおいて CAAMと共に そして結果はまさに私が報告している問題点そのものでした。ハードウェアアクセラレータとしては、測定された性能が予想外に悪く、テストしたケースの一つでは、ソフトウェア実装よりも著しく劣っていました。 それが問題なのです。 「CAAM_CRC() を試してみる」ということではありません。 それは既に済んでいます。 お客様がすぐに実行できるプロジェクトを添付する場合、通常はフォーラムのストレージ容量、ネットワーク帯域幅、または誰かの時間を無駄にしないためです。なぜなら、お客様はサポートが問題を実践形式で再現することを期待しているからであり、特にプロジェクトがその目的のために既に最小化されている場合はなおさらである。 添付された再現プロジェクトが回答前に実際に検証されるという考えに、私は過信しすぎているのかもしれない。もしそうなら、それは私の責任です。 しかし、完全な再現手順が添付された技術的な投稿に対して、このようなレベルの対応しかされないのであれば、多くのユーザーが受けるサポートの質について不満を漏らすのも当然と言えるでしょう。 それでは、誤解の余地が全くないような形で質問を言い換えてみましょう。 添付のプロジェクトは既にCAAM_CRC()を使用しています。 DWT->CYCCNTを用いてサイクル数を計測しました。 同じターゲットに対して、ソフトウェアCRCとCAAM CRCを比較しました。 CAAMの性能は予想よりも悪く、あるケースではソフトウェアと比べて非常に大きな差で劣っていた。 これらの事実を踏まえ、NXP社には以下のいずれかを実施していただきたい。 添付のプロジェクトを使用して結果を再現してください。 オーバーヘッドがどこから発生するのか説明してください。 これがSDK/ドライバーの問題であるかどうかを明記してください。 または、これらの業績数値は予想値であることを明確に述べる。 添付の例自体によって既に矛盾している提案よりも、具体的な技術分析の方がはるかにありがたいです。 よろしくお願いします、 マックス Re: CAAM performaces こんにちは、 @mastupristi さん。 SDKのサンプルでは、CRCの初期化、更新、および終了の各関数が別々に使用されています。ドライバには、代わりに使用できるワンタイムのCAAM_CRC()関数があり、そちらの方が高速であるはずです。CAAM_CRC() を使ってみて、違いが出るかどうか確認してください。 すてきな一日を、 カン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - 最後の投稿から7週間はThreadをフォローしますが、それ以降の返信は無視されます。 後日、関連する質問がある場合は、新しいThreadを作成し、閉じられたThreadを参照してください。 ------------------------------------------------------------------------------- Re: CAAM performaces こんにちは、 @mastupristi さん。 ごめんなさい、私のミスです!CRCエンディアンに関する別のプロジェクトを拝見しました。私のプロジェクトビューでは、あなたのプロジェクトが非常に似通っており、main() 関数もほぼ同じです。見落としてしまい申し訳ありません。   異なるCRC入力データ長であなたのプロジェクトをテストしたところ、CRC処理対象のデータが十分に長い場合(例えば、テストで使用したデータ長の2倍)、CRC初期化、更新、終了に基づくハードウェア計算はソフトウェア実装よりも優れていることがわかりました。しかし、CAAM_CRC()は常にテストで最悪のケースでした。現在、この問題について社内で調査しており、詳細が分かり次第お知らせします。 お待ちいただきありがとうございます! すてきな一日を、 カン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - 最後の投稿から7週間はThreadをフォローしますが、それ以降の返信は無視されます。 後日、関連する質問がある場合は、新しいThreadを作成し、閉じられたThreadを参照してください。 ------------------------------------------------------------------------------- Re: CAAM performaces こんにちは、 @mastupristi さん。 どうやら私のボードに何か問題があるようです。別のRT1170EVKBボードを使ってみたところ、以下の結果になりました。 別のボードで再度試すことはできますか? すてきな一日を、 カン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - 最後の投稿から7週間はThreadをフォローしますが、それ以降の返信は無視されます。 後日、関連する質問がある場合は、新しいThreadを作成し、閉じられたThreadを参照してください。 ------------------------------------------------------------------------------- Re: CAAM performaces こんにちは@Kan_Li 3つのボードと合計4つのテストにおいて、非常に異なる行動と非常に異なる数値が見られることに懸念を抱いています。 ここで一つ覚えておいていただきたいのは、CAAMはMCUの内部ペリフェラルであり、MCU内部のRAMと相互作用するということです。取締役会の外部コンポーネントのうち、現実的に考えて、CAAMにこれほど重大かつ一貫性のない影響を与える可能性のあるものは何だろうか? 現段階では、根本的な問題は実はMCU側にあるのではないかと検討するのは妥当と思われる。 これが私のEVKに搭載されているものです また、3回のテストで得られた数値は、具体的にどのような条件下で得られたものなのか、詳しく教えていただけますでしょうか?特に: どのボードが使用されたか、 どのMCUが搭載されていたか、 また、設定や条件に関して、他に何か関連する違いがあったかどうかも確認した。 最も重要なのは、私の数字とあなたの数字の差をどのように説明するのかということです。 現時点では、さらなるテストに使用できる他の基板がありません。 よろしくお願いします。 最大   Re: CAAM performaces こんにちは、 @mastupristi さん、 私のデバイスはMIMXRT1176DVMAA/0P94B/CTAS2152Aで、あなたのものと同じです。私のテストでは、あなたのコードのデバッグ前にフラッシュメモリで実行中のプログラムが起動しないように、ブートモードをシリアルダウンロードモードに設定し、SRAMであなたのコードを実行しました。あなたも同じようにしましたか?あなたのボード間で結果を共有していただけますか? よろしくお願いいたします。 カン Re: CAAM performaces こんにちは@Kan_Li 「アプリケーションをRAMにリンクする」を試してみました(プロジェクトを添付)。 この設定で、以下の結果が得られました。 ご覧のとおり、状況は大幅に改善されていますが、本当に驚くべきことは、CAAMを使用した最初のCRC計算にかかる時間が、ソフトウェア版と同じであるということです。 CAAM(CAAM_CRC())を使用した最新のCRC計算には3億3700万サイクルかかります(以前は14億2200万サイクルかかっていたので、わずか4分の1に減っただけです)。 このマイクロコントローラを搭載した別のEVKBを借りることができました 以下のような結果が得られました。 つまり、ソフトウェアの実装は両方のボードで全く同じように動作するということです。それは驚くべきことではない。むしろ、私が予想していた通りだ。 最初のCAAMはわずかに時間がかかるだけであるのに対し、2回目のCAAMは大幅に短い時間(2億5200万サイクル)で完了する。 注意点として、憶測を立てる前に、コードを確認して、「第一」と「第二」のソフトウェアとハードウェアの意味を理解してください。 以下に概要を示します。 SW CRC32 iSCSI SW CRC16 CCITT HW (CAAM) CRC32 iSCSI (初期化、更新、最終処理を個別に呼び出し) HW (CAAM) CRC16 CCITT (CAAM_CRC() を呼び出し中) これは私にとって多くの疑問を抱かせる。 特に4位の成績に見られるこの一貫性のなさは、非常に懸念される。何が原因ですか? このアクセラレータは、ソフトウェアによる実装と比較して、全く処理速度を向上させていないようだ。本当にそうなのでしょうか?それとも私が何か見落としているのでしょうか? よろしくお願いします。 最大 Re: CAAM performaces こんにちは、 @mastupristi さん。 4番目の検査結果については現在も社内で確認中です。新たな情報が入り次第、ご連絡いたします。 他のテストでは、ソフトウェア/ハードウェア別にデータをさらに計算しましたか?コア上で動作するソフトウェアはキャッシュからある程度の恩恵を受けるが、データ量が増えると、その差が顕著になる。 よろしくお願いいたします。 カン Re: CAAM performaces こんにちは、 @mastupristi さん。 内部の後。議論の結果、問題の原因はDCACHEの無効化であることが判明しました。 このプロジェクトではキャッシュのライトスルー("CACHE_MODE_WRITE_THROUGH=1") 設定を使用しており、マクロ("CAAM_OUT_INVALIDATE") も有効になっているため、DCACHE 無効化機能によって機能のパフォーマンスが低下します。これは、主にミドルウェアにおけるデータ整合性の問題を回避するために、SDKのサンプルに実装されています。ERR050396(下記参照)のため、TCMは書き込みには使用できません。 以下は、その関数の測定値です。 この例では「出力」はキャッシュ不可能な領域に配置されているため、その特定の関数における無効化は不要です。 /*! @brief CRC の出力バッファ。*/ uint8_t AT_NONCACHEABLE_SECTION(crc_output[4U]); DCACHE無効化が削除されると、次のようになります。 最高最適化(-O3)を有効にした場合: データアクセス制限とCAAM構成構造の処理を考慮すると、この場合、800MHzでDTCM内のデータを使用してITCMから実行される最適化されたソフトウェア実装は、CAAMよりも高速になる可能性があります。ソフトウェア計算が頻繁に中断されるかどうかは、ペイロードのサイズとアプリケーション全体のコンセプトによって決まると言えるでしょう。 よろしくお願いいたします。 カン
查看全文
[不正行為] 投稿者: @RishavKaaraTech / 掲示板: TapLinx-SDK / 報告者: bedhcyqo bedhcyqo は、 @RishavKaaraTech が投稿した 「RFIDDiscover ツールを入手したが、その使い方はわからない」という 投稿を以下の理由で報告しました。 理由:嫌がらせ 詳細: 購入アンビエン 代金引換 購入非ジェネリックのアンビエンをオンラインで購入 アンビエンシドニーでは処方箋なしで ジェネリックアンビエン格安 アンビエン処方箋不要のオンライン薬局 購入プロアンビエン どこで次のアンビエンを購入する 今はダメ アンビエン セイウチ バルプロ酸アンビエンの相互作用ジェネリック アンビエンブルガリアでは処方箋なしで http://sp-journal.ru/article/19339 "> 一般的なアンビエン対アンビエン アンビエンの購入方法 アンビエンリトアニアでは処方箋なしで https://www.rapidservice.com.ec/es/content/ambien-cheap-non-prescription "> ジェネリックアンビエン 安い アンビエンを購入したい 購入モントリオールのアンビエン 購入モントリオールのアンビエン アンビエンネブラスカ州では処方箋なしで入手可能 アンビエンジェネリック写真 オーストラリアでアンビエンを安く購入 安いアンビエン アメリカ 安いオーストラリアでのアンビエン アンビエンを次に注文する場所 アンビエンの購入価格 アンビエンをオンラインで購入する 割引アンビエン cr 購入アンビエンCRオンライン アンビエン処方箋なしでオンラインで購入 購入無料の翌日配送薬局アンビエン valiumアンビエンの相互作用ジェネリック ジェネリックアンビエン 安い 処方箋なしでアンビエンを購入する 次にアンビエンを購入する場所 アンビエンの注文方法 アンビエンのジェネリック %E2%オーストラリアで安いアンビエン どこで次のアンビエンを購入する 割引アンビエン cr プロアンビエンを購入する 購入バイアグラ インド ジェネリック アンビエン 投稿リンク: https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/RFIDDiscover-tool-acquired-but-how-to-use-it/mp/2164324#M205 投稿者: @RishavKaaraTech |作成者に電子メールを送信する 報告者: bedhcyqo |メールによる報告 報告された投稿には3件の返信があります。
查看全文
i.MX93 - 1PPS入力とPTP 目標: GPS レシーバからの Pulse-Per-Second (PPS) 信号と GPRMC ログを使用して、ENET_QoS イーサネット コントローラ内で PTP 時間の同期を検証する ハードウェア: i.MX 93 ビルドルート: 2025.11.1 Linux: 6.12.16 Linuxptp : 4.4 デバイスツリーオーバーレイの変更: eqos のステータスを「無効」から「正常」に変更します usdhc2 pinctrl-* エントリから pinctrl_usdhc2_gpio および pinctrl_usdhc2_gpio_sleep エントリを削除します。 pinctrl_eqos と pinctrl_eqos_sleep に「MX93_PAD_SD2_CD_B__ENET_QOS_1588_EVENT0_IN 0x31E」エントリを追加します。 usdhc2 cd-gpiosエントリを削除し、broken-cdに置き換えます pinctrl_usdhc2_gpio ノードと pinctrl_usdhc2_gpio_sleep ノードを削除します。  ターゲット上のソフトウェアの場所: eMMCからの起動 LinuxカーネルとptpアプリをubootingしてSDカードから実行する  Linux PTPソフトウェアを実行中: ptp4l -E4H -i eth1 ts2phc -c /dev/ptp1 -s nmea --ts2phc.nmea_remote_host10.128.240.54 --ts2phc.nmea_remote_port3001 --ts2phc.ピンインデックス0 -l 7 -m PPS入力: 現在、GPS レシーバからの PPS 信号を受け入れるように FRDM i.MX 93 ボードに変更を加える前に、あらゆるイベントのタイムスタンプを検証しようとしています。これらのイベントを生成するために、SD カード ソケットの機械式スイッチの脚の間に絶縁体を挿入しています。SD2_nCD に接続された IO ピンを GPIO 入力として手動で設定し、このアクションによってピンの入力電圧が変化することを確認しました。ハードウェアによるイベント情報のタイムスタンプは、特定の周期性に依存すべきではないと私は想定しています。 テスト結果: ts2phcはGPRMCログを受信していますが、ログにはポーリングで常にゼロイベント情報が返されることが示されています。 devmem プログラムを使用したスクリプト経由でレジスタを調べると、次のようになります。 SW_MUX_CTL_PAD_SD2_CD_B 0x00000001 SW_PAD_CTL_PAD_SD2_CD_B 0x0000031E MAC_SYSTEM_TIME_SECONDS 0x69AB35B0 MAC_SYSTEM_TIME_NANOSECONDS 0x10642013 MAC_TIMESTAMP_STATUS 0x00000000 MAC_補助制御 0x00000010 MAC_AUXILIARY_TIMESTAMP_NANOSECONDS 0x00000000 MAC_AUXILIARY_TIMESTAMP_SECONDS 0x00000000 システム時間レジスタが適切に時間をカウントしていることがわかります 補助タイムスタンプ レジスタにはゼロ以外の値が表示されることはありません。リファレンス マニュアルでは、FIFO が空のときには常にゼロが読み取られるのか、それとも最新のタイムスタンプが返されるのかは明確ではありません。 SW_MUX_CTL_PAD_SD2_CD_B レジスタの SION ビットを 0 と 1 の両方に設定してこれを試しましたが、結果に違いはありませんでした。 pin_index マッピングが予想どおりでなかった場合に備えて、MAC_AUXILIARY_CONTROL レジスタの 4 つの ATSEN ビットをすべて設定してみましたが、結果に違いはありませんでした。 i.MX 93 アプリケーションプロセッサリファレンスマニュアル、Rev. 6、2025-07-01 を読んだときに生じた追加の質問: 第 43 章 TSN 対応イーサネット コントローラ (ENET_QoS)、セクション 43.5、表 417 には、2 つの異なるイベント入力 1588_EVENT_AUX_IN と 1588_EVENT_IN がリストされています。これら 2 つの信号はどの外部ピンまたは内部デバイス ポートに接続されますか?1588_EVENT_IN ポートは ENET_QoS 内で何に接続しますか?1588_EVENT_AUX_INはptp_aux_trig_i[0]に接続され、ATSEN0ビットによって制御されていると推測します。(これはカーネルと ts2phc が期待していることでもあるようです。)それは正しいですか? 第43章、セクション43.5、表417には、1つのイベント出力1588_EVENT_OUTがリストされています。この信号はどの外部ピンまたは内部デバイス ポートに接続されますか?1588_EVENT_OUT ポートは ENET_QoS 内で何に接続しますか?PPS 出力の 1 つに関連付けられていますか? 第 43 章では、タイムスタンプをトリガーするために ptp_aux_trig_i 入力のどのエッジ (立ち上がり/立ち下がり/両方) が使用されるかが指定されていないようです。 Re: i.MX93 - 1PPS input and PTP こんにちは、 NXP Semiconductors製品にご興味をお持ちいただきありがとうございます。 AUX_IN 信号は、現在の時刻 (この時刻は、どのアプリケーションでもタイムスタンプ値として使用されます) をタイムスタンプ FIFO にラッチすることをトリガーするために使用されます (以前のトリガー イベントから複数のタイムスタンプ値がある場合があります)。 EVENT_IN はメディア クロック生成および回復ブロックへの入力であり、次のトリガーに使用されます。 アプリケーションから読み取られたターゲットプレゼンテーション時間のキャプチャは、リカバリモードが有効になっている場合は MAC_PPSn_Target_Time_Seconds に結果を生成します。 生成モードが有効になっている場合、サンプリングされたトリガーで現在のプレゼンテーション時間をキャプチャします。 1588_EVENT_OUT は、プロセッサによって PPS 出力を駆動するために使用されます。 よろしくお願いします。 Re: i.MX93 - 1PPS input and PTP AUX_IN という用語を使用する場合、それは表 417 の 1588_EVENT_AUX_IN という用語と同じですか? もしそうなら、どの特定の ATSEN* ビットにマップされますか? AUX_IN (1588_EVENT_AUX_IN) は、SW_MUX_CTL_PAD_SD2_CD_B の ENET_QOS_1588_EVENT0_IN モードに接続しますか? Re: i.MX93 - 1PPS input and PTP こんにちは@Kevin_M はい、1588_EVENTx_AUX_IN です。次のフィールドを確認してください。これが AUX の使用法です。 PTGE プレゼンテーション時間生成の有効化 このビットが設定されると、プレゼンテーション時間生成が有効になります。 0 - プレゼンテーション時間生成が無効 1 - プレゼンテーション時間生成が有効 ... MAC_PPS0_ターゲット時間秒 PPS ターゲット時間秒レジスタ このフィールドには、時間を秒単位で格納します。 PPSターゲットタイム秒レジスタ このフィールドには時間が秒単位で保存されます。タイムスタンプ値が両方のターゲット タイムスタンプ レジスタと一致するかそれを超えると、MAC は PPS 信号出力を開始または停止し、MAC_PPS_CONTROL レジスタの対応する PPS 出力に対して選択されたターゲット タイム モードに基づいて割り込み (有効な場合) を生成します。 ... 43.7.9.1 メディアクロック生成のプログラミングガイドライン 1. PPSインスタンスをメディアクロック生成モードに設定するには、適切なプレゼンテーションタイムコントロール(サポートされている生成モード「1001-1011」)をMAC_PPS_CONTROLレジスタのPPSCMD(0番目のインスタンスの場合)/PPSCMD#i(1、2、3番目のインスタンスの場合)にプログラムします。 2. 選択されたPPSインスタンスに基づいて、アプリケーションは対応するmcg_pst_trig_i[#i]に適切なトリガー信号を駆動する必要があります。 ... 43.7.9.2 メディアクロックリカバリのプログラミングガイドライン 1. MAC_TIMESTAMP_CONTROL レジスタの PTGE フィールドを設定して、現在のプレゼンテーション時間 (CPT) カウンタを有効にします。システム時間の初期化値をプログラムすることに加えて、同等のプレゼンテーション時間の初期値で MAC_PRESN_TIME_UPDT レジスタを更新します。その後、MAC_TIMESTAMP_CONTROL レジスタの TSINIT フィールドが設定されます。 2. システム時間に使用される増分値は、現在のプレゼンテーション時間にも使用されます。これは、増分値がサブ秒およびサブナノ秒単位であるためです。 1.各ATSENはそれぞれのEVENTにマッピングされます 2. 正解です。ここでAUX_INを確認できます。https://github.com/nxp-imx/linux-imx/blob/lf-6.12.y/arch/arm64/boot/dts/freescale/imx8mp-pinfunc.h#L54 よろしくお願いいたします。 Re: i.MX93 - 1PPS input and PTP @JosephAtNXP私は PPS 出力を設定しようとしているわけではなく、IEEE 1722 と関係のあることもしようとしているわけではありません。ENET_QOS_1588_EVENT0_IN の状態が変化した瞬間にタイムスタンプを付けようとしています。 Re: i.MX93 - 1PPS input and PTP @JosephAtNXP さん、ENET_QoSで1588 PPSの入力がうまく機能しない理由について、まだ調査中でしょうか? Re: i.MX93 - 1PPS input and PTP @Kevin_Mこの問題の解決に何か進展はありましたか?私も同じ問題に直面しています。ENETインスタンスではPTPをPPS入力と同期させることはできますが、リファレンスマニュアルやドライバでEVENT0_INピンをENET_QOSで使用する方法が見つかりません。 Re: i.MX93 - 1PPS input and PTP ケビンさん、ありがとうございます。確かにそれが唯一の方法のようですが、stmmacドライバではまだ対応していないようなので、追加する必要がありますね。 Re: i.MX93 - 1PPS input and PTP NXPは、ENET_QoSのAUX TIMESTAMP機能がi.MX93チップの内部または外部のいずれにも接続されていないことを確認しました。 私は、1588_EVENT0_IN モードで SD2_CMD を介して PPS をルーティングし、MAC_PPS_CONTROL をプレゼンテーション時間制御オプション 0001 を使用するように設定して、PPS 信号の立ち上がりエッジでプレゼンテーション時間をキャプチャし、MAC_PPS0_TARGET_TIME_SECONDS でキャプチャされた時間を読み取ることに成功しました。まだ解決すべき細かい点はたくさんありますが、これは有望な解決策のように思えます。
查看全文
RT1170 USB CDC は、実行されていないコードにブレークポイントを設定しても kStatus_USB_Busy で停止します。 こんにちは、 私は i.MX RT1170 (M7 コア) で以下の作業を行っています: SDKバージョン25.09 FreeRTOS USB CDC (仮想COM) CAN-FDの並列実行 初期化は正常です。 USB 列挙が正常に完了しました。 通常実行中は、CAN-FD と USB 通信は両方とも正常に動作します。 通常の状態でのシステムの動作: CAN-FDはデータを正しく受信します USB CDCはPC(Tera Term)にデータを正常に送信します USB_DeviceCdcAcmSend() は期待通りに動作します USBコールバックが実行され、ビジーフラグが適切にクリアされます 問題: プロジェクトの任意の場所にブレークポイントを配置すると、現在実行されていないコード内であっても (たとえば、初期化後の main() 内や関連のない関数内)、システムは実行を継続しますが、USB CDC は最終的に停止してしまいます。 重要な観察事項: ブレークポイントはヒットしていません。 コードは正常に実行され続けます。 FreeRTOS タスクは実行を継続します。 CAN-FD は正常に動作し続けます。 USB CDC のみが機能を停止します。 この現象が発生すると、次のようになります。 USB_DeviceCdcAcmSend() は kStatus_USB_Busy を返します USB転送コールバックが呼び出されない ビジーフラグが消えない ボードをリセットするまでUSB通信は永久に停止します 実行時に printf() を使用した場合でも、同様の動作が引き起こされることがあります。 構成: #define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 2 #USB_DEVICE_INTERRUPT_PRIORITY (6U) を定義します。 USBタスクスタックサイズ: #APP_TASK_STACK_SIZE を 8000L と定義します スタックオーバーフローは発生しません。 システムはクラッシュしません。 USB CDC 通信のみが停止します。 質問: 実行されていないコードにブレークポイントが設定されている場合でも、USB CDC が停止するのはなぜですか? デバッガーは、USB HS タイミングに影響を与えるような方法で M7 コアを一時的に停止しますか? USB 割り込みの遅延サービスにより、CDC ドライバが永続的に kStatus_USB_Busy 状態のままになる可能性はありますか? これは、CPU が停止したときの USB HS コントローラ (EHCI) の予想される動作ですか? 転送の破損を起こさずに RT1170 上の USB CDC をデバッグするための推奨方法は何ですか? どのようなご指導でもいただければ幸いです。 よろしくお願いします。 USB Re: RT1170 USB CDC stuck in kStatus_USB_Busy even when breakpoint is placed in non-executing code こんにちは@Harisha 弊社の製品にご興味をお持ちいただき、またコミュニティをご利用いただき誠にありがとうございます。 問題に関しては、次の調整を試すことをお勧めします。 1:USB がタイムリーな割り込みサービスを確実に受信できるように、USB 割り込み優先度を FreeRTOS が管理できる最高の優先度に設定します。 2:他のモジュール(アプリケーション内の CAN-FD など)の割り込み優先度を下げて、USB プロセッシングが停止しないようにします。 これらの変更を試して、もう一度テストしてください。   よろしくお願いいたします。 メイリュー  
查看全文
ENEDC(S32K3)に関する質問 こんにちはチーム K3のENEDCについてお伺いしてもよろしいでしょうか? 顧客は RTD 付きの MCAL を使用します。 しかし、ENEDC に関する RTD の情報は見つかりませんでした。 MSCM からは、ISR コア割り当て構成のみが表示されます。 RTD(MCAL) を使用して ENEDC を有効にする方法を教えてください。 ありがとう。 SAFETY_SW 出典: 直接顧客 出典: NXP社内 Re: Question about ENEDC(S32K3) ご説明ありがとうございます! Re: Question about ENEDC(S32K3) こんにちは@Luke_Chun 、 RM の説明から私が理解したところによると、ガスケットから FCCU へのレポート パスをアクティブにしたい場合は、これらのビットを有効にする必要があります。 このため、sCheck はこれらのビットを有効にします。そうしないと、レポート パスをテストできなくなります。 これは必須の設定であること、そしておそらく多くの K3 お客様がこの設定に気付いていない (関連する FCCU チャネルを有効にするだけで、これらのビットは有効にしない) ことには同意します。 敬具、 ラドスラフ Re: Question about ENEDC(S32K3) こんにちは@RadoslavB ご説明ありがとうございます。しかし、ENEDC の提案についてはよく分かりません。 私の理解を確認していただけますか? ENEDC では「TEST」のみを使用する必要がありますか? または セーフティアプリケーションを有効にする必要はありますか?(たとえば、ユーザーが eDMA 読み取りのチェックを使用したい場合は、ENEDC のビット 2 を FCCU 構成で手動で「設定」します。) ありがとう。 Re: Question about ENEDC(S32K3) こんにちは@Luke_Chun 、 SAF で MSCM ペリフェラルレジスタを構成する要求はありません。 sCheck テストは、関連する EDC ガスケットの潜在的な障害をテストするときにこれらのレジスタを内部的に有効にしますが、アプリケーションに対してこれらのビットを有効にすることはどの NXP SW でもカバーされていません。 したがって、お客様はこれらのレジスタを手動で有効にする必要があります。 S32K5 の場合、これらのレジスタをイネーブルメントの sBoot チェックが定義されていますが、繰り返しますが、私の知る限り、構成はどの NXP SW の範囲にも含まれていません。 敬具、 ラドスラフ Re: Question about ENEDC(S32K3) こんにちは@Luke_Chun 、 セーフティドライバーに関連する問題はサポートしていません。彼らにサポートを依頼するには、投稿で「RTD」ラベルを削除し、「Safety_SW」ラベルのみを残す必要があります。または、Safety_SW のみに新しい投稿を作成することもできます。 よろしくお願いいたします。 ダン Re: Question about ENEDC(S32K3) こんにちは@DanNguyenDuy 更新情報をありがとうございます。 セーフティドライブも確認しましたが、どれがENEDCに関係するのかわかりませんでした... どうやって確認すればいいのでしょうか? よろしくお願いします。 Re: Question about ENEDC(S32K3) こんにちは@Luke_Chun 、 RTD ドライバーは ENEDC の構成ではサポートされていません。私の観点からすると、このレジスタは FCCU に関連しているため、セーフティドライバのモジュールでこの機能を確認する必要があります。 よろしくお願いいたします。 ダン Re: Question about ENEDC(S32K3) K3 HW セーフティマニュアルからの抜粋を追加します: したがって、現時点ではこの AoU に従うかどうかはお客様の責任です。構成とチェックは現時点では NXP ではサポートされていません。 敬具、 ラドスラフ Re: Question about ENEDC(S32K3) こんにちは@Luke_Chun 、 INTM ペリフェラルの構成がサポートされており、RTD プラットフォーム プラグイン - 割り込みモニターで見つけることができます。 SAF 側では、sCheck は INTM 潜在的障害テストを備えていますが、sBoot は INTM 構成レジスタをチェックしません。私の意見では、割り込みがセーフティ関連の障害の検出/反応メカニズムである場合、SM1.INT_MON はアクティブである必要があり、顧客は SM4.INT_CHK を満たす必要があり、sBoot はそのような構成を再確認する必要があります。 敬具、 ラドスラフ Re: Question about ENEDC(S32K3) こんにちは@RadoslavB もう1つ質問してもよろしいでしょうか? INTM_MMはどうでしょうか? これは ENEDC でも同じですか? (RTD または SAF は INTM_MM 有効構成をサポートしていません。ユーザーはユーザー コードによって INTM_MM の構成を行う必要があります。 ありがとう。  
查看全文
DDR4 calibration issues on LS1046 custom board Good day! We are trying to bring up our custom LS1046-based board up and stucked with DDR4 calibration procedure. SPD data of the modules is red successfully, calibration process starts successfully too, but after that it fails with this reason(log from CodeWarrior 😞  ############################### Run 1 Result for: wrlvl_searcher  ###################################### Test result: [ ============================================================ Updated: WRLVL_CNTL = 0x8655F605, WRLVL_CNTL_2 = 0x00000000, WRLVL_CNTL_3 = 0x00000000, SDRAM_CLK_CNTL = 0x02800000 ============================================================ Updated: WRLVL_CNTL = 0x8655F60A, WRLVL_CNTL_2 = 0x0B0B0C0F, WRLVL_CNTL_3 = 0x0F10110D, SDRAM_CLK_CNTL = 0x02800000 ============================================================ Updated: WRLVL_CNTL = 0x8655F60A, WRLVL_CNTL_2 = 0x0B0B0C0F, WRLVL_CNTL_3 = 0x0F101115, SDRAM_CLK_CNTL = 0x02800000 ============================================================ Updated: WRLVL_CNTL = 0x8655F60A, WRLVL_CNTL_2 = 0x0B0B0C0F, WRLVL_CNTL_3 = 0x0F10111D, SDRAM_CLK_CNTL = 0x02800000 Write Leveling start values are correct and require no further modification, but the test failed due to other issues. Most common failure causes: -incorrect values configured in DDR4 DQn_MAP registers -incorrect ODT values -incorrect driver strength selected -incorrect timing values selected for Timing Configuration 0 properties (TIMING_CFG_0 register) < > {{Write Leveling start values are correct and require no further modification, but the test failed due to other issues.}} Err. capture registers: 0xE20, 0xDEADBEEF 0xE24, 0xDEADBEEF 0xE28, 0x00000000 0xE40, 0x00000000 0xE44, 0x00000000 0xE48, 0x0000001D 0xE4C, 0x60FF2001 0xE50, 0x00001FC0 0xE54, 0x00000000 0xE58, 0x00010000  ############################################ DQ mapping seems to be OK - we have 1:1 mapping from CPU to DDR slot, so we use DQ mappings from DDR module SPD without changing. What can be the problem?  Re: DDR4 calibration issues on LS1046 custom board Is there available RCW on the customer board? Has the ASLEEP led turned on and off? What's the frequency of the DDR clock? Thanks Re: DDR4 calibration issues on LS1046 custom board DDR calibration is performed using a hardcoded RCW. System clock - 100 MHz  DDR bus clock - 800 MHz, DDR data rate - 1600 mt/s Memory module - non-ECC. One interesting thing - from timer to time the 1 st stage of calibration (wrtlvl search) is successfully passed. For example: Test result: [ ================================================= Updated: WRLVL_CNTL = 0x8655F605, WRLVL_CNTL_2 = 0x00000000, WRLVL_CNTL_3 = 0x00000000, SDRAM_CLK_CNTL = 0x02800000 ============================================================ Updated: WRLVL_CNTL = 0x8655F609, WRLVL_CNTL_2 = 0x0A0B0C0E, WRLVL_CNTL_3 = 0x0F10110D, SDRAM_CLK_CNTL = 0x02800000 ============================================================ Updated: WRLVL_CNTL = 0x8655F609, WRLVL_CNTL_2 = 0x0A0B0C0E, WRLVL_CNTL_3 = 0x0F101115, SDRAM_CLK_CNTL = 0x02800000 ============================================================ Updated: WRLVL_CNTL = 0x8655F609, WRLVL_CNTL_2 = 0x0A0B0C0F, WRLVL_CNTL_3 = 0x0F10111D, SDRAM_CLK_CNTL = 0x02800000 < > Err.capture registers: 0xE20, 0x00000000 0xE24, 0x00000000 0xE28,0x00000000 0xE40,0x00000000 0xE44,0x00000000 0xE48, 0x0000001D 0xE4C, 0x00000000 0xE50,0x00000000 0xE54,0x00000000 0xE58, 0x00010000 Dump: 0xF00,0x00000000 0xF04, 0x00000002 0xF08, 0x0000000F 0xF0C,0x14000C20 0xF10, 0x00000000 0xF14, 0x00000000 0xF18, 0x00000000 0xF1C, 0x00000000 0xF20, 0x00000000 0xF24, 0x2F003000 0xF28, 0x32003400 0xF2C, 0x39003B00 0xF30, 0x3C003E00 0xF34, 0x00005000 0xF38, 0x00000000 0xF3C, 0x00000000 0xF40, 0x00000000 0xF44, 0x00000000 0xF48, 0x00000001 0xF4C, 0xD4000000 0xF50, 0x13001500 0xF54, 0x17001900 0xF58, 0x1D001F00 0xF5C, 0x21002200 0xF60, 0x3A000000 0xF64, 0x00009000 0xF68, 0x00000020 0xF6C, 0x00000000 0xF70, 0x0070006F 0xF74, 0x00000000 0xF78, 0x00000000 0xF7C, 0x00000000 0xF80, 0x00000000 0xF84, 0x00000000 0xF88, 0x00000000 0xF8C, 0x00000000 0xF90, 0x00000000 0xF94, 0x80000000 0xF98, 0x00000000 0xF9C, 0x34043104 0xFA0, 0x35043304 0xFA4, 0x31043304 0xFA8, 0x2F043104 0xFAC, 0x04040000 0xFB0, 0x00000003 0xFB4, 0x1F1E1F21 0xFB8, 0x1E1C1F1D 0xFBC, 0x1F1B1D1E 0xFC0, 0x1C1B1C1C 0xFC4, 0x1F1E1F22 0xFC8, 0x1F1F2120 0xFCC, 0x1F1E1F20 0xFD0, 0x1C1D201F 0xFD4, 0x1F1B1B1E 0xFD8, 0x1F1D1E1C 0xFDC, 0x1F1F1D1F 0xFE0, 0x1F1D1E1C 0xFE4, 0x1F1C191A 0xFE8, 0x1C1D1C1A 0xFEC, 0x1F1E1C1E 0xFF0, 0x1E1F1E1A 0xFF4, 0x1F1F1F1F 0xFF8, 0x1F1F1F1F 0xFFC, 0x1F000000 Data: 0x00000009 0x0000000a 0x0000000b 0x0000000c 0x0000000f 0x0000000f 0x00000010 0x00000011 0x0000001d   Just after that I start calibration process again(without any changes in settings) and get a fail: ########## Result for: wrlvl_searcher ######  Test result: [ Updated: WRLVL_CNTL = 0x8655F605, WRLVL_CNTL_2 = 0x00000000, WRLVL_CNTL_3 = 0x00000000, SDRAM_CLK_CNTL = 0x02800000 ============================================================ Updated: WRLVL_CNTL = 0x8655F609, WRLVL_CNTL_2 = 0x0A0B0C0E, WRLVL_CNTL_3 = 0x0F10110D, SDRAM_CLK_CNTL = 0x02800000 ============================================================ Updated: WRLVL_CNTL = 0x8655F609, WRLVL_CNTL_2 = 0x0A0B0C0E, WRLVL_CNTL_3 = 0x0F101115, SDRAM_CLK_CNTL = 0x02800000 ============================================================ Updated: WRLVL_CNTL = 0x8655F609, WRLVL_CNTL_2 = 0x0A0B0C0E, WRLVL_CNTL_3 = 0x0F10111D, SDRAM_CLK_CNTL = 0x02800000 Write Leveling start values are correct and require no further modification, but the test failed due to other issues. Most common failure causes:   - incorrect values configured in DDR4 DQn_MAP registers  - incorrect ODT values  - incorrect driver strength selected  - incorrect timing values selected for Timing Configuration 0 properties (TIMING_CFG_0 register) < > {{Write Leveling start values are correct and require no further modification, but the test failed due to other issues.}} Err. capture registers: 0xE20, 0xDEADBEEF     0xE24, 0xDEADBEEF     0xE28, 0x00000000     0xE40, 0x00000000      0xE44, 0x00000000     0xE48, 0x0000001D     0xE4C, 0x60FF2001     0xE50, 0x00001FC0      0xE54, 0x00000000     0xE58, 0x00010000      Dump: 0xF00, 0x00000000     0xF04, 0x00000002     0xF08, 0x0000000E     0xF0C, 0x14000C20      0xF10, 0x00000000     0xF14, 0x00000000     0xF18, 0x00000000     0xF1C, 0x00000000      0xF20, 0x00000000     0xF24, 0x2F003100     0xF28, 0x33003400     0xF2C, 0x3A003A00      0xF30, 0x3C003E00     0xF34, 0x00005000     0xF38, 0x00000000     0xF3C, 0x00000000      0xF40, 0x00000000     0xF44, 0x00000000     0xF48, 0x00000001     0xF4C, 0xD4000000      0xF50, 0x13001500     0xF54, 0x17001900     0xF58, 0x1D001F00     0xF5C, 0x21002200      0xF60, 0x3A000000     0xF64, 0x00009000     0xF68, 0x00000020     0xF6C, 0x00000000      0xF70, 0x0070006F     0xF74, 0x00000000     0xF78, 0x00000000     0xF7C, 0x00000000      0xF80, 0x00000000     0xF84, 0x00000000     0xF88, 0x00000000     0xF8C, 0x00000000      0xF90, 0x00000000     0xF94, 0x80000000     0xF98, 0x00000000     0xF9C, 0x31022F02      0xFA0, 0x33023102     0xFA4, 0x30023102     0xFA8, 0x2E022F02     0xFAC, 0x02020000      0xFB0, 0x10000003     0xFB4, 0x46444650     0xFB8, 0x45445142     0xFBC, 0x51445052      0xFC0, 0x46454544     0xFC4, 0x45434651     0xFC8, 0x44455045     0xFCC, 0x46455051      0xFD0, 0x45455146     0xFD4, 0x52505052     0xFD8, 0x52505246     0xFDC, 0x50464546      0xFE0, 0x51465042     0xFE4, 0x53464650     0xFE8, 0x52515145     0xFEC, 0x50454546      0xFF0, 0x45505142     0xFF4, 0x46464646     0xFF8, 0x52515350     0xFFC, 0x00000000        Data:  0x00000009 0x0000000a 0x0000000b 0x0000000c 0x0000000e 0x0000000f 0x00000010 0x00000011 0x00000025  ######################################################## Also I' ve noticed that Lane 8 is probed during calibration process, despite to that fact that ddr module is non-ecc and ecc is disabled in project settings.   Re: DDR4 calibration issues on LS1046 custom board 1.The QCVS does not support hardcoded RCW official, valid RCW has to be presented in the RCW source flash or SD card. Would you kindly program the RCW into the flash first, and then do the QCVS DDR validation. 2.Run the command below in the CCS: (bin) 42 % delete all (bin) 43 % config cc cwtap (bin) 44 % show cc (bin) 45 % ccs::config_chain {ls1043a dap sap2} (bin) 46 % display ::ccs::get_config_chain (bin) 47 % ccs::reset_to_debug Send the logs to me. 3.would you kindly share the schematics and confirm the layout follow the AN5097, Hardware and Layout Design Considerations for DDR4 SDRAM Memory Interfaces Thanks Re: DDR4 calibration issues on LS1046 custom board The problem was solved by updating to new version of QCVS(4.27.0)
查看全文
Flexera 许可加密狗 你好 我们使用 Flexera 许可证密钥使用 CodeWarrior 5.2 和 11.1 已经有一段时间了。本来一切正常,但突然之间,CodeWarrior Suites 似乎再也无法识别加密狗了。 lmtools 可以正确显示 FLEXid: 我的 license.dat 文件位于以下路径: C:\Program Files (x86)\Freescale\CWS12v5.2 C:\Freescale\CW MCU v11.1\MCU 在 CodeWarrior 5.2 中,我遇到了以下错误: 而在 11.1 版中,我得到的是 我使用的电脑运行的是 Windows 11。我们有一些使用 Windows 10 操作系统的旧笔记本电脑,在使用时没有任何问题。 如有任何帮助,我们将不胜感激! 谢谢! 扎克
查看全文
How to enable LVDS panel at uboot on iMX8M PLUS Hi, NXP Support Specialist. We're currently working on enabling an LVDS display in L6.12.20 yocto for an IMX8MP custom board. The LVDS display works well in kernel but uboot doesn't display logo, so we follow this website (https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/Add-i-MX8MP-LVDS-driver-in-uboot/ta-p/1434826) to add patch to uboot 2025.04 and still cannot display. Is there any advices or patch for L6.12.20 yocto bsp? The attachments below are current uboot log we get and dm tree. Graphics & Display Linux Re: How to enable LVDS panel at uboot on iMX8M PLUS Thank you for reply and suggestion, we can see the uboot logo now! Re: How to enable LVDS panel at uboot on iMX8M PLUS Hi @Mikw  Please make sure that you have defined the display timing in simple_panel.c if you are referring the 0001-L6.1.55-Add-i.MX8MP-LVDS-panel-demo.patch. The uboot log you provided shows that the ldb driver can't decode display timing. Best Regards, Zhiming
查看全文
CAN UDSアップデートのためのS32K144統合ブートローダ構成 こんにちは、 私は、S32 Design Studio を使用して、S32K144 EVB 上の NXP Unified Bootloader ソース コードを操作しています。私の目的は、MCU にブートローダを統合し、UDS を使用して CAN 経由でアプリケーション ファームウェアを更新することです。ブートローダーをフラッシュする前に、ソース ファイルまたは構成を変更する必要があるかどうかを確認したいと思います。たとえば、CAN ID やボーレートなどの CAN パラメータを設定したり、S32K144 EVB の HAL/ドライバー移植ファイルを変更したりしますか?または、ブートローダーを何も変更せずにそのまま EVB にフラッシュして評価することはできますか? ブートローダをプログラミングした後、それが正しく実行されていることを確認し、CAN 経由でアプリケーションのフラッシュをテストしたいと思います。ブートローダ モードを強制する方法、ブートローダの実行を確認する方法 (UART ログ、CAN 応答、デバッガなど経由)、ブートローダがアプリケーションにジャンプする方法など、推奨される検証手順について説明していただけますか? さらに、正しいアプリケーション フラッシュ開始アドレス、リンカー設定、ベクター テーブルの場所、必要なスタートアップ コードの変更など、ブートローダーで動作するようにアプリケーション プロジェクトを構築する方法に関するガイダンスも必要です。最後に、S32K144 を使用した UDS フラッシュに使用される一般的な PC 側ツールと、CAN 経由で統合ブートローダをテストするための推奨 CAN インターフェース ハードウェアについて知りたいと思います。 Re: S32K144 Unified Bootloader Configuration for CAN UDS Update こんにちは@padmaja 、 残念ながら、コミュニティで共有されている統合ブートローダーは非公式のデモ版のみ提供されています。 現状のまま 保証もサポートもありません。現在、このデモをサポートするリソースがありません。ドキュメントを通じてご質問にお答えするよう努めますが、フォローアップが表示された場合は、代わりにサポート ページにお問い合わせください。 アプリケーションを MCU にフラッシュし、ECU-BUS 機能のテストを開始できます。CAN ID、ボーレートなどを変更する必要はありません。両方を参照できます 統合ブートローダ – ユーザーガイドとUDS ブートローダ実装ガイド。 Open Bus Toolを使用する前に、CANブートローダをMCUにダウンロードする必要があります。これは、S32DSを使ってプロジェクトをコンパイルすることで実行できます。また、コミュニティ投稿「 HOWTO: S32 Design Studioを使用してマイクロコントローラに個別のelf/srec/hexファイルをダウンロードする」に記載されているように、elf/binaryファイルをアップロードすることもできます。 Open Bus Toolを使用すると、CANバス経由でアプリケーションをダウンロードできます。PEAK CANバスインターフェースをサポートしています。APPプロジェクトは統合ブートローダパッケージに含まれています。 ツールで読み込む必要があるJSONファイルも存在します。このJSONファイルには、フラッシュドライバ(flash_api.bin)とAPPファームウェア(APPファームウェアのフォーマットはS19/hex/binary)に関する情報が含まれています。 よろしくお願いします、 ジュリアン
查看全文
iMXRT1060 マイクロコントローラのマニュアルの一部の情報が不正確または不完全である可能性があります。 最近、i.MX RT1060 プロセッサ リファレンス マニュアル、Rev. 3、07/2021 の情報を考慮して、FlexPWM によって生成されたハードウェア トリガーを使用して取得シーケンスを実装するように ADC (iMXRT1062 - Teensy 4.1) をプログラミングしていました。 コミュニティによって確認され、マニュアルの次のバージョンで更新される可能性のある 2 つの問題に気づきました。 1 つ目は、XBAR1 でトリガーをルーティングするための構成を指します。マニュアルの 62 ページの表 4-5 - XBAR1 入力割り当てによると、トリガー信号 FlexPWM4_SM2_TRIG0 と FLEXPWM4_PWM2_OUT_TRIG1 は XBAR1_IN53 入力に関連付けられていますが、私のコードは XBAR1_IN54 入力を使用してのみ動作しました。コードはhttps://ernane-aac.github.io/Teensy-4.1--How-to-Configure-the-ADC-System/で入手できます。 2 番目の問題は、ユーザーがビット B2B = 0 を使用することを決定した場合の ADC_ETC_TRIG0_COUNTER レジスタのサンプル間隔構成に関係します。マニュアルでは、間隔遅延を次のように設定しています: Interval_delay = (SAMPLE_INTERVAL+1)*(PRE_DIVIDER+1)*ipg_clk。SO、アプリケーションのニーズを満たす SAMPLE_INTERVAL と PRE_DIVIDER のさまざまな組み合わせが存在します。このCASE、PRE_DIVIDER=0 を考慮すると、SAMPLE_INTERVAL は 271 以上である必要がありますが、コードは PRE_DIVIDER=0 では機能しませんでした。PRE_DIVIDER=1、SAMPLE_INTERVAL=136 に変更すると、コードは動作します。このコードは PRE_DIVIDER=1 以上の組み合わせでは機能しますが、PRE_DIVIDER=0 では機能しないことに注意してください。マニュアルに記載されているこれらのビットの機能に関する単なる説明を超えた何かがあるようです。コードはhttps://ernane-aac.github.io/Teensy-4.1--How-to-Configure-the-ADC-System/で紹介されているものと同じです。B2B (コメント) からサンプル間隔 (サンプル間隔と事前分割定義のコメント解除) に変更するだけです。 異なる結果になった場合はお知らせください。 Re: Some information in the iMXRT1060 microcontroller manual may be incorrect or incomplete. こんにちは@Ernane 、 弊社の製品にご興味をお持ちいただき、またコミュニティをご利用いただき誠にありがとうございます。 これら 2 つの質問をお寄せいただきありがとうございます。詳細を共有していただき感謝いたします。社内で確認させていただき、さらにご要望があればご連絡させていただきます。   よろしくお願いいたします。 メイリュー
查看全文
i.MXRT1064 カスタム ボードをデバッグできません。 こんにちは、 デバッグ モードでコードを実行しようとすると、「アドレス "0x20d102" でブレークしましたが、デバッグ情報が利用できません」というメッセージが表示されます。 私は i.MXRT1064 カスタム ボードを使用し、LinkServer LPC-Link2 を使用してプログラミングしています。 このボードは以前は問題なく動作していましたが、突然このメッセージが表示されます。 リリースモードを試してみました。リリース コードを使用してボードを正常にフラッシュすることはできますが、その後プログラムが実行されないようです。シリアル端末からもディスプレイからも出力が表示されません。 また、Secure Provisioning Tool を使用してこのボードをプログラミングしようとしましたが、まだ動作しません。 この問題に関して、どこに焦点を当てるべきか、または何か手がかりとなるものについて、どなたか助言をいただけませんか? Re: Unable to debug i.MXRT1064 custom board. こんにちは、MayLiuさん。 ご返信ありがとうございます。 以前、ご提案いただいた設定を試しましたが、デバッグしようとすると IDEs でエラー (MI コマンドの実行に失敗しました: -target-download) が表示されました。参考までに、そのエラーのスナップショットを添付しました。 前のメッセージに戻って、現在のプログラムが実行されているアドレスをチェックしたところ、コードが ROM 領域 (アドレス 0x20E35A) にあることが示されていたことを付け加えておきます。SO、何らかの理由で、コードはアプリケーション コードに到達/起動できず、ROM 内で停止します。私の仮定は正しいでしょうか?そんなシナリオがあり得るのでしょうか? Re: Unable to debug i.MXRT1064 custom board. こんにちは@nxpsachveさん、 弊社の製品にご興味をお持ちいただき、またコミュニティをご利用いただき誠にありがとうございます。 1: 「アプリケーションを RAM にリンク」を選択して再度デバッグしてみてください。 アプリケーションが RAM から正常に実行できる場合は、ボードをシリアル ダウンローダー モードに設定し、セキュア プロビジョニング ツールを使用して UART1 または USB1 でボードをプログラムしてください。   アプリケーションの実行に失敗した場合は、オシロスコープを使用してボードの電源投入シーケンスを確認することをお勧めします。   お役に立てれば幸いです。 よろしくお願いいたします。 メイリュー Re: Unable to debug i.MXRT1064 custom board. こんにちは@nxpsachveさん、 MCUXpresso IDE は BOOT 構成を変更するとは思いません。NXP RT 上のブート動作は、ハードウェア ブート構成とブート モード ピンによって決まります。 シリアル ダウンローダー モードでターゲットを検出できるため、ROM がまだ正常に実行されていることがわかります。次のステップとして、次のことが考えられます。 チップ全体の消去を実行します。 ボードを内部ブートモードに切り替え、 デバッグのためにMCUXpresso IDEに再接続してみてください。 あるいは、MCUXpresso Secure Provisioning Tool を使用してアプリケーション イメージをプログラムすることもできます。 よろしくお願いいたします。 メイリュー Re: Unable to debug i.MXRT1064 custom board. こんにちは@nxpsachveさん、 最新情報をありがとうございます。 提供された情報に基づくと、CPU は現在、アプリケーション コードではなく、Boot ROM からのコードを実行している可能性があります。   BOOT CFG と BOOT モード ピンの設定をチェックして、デバイスがユーザー フラッシュから起動するように構成されていることを確認することをお勧めします。   ボードをシリアル ダウンローダー モードに設定し、J-Link 経由で接続して、デバッガーがターゲットを検出して通信できるかどうかを確認することもできます。   よろしくお願いいたします。 マトリウ Re: Unable to debug i.MXRT1064 custom board. こんにちは、MayLiuさん。 ご提案ありがとうございます。 MCUXpresso 内に、BOOT Conf を変更したり影響を与えたりするような設定や構成があるかどうかを確認したいのですが。IDE を除外するためです。 リンク サーバーは、シリアル ダウンロード モードのときにターゲットを検出できます。
查看全文
LED code example does not work I was following this example on my s32k116: https://www.nxp.com/design/design-center/training/TIP-GET-TO-KNOW-THE-USER-FRIENDLY-MBDT-D0609 I did exactly what was shown in the video to get the LED working. My code builds too. But the LED wont turn on when I turn the potentiometer. I have attached a picture of the board for reference. Kindly guide me on where I might be going wrong Re: LED code example does not work Hello, Please note that the video you mentioned uses another evaluation kit (S32K144EVB) and the pins might not be the same for S32K116. Did you check the schematic to see the pins used by the potentiometer and the LED? As a recommendation, try to use the FreeMASTER tool to visualize the data on the board. You have to add data store memory blocks to save the data from the ADC and the state of the LED. Please set them to Volatile (in order to see them in FreeMASTER).  Another variant is to use the S32 Design Studio to directly debug the application, by placing breakpoints at specific lines and see the values read from the potentiometer. Best regards, Sorin Bancila  Re: LED code example does not work I tried doing that but when I try to start a session on freemaster, it cannot detect the board information. And I set the block state ("pot_adc") as Volatile which is why is shows up as a symbol when I go to the symbol table preview . Here is the screenshot. I am not sure why the board is not responding
查看全文
NETC IEEE 1588タイマーソフトウェアはRMの要件を満たしていません S32ZE NETCリファレンスマニュアルの「文書識別子:S32E27NETCRMリファレンスマニュアルRev. 4、2024-12-12」、3.2.5.3.1ドリフトおよびエラー調整付き通常モードでは、「通常動作中、TMR_ADD更新を除く1588タイマー構成(たとえばTMROFF_H/L)を変更するには、タイムゲートスケジューリング、時間指定出発スケジューリング、ストリームゲーティング、レートポリシングなどのTSN関連機能を無効にする必要があります。」と記載されています。しかし、gPTP ソフトウェアも NETC ドライバもこの仕様を満たしていません。 GPTP_STACK RTD Re: NETC IEEE 1588 timer software does not meet the requirement of RM NXP の gPTP ソフトウェア モジュールがありますが、正しいでしょうか? 現在の時刻を更新するために関数「EthSwt_43_NETC_CorrectPtpClk」を呼び出します。 「タイマーの修正に関する機能を提供する」ということについては話していません。 私の質問は、gPTP が EthSwt_43_NETC_CorrectPtpClk() 関数を呼び出して現在の時刻を更新している間に、802.1Qbv 機能に影響を与えないようにするにはどうすればよいかということです。 Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは@shuangjunzhuさん ETH ドライバー RTD2.0.1 は、次のようなタイムスタンプ用のいくつかの API 関数を含む ASR 21-11 に準拠しています。 このため、おっしゃる通りタイマーの修正に関する機能は提供されていないのではないかと思います。タイマー修正に関する機能は ASR23-11 でサポートされるようですが、ASR21-11 でそれらを使用する必要がある場合は、gPTP は要件を変更して要求を行う必要があります。 よろしくお願いいたします。 ニ Re: NETC IEEE 1588 timer software does not meet the requirement of RM ご清聴ありがとうございました。「ドライバーはこれまで、TMR レジスタから現在のタイマーを取得することだけをサポートしており、それらを構成することはサポートしていません」と述べられていますが、理解できません。OFFSET レジスタを変更する gPTP ソフトウェアはどうでしょうか?gPTP ソフトウェアでは OFFSET レジスタを必ず変更する必要があると思います。私の質問は、gPTP ソフトウェアが OFFSET レジスタを変更しようとしている間に、802.1Qbv 機能などの TSN 機能をスムーズに動作させるために、RM をどのようにフォローアップするかということです。 Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは@shuangjunzhuさん NETC ドライバに関するこのトピックに回答します。 - ZE の最新リリースは RM rev 3 に続く RTD 2.0.1 であり、私の知る限り、次のリリース RTD 2.0.2 も RM Rev 3 に続きます。ただし、RM バージョンに関する更新がある場合、SW チームには新旧の RM 間の変更を確認するためのチケットがあります。彼らはその変化を感知CANと思います。 - 私の知る限り、タイムスタンプはこれまでドライバーでサポートされていたもので、デフォルトのカウント TMR_CTRL[TE] = 0 と、1588 タイマー TMR_CTRL[TE] = 1 で動作する RTD 2.0.1 に追加された EthEnableFreeRunningTimer 機能です。現在のタイマーは 1588 レジスタ TMR_FRT_L/H から取得されますが、TE をどこにも設定しなかったため、ここでバグが発生しているようです (詳細については、チケット: ARTDCC1-593)。とにかく、ドライバーはこれまで、TMR レジスタから現在のタイマーを取得することだけをサポートしており、それらを構成することはサポートしていませんでした。あなたが言った主張は、ユーザーが 1588 レジスタの設定を変更したい場合にのみ発生するようです。 よろしくお願いいたします。 ニ Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは@shuangjunzhuさん つまり、1588 レジスタ リストを変更する前に TSN 機能を停止したいということですか? 現在のドライバでは、TSN を停止する機能をサポートしていないことがわかりました。TSN の各機能を無効にしたい場合は、各テーブルのエントリを削除する必要があるようです。例えば: - レートポリシー: Netc_EthSwt_Ip_DeleteRatePolicerTableEntry(); - Netc_EthSwt_Ip_DeleteStreamGateControlListTableEntry(); - EthSwt_43_NETC_StopTas(); よろしくお願いいたします。 ニ Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは@shuangjunzhuさん ETH ドライバーについてもう何もわからない場合は、このトピックから RTD を削除して、gPTP の担当者が回答できるようにしてください。 よろしくお願いいたします。 ニ Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは、 はい、まだ質問があります。イーサネット ドライバーの観点から 802.1Qbv を無効化/再有効化する方法の確認にご協力ください。また、このようなアクションが 802.1Qbv スケジュール サイクルの重大なトラフィック遅延を引き起こすかどうかを分析するのにご協力ください。 ありがとうございます ジェフ Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは、 大変助かりました。ありがとうございます。 車載のお客様にとって非常に重要な点を 1 つ強調しておきます。TSN IEEE802.1Qbv 機能を使用している場合、当然ながら、802.1Qbv の時間同期要件に従って gPTP も有効にする必要があります。 gPTP が 1 つの 802.1 Qbv スロットにある重要なトラフィックに影響を与えるかどうかが懸念されています。私たち(NXP)はそれを明確にし、その方法を提供する必要があります。これは非常に厳密かつ明確な要件です。これは状況を理解するための良い例、あるいはユースケースです。 はい、確かに、お客様が有効にしている TSN 機能がいくつあるかはわかりません。しかし、すべてのユーザーが使用できるように、解決策が必要です。お客様はユースケースに基づいて適切な選択を行うことができます。 ありがとうございます ジェフ Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは、 gPTP がタイマー オフセット レジスタを変更する前に TSN 機能を無効にしたいわけではありません。これは NETC RM の要件です。 お客様はNXPのRM仕様を満たすための公式ソリューションを求めています。TSN機能を無効にする方法、つまりこのような状況下でのIEEE802.1Qbv。お客様は、これはハードウェア要件とハードウェア関連のコーディングであるため、NXP によって提供されるはずだと想定しています。 ところで、あなたの提案はよく設計される必要があると思います。特に 802.1Qbv の場合、gPTP 同期アクションによってアプリケーション トラフィックが影響を受けないようにする方法。たとえば、一部のトラフィックが 1 つの Qbv スケジュール サイクル遅延する可能性はありますか? ありがとうございます ジェフ Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは@shuangjunzhuさん 私の観点からすると、TSN を停止する公式機能では、ETH ドライバからのこの要件を満たすことは困難です。ご覧のとおり、ポート ゲート タイム スケジュールを無効にするには、タイム ゲート有効ビットPTGSCR [TGE]をリセットするだけです。ただし、レート ポリシーなどの一部の TSN 機能では、この機能はこの表の要素に基づいて有効化/無効化されます。しかし、ETH からは、要素を削除または更新して無効にするためにこのテーブルにエントリが追加されたかどうかを知ることはできませんが、上位層ではこれをより適切に処理できます。このため、前回の回答では、各テーブルのエントリを削除する関数を呼び出すことを提案しました。 ユーザーがオプション機能(レートポリシング、ストリームゲート制御リストなど)を有効にしていない場合、関数EthSwt_43_NETC_StopTas()を使用して TSN を無効にすることができます。 とにかく、チケット ARTDCC1-607 を作成しました。何か見逃した場合に備えて、このチケットをフォローして SW チームからの分析を取得できます。RM Rev4 はまだ RTD リリースに適用されていません。このトピックに関して ETH について詳しいアイデアがない場合は、お知らせください。このCASEについては gPTP に任せ、引き続き gPTP 側からCAN回答させていただきます。 よろしくお願いいたします。 ニ Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは@shuangjunzhuさん 私の観点からすると、問題は有効になっている TSN 機能の数だけではありません。お客様が ASR コンテキストを使用する場合、これらの機能はマクロによってプリコンパイル時に有効/無効にされるだけでなく、各機能にも存在するためです。ご存知のとおり、レート ポリシング、ストリーム ゲートなどの各機能は、以下の表を通じて制御されます。 ユーザーが構成ツールで要素を構成しただけの場合、SW チームは、この機能を無効にするときに、エントリ ID を持つエントリをいくつ削除するかを制御できます。しかし、ユーザーが関数を呼び出して要素を追加した場合、SW はそれを知る方法がありません。しかし、ユーザーはアプリケーションからこれを制御できると思います。何か見逃したのかもしれませんが、TSN はタイマー値を参照するので、タイマー構成を変更する前に停止し、新しいタイマー値を取得するために再度開始するのが理にかなっていると理解しています。SW チームはそのチケットを分析する際に深い洞察力を発揮できると信じています。 よろしくお願いいたします。 ニ Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは、 あなたはまだ私の質問を理解していないようですね。より詳しい説明をお願いします。お客様が Qbv 構成を持っており、それが以下のパラメータで実行状態にあると仮定します。 1. サイクルタイムは10msです 2. 10 ミリ秒の期間内に、それぞれ 5 ミリ秒のスロットが 2 つあります。つまり、ゲート リストには 2 つのエントリがあります。 3. 最初のタイムスロットが開いている間に、NETC が重要なフレームを送信していると仮定します。この時点で gPTP は現在の時刻の更新を開始します。RM 要件に従って、お客様は 802.1Qbv を無効化/再度有効化する必要があります。 4. 802.1Qbv が再度有効になった後、NETC ハードウェアが引き続きタイム スロット 1 を開いたり、ゲート リストの 2 番目のエントリに移動したり、新しい Qbc スケジュール サイクルを待機したりする可能性があります。ハードウェアが 2 番目のエントリに進むと、NETC キュー内の重要なフレームが次の 10 ミリ秒サイクルで送信されることを意味します。そして、大きな遅延が発生し、アプリケーションに影響を及ぼす可能性があります。 5. お客様はこのような状況を回避する方法を尋ねています。つまり、アプリケーションへの影響を軽減するために、Qbv をスムーズに無効化/再有効化する方法です。 物事が明らかになることを望みます。 ありがとうございます Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは@shuangjunzhuさん 802.1 Qbv の機能は NETC とスイッチの両方をサポートしていることがわかりました。したがって、この機能は次の方法で設定できます。 - Eth_NETC: - ポートスイッチ: 機能は次のとおりです。 ETH_NETCの場合: - Eth_43_NETC_StartTas() - Eth_43_NETC_StopTas() ポートスイッチの場合: - EthSwt_43_NETC_StartTas() - EthSwt_43_NETC_StopTas() この質問「この種のアクションが 802.1Qbv スケジュール サイクルの 1 つで重大なトラフィック遅延を引き起こすかどうかを分析する」については、私の観点からすると、この機能を有効/無効にする関数 Netc/PortSwt_Ip_ConfigPortTimeGateScheduling() を見るとわかるように、この機能を無効にするには、1 ビットをリセットするだけで、この機能を有効にするには、ゲート タイムを有効にして、ゲート タイム テーブルを設定する必要があります。今回は計測可能です。 「 802.1Qbv スケジュール サイクルの 1 つ」とは、ゲート制御リストの実行時間を繰り返す必要があるという意味だと理解していますか?そうであれば、これを設定することができます。 よろしくお願いいたします。 ニ Re: NETC IEEE 1588 timer software does not meet the requirement of RM こんにちは、 前回の返信で述べた 2 つの機能以外に、TAS を有効/無効にする別の方法は見つかりませんでした。私の観点からすると、タイム ゲート制御を無効にすると、時間間隔、サイクルなどのすべての機能も無効になります。TAS の無効化と有効化の間の期間には、gPTP からのタイマーの更新を完了するまでの時間が含まれます。TAS を有効にすると、ベース時刻が現在の時刻に更新されます。ただし、新しいベース時間 = 次の古い間隔時間でない場合は、要件を確認できません。 これについてはもうわかりませんが、SW チームがあなたのCASEについて提案できるように、上記のチケットでこの質問も更新しました。 よろしくお願いいたします。 ニ
查看全文
EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 这个McuPGOOD_POLARITYControl配置项在该路径下找不到 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 Hi@WeiCh 我不确定你是否可以下载,你可以尝试一下,如果不可以,请联系你的代理商或者FAE来获取评估权限。 https://www.nxp.com/design/design-center/software/automotive-software-and-tools/real-time-drivers-rtd:AUTOMOTIVE-RTD Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 在哪可以下载30.0.0吗?30.0.0能打开29.0.0的工程吗? Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 Hi@WeiCh 我看这个版本适配的EB Tresos版本应该是30.0.0,不是你所使用的版本。 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 Hi@WeiCh 你这界面的风格不对阿,新版本的风格和之前旧的完全不一样的,你的界面还是老版本的风格。 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 Hi@WeiCh ok,不客气 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 Hi@WeiCh 在下载界面有这样的提示,你要修改后缀 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 好像有点问题,运行setup提示没有安装包,可以解压EBtresosStudio_EBtresosStudio.zip后直接打开应用,但应用界面还是旧的: Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 这是30.0.0的界面,好像还是没有这个配置项。 Re: EB更新RTD 7.0.0_QLP03时报告McuPGOOD_POLARITYControl配置错误 已经可以了,感谢!
查看全文
用于非 PSA 操作的 MbedTLS3 和 CAAM 驱动程序 亲爱的各位 我们根据 mbedTLS 2 的弃用说明,更新了 mbedTLS3。我们发现恩智浦有两个 mbedTLS 存储库。 (ver 2.x deprecated) https://github.com/nxp-mcuxpresso/mbedtls (ver 3.x) https://github.com/NXP/nxp_mbedtls 我们通过阅读 sdk 使用的 yaml 文件找到了它 - 我们想知道,如果我们选择 ver 3x,而不使用 PSA API,是否会降低性能? 版本 2 通过 port/ksdk 提供了一组替代函数,可用于将加密操作委托给 CAAM 驱动程序,如 ksdk_mbedtls: https://github.com/nxp-mcuxpresso/mbedtls/blob/release/25.06.00/port/ksdk/ksdk_mbedtls.c 我们通过 fsl_caam 使用原始 CAAM 驱动程序进行 aes256 加密,我们想使用 mbedtls 来生成一对 ecdsa 密钥。我们的目标是拥有 mbedTLS3 并将所有可能的工作委托给 CAAM 硬件 ——如果有人知道应用笔记/端口已经完成,或者知道如何设计这样的指南,那就太好了。 感谢您的支持 🙂 Re: MbedTLS3 and CAAM driver for Non-PSA operations 还有一个小信息,我们正在使用 imxrt1176 并在其上安装了 FreeRTOS,我们是否正确读取了 mbedtls_ksdk.c 中的端口? 672 - 674 https://github.com/nxp-mcuxpresso/mbedtls/blob/release/25.06.00/port/ksdk/ksdk_mbedtls.c #endif /* MBEDTLS_THREADING_C */ if (ctx->mode == MBEDTLS_DES_ENCRYPT) { status = CAAM_DES_EncryptEcb(CAAM_INSTANCE,&s_caamHandle, input, output, 8, key); 这个端口使用阻塞操作吗?这样,其他 FreeRTOS 线程就会被阻断 - 我们发现在 mbedtls 的 freertos 示例中使用了这个端口,所以这对我们来说是个惊喜 Re: MbedTLS3 and CAAM driver for Non-PSA operations 您好, SDK 中似乎有 mbedtls 和 mebedtls 3.x,如下所示,还有 CAAM(加密加速和保障模块)示例。 https://mcuxpresso.nxp.com/mcuxsdk/latest/html/examples/driver_examples/caam/readme.html https://mcuxpresso.nxp.com/mcuxsdk/latest/html/examples/mbedtls3x_examples/index.html https://mcuxpresso.nxp.com/mcuxsdk/latest/html/examples/mbedtls_examples/index.html 是的,这是一个阻塞操作。
查看全文
I.MX8MP Ethernet Camera Hello, Since the i.MX8MP does not support virtual channels, we would like to stream four Ethernet cameras simultaneously, as illustrated in the diagram below (which belongs to a different S32 processor); therefore, our question is whether the i.MX8MP is capable of decoding and streaming four 1080p @ 30 fps Ethernet camera streams at the same time, given that the Reference Manual indicates support for VLAN-tagged frames and AVB, but the VPU provides only a single hardware decoder.   Thanks, Best Regards.         Re: I.MX8MP Ethernet Camera Hello, Yes the iMX8MP could handle that, and the gstreamer is the tool that we use to decode all your streams. Regards
查看全文
S32K314 LPSPI - 在 DMA 下出现异常 CS toogle 你好@DanNguyenDuy 如下图所示,在 LPSPI DMA 模式下发生了意外的 CS 切换。 帧大小为 8 位,默认配置下 DMA 传输大小为一个字节。SPI 波特率为 10 Mbps。 绿色信号代表 CS,在使用 " Keep " 选项时,CS 应在传输过程中保持钳位状态。然而,它却意外地发生了切换。在中断模式下,CS 保持钳位状态。此外,使用基于 GPIO 的 CS 而不是 PCS,在不切换的情况下也能正常工作。 这种现象在波特率较高时比在波特率较低时出现得更频繁,这表明原因可能是 SPI 端 TX 欠运行。 我试着启用散点采集模式和调整 SPI 时序,但都没有解决问题。 我认为,默认 DMA 配置可能不具备处理高速 LPSPI 传输的能力。 请问如何解决 CS 意外切换的问题? 谢谢。 BRs, Alex Yang RTD Re: S32K314 LPSPI - Unexpected CS toogle under DMA @DanNguyenDuy 我共享 Mobis 的 arxml 文件。 热电阻版本为 4.0.0_HF04(适用于HKMC) Re: S32K314 LPSPI - Unexpected CS toogle under DMA @DanNguyenDuy 我分享 Mobis 的 LPSPI DMA 配置屏幕截图。在捕获的图像上,使用的频道名称是 Vsp。 Re: S32K314 LPSPI - Unexpected CS toogle under DMA 你好@alexyang、 你使用了哪个软件包版本? 能否将您的示例或配置文件(.xdm 或 .arxml文件)? 顺祝商祺! 丹 Re: S32K314 LPSPI - Unexpected CS toogle under DMA 你好@alexyang、 1.我查看了配置,没有发现任何问题。 2.因为我没有 S32K314,所以我在 S32K344 上检查了这个问题,我这边没有发现这个问题(传输过程中 PCS 保持低电平)。 3.能否检查调用前后 LPSPI2_TCR 寄存器的值 Spi_AsyncTransmit() 函数? 如果在发送过程中的任何时候 TCR[CONT] = 0,则 PCS 引脚将被置为高电平。 否则,当 LPSPI 从 TX FIFO 空数据移位时,可能会出现此问题,因为在 FIFO 空之前,DMA 没有将数据传输到 TX FIFO。这种情况将触发信号 PCS,因为 LPSPI 会检测到终端传输信号,这看起来像是设计限制。 顺祝商祺! 丹 Re: S32K314 LPSPI - Unexpected CS toogle under DMA 你好@DanNguyenDuy CS 切换的原因似乎是 TX FIFO 空了,因为 TX 水印降低了 CS 切换率。 不过,这一改动并没有完全解决 CS 切换问题。在 TX 水印的基础上,您还有什么其他建议可以完全防止 CS 切换? 此外,如果TX watermark = 0 是 Lpspi_ErrataHandle() 函数之后的意外动作,您是否有计划进行修正?Autoever 希望得到 NXP 对 TX 水印处理的确认,并在需要修正时得到 NXP 的补丁计划。 谢谢。 BRs, Alex Yang Re: S32K314 LPSPI - Unexpected CS toogle under DMA 你好@alexyang..、 在联系 RTD 团队之前,我希望他们尝试两种测试方案: 情况 1:在 Lpspi_ErrataHandle() 函数之后设置 Dma 优先级中断为最高,且 TX watermark = RX watermark = 3。 场景 2:场景 1 + 禁用 RX DMA 并通过轮询方法接收数据。 顺祝商祺! 丹 Re: S32K314 LPSPI - Unexpected CS toogle under DMA @DanNguyenDuy TCR[CONT] 已设置,因此这不是 CS 意外切换的原因。 我对 LPSPI 的 TX 水印有疑虑,据我估计,这可能是 TX FIFO 空的原因。 在 Lpspi_Ip_Init 中将 TX 水印设置为 2,如下所示。 但是,ERR_IPV_LPSPIV2_0001 的 Lpspi_ErrataHandle(Base,State)将其设置为 0,据我估计,这是意料之外的操作。 因此,在我的审查中,ERR_IPV_LPSPIV2_0001 解决方法意外地使 TX 水印为 0。另一位客户 Autoever 也报告了这一情况。 在 Autoever 报告中,发生了 SPI TX 欠运行,Autoever 发现 Lpspi_TransmitTxInit 清除了 TX 水印。因此,Autoever 通过添加"Base->FCR = LPSPI_FCR_TXWATER((uint32)LPSPI_IP_FIFO_SIZE_U8-(uint32)2u);" ,将 TX 水印返回到 2,从而减少了 TX 欠运行。 您如何看待 TX 水印?TX 水印为 0 是否会导致 DMA 意外切换 CS? Re: S32K314 LPSPI - Unexpected CS toogle under DMA 你好@alexyang、 在我看来,TX 水印等于 0 会导致此问题。我建议你在测试时提高 Dma 中断的优先级,并在 Lpspi_ErrataHandle() 函数 后添加一条语句,将 TX 水印修改为 3(最大值) 。 顺祝商祺! 丹
查看全文