Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
S32K3の駆動力は高い S32K3XXのリファレンス・マニュアルには「ドライブ強度の有効化」ビットについて書かれていますが、その意味を明確に定義しているようには見えません。私が見つけた最も近い参考文献は、特定のピンがサポートする最大周波数と相関しているようです(S32K3XXRM/セクション4.4.1の42ページ)。 「drive-strength」を有効にすべきか否かを判断する上で、最大消費電流値やその他の注意点に関して、何か明確な規定はありますか? Re: High Drive Strength on S32K3 GPIO規格:最大10MHzのスイッチングに対応。高駆動強度には対応していません。スルーレート制御はサポートされていません。 — GPIO-Standard plus:最大25 MHzへの切り替え 高い駆動強度をサポートします。スルーレート制御はサポートされていません。 — GPIO-Medium:最大50 MHzまでの切り替えで高いドライブ強度をサポートします。スルーレート制御をサポートします。 — GPIO-Fast:最大120 MHzへの切り替え 高いドライブ強度をサポートします。スルーレート制御をサポートします。 Re: High Drive Strength on S32K3 はい、それはまさに私が質問で引用した箇所の文章です。それではなぜ「ドライブ強度」を有効にするべきか、あるいは有効でないかはわかりません。単に一部のピンがそれをサポートしていること、そして一部の切り替え速度がそれに関連していることを示しているだけです。 もしこれでLEDを駆動する場合、より多くの電流を流すことができるでしょうか?どれくらい最新の情報ですか? これは純粋にスルーレートの変更なのでしょうか? ピンがサポートしているなら、有効にしない理由はありますか?それを有効にすると、チップの放熱量は増えますか? Re: High Drive Strength on S32K3 S32K39x、S32K37x、S32K36xマイクロコントローラのハードウェア設計ガイドライン Re: High Drive Strength on S32K3 ハイ S32K3XXリファレンスマニュアル(S32K3XXRM)では、パッドタイプ「GPIO-Standard」は高駆動強度をサポートしない一方、「GPIO-Standard Plus」、「GPIO-Medium」、「GPIO-Fast」は高駆動力をサポートしていると記載されています。 GPIOパッドタイプについては、S32K3XXRMに付属のExcel添付ファイルS32K344_S32K324_S32K314_IOMUX.xlsxのS32K344_IO信号テーブル、特に列Hを参照してください。 drive-strength high current Pad Type.png よろしくお願いします、 ロビン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「解決策として承認」ボタンをクリックしてください。ありがとう! - 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。 ------------------------------------------------------------------------------- Re: High Drive Strength on S32K3 前の投稿者にも言いましたが、どのピンが「高い駆動強度」をサポートしているかは分かっていますが、それが問題ではありません! しかし幸いなことに、背景には関連する情報が詰まっていました。S32K3xx.pdf には、表27。GPIOのDC電気仕様には、私が求めているものが含まれているようです。 これは、ピンの出力電流を2倍にして、「DSE = 0」と「DSE = 1」を切り替えるようにしているようです。 Screenshot From 2026-07-06 09-18-58.png Screenshot From 2026-07-06 09-18-48.png
查看全文
LPC553x 参考手册:表 315 SCT0 信号错误 (SCTIMER) 你好, 我想报告 LPC553x 参考手册(修订版)中似乎存在的一个重大错误。4) 将表 315“SCT0 信号(输出)”与数据表表 3 进行比较,并询问哪个来源是权威的。 这是 LPC553x 参考手册,修订版 4,表 315“SCT0 信号(输出)”: danielholala_0-1781768255327.png 下表列出了 34 个外部引脚(如果我数得没错的话)。快速浏览 LPC553x 数据手册,发现它只有 31 个引脚。此外,表 315 列出了 PIO2_2、PIO2_9、PIO2_15、PIO2_30 和 PIO2_31 作为 SCT0 输出引脚。从数据手册来看,LPC553x 只实现了 PIO2_0 和 PIO2_1,所以该设备上不存在 Port-2 引脚。 现在,如果您仔细查阅数据手册中的表 3 并提取所有 SCT0_OUT 引脚,那么您最终会得到一个完全不同的表格: SCT0 信号(输出)连接至 SCT0_OUT0 PIO0_2、PIO0_17、PIO1_4、PIO1_23 SCT0_OUT1 PIO0_3、PIO0_18、PIO1_8、PIO1_24 SCT0_OUT2 PIO0_10、PIO0_15、PIO0_19、PIO1_9、PIO1_25 SCT0_OUT3 PIO0_22、PIO0_31、PIO1_10、PIO1_26 SCT0_OUT4 PIO0_23、PIO1_3、PIO1_17 SCT0_OUT5 PIO0_26、PIO1_18 SCT0_OUT6 PIO0_6、PIO0_27、PIO1_31 SCT0_OUT7 PIO0_21、PIO0_28、PIO1_19 SCT0_OUT8 PIO0_29,PIO1_13 SCT0_OUT9 PIO0_30 我的设计以数据手册表 3 为依据。 请, 确认数据手册(修订版 5.0)表 3 是 SCT0 输出引脚的权威来源, 确认参考手册中的表315有误。 请确认我上面的表格是否正确。 谢谢。 担 Re: LPC553x reference manual: Table 315 SCT0 Signals wrong (SCTIMER) 你好, 请使用参考手册中附带的“引脚功能表”来确定 SCT0_OUT 功能的可用引脚。 luis_maravilla_1-1782229991489.png 顺祝商祺!   Re: LPC553x reference manual: Table 315 SCT0 Signals wrong (SCTIMER) 你好, 目前,请参考引脚功能表。 我将信息传递给团队。 此致敬礼,路易斯 Re: LPC553x reference manual: Table 315 SCT0 Signals wrong (SCTIMER) 你好@luis_maravilla , 感谢您指出“引脚功能表”。我不知道参考手册里竟然隐藏着一个电子表格文件。 我快速浏览了一下“引脚功能表”,证实参考手册中表 315 “SCT0 信号(输出)”的信息不正确。 请将此信息转交给文档团队进行更正。 如果对引脚功能还有其他疑问,权威来源是数据手册还是引脚功能表? 谢谢。 此致, 丹尼尔
查看全文
app_localizationとapp_localization_algoにおけるRAS転送処理に関する質問 こんにちは、 現在、KW47でチャネルサウンディングを使用しようとしており、MCUXpresso SDKドキュメントの「Bluetooth Low Energyチャネルサウンディングアプリケーション開発者ガイド」を参照しています。しかしながら、測距サービス(RAS)を実装する必要があるかどうか確信が持てないため、ご説明をいただきたく存じます。 具体的には、app_localization_algo共通モジュールに関して、ドキュメントには次のように記載されています。 app_localization_algoモジュールは、CS手順とRAS転送の結果として得られたデータを解凍する役割を担います。その後、モジュールはそれを距離測定アルゴリズムに渡してメートル単位の距離を取得し、その距離をアプリケーションに伝達します。 アプリケーションとこのモジュールの間には、他に直接的な相互作用はありません。そのAPIは主にapp_localizationモジュールで使用されています。 この説明に基づき、RASの移送に関して以下の点を明確にしたいと思います。 RAS転送はapp_localizationモジュール内で自動的に設定および処理されますか? それとも、app_localizationはapp_localization_algoモジュールとのみ連携し、RAS転送にはRAS APIを使用して別途実装する必要があるのでしょうか? 言い換えれば、アプリケーションはCSプロシージャ処理とRAS転送の両方においてapp_localizationに完全に依存すべきなのか、それともアプリケーションレベルでRAS APIを明示的に統合する必要があるのか、ということです。 参考までに、関連するドキュメントページは以下のとおりです。 https://mcuxpresso.nxp.com/mcuxsdk/26.03.00/html/middleware/wireless/bluetooth/doc/Bluetooth %20Low% 20Energy %20Channel% 20Sounding %20Application% 20Developers%20Guide/topics/application_common_modules.html#app-localization-algo-common-module ご説明いただけると幸いです。 よろしくお願いします、 Re: Question about RAS transfer handling in app_localization vs app_localization_algo こんにちは、 @t_hosomi 事例を作成していただきありがとうございます。 少々お時間をください。いただいた詳細情報を確認し、できるだけ早くご返信いたします。 よろしくお願いいたします。 Christine。 Re: Question about RAS transfer handling in app_localization vs app_localization_algo こんにちは、 @t_hosomi ご辛抱強くお待ちいただき、また詳細な情報を提供していただき、ありがとうございます。 私の回答は以下のとおりです。 ご提供のリンクに示されているように、RASはレンジャーサービスの略です。これは別のサービスです。「app_localization」は実際にRASプロファイルインターフェースを呼び出してデータを転送します。 「app_localization」はアプリケーションコードの一部と考えることができます。ここではRASと呼ばれ、他の一般的なアプリケーションコードでも同様です。`app_localization`の使用をお勧めします。 `app_localization`は、RASを介したクライアント・サーバー(CS)データの転送を実装します。 しかし、アプリケーション層はプロファイルの購読、通知の有効化、インジケーターなどの基本的なインターフェースを呼び出す必要があります。 ご理解いただけましたでしょうか? よろしくお願いいたします。 Christine。 Re: Question about RAS transfer handling in app_localization vs app_localization_algo こんにちは、 @Christine_Li さん。 ご回答ありがとうございます。 RASは独立したサービスであると理解しています。 app_localization内でCSデータを転送(すなわちRASを利用する)には、関連ドキュメントの「Ranging Service common module」セクションやwireless_ranging SDKサンプルで説明されているステップ、特に「アプリケーション層は基本的なインターフェースを呼び出す必要がある」という手順を追加で実装する必要があるという理解は正しいでしょうか。 例えば、プロフィールの購読、通知の有効化、指標など」などです。 よろしくお願いします、 Re: Question about RAS transfer handling in app_localization vs app_localization_algo こんにちは、 @t_hosomi はい、おっしゃる通りです。 よろしくお願いいたします。 Christine。 Re: Question about RAS transfer handling in app_localization vs app_localization_algo こんにちは、 @t_hosomi ご返信ありがとうございます。 誤解を避けるため、別の言葉を変えてみましょう。 RASはapp_localization内で処理されるのではなく、独立したサービスとして扱われます。 app_localizationはCSデータを転送するためにRASを呼び出す必要があります。 サンプルは必ずしもそのままでは使用できないわけではない。ただし、`app_localization` が RAS/プロファイルレベルの設定をすべて自動的に処理すると考えるべきではありません。カスタムアプリケーションに機能を統合する際には、プロファイルのサブスクリプションや通知・表示の有効化など、必要なアプリケーション層手順が適切に実装されていることを確認する必要があります。そうしないと、RASデータパスが意図したとおりに機能しない可能性があります。 これでより分かりやすくなったでしょうか。 もし何か不明な点があれば、遠慮なくお知らせください。 よろしくお願いいたします。 Christine。 Re: Question about RAS transfer handling in app_localization vs app_localization_algo こんにちは、 @Christine_Li さん。 ご回答ありがとうございます。 あなたの説明から理解すると、RASもapp_localization内で処理されますが、基本的なインターフェースはアプリケーション層から呼び出して設定する必要があるようです。 しかし、digital_key_car_anchor_csやdigital_key_device_csなどのSDKsサンプルコードでは、ドキュメントの「レンジングサービス共通モジュール」セクションで説明されているように、レンジングサービスの設定がアプリケーション層から明示的に呼び出されていないようです。 これらのサンプルは、現状のままでは直接使用できない(つまり、正しく機能しないか、精度が向上しない可能性がある)ということですか?アプリケーションレベルでの追加RAS構成が必要だということです 敬具
查看全文
Looking for guidance on building a production programming fixture for NTAG213 Hi all, We are integrating NTAG213 chips into our own product and are currently in the testing phase. As we move toward mass production, we plan to build a programming fixture (or test fixture) to handle the full inline production flow: chip installation → write → read/verify → ship. We're looking for advice or documentation on the following: Best practices for designing and operating a production NFC programming fixture for NTAG213 Key considerations or common pitfalls during write/verify cycles in a production environment Any recommended tools, reference designs, or NXP resources we should be aware of before building the fixture How to reliably detect and handle write failures or defective chips at the production stage Any guidance from those who have experience with NTAG213 in production settings would be greatly appreciated. We are still in early stages, so foundational pointers are very welcome. Thank you. Re: Looking for guidance on building a production programming fixture for NTAG213 Hello @Lee0130  NTAG213 documentation is publicly available, which can be downloaded from product page. we would recommend RFID Discover to you, which is a convenient software tool for NFC tag configuration, programming, and data verification, helping streamline development and production testing. You can also development yourself application using Taplinx TapLinx SDK for MIFARE, NTAG, ICODE and UCODE | NXP Semiconductors
查看全文
为什么模型大小限制为 1 MB? 我在 MIMRT700(NPU 模型)上运行了 tflm_cifar10 示例中的模型。在构建程序时,我可以看到模型的大小及其对应的区域大小。  在许多情况下,该区域的大小为 1 MB。据我所知,该模型的大小上限为 1 MB。是这样吗? nnxxpp_0-1781495142659.png 我不明白这一点。以下是关于 MIMRT700 EVK 的信息。 nnxxpp_2-1781495429888.png 我不知道模型在 MIMRT700 EVK 上保存在哪里。那么,区域大小的 1 MB 在哪里呢?这是模型大小的实际限制吗?或者,我们可以采用某些方法来扩大模型规模。 你对这个问题有什么看法吗?因为我试图部署一个更大的模型> 1 MB。我确实在等待您的回复。谢谢。 Re: Why model size is limited at 1 MB? @mayliu1  非常感谢。现在我明白了,我们可以通过设置区域大小来扩大模型的规模。 nnxxpp_0-1781514247437.png 或者如果我想在外部存储器上运行更大的模型,我可以关注这个文档 https://docs.nxp.com/bundle/AN14700/page/topics/external_memory.html Re: Why model size is limited at 1 MB? 你好@nnxxpp, 非常感谢您关注我们的产品并使用我们的社区。 问:我不知道模型在 MIMRT700 EVK 上保存在哪里。那么,区域大小的 1 MB 在哪里呢?这是模型大小的实际限制吗?或者,我们可以采用某些方法来扩大模型规模。 你对这个问题有什么看法吗? 因为我试图部署一个比> 1 MB 更大的模型。 答:modeldata 显示的 1 MB 并非 RT700 的硬件限制。 这只是示例项目中使用的默认链接器分配。 对于较大型号,可在项目设置中调整此分配,若需要更多存储空间,也可使用外部 XSPI 闪存。 如需更多详细信息,请参阅此 AN14700 文档。 https://docs.nxp.com/bundle/AN14700/page/topics/introduction.html mayliu1_0-1781507645284.png 因此,RT700 并非天生就仅限于 1 MB 型号。要支持更大的 NPU 模型,可以通过增加模型数据内存分配,或者使用相应的转换选项将模型放置在外部 XSPI 闪存中来实现。  希望对您有所帮助 顺祝商祺! 刘梅 Re: Why model size is limited at 1 MB? @mayliu1  我想重新讨论这个话题。现在我正尝试在RT700上部署更大的模型。下图是在用小型模型构建程序时捕获的。 我看到有 4 个内存区域: - QSPI_flash:外部存储器 - SRAM:我问过 chatgpt,它是用来存储程序运行时的数据的(例如 .data、.bss 等)。栈,堆)。是这样吗? - NCACHE_REGION:与 ktensorArena 相同(用于输入、中间输出和输出) - modeldata:用于保存模型权重 我在导入 SDK 示例时看到了内存配置信息。这意味着 SRAM、NCACHE_REGION 和来自 SRAM 的模型数据(7.5 MB)。 NCACHE_REGION 和 modeldata应该位于 0x2000_0000至0x2058_0000 ( 5.5 MB ) 可获得最佳性能(NPU 可访问的 SRAM 区域) 但 SRAM(名为 SRAM)的位置是0x20080000 (在第二张图片中) ==> 它也在0x2000_0000到0x2058_0000 的范围内。默认值约为 2.5 MB。这意味着NCACHE_REGION + modeldata应该小于 (5.5 - 2.5) = 3 MB。 我的模型大小约为 3.5 MB。除了可以将模型放在外部存储器上(这会导致推理时间更长)之外,我该如何配置内存,才能让我的模型(3.5 MB)仍然位于 NPU 可以访问的内存区域? 我很好奇我们是否可以缩小“SRAM”区域(在图像 1、2 中),或者我是否可以将其移动到 RAM 的另一个区域(7.5 - 5.5 = 2 MB - 图像 3 中的最后一个区域)? 我该如何估算“SRAM”区域的大小?在下面的图片中,它是 15560 字节。 不好意思,我的问题有点长。 nnxxpp_0-1782205318606.png nnxxpp_1-1782205742121.png nnxxpp_2-1782206037185.png Re: Why model size is limited at 1 MB? @mayliu1  早上好。 或许你错过了我上面提出的新问题。 Re: Why model size is limited at 1 MB? 嗨@nnxxpp , 很抱歉回复晚了。 如果您不介意的话,能否请您为您的新问题创建一个新的案例? 感谢您的理解与合作。 顺祝商祺! 5月 Re: Why model size is limited at 1 MB? 很高兴得知您的问题已经解决。 很抱歉回复晚了,感谢您的理解。 Re: Why model size is limited at 1 MB? @mayliu1  我的问题已经解决了。我们可以从 5.5 MB 区域中为 NPU 找到 SRAM。我将 modeldata 和 kTensorArena 放在 5.5 MB 的区域中,并且成功了。推理时间不错。 但如果你没有错过我的问题,我就可以尽快完成我的任务了。谢谢。 Re: Why model size is limited at 1 MB? 是的。祝您今天愉快。 Re: Why model size is limited at 1 MB? @mayliu1 好的。我来创建一个新问题。谢谢。
查看全文
imx93におけるSD3.DATA0のUART2サポート こんにちは、 私たちのプロジェクトでは、i.MX93プロセッサを使用しています。以前のi.mx91搭載デバイスでは、SD3.DATA0用のUARTオプションがありましたが、i.mx93では以下の4つのオプションしか利用できないことがわかりました。 パッドに使用する 4 つの iomux モードのうち 1 つを選択してください: SD1_STROBE。 000 - マルチプレクサモードを選択: ALT0 マルチプレクサポート: USDHC1_STROBE インスタンス: usdhc1 001 - マルチプレクサモードの選択: ALT1 マルチプレクサポート: FLEXSPI1_A_DQS (インスタンス: flexspi1) 100 - マルチプレクサモードを選択: ALT4 マルチプレクサポート: FLEXIO1_FLEXIO18 インスタンス: flexio1 101 - マルチプレクサモードの選択: ALT5 マルチプレクサポート: インスタンスのGPIO3_IO18: gpio3 これに関して、UARTマルチプレクサオプションを有効にする方法はありますか? よろしくお願いいたします。 アヌシュリー Re: UART2 support for SD3.DATA0 in imx93 いいえ、i.MX93 の SD1_STROBE (または SDx_DATA ピン) で UART マルチプレクサを有効にすることは、IOMUX テーブルに記載されていない場合はできません。 i.MX93では、ピン多重化オプションはハードウェアによって固定されており、リファレンスマニュアルに記載されています。 SD1_STROBE(またはSDx_DATA)ピンにはUARTの代替機能が含まれていないため、ソフトウェア設定によってこれらのピンにUARTをマッピングすることはできません。 これはi.MX91とは異なり、i.MX91では一部のUART多重化オプションがSDHCピンで利用可能でした。 代替案として、以下をご利用ください。 ネイティブLPUARTピン、または FlexIO(UARTエミュレーションが許容される場合)
查看全文
Unable to measure 1PPS signal on J12 pin of LS1028A evaluation board? After booting the development board, I enabled PPS output using the command echo 1 > /sys/class/ptp/ptp0/pps_enable. Then, by running cat /sys/class/pps/pps0/assert, I can see the timestamp incrementing. However, I cannot capture the PPS signal on the 1588_PULSE_OUT2 pin. I searched for similar issues in the forum and then modified the device tree by referring to the devicetree/bindings/ptp/ptp-qoriq.txt document. The steps are as follows: First, I obtained the clock value for QORIQ_CLK_HWACCEL 3 on the board using the following command. The value is 400 MHz: root@ls1028ardb:# find /sys/kernel/debug/clk -name "clk_summary" -exec cat {} ; | grep -i hwaccel cg-hwaccel3 0 0 0 400000000 0 0 50000 Y deviceless no_connection_id cg-hwaccel0 0 0 0 400000000 0 0 50000 Y deviceless no_connection_id cg-hwaccel2 0 0 0 600000000 0 0 50000 Y f200000.display clk_core cg-hwaccel1 0 0 0 1200000000 0 0 50000 Y deviceless no_connection_id So I modified the device tree file fsl-ls1028a.dtsi as follows: ethernet@0,4 { compatible = "pci1957,ee02", "fsl,enetc-ptp"; reg = <0x000400 0 0 0 0>; clocks = <&clockgen QORIQ_CLK_HWACCEL 3>; little-endian; fsl,extts-fifo; // The following lines are newly added fsl,cksel = <1>; fsl,tclk-period = <10>; fsl,tmr-prsc = <100>; fsl,tmr-add = <0x40000000>; fsl,tmr-fiper1 = <0x3B9AC9F6>; fsl,max-adj = <2999999999>; }; After booting, the modified node entries are visible: root@ls1028ardb:~# ls /sys/class/ptp/ptp0/device/of_node/ clocks compatible fsl,cksel fsl,extts-fifo fsl,max-adj fsl,tclk-period fsl,tmr-add fsl,tmr-fiper1 fsl,tmr-prsc little-endian name reg Even after these modifications, I still cannot capture the signal correctly. Therefore, I checked the RCW values. The detailed log is as follows: Reset Configuration Word (RCW): 00000000: 3c004010 00000030 00000000 00000000 00000010: 00000000 018f0000 0030c000 00000000 00000020: 020031a0 00002580 00000000 00003296 00000030: 00000000 00000010 00000000 00000000 00000040: 00000000 00000000 00000000 00000000 00000050: 00000000 00000000 00000000 00000000 00000060: 00000000 00000000 200e705a 00000000 00000070: bb580000 00000000 In the LS1028ARDBRM.pdf document, I found that for 1PPS output, the EC1_SAI4_5_PMUX[835:833] field must be set to 101. The word address is the 32-bit word at offset 0x68 (word 26), with value 0x200e705a. Extracting this field: shift right by 1 and mask lower 3 bits: (0x200e705a >> 1) & 0x7 = 0x5, which is binary 101 – so that is also correct. However, I still cannot capture the signal. I would like to know whether my device tree configuration is incorrect, or if there might be other hardware limitations. I have attached the ptp-qoriq.txt, LS1028ARDBRM.pdf, and the oscilloscope capture for reference. Re: Unable to measure 1PPS signal on J12 pin of LS1028A evaluation board? I performed a loopback test with the following commands and got no signal. It is indeed possible that the CPLD is not routing the signal correctly. root@ls1028ardb:~# find /sys/kernel/debug/ -name fiper1-loopback /sys/kernel/debug/0000:00:00.4/fiper1-loopback root@ls1028ardb:~# echo 1 > /sys/kernel/debug/0000:00:00.4/fiper1-loopback root@ls1028ardb:~# cat /sys/class/ptp/ptp0/fifo root@ls1028ardb:~# cat /sys/class/ptp/ptp0/fifo root@ls1028ardb:~# cat /sys/class/ptp/ptp0/fifo The CPLD software version I am using is LS1028ARDB_HDL_2020_0330_1829_V8. Is additional programming required? Or is there an issue with this version? As for the routing problem, I will have our hardware team check it. Re: Unable to measure 1PPS signal on J12 pin of LS1028A evaluation board? Hello, The documentation supports that LS1028A can output PPS on LS1028ARDB J12, but your symptom most likely points to missing board RCW/CPLD mux routing or incomplete external FIPER pin programming rather than a lack of PPS support. Regards
查看全文
マルチタスクのプリエンプションによりMAC生成に異常が生じた SOCモデル:S32G399A、RTDバージョン4.0.2、HSEバージョン2.22.0、コンパイラ:GHS SecOC機能を実装する際、顧客はHSEを使用してMACアドレスを生成しました。このプロジェクトでは、同じコア上の複数のタスクで同じキースロットが使用され、MACアドレスはCrypto_ProcessJob()関数を呼び出すことで生成されました。CANパケットを監視したところ、MACアドレスが更新されない異常が時折発生することが判明しました(パケットデータは更新されましたが、MACアドレスは更新されず、関数はE_OKを返しました)。 1. 添付ファイル「MAC value not updated.png」は、問題が再現された際にCANメッセージのMAC値に対応する信号が更新されていないことを示す波形図です。 2. 添付文書「S32G_MAC Generation Anomaly Analysis.7z」は、この異常に関するプロジェクトコードの概要です。 テストの結果、MAC生成関連の処理を同一タスクにまとめることで、MACが更新されない問題が解消されることが明らかになった。現在の分析では、この異常は複数のタスクでグローバルデータが上書きされることが原因である可能性が示唆されている。 MACアドレスを生成するためにcryptoを呼び出すという現在のマルチタスク機能を維持するために、 cryptoドライバを更新するか、設定を再構成することでこの問題を解決することは可能でしょうか? Re: 多任务抢占导致MAC生成异常 こんにちは、 @RoseRice こんにちは。暗号化ドライバの観点から言うと、関連するAPIは後続バージョンでも変更されていません。トラブルシューティングの履歴を見ると、CSMレイヤーで競合状態を解決するのが良いと思います。これはCSMレイヤーの定義にも合致しています。 BR チェイン
查看全文
EMIOS/IPWM测量PWM的频率 您好:         我现在使用IPWM模式去测量外部的PWM脉冲,实际测试中我发现当我满足测量低频的PWM信号要求时几HZ的频率,测量高频的PWM信号误差会非常的大,当满足高频信号的测量精度,则测量低频信号会出现溢出事件,有没有什么办法可以让我同时满足低频和高频PWM脉冲的测量。希望能得到些许建议。 Re: EMIOS/IPWM测量PWM的频率 IPWM 定时器值为 16 位 65536。因此,您可能需要更改 5Hz 和 30KHz 的值设置,因为 5Hz 和 30KHz 之间的动态频率范围相当大 Re: EMIOS/IPWM测量PWM的频率 当我实现稳定采集3-10HZ的PWM脉冲,测量30KHZ甚至40KHZ时误差可能会超过20% Re: EMIOS/IPWM测量PWM的频率       我现在想要实现5HZ-30KHZ的PWM脉冲采集(占空比50%),当前配置我获取到的5HZ情况下的周期为50000所以我的相对应的时钟频率大致为250000此时我采集30KHZ的PWM脉冲获取的周期为8,9,此时换算过来频率为27777-31250,误差是比较大的如果我想提高采集精度就需要减小Clock Divider Value;Master Bus Prescaler;Master Bus Alternate Prescaler的值,相应的当测量5HZ时就可能会出现溢出事件,不知道我的理解是否正确。 Re: EMIOS/IPWM测量PWM的频率 Hi@xuanming 请看一下这个帖子,如果还有任何问题,请告诉我、 https://community.nxp.com/t5/S32M-Knowledge-Base/S32M27x-S32K3-eMIOS-Usage/ta-p/2129760 Re: EMIOS/IPWM测量PWM的频率 PWM 测量误差有多大?在测量 PWM 脉冲宽度(例如预分频器值等)时,您可能需要检查所依赖的计数器总线通道。
查看全文
需要澄清 S32K312 的 PWM 引脚映射方法 嗨,团队、 在使用 S32K312 100 引脚 MCU 进行电机控制开发时,我们考虑了以下两种 PWM 输出映射方法。 方法-1 使用 eMIOS 通道和基于 LCU 的输出: PTA0 - PWMU_HS - eMIOS_0_CH[17]_Y - LCU0_OUT4 PTA1 - PWMU_LS - eMIOS_0_CH[9]_H - LCU0_OUT5 PTA2 - PWMV_HS - eMIOS_1_CH[19]_Y - LCU0_OUT3 PTA3 - PWMV_LS - eMIOS_1_CH[20]_Y - LCU0_OUT2 PTD2 - PWMW_HS - eMIOS_1_CH[21]_Y - LCU0_OUT1 PTD3 - PWMW_LS - eMIOS_1_CH[22]_X - LCU0_OUT0 方法 2 使用另一种 PWM 映射选项: PTB16 - PWMU_HS - eMIOS_0_CH[4]_G PTB13 - PWMU_LS - eMIOS_0_CH[1]_G - LCU0_OUT3 PTB17 - PWMV_HS - eMIOS_0_CH[5]_G PTB14 - PWMV_LS - eMIOS_0_CH[2]_G - LCU0_OUT7 PTB1 - PWMW_HS - eMIOS_0_CH[7]_G PTB0 - PWMW_LS - eMIOS_0_CH[3]_G - LCU1_OUT5 我们需要恩智浦方面进一步明确应选择哪种 PWM 映射方法,以及每种方法的实际效果或局限性。 请就以下几点提出建议: 建议在电机控制应用中采用哪种方法? 每种方法的优缺点是什么? 是否有任何与同步、死区时间插入、ADC 触发信号、故障处理或 LCU/TRGMUX 使用相关的注意事项? 在最终确定设计方案之前,我们是否需要考虑软件或硬件方面的限制? 请根据您的经验和参考设计分享您的建议。 关于 希瓦 Re: Clarification Required on PWM Pin Mapping Approach for S32K312 嗨,@VaneB、 对于 S32K312 100 引脚 MCU,我们考虑采用以下 PWM 引脚映射选项: 引脚网络名称 相位侧 eMIOS 通道 LCU 输出 PTA0 PWMU_HS - U 高压侧 eMIOS_1_CH[6]_H LCU0_OUT6 PTA1 PWMU_LS - U 低压侧 eMIOS_1_CH[15]_H LCU0_OUT11 PTA2 PWMV_HS - V 高压侧 eMIOS_1_CH[19]_Y LCU0_OUT3 PTA3 PWMV_LS - V 低压侧 eMIOS_1_CH[20]_Y LCU0_OUT2 PTD2 PWMW_HS - W 高压侧 eMIOS_1_CH[21]_Y LCU0_OUT1 PTD3 PWMW_LS - W 低压侧 eMIOS_1_CH[22]_X LCU0_OUT0 在这种方法中,所有六个 PWM 输出都通过同一个 eMIOS_1 实例进行映射。我们相信,这可能有利于同步和电机控制 PWM 的生成。 请确认这种理解是否正确。 另外,请说明 eMIOS 通道类型 H、Y 和 X 在此配置中的含义和影响。我们想了解这些通道类型是否会对 PWM 生成、同步、死区时间控制、ADC 触发或 LCU TRGMUX 的使用产生重大影响。 请审查并指导我们该 PWM 引脚映射是否适合我们的电机控制应用。 关于 希瓦 Re: Clarification Required on PWM Pin Mapping Approach for S32K312 你好@SHIVAKUMAR55 方法 2 将所有 PWM 通道保留在单个 eMIOS 实例中,这样就可以共享时基,从而更容易实现干净的相位对齐和更简单的整体定时。 另一方面,方法 1 采用类似于 S32K344 三相无传感器 PMSM 电机控制参考设计中使用的 emiOS → TRGMUX → LCU 方法,将信道分布在多个 emiOS 实例上,并通过 LCU 进行路由。如果您需要更大的灵活性,例如高级输出调节、死区时间控制或稍后添加故障处理功能,这种设置会非常有用。 不过,由于方法 1 使用了多个 eMIOS 实例,因此配置工作会更多一些,同步性也会更差一些。实际上,一个好的方法是从方法 2 开始,因为它简单且定时行为可靠,只有在以后的设计需要更高级的控制或功能安全功能时,才转向基于 LCU 的解决方案,例如方法 1。 如需更多指导,建议参阅包含 S32K344 应用笔记和相关软件的 3 相无传感器 PMSM 电机控制套件: S32K344 无刷直流和永磁同步电机控制开发套件(MCSPTE1AK344) BR、VaneB Re: Clarification Required on PWM Pin Mapping Approach for S32K312 你好@SHIVAKUMAR55 是的,你的理解是正确的。 关于EMIOS信道类型,如S32K3xx参考手册修订版12的表403中所述,每种支持的模式都取决于特定的信道类型。并非所有模式都适用于每种通道类型,因此必须根据所需的功能仔细选择合适的通道类型。
查看全文
s32デザインスタジオライセンスの拡張 こんにちは、 S32 Design Studio開発ツールのライセンスのうち1つが、2026年6月3日に期限切れとなります。新しいライセンスまたはライセンスの延長を取得するにはどうすればいいですか? ありがとうございます テックチャクラ。 Re: Extetion of s32 Design studio License こんにちは。お客様のS32DSライセンスが延長されました。
查看全文
Reboot command operation and reset mechanism on i.MX8MP and i.MX93 Background: This article discusses the reboot mechanism on the i.MX8MP and i.MX93 platforms. It aims to help customers understand how the reboot command works. We will discuss two different kernel versions separately.   1. Linux version : LF_6.12.34_2.1.0 The executable file for the reboot command is as follows: When the ”reboot“ command is executed, the system enters the ”do_kernel_restart()“ function and executes the reboot mechanism by determining the priority of the registered functions. Since the ”reboot.c“ file does not print out the registered functions, a print function is added to the file to identify the function that is ultimately executed.   The print output is as follows: pengyong_zhang_0-1779943510533.png As shown in the figure above, in version 5.12, the reboot is performed via a reset executed by psci. Continuing to trace the ”psci_sys_reset()“ function, we can see that the system sends the function ID via the PSCI interface to initiate an SMC call, instructing the underlying firmware (ATF/EL3) to perform a system reboot (typically a cold reset). The value of PSCI_0_2_FN_SYSTEM_RESET is 0x80000009 pengyong_zhang_0-1779943988849.png   According to the Arm Power State Coordination Interface Platform Design Document, this ID represents a cold reset of the system. pengyong_zhang_1-1779944324615.png pengyong_zhang_2-1779944331293.png     2. Linux version : LF_6.18.2_1.0.0 Use the same debugging method to examine the reboot mechanism in version 6.18 As shown in the output below, in version 6.18, the system reset is triggered by the `sys_off_notify()` function. The final execution function is pca9450_i2c_restart_handler()   pengyong_zhang_0-1779944594004.png By examining the `pca9450_i2c_restart_handler()` function, we can see that the system writes a `SW_RST_COMMAND` value to the PMIC via I²C, where `SW_RST_COMMAND = 0x14`. pengyong_zhang_1-1779944599443.png According to the PMIC data sheet, 10b = Cold Reset; all voltage regulators are reset except LDO1/LDO2 pengyong_zhang_2-1779944606796.png Summary: Regardless of the kernel version, the `reboot` command triggers a system cold reset. The triggering mechanism has been updated in versions 6.18 and later. IMX8MPLUSEVK
查看全文
emac_mii_rmii_tx クロックに関する質問 スクリーンショットはlwip_baremetal_s32k344.mexからのものですが、emac_mii_rmii_txはスイッチMII_TX_CLKからのものですか? Re: emac_mii_rmii_tx clock question こんにちは、 lwip_baremetal_s32k344 の例では、xMII インターフェースを RMII モードに設定し、emac_mii_rmii_tx が入力として使用され、50MHz の基準クロックを期待するようにします (そのため、/2 分周器があります)。 SJA1110のようなスイッチでは、RMII REF_CLK機能はMIIx_RX_CLKまたはMIIx_TX_CLKピンで利用可能であり、柔軟性を高めるためにソフトウェアで選択できます。 BR、ペトル
查看全文
RT1180 evkmimxrt1180_multicore_trigger_cm33 デモで cm7 を起動できません # デバッグ目的 CM7コアを起動して実行するための、汎用的なCM33コアプロジェクトを作成したい。 # 参考資料 NXP SDK 26.03 の evkmimxrt1180_multicore_trigger_cm33 # デバッグ手順 1. evkmimxrt1180_multicore_trigger_cm33プロジェクトをコンパイルします。 2. evkmimxrt1180_hello_world_cm7プロジェクトをコンパイルします。 3.ボードをISPモードに切り替え、MCUXpresso Secure Provisioning Toolを開き、RT1180開発ボードを選択して、evkmimxrt1180_multicore_trigger_cm33.axfをロードします。 ethan_dang1_0-1779176778254.png 4. evkmimxrt1180_hello_world_cm7.axf を追加します。 ethan_dang1_1-1779176812168.png 5. 「イメージの作成」ボタンをクリックして、結合されたイメージファイルを生成します。 ethan_dang1_2-1779176829449.png 6. 「画像を書き込む」ボタンをクリックします。 ethan_dang1_3-1779176842477.png 7.ボードを通常モードに切り替えてから電源を入れます。CM33コアの出力は正常ですが、CM7コアの出力は空になっていることがわかります。 ethan_dang1_4-1779176861995.png Re: RT1180 evkmimxrt1180_multicore_trigger_cm33 demo can't kickoff cm7 こんにちは、@ethan_dang1 さん。 NXP MIMXRTシリーズにご関心をお寄せいただきありがとうございます! このリンク先の指示に従っていますか? https://mcuxpresso.nxp.com/mcuxsdk/latest/html/boards/RT/evkmimxrt1180/gettingStarted/topics/use_SPT_tool_and_multicore_trigger_image.html このガイドで述べたように、「CM7 XIP イメージは外部 FLASH から実行され、multicore_trigger CM33 イメージは内部 RAM から実行される」場合は eFuse の変更は不要ですが、もう 1 つの場合は必要です。 しかし、あなたが提供してくれたスクリーンショットを見ると、CM33はTCMから実行されておらず、CM7もフラッシュメモリから実行されていないようです。 よろしくお願いします、 ギャビン
查看全文
FRDM-MCXN947: Ee(42) tflm_modelrunnerのフラッシュ後、コアに接続できませんでした tflm_modelrunner SDKのサンプル(FreeRTOS + lwIP、USE_RTOS定義済み)をフラッシュした後、私のFRDM-MCXN947はSWDに応答しなくなりました。LinkServer v25.6とMCU-Link V3.128はEe(42)を報告します。一括消去を含むすべての操作において、コアへの接続に失敗しました。MCU-Linkプローブはデバイスマネージャーで正しく検出されています。SW3+RESETを押すと、WindowsはUSBの列挙を検出しますが、ドライバはインストールされず、blhostはデバイスが見つからないと報告します。 基板を復元するにはどうすればよいですか? 追記:Linuxではled_blinkyのサンプルをダウンロードできましたが、Windows 10では問題が解決しません。 また、どちらのオペレーティングシステムでも、通常は次のような警告が表示されます。 「プロジェクトはデバイスMCXN947用に構成されていますが、選択されたプローブはデバイスMCXN947VDFTに接続されていると報告しています。」本当に続けますか? 初めてプログラムをダウンロードしようとしたとき(これが関係あるかどうかはわかりません)。 Re: FRDM-MCXN947: Ee(42) Could not connect to core after flashing tflm_modelrunner 更新情報 - 解決済み: WindowsのデバイスマネージャーからMCU-Linkデバイスのエントリをアンインストールし、再接続時にWindowsがそれらを再列挙できるようにすることで、問題は解決しました。 具体的には、ユニバーサルシリアルバスデバイスの下にある「MCU-LINK FRDM-MCXN947 CMSIS-DAP」と、ポート(COMとLPT)の下にある対応するMCU-Link VComポートの2つのエントリが削除されました。USBケーブルを再接続すると、Windowsは両方のドライバを自動的に再インストールし、LinkServerはプローブを正しく開くことができました。 根本原因は、WindowsにおけるUSBデバイスの状態の破損にあるようで、これはおそらくtflm_modelrunnerファームウェア(FreeRTOS + lwIP)を使用した以前のセッション中に発生したものと思われます。プローブはシステムから認識され、正しく列挙されましたが、redlinkserv.exe によってそのハンドルを開くことができませんでした。そのため、一括消去、フラッシュ、gdbserver を含むすべての操作で Ee(42) エラーが発生していました。IDEを再インストールし、redlinkserv.exeを置き換えます。USBレジストリエントリを削除しても問題は解決しなかった。デバイスマネージャーからデバイスを再登録することで、問題が解決しました。
查看全文
Arm用S32DSでは、スローアクティベーションを取得できません(FNPエラー)。 こんにちは、Ubuntu 25.10 上で S32DS for Arm をインストールする際に問題が発生しています。 インストール中にオンライン/オフラインの有効化をクリックしても、FNPエラー2が発生します。 misisnikk_0-1778848240687.png ./S32DS_ARM_Linux_v2.2.bin としてインストールしています フォーラムで紹介されていたlicfix.zipの手順に従ってみましたが、うまくいきませんでした。 BR ミハル Re: S32DS for Arm, not possible to get throw activation (FNP error) こんにちは、ミハルさん。 返信が遅くなり申し訳ありません。お客様のアカウントを確認したところ、手動アップロードでS32DSを有効化できたようですが、よろしいでしょうか? Re: S32DS for Arm, not possible to get throw activation (FNP error) こんにちは、ジリさん。 プロジェクトを開始する必要があったため、MCU の部分については Windows に移行し、そこでインストール/アクティベーションを行うことができました。 それから、デバッグのためだけにUbuntu上でVS Codeを使い始めたのですが、問題なく動作しています。 いずれにしても、Ubuntu 16.4 にインストール/アクティベートすることはできませんでした。Ubuntu 24.4 の Docker 環境でもインストールを試みましたが、アクティベーションしようとするとインストールがフリーズしてしまいます。エラーは表示されません。
查看全文
带有 GDB 客户端 9.2 包的 S32 设计工作室 3.6 我想在 S32 设计工作室 3.6.6 中安装适用于 ARM 嵌入式处理器的 " GDB 客户端 9.2 版本 1701 "。我无法将这个包离线 /explicit 包含到 IDE 中。版本 3.6.6目前使用的是 GDB 客户端 15.1。这可能吗? Re: S32 design studio 3.6 with GDB client 9.2 package 你好@sushil_zero 最简单的方法是安装 S32 Design Studio for S32 Platform v3.6.3,其中已包含所需的工具链版本。 安装完成后,您可以将现有的 S32 Design Studio v3.6.3 升级到 v3.6.6,详细步骤请参阅 S32 Design Studio 3.6.6 的第 4.2 节。在下载 IDE 的同一链接中提供了 RFP 安装指南。 BR、VaneB Re: S32 design studio 3.6 with GDB client 9.2 package 您好, 如上述答复所述。 我尝试安装 3.6.3 版和 3.6.1,但它们的 GDB 版本都是 15,所以我无法让 gdb 10.2 与 gcc 10.2 兼容。我可以安装 3.5.X 并升级到 3.6.6 吗?能行吗? Re: S32 design studio 3.6 with GDB client 9.2 package 你能给我一个适用于 S32 设计工作室 3.6.6 的恩智浦 GDB 9.2 软件包的链接吗 Re: S32 design studio 3.6 with GDB client 9.2 package 你好@sushil_zero 你可以尝试从以下链接下载独立编译器:适用于 S32 设计工作室的 S32 编译器。 下载后,将软件包解压缩到以下目录:C:\NXP\S32DS.3.6.6\ S32DS\ build_tools\ gcc_v10.2 解压缩后,S32DS 应自动检测版本工具。如果没有检测到,仍可通过项目属性手动选择。 Re: S32 design studio 3.6 with GDB client 9.2 package 你好@sushil_zero 必须说明的是,S32K3 RTD 版本为 2.0.x、3.0.0,并且最新的版本是使用 GCC 版本 10.2 开发的。使用不同版本的工具链可能会导致兼容性问题,而且无法保证功能的正确性。 如果您计划移植您的项目,建议在迁移到最新的 RTD 版本的同时,也迁移到最新的集成开发环境版本。但是,如果您希望保持相同的 RTD 版本,我们强烈建议您使用最初开发和测试该软件的 IDE 版本(S32DS 3.4),因为这有助于避免潜在的兼容性问题。 Re: S32 design studio 3.6 with GDB client 9.2 package 嗨,维恩: 您为我提供了 3.6.6 版 GCC 编译器的路径 但 3.6.7 版工具中已经提供了 gcc 10.2。我的问题是 GDb 被固定在 15.1 版,而我无法在 3.6.6 中获得 GDb 9.2 或 10.2 版。 另外,如果你能告诉我 3.6.7 支持的设备。使用默认 GNU 工具(gdb 15 和 gcc 11.4)和默认 RTD(3.0.0 或 4.0.0)是否支持 S32k344。 在 3.4 版本中,我使用 RTD 2.0.0 和 gcc 15 和 gcc 11.4。 我希望移植到 3.6 版本,因为我的 *&^%## 经理认为最新版本更好。 Re: S32 design studio 3.6 with GDB client 9.2 package 我坚信 3.4 是最好的解决方案,而且我已经有了一个可行的解决方案。但由于管理层要求我使用 5.0.0 版本,您能否确认我们是否可以使用 3.6.7 版本的编译器和调试器在 s32k344 上开发一个带有 RTD 5.0.0 的固件项目。有任何特定版本的 gcc 和 GDB 推荐吗?
查看全文
在 S32K144 上进行闪存操作时出现异常 我引用了 S32K144 的 flash_partitioning 项目示例,并开发了自己的测试代码,其中启用了 SyStick 中断。 但是,我发现执行一些与闪存相关的API会触发DefaultISR异常,从而导致程序无法正常运行。如果我取消第 162 行并执行 INT_SYS_DisableIRQGlobal();,程序就能正常运行。   Flash 驱动程序 API不支持中断嵌套吗?调用这些应用程序接口时,有必要禁用全局中断吗?   此外,我还发现,每次生成代码时,无论我是否设置了 Flash 配置中的回调,它都会重置为空。   S32DS: 3.5 RTD: 4.0.1       Re: An exception occurs during Flash operation on S32K144 Hi@ZDDL "Flash 驱动程序 API 不支持中断嵌套吗?在调用这些应用程序接口时,是否有必要禁用全局中断? 外设中断可以中断当前的闪存擦除和编程命令,转而从中断向量表中检索相应的中断向量(中断 ISR 功能地址),并跳转执行中断 ISR 功能。 因此,如果 MCU 的中断向量表和/或外设中断 ISR 功能与当前闪存擦除或编程 API 操作的目标闪存块属于同一个 RWW 分区,则必须先禁用 CPU 全局中断,然后在执行闪存擦除或编程命令后再重新启用;否则将发生闪存RWW错误。 " 此外,我还发现每次生成代码时,Flash 配置中的回调都会重置为 NULL " 您使用的是 RTM 4.0.1、而不是 RTD 4.0.1(最新的 RTD 版本实际上是 RTD 3.0.X)。 这是一个已知错误,已在 RTM 4.0.3 中修复。 Re: An exception occurs during Flash operation on S32K144 有人能帮忙回答这个问题吗? Re: An exception occurs during Flash operation on S32K144 Hi@ZDDL RWW- 读取-写入(Read-While-Write)。在另一个内存资源中执行命令操作时,能同时从一个内存 资源中读取数据。 S32K144 只有一个闪存块>BLOCK0。 "SysTick_Handler()" ,编译后位于 BLOCK0。 因此,在这种情况下操作闪存时,可能会出现 RWW 错误。 您可以参考"CCIF_Handler" 并将"SysTick_Handler" 置于 SRAM 中。 Re: An exception occurs during Flash operation on S32K144 对不起,我的回复晚了。我不太了解 S32K144 的 RWW 分区。你有相关的文件可供参考吗? 我不确定您是否检查过我提供的 EE_Test 项目。我将中断向量表置于默认地址 0x00000000,然后程序擦除 pFlash 的最后一个扇区。S32K144 的整个 pFlash 区域是否位于同一个 RWW 分区中? ld.jpg   erase.jpg
查看全文
WDOG 无法使用 8 位序列刷新 我无法使用 4 个 8 位写入来刷新 S32K144 的看门狗。16 位和 32 位都可以接受,但 8 位不行。我尝试了图片中的 8 位写入法,但都失败了: 如果 WDOG_CS[CMD32EN]为 0,刷新写入序列可以是 - 两个 16 位写入 (0xA602, 0xB480) 或四个 8 位写入 (0xA6, 0x02, 0xB4, 0x80);如果 WDOG_CS[CMD32EN]为 1,刷新写入序列可以是 - 一个 32 位写入 (0xB480_A602)。 到 CNT 寄存器。这两种方法都必须在 WDG 超时之前发生;否则, 监视程序会重置 MCU。 Re: WDOG cannot use 8-bit sequence refresh 启动刷新序列前,请禁用全局 中断。否则,如果中断发生在刷新 写入完成之前,则可能导致 刷新序列无效。序列结束后,恢复全局 中断控制状态。 中断检查提示 Re: WDOG cannot use 8-bit sequence refresh 我确认在喂狗之前和之后都中断了开关。在同样的情况下,只改变进料顺序和使用 16 位进料方法成功了,但 8 位进料方法失败了,调整 8 位进料顺序也不起作用。 Re: WDOG cannot use 8-bit sequence refresh 你好 @GXY, WDOG 支持 8 位刷新序列,但对时序要求非常严格。即使标准 C 代码生成 STRB 指令,该序列也可能由于在字节写入之间插入了额外的堆栈访问或地址重新加载而失败。使用紧凑的 GCC 内联汇编代码块有助于确保 8 位刷新操作能够可靠地执行。 static inline void WDOG_Refresh8_AsmInline(void) { __asm volatile( // "mrs r2, PRIMASK \n" // "cpsid i \n" // "dsb \n" "ldr r0, =0x40052004 \n" "movs r1, #0xA6 \n" "strb r1, [r0, #1] \n" "movs r1, #0x02 \n" "strb r1, [r0, #0] \n" "movs r1, #0xB4 \n" "strb r1, [r0, #1] \n" "movs r1, #0x80 \n" "strb r1, [r0, #0] \n" // "dsb \n" // "isb \n" // "msr PRIMASK, r2 \n" ); } 此致, 丹尼尔
查看全文
S32K314 的 LIN 主站模式下无法接收从站响应帧 基于S32K388 EVB学习LIN 例程,在附件的例程中Master Send Data,Slave Node 接收OK 学习Master Recive Slave node data,发现: 1、Slave Node 对Master Send PID已经响应,示波器看到Slave Node存在数据反馈 2、debug Code ,Master Node 发现Lpuart_Lin_Ip_GetStatus()函数返回值一直不是LPUART_LIN_IP_STATUS_RX_OK 3、debug Code,Lin的回调函数LinMasterCallback()一直未进入 不知道该份例程哪些支付配置不正确,请基于帮助 Re: S32K314 的 LIN 主站模式下无法接收从站响应帧 Hi@Ryan_xjl 我检查了你的工程,但是我无法测试,因为你所使用的是LPUART0,S32K388EVB应该不支持该端口作为LIN。 你的配置我没有发现有什么问题,只有我说的,LPUART0在S32K388EVB上不是LIN口,没有LIN收发器。 Re: S32K314 的 LIN 主站模式下无法接收从站响应帧 非常感谢你协助,当前可以收到Slave Node的响应帧并且数据解析正确 但是发现一个问题,如果Master 持续发送,坚持一段时间就无法收到Salve数据,Lpuart_Lin_Ip_GetStatus()返回值为LPUART_LIN_IP_STATUS_RX_NO_RESPONSE 持续发修改的Code部分为: Ryan_xjl_0-1778520957950.png Debug Code,发现Master发送一段时间状态为: Ryan_xjl_1-1778521094031.png Master restart之后又可以持续一段时间,不清楚是否有可以指导一下,如果需要修改后的例程,说一下 Re: S32K314 的 LIN 主站模式下无法接收从站响应帧 Hi@Ryan_xjl 如果你的发送正常,你把下面这个地方修改为TX,那么是可以进入callback的,对应的事件应该为“LPUART_LIN_IP_TX_COMPLETED” Senlent_0-1778494558803.png 附件是基于S32K344EVB修改的,我可以进入callback Re: S32K314 的 LIN 主站模式下无法接收从站响应帧 你好,我当前板子的确使用的是UART0作为LIN,并且LIN Master Send没有问题,说明硬件是OK,如下图 Ryan_xjl_0-1778493794752.png 请问,你是否可以分享一份例程,支持LIN Master 接收的程序(支持Callback),例程可以基于RTD就可以 我自己修改学习也可以,再次感谢 Re: S32K314 的 LIN 主站模式下无法接收从站响应帧 Hi@Ryan_xjl 这个你需要用示波器或者逻辑分析仪去看一下,master发送的数据是否正常,slave端是否进行了响应。 感觉像是slave端没有做出响应。 Re: S32K314 的 LIN 主站模式下无法接收从站响应帧 你好, 发现一个现象不清楚是否与Slave设备是否有关系,我有2款LIN(Slave)设备和1款LIN模拟器 当LIN Master硬件和对应固件不变(前面的例程),LIN模拟器和其中1款LIN Slave是正常的,Master接收数据也正常,但是另外1款LIN Slave设备出现上面现象(运行一段时间就收不到LIN Slave反馈数据),示波器测量发现Master没有发送数据(帧头) Re: S32K314 的 LIN 主站模式下无法接收从站响应帧 Hi@Ryan_xjl 只从你的现象描述来看可能和slave有关, 但是凭这些信息无法定位到你的这个现象的具体原因,这个还是需要你自己使用调试器和逻辑分析仪工具捕获到问题发生时的状态来定位问题的原因。
查看全文