Multi Source Translation Content

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Multi Source Translation Content

Discussions

Sort by:
AN4908SW download Hi, My google-fu seems to be broken because I can't find "AN4908SW  Engine Control eTPU Demo Application" anywhere. Can someone provide me a link or the zip file?  Thanks! 回复: AN4908SW download Hi Peter, I am also looking for the AN4908SW package for MPC5674F development. Could you please send it to my email as well? Thank you! Re: AN4908SW download Hi, Thank you very much! Cheers, Jose Re: AN4908SW download Hello, I have send it to your email. Best regards, Peter
View full article
Getting Started with S32 Design Studio AI Support and the FRDM-A-S32K312 Board   This guide explains how to set up S32 Design Studio AI Support with Claude Desktop, and then verify the setup by importing, building and flashing the Blinking LED example from Application Code Hub on the FRDM-A-S32K312 board.   Prerequisites NXP account – free and required for all NXP downloads. You can create one when prompted in the next step. Python 3.11 to 3.14 – download the Windows installer from Python.org. During installation, select Add python.exe to PATH. On the last page, click Disable path length limit if it is shown. To verify the installation, open a new Command Prompt and run python --version or py --version . NXP S32 software tools FRDM Automotive S32K3 + S32M27 Board Installation Package - download and run the installer as administrator from Automotive Software Package Manager | NXP Semiconductors Known Windows path-length limitation: If the installation fails because a file path is too long, rerun the installer and select a shorter installation directory, such as C:\NXP\K3 S32 Design Studio v.3.6.11 - Update the version using the S32 Design Studio Platform package available in the S32DS Extensions and Updates panel: S32 Design Studio -> Help -> S32DS Extensions and Updates -> S32 Design Studio Platform package -> Update S32 Design Studio MCP Integration plugin v.1.0.3 - Install it from S32DS Extensions and Updates panel  S32 Design Studio AI Support - download the .pyz installer from the latest release on Releases · nxp-agentic-ai/s32-ds-ai-support, under Assets. Note the folder where it is saved. An MCP-compatible AI agent - this guide uses Claude Desktop as example, but any MCP-compatible AI agent can be used Claude Desktop - download it from claude.com/download, install it and sign in with your Claude account. FRDM-A-S32K312 board and a USB cable Installation Close Claude Desktop completely, including from the system tray (right-click the Claude icon → Close). Otherwise, the MCP registration may fail. Open a Command Prompt in the folder containing the s32ds-agentic-ai-installer-{version}.pyz file (open the folder in File Explorer, type cmd in the address bar and press Enter) Run the command below, replacing {version} with the version in the file name. When prompted, press Enter to accept the default install location (C:/NXP/s32ds-agentic-ai) or type another path, then press Enter again to install all components. Then, select for which agents you want the MCP Server to be configured and then the skills to be copied. Choose 1 for Claude Desktop.   For all installer options, see the README on GitHub – S32 Design Studio AI Support python s32ds-agentic-ai-installer-{version}.pyz The MCP servers and skills should be now installed and registered in the specified agent. To verify in Claude Desktop, open Settings → Developer and check that the NXP S32 Design Studio MCP Server is listed without errors. To check that the skills were installed, type / in Claude Code. The installed skills should appear in the list.  If the MCP server is not listed, check the troubleshooting section. Start prompting   Connect the board to the laptop with the USB cable, open your AI agent and send the prompt below, replacing the paths with your own. The agent imports the Blinking LED example from Application Code Hub into S32 Design Studio, builds it and flashes it to the board. “S32 Design Studio is installed in C:\NXP\S32DS.3.6.8 and my workspace is C:\S32DS_Workspace. Import the Blinking LED example for the FRDM-A-S32K312 board from Application Code Hub, generate the configuration code, build the project and flash it to the board connected over USB.” Troubleshooting Known Claude Desktop limitation on Windows (MSIX) Due to a known Claude Desktop MSIX configuration issue on Windows (community issue #26073), Claude Desktop may not detect MCP servers that were automatically registered during installation. If this occurs, manually register the MCP Gateway using the steps below: Open Claude Desktop. Go to Settings → Developer → Edit Config In the existing mcpServers object, add the following s32ds-agentic-ai entry: { "mcpServers": { "s32ds-agentic-ai": { "command": "C:/NXP/s32ds-agentic-ai/run-mcp.bat", "args": [ "nxp.mcp.gateway", "configs/gateway.stdio.yaml" ], "disabled": false } } } Important. If other MCP servers are already configured, add only the s32ds-agentic-ai entry inside the existing mcpServers object. Do not replace or overwrite the existing configuration. The example above assumes the default installation structure. If a different installation directory was selected, adjust the command path accordingly. 4. Save the configuration. 5. Restart Claude Desktop. 6. Go to Settings → Developer and verify that the MCP server is listed without errors. Getting Started
View full article
[S32K344] Random Resets of Type "MCU_F_EXR_RESET" I am developing using a custom PCBA with an S32K344 microcontroller, and I occasionally have seen the board randomly reset and after the board resets, the `Power_Ip_GetResetReason()` function returns `MCU_F_EXR_RESET` (value = 15), which appears to be an external reset (i.e., the RESET pin was pulled low). However, when this has occurred, I have had nothing connected to the RESET pin, and the RESET pin is pulled high with a 10 kOhm resistor. Upon reading documentation, I found this section in the user manual for the S32K344 White Board: Is there a comprehensive list of these "some MCU internal failures" which can pull the RESET line low? Also, does this mean the MCU itself can pull the RESET pin low internally upon some other internal failure? If so would I still receive the `MCU_F_EXR_RESET` reset reason? Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" @jleveque, I'm curious if you ever discovered the root cause of your unexpected resets? Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" I do not know your API so it hard to judge what is : MCU_F_EXR_RESET "MCU_F_EXR_RESET" is a member of the "Power_Ip_ResetType" enum type in the Power_Ip_Specific.h file (part of the RTD, version 3.0.0). This is the type returned by the Power_Ip_GetResetReason() function defined in the Power_Ip.c file. Internal resets will also be propagated to reset_b pin as it is bidirectional. But there wont be set F_EXR flag in RGM [FES], but some other internal source flag. This is the info I was looking for. As long as it is guaranteed that the F_EXR flag will only ever be set if the RESET pin was pulled low externally (and not from an internal reset) then I can narrow down my search as to what is causing this issue. Thanks again, Peter! Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" Hello, I do not know your API so it hard to judge what is : MCU_F_EXR_RESET But if you have external reset flag set in the RGM FES register then it mean the reset wa triggered from outside of uC. Internal resets will also be propagated to reset_b pin as it is bidirectional. But there wont be set F_EXR flag in RGM [FES], but some other internal source flag. Best regards, Peter Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" This can be cause also by debugger, which is also pulling external reset. So the question is how do you read this function. Thank you for your reply, Peter! As I stated above, this reset is occurring with nothing connected to the RESET pin (the debugger is not physically connected), so this is being triggered by something else. As to how I read this function, I call the function first thing after boot and store the return value. Per your suggestion, I will add additional direct reads of the RGM [FES/DES] registers in hopes that I can get more insight, but ultimately I really want to know what are the "MCU internal failures" which can cause this "MCU_F_EXR_RESET" reset reason. Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" Hello, `Power_Ip_GetResetReason()` function returns `MCU_F_EXR_RESET` This can be caused also by debugger, which is also pulling external reset.So the question is how do you read this function. But nevertheless you can read reset reason from RGM [FES/DES] registers: Clear FES/DES first.After your reset, read the registers to see the reset root cause. Usually you in SW clear the FES/DES after power on reset and test if the FES/DES value is 0. If not you run diagnostics to see the reset reason. Best regards, Peter Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" Unfortunately, no. I left the company I was working for before this was resolved. It was last left in the hands of the electrical engineer who designed the board to review the PCB design with the suspicion that the cause may be EMI. I will note that on a subsequent project I worked on featuring an S32K358 MCU, I experienced spurious wake-ups from Standby mode, and I was able to reliably reproduce it by standing up out of my office chair. Looking into this phenomenon, I discovered that an office chair with a gas shock and metal legs can act as an EMP antenna, radiating a strong electromagnetic field! I found that there was actually a whitepaper written about it back in 1993: https://www.emcesd.com/pdf/eos93.pdf. I could measure this with an oscilloscope probe connected to nothing. Standing up from my chair would trigger the scope with a very brief spike of ~25V. So my original reset issue may have also been caused by EMI, as we had last suspected. I would suggest looking into EMI as a potential cause of your resets. Good Luck!
View full article
MVR5510AMDAL 是否能进行程序调试 Hi  我在使用MVR5510AMDALTS和S32G399做硬件开发, 我看到MVR5510AMDALTS是预编程的IC。我还可以重新配置这个PMIC进入debug模式进行程序调试吗? 我想调试的内容:我想把BUCK2配置为1.2V输出,LDO2配置为2.5V输出。其他电源和预编程的保持不变。请问这是否可以实现? Re: MVR5510AMDAL 是否能进行程序调试 嗨,迈克尔, MVR5510AMDALTS 是出厂预编程的 DAL 设备(不是空白的 A0 版本)。其出厂预设的OTP配置无法被覆盖。   BRs,托马斯 Re: MVR5510AMDAL 是否能进行程序调试 我把BUCK2设置为1.2V给SJA1105SELY的核心供电。LDO2设置为2.5V是给SJA1105SELY的VDDA_SGMII供电。 我如果购买MVR5510AMDALTS,这个已经预编程的PMIC还可以进入OTP debug模式进行编程吗? Re: MVR5510AMDAL 是否能进行程序调试 OTP预程序已完成 设计方面会采用哪种负载?LPDDR4?
View full article
S32K3 ADC平均值 你好, 我目前正在使用S32K312,对ADC平均值有一个疑问。 3.858V(数字万用表实测值) 3.865V T32 AVGX 转换时间 100 3.865V T32 AVG4 转换时间 100 3.860V T32 AVG8 转换时间 100 3.855V T32 AVG16 转换时间 100 3.844V T32 AVG32 转换时间 100 3.864V T32 AVGX 转换时间 22 3.862V T32 AVG4 转换时间 22 3.860V T32 AVG8 转换时间 22 3.847V T32 AVG16 转换时间 22 3.844V T32 AVG32 转换时间 22 3.866V T32 AVGX 转换时间 255 3.844V T32 AVG32 转换时间 255 如上图所示,随着平均计数的增加,测得的电压会降低。 您能帮我分析一下这种行为可能的原因吗? Re: S32K3 ADC Average 你好@kjy106906 , 通常来说,最佳建议基于以下几点: AN4373,SAR ADC测量指南 - 应用笔记 AN5032:SoC 中 SAR ADC 的参考电路设计 – 应用笔记 主要方法是测试ADC引脚前的源阻抗,可以在电压基准和基准引脚之间添加基于运算放大器的缓冲电路,以满足负载条件。 此外,您还可以根据 AN4373 重新计算外部 RC 滤波器并启用预采样。 当 ADC 对模拟引脚进行采样时,该引脚会与 ADC 连接和断开。开关操作会向引脚注入少量电荷。增加两次转换之间的时间间隔也可能有所帮助。 作为最后的测试,您还可以只转换此通道,然后将 AVG32 与在相同触发信号条件下单独捕获的 32 个原始转换的软件平均值进行比较。 此致, 朱利安
View full article
LPI2Cグリッチフィルタ幅の不一致 こんにちは、 私は最新のリリースされたSDK(バージョン26.09)のMCXN947を使っています。 MCUxpressoでLPI2Cペリフェラルを設定していたとき、lpi2c_master_config_tとlpi2c_slave_config_tがグリッチフィルターの長さを格納するために異なるデータ型の幅を持っていることに気づきました。 つまり、スレーブ設定で使っていた長さが、同じペリフェラルのマスター設定で切り詰められていたのです。 fsl_lpi2c.h typedef struct _lpi2c_master_config { ... uint8_t sdaGlitchFilterWidth_ns; /*!< Width in nanoseconds of glitch filter on SDA pin. Set to 0 to disable. */ uint8_t sclGlitchFilterWidth_ns; /*!< Width in nanoseconds of glitch filter on SCL pin. Set to 0 to disable. */ ... } lpi2c_master_config_t; ... typedef struct _lpi2c_slave_config { ... uint32_t sdaGlitchFilterWidth_ns; /*!< Width in nanoseconds of the digital filter on the SDA signal. Set to 0 to disable. */ uint32_t sclGlitchFilterWidth_ns; /*!< Width in nanoseconds of the digital filter on the SCL signal. Set to 0 to disable. */ ... } lpi2c_slave_config_t; MCFGR2。FILDSDAおよびMCFGR2。これらの値から引き出すレジスタであるFILTSDLは、リファレンスマニュアルでは固定4ビットのようです。 私のリファレンス・マニュアルはMCXNX4XRM Rev。2025-03-05 6日なので、少し古いかもしれません。新しいリリースを見つけるのに苦労していました。もし新しいリリースがあれば、ぜひ教えていただきたいです。 fsl_lpi2c.cc void LPI2C_MasterInit(...) { ... cycles = LPI2C_GetCyclesForWidth(sourceClock_Hz, masterConfig->sdaGlitchFilterWidth_ns, 0U, (LPI2C_MCFGR2_FILTSDA_MASK >> LPI2C_MCFGR2_FILTSDA_SHIFT), 0U); ... cycles = LPI2C_GetCyclesForWidth(sourceClock_Hz, masterConfig->sclGlitchFilterWidth_ns, 0U, (LPI2C_MCFGR2_FILTSCL_MASK >> LPI2C_MCFGR2_FILTSCL_SHIFT), 0U); ... } マスターとスレーブの設定にこのような相違があるのはなぜでしょうか? お時間をいただきありがとうございました。 JC 通信・制御(I3C |I2C |SPI |FlexCAN |イーサネット |FlexIO) Re: LPI2C glitch filter width discrepancy 訂正します。スレーブコードはSCFGR2.FILTSDAとSCFGR2.FILTSCLを更新します。 ただし、コード上では、MCFGR2とSCFGR2のマスクとオフセットは同じように見えます。 #define LPI2C_MCFGR2_FILTSCL_MASK (0xF0000U) #define LPI2C_MCFGR2_FILTSCL_SHIFT (16U) /*! FILTSCL - グリッチフィルターSCL */ #define LPI2C_MCFGR2_FILTSCL(x) (((uint32_t)(((uint32_t)(x)) << LPI2C_MCFGR2_FILTSCL_SHIFT)) & LPI2C_MCFGR2_FILTSCL_MASK) #define LPI2C_SCFGR2_FILTSCL_MASK (0xF0000U) #define LPI2C_SCFGR2_FILTSCL_SHIFT (16U) /*! FILTSCL - グリッチフィルターSCL */ #define LPI2C_SCFGR2_FILTSCL(x) (((uint32_t)(((uint32_t)(x)) << LPI2C_SCFGR2_FILTSCL_SHIFT)) & LPI2C_SCFGR2_FILTSCL_MASK) 回复: LPI2C glitch filter width discrepancy こんにちは、 @jcallonさん ご報告ありがとうございます。LPI2Cレジスタの定義とドライバ実装を確認したところ、これはSDKsのドライバの問題のようです。 FILTSDAおよびFILTSCLフィールドはコントローラとターゲットの両方で4ビット幅で、LPI2C_GetCyclesForWidth()はすでにuint32_tナノ秒の値を受け入れ、その結果得られるサイクルカウントをサポートレジスタの範囲内に制限しています。したがって、lpi2c_master_config_t でグリッチフィルタ幅に uint8_t を使用すると、入力が不必要に 255 ns に制限されますが、lpi2c_slave_config_t では uint32_t を使用します。 この不整合はSDKチームに報告し、確認と訂正を依頼します。ご指摘いただきありがとうございます。 BR ハリー
View full article
S32K3 ADC Average Hello, I am currently using the S32K312 and have a question regarding ADC averaging. 3.858V (Real Value by DMM) 3.865V T32 AVGX Conv Time 100 3.865V T32 AVG4 Conv Time 100 3.860V T32 AVG8 Conv Time 100 3.855V T32 AVG16 Conv Time 100 3.844V T32 AVG32 Conv Time 100 3.864V T32 AVGX Conv Time 22 3.862V T32 AVG4 Conv Time 22 3.860V T32 AVG8 Conv Time 22 3.847V T32 AVG16 Conv Time 22 3.844V T32 AVG32 Conv Time 22 3.866V T32 AVGX Conv Time 255 3.844V T32 AVG32 Conv Time 255 As shown above, the measured voltage decreases as the averaging count increases. Could you help me understand the possible cause of this behavior? Re: S32K3 ADC Average Hello @kjy106906, Usually, the best recommendations to follow are based on: AN4373, Cookbook for SAR ADC Measurements - Application note AN5032: Reference Circuit Design for a SAR ADC in SoC – Application Note Mainly, try testing the source impedance before the ADC pin, an op-amp based buffer circuit can be added between voltage reference and reference pin to meet the load conditions. Additionally, you can recalculate the external RC filter per AN4373 and enabling pre-sampling.  When the ADC is sampling the analog pin, the pin gets connected and disconnected from the ADC. The switching can inject a small amount of charge to the pin. Increasing the time between conversions may also help. As a last test, you can also convert only this channel, then compare AVG32 with a software average of 32 individually captured raw conversions under the same trigger conditions. Best regards, Julián
View full article
MVR5510AMDALはプログラムのデバッグに使用できますか? こんにちは 私はMVR5510AMDALTSとS32G399を使ってハードウェア開発を行っています。 MVR5510AMDALTSはプリプログラム済みのICであることが分かりました。それでも、このPMICを再構成してデバッグモードにし、プログラムのデバッグを行うことは可能でしょうか? デバッグしたい内容:BUCK2の出力電圧を1.2V、LDO2の出力電圧を2.5Vに設定したい。その他の電源やプリセット設定は変更しない。これは可能でしょうか? Re: MVR5510AMDAL 是否能进行程序调试 こんにちは、マイケルさん。 MVR5510AMDALTSは、工場出荷時にプログラム済みのDALデバイスです(ブランクのA0バリアントではありません)。工場出荷時にプログラムされたOTP構成は上書きできません。   BRs、トーマス Re: MVR5510AMDAL 是否能进行程序调试 SJA1105SELYのコアに電源を供給するため、BUCK2を1.2Vに設定しました。また、SJA1105SELYのVDDA_SGMIIに電源を供給するため、LDO2を2.5Vに設定しました。 MVR5510AMDALTSを購入した場合、このプリプログラム済みのPMICをOTPデバッグモードでプログラムすることは可能ですか? Re: MVR5510AMDAL 是否能进行程序调试 OTPは既にプリプログラム済み デザイン側からはどのような負荷が駆動されますか?LPDDR4ですか?
View full article
[S32K344] タイプ「MCU_F_EXR_RESET」のランダムリセット 私はカスタムPCBAとS32K344マイクロコントローラを使って開発しており、時々基板がランダムにリセットされ、基板がリセットされた後に「Power_Ip_GetResetReason()」機能が「MCU_F_EXR_RESET」(値=15)を返すのを見かけます。これは外部リセット(つまりリセットピンが低く引っ張られた)のようです。しかし、この現象が起きたときはリセットピンに何もコネクテッドされておらず、10 kΩの抵抗でRESETピンが高く引き上げられています。 ドキュメントを読んだところ、S32K344ホワイトボードのユーザー取扱説明書に次のようなセクションがありました: RESETラインを低くする「いくつかのMCU内部故障」の包括的なリストはありますか? また、これはMCU自体が内部のRESETピンを他の内部故障時に低く引き上げることができるという意味でしょうか?もしそうなら、MCU_F_EXR_RESETリセットの理由は引き続き支払われますか? Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" @jleveque さん、予期せぬリセットの根本原因は突き止められましたか? Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" あなたのAPIを知らないので判断が難しいです:MCU_F_EXR_RESET 「MCU_F_EXR_RESET」は、Power_Ip_Specific.h ファイル(RTD バージョン 3.0.0 の一部)の「Power_Ip_ResetType」列挙型のメンバーです。これは、Power_Ip.c ファイルで定義されている Power_Ip_GetResetReason() 関数によって返される型です。 内部リセットは双方向であるため、reset_bピンにも伝播されます。 しかし、RGM [FES] には F_EXR フラグは設定されず、他の内部ソースフラグが設定されます。 これが私が探していた情報です。F_EXRフラグが外部からRESETピンが低く引き込まれた場合にのみ設定される(内部リセットによるものではない)ことが保証されているなら、この問題の原因に関する検索を絞り込めます。ピーター、改めてありがとう! Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" こんにちは、 あなたのAPIは知らないので判断が難しいです:MCU_F_EXR_RESET しかし、RGM FESレジスタで外部リセットフラグが設定されている場合、リセットはMCUの外部からトリガーされたことを意味します。 内部リセットは双方向であるため、reset_bピンにも伝播されます。 しかし、RGM [FES] には F_EXR フラグは設定されず、他の内部ソースフラグが設定されます。 よろしくお願いいたします。 ピーター Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" これはデバッガも外部リセットを引き出している原因かもしれません。では、この関数をどう読むかが問題です。 ピーターさん、ご返信ありがとうございます!前述の通り、このリセットはRESET ピンに何もコネクテッドされていない状態で起きており(デバッガーは物理的にコネクテッドされていません)、SO何か別の要因でトリガーされている可能性があります。 この関数をどのように読み取るかというと、起動直後にまずこの関数を呼び出し、戻り値を保存します。 ご提案通り、RGM(FES/DES)レジスタの直接読み取りを追加して、より詳しい洞察が得られればと思っていますが、最終的にはこの「MCU_F_EXR_RESET」リセットの原因となる「MCU内部故障」が何なのか知りたいです。 Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" こんにちは、 `Power_Ip_GetResetReason()` 関数は `MCU_F_EXR_RESET` を返します。 これは、外部リセットをプルするデバッガーによっても引き起こされる可能性があります。そこで問題となるのは、この関数をどのように読み取るかということです。 しかし、それでもRGM [FES/DES]レジスタからリセット理由を読み取ることは可能です。 まずFES/DESをクリアしてください。リセット後、レジスタを読み取ってリセットの根本原因を確認してください。 通常、ソフトウェアでは電源投入リセット後にFES/DESをクリアし、FES/DESの値が0になっているかどうかをテストします。0になっていない場合は、診断を実行してリセット理由を確認します。 よろしくお願いします、 ピーター Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" 残念ながら、いいえ。この問題が解決する前に、私は働いていた会社を辞めました。最後に、基板を設計した電気技師が基板設計を確認し、原因がEMIである可能性を疑って確認しました。 S32K358 MCUを題材にした後続のプロジェクトでは、スタンバイモードからの不自然な起床現象を経験し、オフィスチェアから立ち上がることで確実に再現できました。この現象を調べてみると、ガスショックと金属製の脚が付いたオフィスチェアがEMPアンテナとして機能し、強い電磁場を放出できることを発見しました!調べてみたところ、実は1993年にそれに関するホワイトペーパーが書かれていたことが分かりました。https://www.emcesd.com/pdf/eos93.pdf 何もコネクテッドされていないオシロスコーププローブで測定できます。椅子から立ち上がると、オシロスコープに約25Vの非常に短いスパイクが発生して作動した。 ですので、元々のリセット問題もEMIが原因だったのかもしれません。前回の疑い通りです。 リセットの原因として、電磁干渉(EMI)の可能性を調べてみることをお勧めします。幸運を!
View full article
S32K3 ADC 平均 こんにちは、 現在S32K312を使用しているのですが、ADCの平均化について質問があります。 3.858V(デジタルマルチメーターによる実測値) 3.865V T32 AVGX 変換時間 100 3.865V T32 AVG4 変換時間 100 3.860V T32 AVG8 変換時間 100 3.855V T32 AVG16 変換時間 100 3.844V T32 AVG32 変換時間 100 3.864V T32 AVGX 変換時間 22 3.862V T32 AVG4 変換時間 22 3.860V T32 AVG8 変換時間 22 3.847V T32 AVG16 変換時間 22 3.844V T32 AVG32 変換時間 22 3.866V T32 AVGX 変換時間 255 3.844V T32 AVG32 変換時間 255 上記のように、平均化回数が増加するにつれて、測定電圧は減少する。 この行動の原因について教えてもらえますか? Re: S32K3 ADC Average こんにちは、 @kjy106906 さん。 通常、従うべき最良の推奨事項は以下に基づいています。 AN4373、SAR ADC測定用クックブック - アプリケーションノート AN5032:SoCにおけるSAR ADCのリファレンス回路デザイン – アプリケーションノート 主に、ADCピンの前にソースインピーダンスをテストしてみてください。負荷条件を満たすために、電圧基準ピンと基準ピンの間にオペアンプベースのバッファ回路を追加できます。 さらに、AN4373に従って外部RCフィルターを再計算し、プリサンプリングを有効にすることも可能です。 ADCがアナログピンをサンプリングしている間、ピンはADCからコネクテッド・切断されます。スイッチングはピンに少量の電荷を注入できます。変換間隔を長くすることも効果的かもしれません。 最後のテストとして、このチャネルだけを変換し、同じトリガー条件下で個別にキャプチャされた32件の生変換とソフトウェアの平均を比較することもできます。 よろしくお願いします、 ジュリアン
View full article
LPI2C故障滤波器宽度差异 你好, 我使用的是 MCXN947,搭载的是最新发布的 SDK(版本 26.09)。 在 MCUxpresso 中配置 LPI2C 外设时,我注意到 lpi2c_master_config_t 和 lpi2c_slave_config_t 的数据类型宽度不同,用于存储它们的毛刺滤波器长度。 这意味着,我在从设备配置中使用的相同长度,在同一个外设的主设备配置中会被截断。 fsl_lpi2c.h typedef struct _lpi2c_master_config { ... uint8_t sdaGlitchFilterWidth_ns; /*!< Width in nanoseconds of glitch filter on SDA pin. Set to 0 to disable. */ uint8_t sclGlitchFilterWidth_ns; /*!< Width in nanoseconds of glitch filter on SCL pin. Set to 0 to disable. */ ... } lpi2c_master_config_t; ... typedef struct _lpi2c_slave_config { ... uint32_t sdaGlitchFilterWidth_ns; /*!< Width in nanoseconds of the digital filter on the SDA signal. Set to 0 to disable. */ uint32_t sclGlitchFilterWidth_ns; /*!< Width in nanoseconds of the digital filter on the SCL signal. Set to 0 to disable. */ ... } lpi2c_slave_config_t; 根据参考手册,MCFGR2.FILDSDA 和 MCFGR2.FILTSDL 这两个寄存器会读取这些值,它们似乎是固定的 4 位。 我的参考手册是 MCXNX4XRM Rev.6、2025-03-05,所以可能有点过时了。我一直找不到它的新版本。如果有新版本发布,请告诉我。 fsl_lpi2c.cc void LPI2C_MasterInit(...) { ... cycles = LPI2C_GetCyclesForWidth(sourceClock_Hz, masterConfig->sdaGlitchFilterWidth_ns, 0U, (LPI2C_MCFGR2_FILTSDA_MASK >> LPI2C_MCFGR2_FILTSDA_SHIFT), 0U); ... cycles = LPI2C_GetCyclesForWidth(sourceClock_Hz, masterConfig->sclGlitchFilterWidth_ns, 0U, (LPI2C_MCFGR2_FILTSCL_MASK >> LPI2C_MCFGR2_FILTSCL_SHIFT), 0U); ... } 我想知道,为什么主设备和从设备配置之间存在这种差异? 感谢您抽出时间。 杰西 通信与控制(I3C | I2C | SPI | FlexCAN | 以太网 | FlexIO) Re: LPI2C glitch filter width discrepancy 更正,从代码更新 SCFGR2.FILTSDA 和 SCFGR2.FILTSCL。 虽然在代码中,MCFGR2 和 SCFGR2 的掩码和偏移量看起来是相同的。 #define LPI2C_MCFGR2_FILTSCL_MASK (0xF0000U) #define LPI2C_MCFGR2_FILTSCL_SHIFT (16U) /*! FILTSCL - 故障滤波器 SCL */ #define LPI2C_MCFGR2_FILTSCL(x) (((uint32_t)(((uint32_t)(x)) << LPI2C_MCFGR2_FILTSCL_SHIFT)) & LPI2C_MCFGR2_FILTSCL_MASK) #define LPI2C_SCFGR2_FILTSCL_MASK (0xF0000U) #define LPI2C_SCFGR2_FILTSCL_SHIFT (16U) /*! FILTSCL - 故障滤波器 SCL */ #define LPI2C_SCFGR2_FILTSCL(x) (((uint32_t)(((uint32_t)(x)) << LPI2C_SCFGR2_FILTSCL_SHIFT)) & LPI2C_SCFGR2_FILTSCL_MASK) 回复: LPI2C glitch filter width discrepancy 嗨@jcallon 感谢您的举报。在审查了 LPI2C 寄存器定义和驱动程序实现之后,这似乎是 SDK 驱动程序的问题。 对于控制器和目标配置,FILTSDA 和 FILTSCL 字段均为 4 位宽,LPI2C_GetCyclesForWidth() 已经接受 uint32_t 纳秒值,并将生成的周期计数限制在支持的寄存器范围内。因此,在 lpi2c_master_config_t 中使用 uint8_t 作为毛刺滤波器宽度会不必要地将输入限制为 255 ns,而 lpi2c_slave_config_t 使用的是 uint32_t。 我会将此不一致之处报告给SDK团队,以便他们确认和更正。感谢您提醒我们注意此事。 BR 哈里
View full article
Can the MVR5510AMDAL be used for program debugging? Hi I'm doing hardware development using an MVR5510AMDALTS and an S32G399. I see that the MVR5510AMDALTS is a pre-programmed IC. Can I still reconfigure this PMIC to enter debug mode for program debugging? What I want to debug: I want to configure BUCK2 to output 1.2V and LDO2 to output 2.5V. Other power supplies and pre-programmed settings should remain unchanged. Is this possible? Re: MVR5510AMDAL 是否能进行程序调试 Hi Michael, The MVR5510AMDALTS is a factory-programmed DAL device (not a blank A0 variant). Its factory-programmed OTP configuration cannot be overwritten.   BRs, Tomas Re: MVR5510AMDAL 是否能进行程序调试 I set BUCK2 to 1.2V to power the core of the SJA1105SELY. I set LDO2 to 2.5V to power VDDA_SGMII of the SJA1105SELY. If I purchase the MVR5510AMDALTS, can this pre-programmed PMIC still be programmed in OTP debug mode? Re: MVR5510AMDAL 是否能进行程序调试 OTP preprogram already what kind of load will be drived from design side?LPDDR4?
View full article
LPI2C glitch filter width discrepancy Hello, I am using an MCXN947 on the latest released SDK (version 26.09). When I was configuring the LPI2C peripheral in MCUxpresso, I noticed lpi2c_master_config_t and lpi2c_slave_config_t had different data type widths to store their glitch filter length. This meant the same length I was using on my slave configuration was being truncated for my master configuration of the same peripheral. fsl_lpi2c.h typedef struct _lpi2c_master_config { ... uint8_t sdaGlitchFilterWidth_ns; /*!< Width in nanoseconds of glitch filter on SDA pin. Set to 0 to disable. */ uint8_t sclGlitchFilterWidth_ns; /*!< Width in nanoseconds of glitch filter on SCL pin. Set to 0 to disable. */ ... } lpi2c_master_config_t; ... typedef struct _lpi2c_slave_config { ... uint32_t sdaGlitchFilterWidth_ns; /*!< Width in nanoseconds of the digital filter on the SDA signal. Set to 0 to disable. */ uint32_t sclGlitchFilterWidth_ns; /*!< Width in nanoseconds of the digital filter on the SCL signal. Set to 0 to disable. */ ... } lpi2c_slave_config_t; MCFGR2.FILDSDA and MCFGR2.FILTSDL, the registers that pull from these values, appear to be fixed 4 bits in the reference manual. My reference manual is MCXNX4XRM Rev. 6, 2025-03-05, so it may be a bit outdated. I was having trouble finding any new releases of it. If there is a new release, I'd be very happy to be pointed to it. fsl_lpi2c.cc void LPI2C_MasterInit(...) { ... cycles = LPI2C_GetCyclesForWidth(sourceClock_Hz, masterConfig->sdaGlitchFilterWidth_ns, 0U, (LPI2C_MCFGR2_FILTSDA_MASK >> LPI2C_MCFGR2_FILTSDA_SHIFT), 0U); ... cycles = LPI2C_GetCyclesForWidth(sourceClock_Hz, masterConfig->sclGlitchFilterWidth_ns, 0U, (LPI2C_MCFGR2_FILTSCL_MASK >> LPI2C_MCFGR2_FILTSCL_SHIFT), 0U); ... } I was wondering, why is there this discrepancy between the master and slave configuration? Thank you for your time, JC Communication & Control(I3C | I2C | SPI | FlexCAN | Ethernet | FlexIO) Re: LPI2C glitch filter width discrepancy Correction, the slave code updates SCFGR2.FILTSDA and SCFGR2.FILTSCL. Although, in the code, the masks and offsets for MCFGR2 and SCFGR2 appear to be the same. #define LPI2C_MCFGR2_FILTSCL_MASK (0xF0000U) #define LPI2C_MCFGR2_FILTSCL_SHIFT (16U) /*! FILTSCL - Glitch Filter SCL */ #define LPI2C_MCFGR2_FILTSCL(x) (((uint32_t)(((uint32_t)(x)) << LPI2C_MCFGR2_FILTSCL_SHIFT)) & LPI2C_MCFGR2_FILTSCL_MASK) #define LPI2C_SCFGR2_FILTSCL_MASK (0xF0000U) #define LPI2C_SCFGR2_FILTSCL_SHIFT (16U) /*! FILTSCL - Glitch Filter SCL */ #define LPI2C_SCFGR2_FILTSCL(x) (((uint32_t)(((uint32_t)(x)) << LPI2C_SCFGR2_FILTSCL_SHIFT)) & LPI2C_SCFGR2_FILTSCL_MASK) 回复: LPI2C glitch filter width discrepancy Hi @jcallon  Thank you for reporting this. After reviewing the LPI2C register definitions and driver implementation, this appears to be an SDK driver issue. The FILTSDA and FILTSCL fields are 4 bits wide for both controller and target configurations, and LPI2C_GetCyclesForWidth() already accepts a uint32_t nanosecond value and limits the resulting cycle count to the supported register range. Therefore, using uint8_t for the glitch filter width in lpi2c_master_config_t unnecessarily limits the input to 255 ns, whereas lpi2c_slave_config_t uses uint32_t. I will report this inconsistency to the SDK team for confirmation and correction. Thank you for bringing it to our attention. BR Harry
View full article
[S32K344] 类型为“MCU_F_EXR_RESET”的随机RESET 我正在使用一块定制的PCBA开发应用,该PCBA搭载了S32K344微控制器。我偶尔会遇到该板随机复位的情况。该板复位后,`Power_Ip_GetResetReason()` 函数返回 ` MCU_F_EXR_RESET`(值为15),这看起来像是外部复位(即RESET引脚被拉低)。然而,发生这种情况时,RESET引脚上并没有连接任何设备,而且RESET引脚是通过一个10kΩ的电阻拉高的。 在阅读文档后,我在S32K344白板的用户手册中找到了以下部分: 是否有一份包含所有可能导致 RESET 线拉低的“MCU 内部故障”的完整列表? 另外,这是否意味着当MCU发生其他内部故障时,它自身可以将RESET引脚拉低?如果是这样,我还会收到“ MCU_F_EXR_RESET”RESET原因吗? Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" @jleveque ,我很好奇你是否找到了导致意外RESET的根本原因? Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" 我不了解您的 API,所以很难判断 MCU_F_EXR_RESET 的具体含义。 "MCU_F_EXR_RESET" 是 Power_Ip_Specific.h 文件(RTD 版本 3.0.0 的一部分)中 "Power_Ip_ResetType" 枚举类型的一个成员。这是 Power_Ip.c 文件中定义的 Power_Ip_GetResetReason() 函数返回的类型。 由于 RESET 引脚是双向的,内部 RESET 也会传播到该引脚。 但是 RGM [FES] 中不会设置 F_EXR 标志,而是会设置其他一些内部源标志。 这就是我要找的信息。只要能保证只有在外部将 RESET 引脚拉低(而不是内部复位)时才会设置 F_EXR 标志,那么我就可以缩小搜索范围,找出导致此问题的原因。再次感谢你,彼得! Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" 你好, 我不了解您的 API,所以很难判断 MCU_F_EXR_RESET 的具体含义。 但是,如果 RGM FES 寄存器中设置了外部 RESET 标志,则表示 RESET 是由微控制器外部触发的。 由于 RESET 引脚是双向的,内部 RESET 也会传播到该引脚。 但是 RGM [FES] 中不会设置 F_EXR 标志,而是会设置其他一些内部源标志。 顺祝商祺! Peter Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" 这也有可能是调试器造成的,因为它也在进行外部RESET。所以问题在于如何解读这个函数。 谢谢你的回复,彼得!正如我上面所说,这次复位是在 RESET 引脚上没有任何连接的情况下发生的(调试器没有物理连接),所以这是由其他原因触发的。 至于我如何读取这个函数,我在启动后第一件事就是调用这个函数,并存储返回值。 根据您的建议,我将添加对 RGM [FES/DES] 寄存器的额外直接读取,希望能获得更多见解,但最终我真正想知道的是哪些“MCU 内部故障”会导致此“MCU_F_EXR_RESET”复位原因。 Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" Hello, `Power_Ip_GetResetReason()` function returns `MCU_F_EXR_RESET` This can be cause also by debugger, which is also pulling external reset. So the question is how do you read this function. But nevertheless you can read reset reason from RGM [FES/DES] registers: Clear FES/DES first. After your reset, read the registers to see the reset root cause. Usually you in SW clear the FES/DES after power on reset and test if the FES/DES value is 0. If not you run diagnostics to see the reset reason. Best regards, Peter Re: [S32K344] Random Resets of Type "MCU_F_EXR_RESET" 很遗憾,不行。在问题解决之前,我就离开了当时所在的公司。最后,这项工作落到了设计电路板的电气工程师手中,他怀疑故障原因可能是电磁干扰 (EMI),于是对 PCB 设计进行了审查。 我注意到,在我后来参与的一个以 S32K358 MCU 为特色的项目中,我遇到了从待机模式意外唤醒的情况,而且我可以通过从办公椅上站起来来可靠地重现这个问题。在研究这一现象的过程中,我发现带有气压杆和金属椅腿的办公椅可以充当电磁脉冲天线,辐射出强大的电磁场!我发现早在 1993 年就有一份关于此主题的白皮书: https://www.emcesd.com/pdf/eos93.pdf。 我可以用一个什么都不接的示波器探头来测量这个值。从椅子上站起来时,示波器会短暂地出现约 25V 的触发信号尖峰。 因此,我最初的RESET问题可能也是由电磁干扰引起的,正如我们上次怀疑的那样。 我建议您调查一下电磁干扰是否是导致系统 RESET 的潜在原因。祝你好运!
View full article
Example S32K344EVB_T172 LPUART_EMAC_Gateway IP S32DS368 RTD701 **************************************************************************************************** * Detailed Description: * * UART ↔ Ethernet gateway implemented using RTD IP (LLD) drivers. * * Demonstrates bidirectional forwarding of UART data over Automotive Ethernet on S32K344. * UART messages are encapsulated into raw Ethernet frames and transmitted through the GMAC * peripheral; received Ethernet frames are decapsulated and forwarded to UART. * * Key Functionality: * - UART TX/RX interrupt driven communication. * - GMAC TX confirmation and RX indication interrupt processing. * - Four-deep message queue for UART/Ethernet decoupling. * - Runtime MAC address configuration. * - TJA1103 loopback, MASTER and SLAVE operation. * - Raw Ethernet frame transport (EtherType 0x88B5). * - RTD IP implementation. * * Runtime status information including node configuration, * MAC addresses and link status is displayed on the UART terminal. * * Test Configurations: * * Single board: * GATEWAY_MODE_NODE_1_LOOPBACK * * Two-board setup: * Board 1 : GATEWAY_MODE_NODE_1_MASTER * Board 2 : GATEWAY_MODE_NODE_2_SLAVE * * Boards are connected using a 100BASE-T1 cable. * * Notes: * - On the PC terminal, enable local echo * * ------------------------------------------------------------------------------------------------ * Test HW: S32K3x4EVB-T172 Rev B * MCU: S32K344_172HDQFP * PHY: TJA1103 * IDE: S32DS 3.6.8 * RTD release: S32K3_RTD_7_0_1_D2602_ASR_REL_4_9_REV_0000_20260206 * Debugger: Lauterbach, P&E Micro * Target: Internal_FLASH * Serial: 115200, 8N1 **************************************************************************************************** Terminal prints between two S32K344EVB-T172 boards In case of single board in PHY loopback
View full article
芯片 我谨代表位于哥斯达黎加的 CR Soluciones GLN S.A. 公司致函。我们是数字签名卡读卡器的代理商——具体来说是 Rocketek CR317、CR336A 和 CR336C 型号——我想知道这些读卡器是否与 NXP JCOP4 芯片兼容。 Re: CHIP 你好@Lilliam 希望你一切都好。 JCOP 4 是一个支持 ISO 7816-3 T=0、T=1 和 ISO 14443(最高 848kbps)的操作系统。 不过,与第三方读卡器的兼容性仍需向制造商确认。请您联系阅读器制造商以获取更多信息? 问候, 爱德华多。 Re: CHIP 您好, 我很抱歉。遗憾的是,我无法确认与特定第三方读卡器的兼容性,读卡器制造商必须确认其产品是否已使用运行 JCOP 4 的安全智能卡进行测试和验证。 给您带来的不便,敬请谅解。 问候, 爱德华多。
View full article
i.MX8M Mini 支持挂起到磁盘 您好,我们想知道 i.MX8M Mini 是否支持“挂起到磁盘”(即休眠到 eMMC 或其他存储介质)? 命令是“echo disk > /sys/power/state” i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: i.MX8M Mini support suspend to disk 遗憾的是,目前的 NXP 电路板支持包。 不支持此功能。 有关一般参考,请参阅eLinux.org 上的 Suspend To Disk For ARM 。 谢谢。
View full article
ST25R500 库与 NXP MWCT2016S 的集成 您好, 我目前正在开发一个无线充电器项目,该项目使用NXP MWCT2016S MCU和ST25R500 NFC 读卡器。 我想了解如何将ST25R500库包集成到 NXP 非 AUTOSAR 平台中。 能否请您指导我完成集成过程,并分享任何相关的文档、应用笔记或示例项目? 非常感谢您的支持。 谢谢你的帮助。 此致, rakY Re: ST25R500 Library Integration with NXP MWCT2016S 你好@rakYps21 以下链接介绍了如何将自定义库添加到 S32DS/Eclipse 中并进行集成。它们可能对您的预期用途有所帮助。 操作指南:在 S32DS GCC 项目中添加静态库文件 使用 ARM gcc 和 Eclipse 创建和使用库 | Eclipse 上的 MCU 如何在 GNU 链接器和 Eclipse 中使用自定义库名称 | MCU on Eclipse 关于 ST25R500 库的集成,这超出了我们的支持范围,因为它是一个第三方软件组件,并非由 NXP 开发或维护。因此,我们无法提供有关该库的功能、实现或调试方面的指导。 但是,我们可以协助您解决与 MWCT2016S 相关的各种问题,包括其配置、软件包、驱动程序和支持的功能。 BR,VaneB Re: ST25R500 Library Integration with NXP MWCT2016S 嗨 VaneB, 感谢您分享您的想法。 我已经完成了初始配置,并将ST文件集成到我们的NXP软件包中。 但是,我需要有关配置和实现 ST25R500 IRQ 信号的 GPIO 中断的指导。 我已经完成了PTA18 (EIRQ0) 的一些初始配置,如附件截图所示。 但是,我需要进一步的指导,了解所需的配置和应用程序级别的实现,以确保中断能够被正确触发信号和处理。 请您查看一下我当前的配置,并指导我完成启用和正确处理 GPIO 中断的必要步骤? 非常感谢您的支持。 BR, 拉基 Re: ST25R500 Library Integration with NXP MWCT2016S 你好@rakYps21 您的配置看起来没问题。 对于 SIUL2 外部中断,我建议查看使用 S32K3 RTD 而不使用 AUTOSAR 的 SIUL2 外部中断示例项目线程。它会更详细地介绍如何处理这种情况。该示例使用的是较旧的 RTD 版本,但总体思路和配置方法仍然相同。 此外,RTD 软件包还包含针对不同 S32K3 变体的Siul2_Icu_Ip_BlinkLed_S32K3xx示例。这些示例将 GPIO 配置为外部中断,因此它们可以作为非常有用的参考。 这两个资源应该能帮助你更好地理解外部中断的工作原理以及如何配置它。
View full article
Secure-boot life cycle reading from userspace How to read lifecycle register from user space in imx8dxp. Is there any driver that i can use.  i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: Secure-boot life cycle reading from userspace Hi @Ajaybajpai980  Currently, there is no such driver in the BSP. Best Regards, Zhiming
View full article
当前License即将到期,剩余6天,申请延长有效期 当前License即将到期,剩余6天,申请延长有效期
View full article