Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
S32K344でApp1からApp2にジャンプする方法 こんにちは、 FRDM A S32K344上でユーザーApp 1からユーザーApp 2へのカスタムジャンプをテストしています app1とapp2のリンカーファイルは以下に添付されています。 #define APP_START_ADDRESS 0x00500000 void Bootup_Application ( const uint32_t app_StarAddress) { uint32_t appEntry、appStack; static void (*jump_to_application)( void ); /* アプリケーションの初期スタックポインタ値を取得 */ appStack = *(( uint32_t *)(app_StarAddress)); /* アプリケーションのリセットハンドラー(エントリポイント)アドレスを取得する */ appEntry = *(( uint32_t *)(app_StarAddress + 4)); /* アプリケーションのエントリアドレスを関数ポインタに割り当てる */ jump_to_application = ( void (*)( void ))appEntry; /* 割り込みベクターテーブルをアプリケーションに再配置する */ S32_SCB-> VTOR = ( uint32_t )app_StarAddress; /* グローバル割り込みを無効にする (ASM_KEYWORD(" cpsid i");) */ __asm volatile ( " cpsid i" : : : "memory" ); /* メインスタックポインタ (MSP) を設定します */ __asm volatile ( "MSR msp , %0\n" : : "r" (appStack) : "memory" ); /* プロセススタックポインタ(PSP)を設定します */ __asm volatile ( "MSR psp , %0\n" : : "r" (appStack) : "memory" ); /* アプリケーションへジャンプ */ jump_to_application(); ( 1) { /* ここに到達した場合は、エラーが発生したことを示します */ Siul2_Dio_Ip_WritePin(LED_RED_PORT, LED_RED_PIN, 1U); } } Bootup_Application funcがapp2に確実にジャンプできるか確認してもらえますか?他に何か必要な手順があれば、お知らせください。 Re: How to Jump from App1 to App2 on the S32K344 こんにちは、 @ganavi1さん 原則としては、問題はないと思います。ただ、グローバル割り込みを無効にするだけでは不十分な場合がある。私はいつも、使用済みのペリフェラルはすべて初期化解除することをおすすめします。すべての割り込みは、周辺レジスタを通じてローカルでも無効化されているか確認してください。これにより、App2でグローバル割り込みが有効化された後に再び割り込みがトリガーされないようにしてください。 よろしくお願いいたします。 ルーカス
查看全文
S32K312におけるFlexCAN拡張RX FIFO + DMA動作に関する説明が必要 こんにちは 、 現在、S32K312上でDMAを備えたFlexCAN拡張RX FIFOの開発に取り組んでいます。 enhanced FIFOenhanced FIFO拡張FIFO   私たちはrtd v 7.0.1を使用しており、現在直面しているいくつかの所見や問題点についてご説明をいただきたいと考えています。 1. MEX構成の検証 DMAを有効にしたFlexCAN Enhanced RX FIFOの推奨MEX構成を確認していただけますか?私たちの構成が意図されたRTD利用モデルに沿っていることを確実にしたいと考えています。 2. RX FIFO + DMAデータ損失観測機能の強化 FlexCANの正誤表で示されているように、拡張RX FIFOが有効になっている場合、以下のメッセージバッファは使用されません。 MB0~MB7、MB10、MB12、MB20、MB22、MB30、MB32、MB40、MB50、およびMB60。 当社の体制は以下のとおりです。 拡張RX FIFOが有効になりました DMA が許可される 透かしは10件に設定されています DMAはFIFOデータをソフトウェアバッファに転送します 観察された行動: CANメッセージはEnhanced RX FIFOに正しく受信されます。 DMAは、ウォーターマークレベルに達するまでデータを正常に転送します。 DMA完了割り込みがトリガーされました。 この時点以降、次のFIFO位置(11回目以降)では受信CANメッセージが観測されません。 データ損失および異常なFIFO動作が確認された。 このシナリオで予想される挙動と、メッセージ喪失が確認される可能性のある理由について説明していただけますか? 3. FlexCAN_Ip_RxFifo DMA再構成 RTDドライバのデバッグ中に、FlexCAN_Ip_RxFifo APIがDMAパラメータを再構成しているように見えました。 具体的には: マイナーループカウントは16に設定されているようです。 転送サイズは4バイトのようです これにより、総転送サイズは64バイト(解釈によっては約68バイト)となり、リファレンスマニュアルで説明されている強化RX FIFOエントリサイズとは一致しないようです。 このAPIの意図された動作と、これらのDMA設定の背景について説明していただけますか? 4. RX FIFOメモリ監視機能の強化 デバッグ中のもう一つの観察点は、DMAがFIFOからソフトウェアバッファにデータを転送しているように見えるにもかかわらず、以下の通りです: FIFOメモリ領域には、古いメッセージIDがまだ残っています。 メモリブラウザーには、最初の拡張RX FIFO要素のみが表示されるようです。 FIFOロケーションが期待どおりに更新されていないようです。 参考のためにスクリーンショットを添付します。 これは予想される動作なのか、またEnhanced RX FIFOメモリをランタイムデバッグ時にどのように解釈すべきか説明していただけますか? 5. 構造サイズの不一致 また、RTDの構造とリファレンスマニュアルの間に不一致も観察されました。 FlexCAN_Ip_MsgBuffType のサイズ (RTD 内): 78 バイト リファレンスマニュアルに基づく強化RX FIFO要素サイズ:80バイト もう少し詳しく教えていただけますか: なぜこのようなサイズの違いが生じるのか? 梱包や位置合わせに関する考慮事項はありますか? DMA転送は78バイトと80バイトのどちらに設定すべきでしょうか? 意図されたユースケース 私たちの要件は以下を使用することです。 拡張RX FIFO DMAベースの受信 メッセージ受信のためのCPU割り込みはありません 意図された動作は以下のとおりです。 CANメッセージはEnhanced RX FIFOで届きます。 DMAはFIFOエントリを自動的にソフトウェアバッファに転送します。 通常の動作にはソフトウェアポーリングやRX割り込み処理は不要です。 拡張RX FIFOによって予約されているメッセージバッファ(MB0~MB7、MB10、MB12、MB20、MB22、MB30、MB32、MB40、MB50、およびMB60)は意図的に使用されず、残りのメッセージバッファが送信に使用されます。 要求 以下の情報を提供していただけますか: DMA動作を備えた拡張RX FIFOを実証する、利用可能なサンプルプロジェクト。 このユースケースに推奨されるRTD構成。 RTDが現在、DMAを用いたソフトウェア再武装なしで連続的な強化RX FIFO受信をサポートしているかどうかの説明。 強化されたRX FIFO + DMA受信を実装したベアメタルドライバーの例はありますか? 再開まで今しばらくお待ちください。 Re: Clarification Required on FlexCAN Enhanced RX FIFO + DMA Operation on S32K312 こんにちは、 1. MEX構成検証 A: あなたのメキシコは、あなたが説明した環境とは合っていないようです - ウォーターマークは1に設定されています - DMA転送設定は必須ではなく、ドライバはDMAを独自に設定します。ただし、独自のDMA設定や転送を行う場合は別です。 2. 強化RX FIFO + DMAデータ損失観測 A: DMA完了割り込みの後、受信したすべてのメッセージが読み出され、割り当てられたDMAチャネルは無効化されます。 SO、したがって、FlexCAN_Ip_RxFifoが再度呼び出されなくても、RXFIFOはエントリ0からメッセージを受け付けますが、DMAが再開されないためRXFIFOは読み出されません。 3. FlexCAN_Ip_RxFifo DMA再構成 A:マイナーループカウントとは何ですか?ドライバ自体はマイナーループサイズ(NBYTES)を80に設定し、最大64バイトのペイロードメッセージとRXFIFOからのIDHITおよびタイムスタンプ情報を読み取っています。 SO、実際のところあなたの計算が理解できません。コードを共有してみませんか? 4. RX FIFOメモリ監視機能の強化 A: 拡張 RX FIFO 要素領域の最初の部分のみが表示され、拡張 FIFO 出力ポートのアドレス範囲を表します。デバッグ中にRXFIFOメモリを表示することは推奨されません。FIFOエンジンの適切な動作のためには、DMA動作中にCPUが強化FIFO出力ポートアドレス範囲にアクセスしないようにすべきです。実際にはこのメモリ空間を表示することで読み込みが発生します。 5. 構造サイズの不一致 A: FlexCAN_Ip_MsgBuffType は RXFIFO の構造を完全に反映していません。転送終了時にドライバが内部バッファを読み出し、ユーザーバッファの各フィールドを適切なデータで埋めます。 上記の通り、DMAは1回のDMA要求ごとに80バイトの読み込みを設定すべきです。 ドライバは、DMAが終わってイベントが呼び出された後に再度DMAを再起動(コールFlexCAN_Ip_RxFifo)する必要があるように書かれていますFLEXCAN_EVENT_DMA_COMPLETE。 以下のデモを参照して、強化RXFIFOやDMAの使用例を挙げられますが、これはRTD400で行われます https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K344-FlexCAN-Ip-TX-RX-EnhanceRXFIFO-DMA-test-S32DS3-5/ta-p/2015832 BR、ペトル
查看全文
FEE INIT into hardware Hello, I want to use FEE to store data, according to S32K344 After configuring the example, during the init process, I entered the hardware. I tried unlocking the C40 beforehand, but it still didn't work. I used SW32K3_S32M27x_RTD_R21-11_4.0.0_D2311_DS_updatesite. S32DS 3.6.3   Re: FEE INIT进hardware Hi@ LJH1 I'll take some time next week to check it out for you. 回复: FEE INIT进hardware It's not an NXP development board, it's the 8MHz board used by our hardware engineers. Re: FEE INIT进hardware The previous project was based on RTD 4.0.0, and maintenance and development primarily used this version. We will only switch to the new RTD version if we stop maintaining the old project, as the company needs a unified version. Re: FEE INIT进hardware Hi@ LJH1 I see that a total of two issues were created, both based on RTD 4.0.0. I'd like to ask why we're still developing on this version. Our RTD version has already been updated to RTD 7.0.0, and many older versions... The bug has been fixed in the new version. If possible, I recommend that you install and use the latest RTD version. If for some reason I have to use RTD 4.0.0, then I will take some time to check the program you provided. Also, I'd like to clarify what hardware you are using? I see in the project you provided that the external clock is set to 8MHz, which shouldn't be our NXP development board. Re: FEE INIT进hardware Hi@ LJH1 The pre-compilation options for the “MemAcc” component are incorrect.
查看全文
RT1172 Bott Config Hi, There we are using RT1172 on our new PCB board, and boot mode =0x10(Internal boot), but the problem is, all boot config is NC(not connect) pin,  in this case,  where will the MCU boot up? or do you have any good idea can help us? thanks...   Boot ROM|Booting | Flash Re: RT1172 Bott Config Hi @dongjun , BT_FUSE_SEL eFuse might help with this.
查看全文
オーバーレイファイルがfrdm_mcxw72ボードで動作しません adc_dtコードサンプルをボードfrdm_mcxw72で実行しようとしましたが、デバイスツリーフォルダのオーバーレイファイルを追加し、Cmakelistファイルでボード名を変更しても、うまくビルドできませんでした。必ず エラーが表示されます:#error「適切なデバイスツリーオーバーレイ指定されていません」 と表示される。原因を見つける手助けをしてもらえますか?よろしくお願いします! Re: Overlay file can't worked in frdm_mcxw72 board こんにちは、RomanVRさん。 オーバーレイファイルをその位置に入れました。それでもうまくいきません。私の作業台については、以下のスナップショットで詳しくご覧いただけます。私はZephyr版のV4.4.0を使っていました。何か分かったことがあれば教えてください。 よろしくお願いいたします! Re: Overlay file can't worked in frdm_mcxw72 board こんにちは、 @anliu114036 さん。お元気でお過ごしでしょうか。 どのZephyrバージョンに取り組んでいるのか教えていただけますか?また、例を作るためにMCUXpresso for VS Code拡張機能を使っているのかも教えてください。 その間、プロセスを容易にするために、プロジェクト ファイル内にある「boards」フォルダ内にオーバーレイが作成されていることを確認してください。オーバーレイ ファイルの名前が「frdm_mcxw72.overlay」であることを確認してください。この2つのステップを踏むと、ZephyrはCMakeで明示的にパスを設定することなく、ビルドプロセスでオーバーレイを取得します。 もし私たちのMCUXpresso for VS Code拡張機能を使用している場合、プロジェクトの表示は以下の画像のように見えるはずです。 これが役に立つかどうか教えてください。 Re: Overlay file can't worked in frdm_mcxw72 board こんにちは、 @anliu114036 さん。 最初の投稿で「CMakelistファイル内のボード名を変更した」と述べられていましたが、「ボード名を変更する」ために具体的にどのような操作を行ったのか、詳しく教えていただけますか? また、サンプルを作成するためにどのような手順を踏んだのか教えていただけますか? Re: Overlay file can't worked in frdm_mcxw72 board こんにちは、RomanVRさん 以下のスナップショットは、元のcmakefileを示しています。 ボード名を「 eval_cn0391_ardz」から「 frdm_mcxw72」に変更しました。 以下は私の手順です 1. adc_dtプロジェクトをロードします 2. プロジェクトをビルドしましたが、失敗しました。 3. cmakefile内のボード名を変更して再度ビルドしたが、やはり失敗した。 Re: Overlay file can't worked in frdm_mcxw72 board こんにちは、 @anliu114036 さん。 そのパラメータは外部の第三者機関で使用されており、FRDMのビルドプロセスとは関係がないため、変更しないでください。さらに、ターミナルの出力ログ全体を共有していただけますでしょうか?これにより、オーバーレイがビルドプロセスによって正しく取得されているかどうかを確認できます。 その間、FRDM-MCXW72 用のプロジェクトを再インポートし、インポート後に以下の内容でオーバーレイファイルを作成し、ファイル名を「frdm_mcxw72.overlay」としてプロジェクトをビルドすることをお勧めします。 Re: Overlay file can't worked in frdm_mcxw72 board こんにちは、 @anliu114036 さん。 ビルドログを共有していただきありがとうございます。ビルドシステムがボードのオーバーレイを取得していません。新しくインポートした例では、オーバーレイはデフォルトでは作成されていないため、作成する必要があります。 オーバーレイを作成するには、Visual Studio Code のエクスプローラー タブでプロジェクト フォルダーを開き、/boards フォルダー内にファイルを作成して、前回の回答で添付し忘れた以下の設定を追加することをお勧めします。 #include #include / { zephyr,user { io-channels = <&adc0 0>; }; }; &adc0 { #address-cells = <1>; #size-cells = <0>; status="okay"; channel@0 { reg = <0>; zephyr,gain = "ADC_GAIN_1"; zephyr,reference = "ADC_REF_EXTERNAL1"; zephyr,acquisition-time = ; zephyr,resolution = <12>; zephyr,vref-mv = <1800>; /* channel 2 signal 6A */ zephyr,input-positive = ; }; }; &pinctrl{ pinmux_lpadc0: pinmux_lpadc0 { group0 { pinmux = ; }; }; }; オーバーレイを作成したら、それがボードフォルダに表示され、ビルドシステムによって取得されていることを確認してください。表示は次の画像のようになるはずです。 この手順があなたにとって有効かどうか教えてください。 Re: Overlay file can't worked in frdm_mcxw72 board こんにちは、RomanVRさん。 端末のログファイル全体は添付ファイル内にあります。 FRDM-MCXW72用にプロジェクトを再インポートしましたが、何もしなければプロジェクトフォルダにMCXW72のオーバーレイファイルが見つかりません。 しかし、FRDM-MCXW71のオーバーレイファイルがあります。 よろしくお願いいたします! Re: Overlay file can't worked in frdm_mcxw72 board こんにちは、RomanVRさん。 うまくいきました!ご協力ありがとうございました! オーバーレイファイルを追加した後、以前のビルドフォルダを削除する必要がある理由がわかりました。それから再建すれば、ビルディング全体のプロセスは今は問題ありません。
查看全文
imx95の最大消費電力に関するデータに矛盾がある iMX95が消費する最大電力を知りたいです。 EVK回路図の電源ツリーを確認したところ、VDD_SOCは14156mAを使用すると記載されていました(画像参照)。 これは高すぎると感じました。彼らの表によると、imx95 SoC自体が25ワットを消費します。 IMX95のデータシートと照合したところ、同じVDD_SOC最大4400mAを使っています(画像添付) VDD_SOC行だけでなく、他の多くの行にも不一致が見られます。どのデータが正しいのか知りたいです。 ありがとう Re: Conflicting data for imx95 max power consumption こんにちは、 これらの値はPIシミュレーションから得られたもので、PCBの性能を検証してimx95の要件を満たしているかどうかを確認するためのものです。HDGの仕様はEVK回路図に記載されている最大電流に基づいています。 実際の電流値はそこまで高くはなりませんが、シミュレーションを実行する際には最大電流値を使用し、NXP HDGの要件を満たしていることを確認することをお勧めします。 実際のユースケースでは、データシートの表33にある最大供給電流を使用することが推奨されます。 よろしくお願いいたします。
查看全文
nvmの使い方 こんにちは、 私は現在、s32k324ボードを使用しています。ボード上にキーを作成してログを保存したいのですが、nvm領域を使用したいです。RAM領域ではうまく機能しますが、NVM領域はどのように使用すればよいのでしょうか? Re: How to use nvm こんにちは、 @bohee2さん データ保存にはEmulated EEPROM(FEE)を使うことができます。S32K3 EEPROMエミュレーションのThreadで、同僚が関連する例やドキュメントの入手先をすでに教えてくれています。 BR、VaneB
查看全文
SL3S1013FTB0 RFID应答器原理图检查 这是我们正在使用的RFID应答器电路,请您检查一下原理图连接是否正确。 该电路既适用于自供电配置,也适用于外部(3.6V)供电配置。 自供电配置 - R37 = DNP 并将 0 欧姆连接到 R35。 外部(3.6V)电源配置 – R35 = DNP 并将 0 欧姆连接到 R37。 请告诉我我的配置是否正确。 Re: SL3S1013FTB0 RFID transponder schematic check 你好@pragashsangaran , 希望你一切都好。 对于 UCODE G2iM,OUT 引脚是一个数字输出,可用于防拆回路、小型外部电路或作为指示器;这些配置需要外部提供 VDD 引脚。 如果 R35 被填充,它将引入一个电连接,从而激活“防篡改指示器”位,如标签防篡改报警功能所述(请参阅UCODE G2i 的 AN10940 常见问题解答,第 16 章)。这是您申请该申请的预期用途吗? 外部供电时,需要进行以下配置: 问候, 爱德华多。 Re: SL3S1013FTB0 RFID transponder schematic check 你好,爱德华多。 如何配置此RFID芯片以实现自供电运行?自供电是指芯片无需向其提供直流电源,而是由转换成直流电的RFID信号为芯片供电。 Re: SL3S1013FTB0 RFID transponder schematic check 你好,爱德华多, 你是说这款芯片不能配置成利用RFID能量作为自供电RFID应答器运行吗?需要外接电源才能启动吗? Re: SL3S1013FTB0 RFID transponder schematic check 你好,爱德华多, 我的产品有两个包装盒。 1)外接电源(3.6V)RFID应答器。 2)自供电(RFID供电)RFID应答器。 我已将上述原理图发送给您。我认为该原理图适用于情况 1)。你说第二种情况行不通。您能否针对案例 2 提出修改建议? Re: SL3S1013FTB0 RFID transponder schematic check 您好, 询问器提供一个射频场,为标签供电。芯片的其他功能(例如提升读/写范围或数字输出)需要外部电源。 问候, 爱德华多。 Re: SL3S1013FTB0 RFID transponder schematic check 您好, 请注意,外部电源应按如下方式连接(在VDD和RFN之间): 如果 VDD 和 OUT 引脚之间存在电气连接,则会触发防拆报警。根据UCODE G2i 的 AN10940 常见问题解答第 16 节,防篡改功能和外部供电模式不能同时使用。 我建议您查看AN11237 UCODE G2iM+ 演示板文档,图 3 和图 5 中有一些参考连接。 问候, 爱德华多。 Re: SL3S1013FTB0 RFID transponder schematic check 你好,爱德华多, 即使我的原理图没有显示 RFN 连接到 GND,但实际上 RFN 是连接到 GND 的,所以我的原理图对于外部电源来说是合适的。我知道 VDD 和 OUT 引脚连接在一起是为了防拆报警,而不是为了自供电。 我现在唯一的问题是,如何连接自供电RFID应答器的原理图?自供电是指通过 RFID 能量供电。
查看全文
SL3S1013FTB0 RFID transponder schematic check This is the RFID transponder circuit we are using, and I would like you to check the schematic connections to see if they are correct. The circuit is catered for both self-powered and external (3.6V) powered configurations Self-power configuration -  R37 = DNP and connect 0 ohms to R35. External (3.6V) power configuration – R35 = DNP and connect 0 ohms to R37. Please let me know if my configurations are correct. Re: SL3S1013FTB0 RFID transponder schematic check Hello @pragashsangaran, Hope you are doing well. For UCODE G2iM, OUT pin is a digital output that can be used for tamper loop, a small external circuit or as indicator; these configurations require VDD pin to be externally suppled. If you populate R35, it will introduce a galvanic connection that will activate the "tamper indicator" bit, as per Tag Tamper Alarm feature (please see AN10940 FAQs on UCODE G2i, Chapter 16). Is this the intended purpose for your application? For external supply, the following configuration is required: Regards, Eduardo. Re: SL3S1013FTB0 RFID transponder schematic check Hi Eduardo. How can I configure this RFID chip for self-powered operation? Self-power means instead of supplying DC power to the chip, the RFID signal which converted to DC powers the chip.  Re: SL3S1013FTB0 RFID transponder schematic check Hi Eduardo, Are you saying that this chip cannot be configured to operate as a self-powered RFID transponder using RFID energy? need external power to power it up? Re: SL3S1013FTB0 RFID transponder schematic check Hi Eduardo, i have two cases for my product.  1) externally powered (3.6V) RFID transponder. 2) self-powered (RFID powered) RFID transponder.  i have sent the schematic above. i believe the schematic is good for case 1). You said case 2) won't work. can you propose changes for case 2).  Re: SL3S1013FTB0 RFID transponder schematic check Hi, The interrogator provides an RF field that powers the tag. External supply is required for additional features of the chip, such as boost read/write range or digital output. Regards, Eduardo. Re: SL3S1013FTB0 RFID transponder schematic check Hi, Please consider that an external power supply should be connected as follows (between VDD and RFN): If there is a galvanic connection between VDD and OUT pins, it will activate the tamper alarm. According to AN10940 FAQs on UCODE G2i, Section 16, tamper feature and external supply mode cannot be used at the same time. I will recommend you taking a look at the AN11237 UCODE G2iM+ demo board documentation, Fig 3 and Fig 5 for some reference connections. Regards, Eduardo. Re: SL3S1013FTB0 RFID transponder schematic check Hi Eduardo, Even when my schematic doesn't show RFN connected to GND, actually, RFN is connected to GND, so my schematic is good for an external power supply.  I understand the VDD and OUT pins are connected together for the tamper alarm and not for the self-powering condition. My only question now is, how to connect the schematic for a self-powering RFID transponder? Self-powering means the power is supplied via RFID energy. 
查看全文
在frdm_mcxw72板上,覆盖文件无法正常工作。 我尝试在 frdm_mcxw72 开发板上运行 adc_dt 代码示例,但即使我已经将 overlay 文件添加到设备树文件夹中并修改了 CMakelist 文件中的开发板名称,也无法成功编译。编译过程中总是提示错误:#error "No suitable devicetree overlay specified" 。您能帮我找出原因吗?先谢谢了! Re: Overlay file can't worked in frdm_mcxw72 board 你好 RomanVR, 我把叠加文件放到了正确的位置。但它仍然行不通。您可以在下面的截图中找到更多关于我的工作台的信息。我使用的Zephyr版本是V4.4.0。如有任何发现,请告知。 顺祝商祺! Re: Overlay file can't worked in frdm_mcxw72 board 你好@anliu114036 ,希望你一切都好。 请问您正在使用哪个版本的Zephyr?另外,请说明您是否使用 MCUXpresso for VS Code 扩展来构建示例。 同时,为了简化流程,请确保将叠加层创建在项目文件内的“boards”文件夹中;并确保将叠加层文件命名为“frdm_mcxw72.overlay”。按照这两个步骤操作,Zephyr 将在构建过程中获取您的 overlay,而无需在 CMake 中显式设置其路径。 如果您使用的是我们的 MCUXpresso for VS Code 扩展,您的项目视图应如下图所示: 请告诉我这是否有帮助。 Re: Overlay file can't worked in frdm_mcxw72 board 你好@anliu114036 , 你在第一篇帖子中提到你“修改了 CMakelist 文件中的板名”,请问你具体做了什么来“修改板名”? 另外,能否请您分享一下您为了构建这个示例而遵循的具体步骤? Re: Overlay file can't worked in frdm_mcxw72 board 你好@anliu114036 , 请勿更改该参数,因为它在外部供第三方使用,与 FRDM 版本过程无关。另外,能否请您分享一下完整的终端输出日志?这样我就可以查看你的叠加层是否在版本过程中被正确获取。 与此同时,我建议重新导入 FRDM-MCXW72 项目,导入后创建带有以下共享内容的 overlay 文件,将文件命名为“frdm_mcxw72.overlay”并版本项目。 Re: Overlay file can't worked in frdm_mcxw72 board 你好 RomanVR 下图显示了原始的 CMakefile 文件。 我将板名称从“ eval_cn0391_ardz”修改为“ frdm_mcxw72”。 以下是我的步骤 1. 加载 adc_dt 项目 2. 项目版本失败 3. 修改 CMakefile 中的板名称,然后重新版本,仍然失败。 Re: Overlay file can't worked in frdm_mcxw72 board 你好@anliu114036 , 感谢您分享版本日志,版本系统没有获取板的覆盖层,这是因为新导入的示例中默认情况下没有创建该覆盖层,您需要手动创建它。 为了创建叠加层,我建议在 Visual Studio Code 的资源管理器税务摊销收益中打开项目文件夹,然后在 /板 文件夹中创建文件,并添加以下设置(我忘记在之前的回复中附上这些设置): #include #include / { zephyr,user { io-channels = <&adc0 0>; }; }; &adc0 { #address-cells = <1>; #size-cells = <0>; status="okay"; channel@0 { reg = <0>; zephyr,gain = "ADC_GAIN_1"; zephyr,reference = "ADC_REF_EXTERNAL1"; zephyr,acquisition-time = ; zephyr,resolution = <12>; zephyr,vref-mv = <1800>; /* channel 2 signal 6A */ zephyr,input-positive = ; }; }; &pinctrl{ pinmux_lpadc0: pinmux_lpadc0 { group0 { pinmux = ; }; }; }; 创建好叠加层后,请确保它在你的板文件夹中可见,并且版本系统能够获取到它,其外观应如下图所示: 请告诉我这个方法是否对您有效。 Re: Overlay file can't worked in frdm_mcxw72 board 你好 RomanVR, 您可以在附件中找到完整的终端日志文件。 我重新导入了FRDM-MCXW72的项目,但如果不做任何操作,在项目文件夹中找不到MCXW72的覆盖文件。但是FRDM-MCXW71的覆盖文件却在那里。 顺祝商祺! Re: Overlay file can't worked in frdm_mcxw72 board 你好 RomanVR, 成功了,谢谢你的帮助! 我找到了原因,需要在添加覆盖文件后删除之前的版本文件夹。然后重建,整个建造过程现在没问题了。
查看全文
Overlay file can't worked in frdm_mcxw72 board I tried to run the adc_dt code sample in frdm_mcxw72 board, but it can't be build successfully even i already added the overlay file in the device tree folder and modified the board name in Cmakelist file. it always prompt  error: #error "No suitable devicetree overlay specified" during building . can you help me find the cause, thanks in advance! Re: Overlay file can't worked in frdm_mcxw72 board Hello RomanVR, i put the the overlay file in the position. but it still can't work. you can find more information about my workbench in below snapshot. i used the zephyr version is V4.4.0.  any finding please me know.  Best regards! Re: Overlay file can't worked in frdm_mcxw72 board Hello @anliu114036, hope you are doing well. Would you please share which Zephyr version are you working on? Also, please clarify if you are using MCUXpresso for VS Code extension to build the example. In the meantime, to ease the process, make sure that your overlay is created inside the "boards" folder that should be inside of your project files; make sure that your overlay file is named as "frdm_mcxw72.overlay", following these two steps will make Zephyr fetch your overlay in build process without the need of setting its path explicitly in CMake. If you are using our MCUXpresso for VS Code extension, your project view should look as the image below: Please let me know if this helps. Re: Overlay file can't worked in frdm_mcxw72 board Hi @anliu114036, You mentioned in your first post that you "modified the board name in Cmakelist file", would you please clarify what did you do in order to "modify the board name"? Also, would you please share which steps did you follow in order to try to build the example? Re: Overlay file can't worked in frdm_mcxw72 board Hi RomanVR Below snapshot shows the original cmakefile i modified the board name from "eval_cn0391_ardz" to "frdm_mcxw72". Below is my steps 1. Load the adc_dt project 2. build the project, it failed  3. change the board name in the cmakefile, then build again, it still failed Re: Overlay file can't worked in frdm_mcxw72 board Hello @anliu114036, Please do not change that parameter as it is used externally for a third-party and is not related to the FRDM build process. Additionally, would you please share your full terminal output log? This will allow me to see if your overlay is being fetched by the build process properly. In the meantime, I'd suggest to re-import the project for the FRDM-MCXW72, once imported create the overlay file with the contents shared below, name the file to "frdm_mcxw72.overlay" and build the project. Re: Overlay file can't worked in frdm_mcxw72 board Hello @anliu114036, Thank you for sharing your build logs, the build system is not fetching the overlay for the board, which in the newly imported example is not created by default, you need to create it. In order to create the overlay, I'd recommend opening your project folder in the Explorer tab of Visual Studio Code, and create the file inside the /boards folder and add the following settings which I forgot to attach in my previous response: #include #include / { zephyr,user { io-channels = <&adc0 0>; }; }; &adc0 { #address-cells = <1>; #size-cells = <0>; status="okay"; channel@0 { reg = <0>; zephyr,gain = "ADC_GAIN_1"; zephyr,reference = "ADC_REF_EXTERNAL1"; zephyr,acquisition-time = ; zephyr,resolution = <12>; zephyr,vref-mv = <1800>; /* channel 2 signal 6A */ zephyr,input-positive = ; }; }; &pinctrl{ pinmux_lpadc0: pinmux_lpadc0 { group0 { pinmux = ; }; }; }; Once created the overlay, please make sure it is visible in your boards folder and that is being fetched by the build system, which should look like the following image: Please let me know if this procedure works for you. Re: Overlay file can't worked in frdm_mcxw72 board Hi RomanVR, you can find the whole terminal log file in the attachment. i re-imported the  project for the FRDM-MCXW72, but can't find the overlay file for the MCXW72 in the project folder if do nothing.  but there is the FRDM-MCXW71 overlay file. Best regards! Re: Overlay file can't worked in frdm_mcxw72 board Hi RomanVR, It works,  thanks for your help! i found the reason that i need delete the previous build folder after the overlayfile added. then rebuild it,  the whole building process is ok now .
查看全文
Conflicting data for imx95 max power consumption I wanted to know the maximum power that is consumed by imx 95. when i checked the Power tree in the EVK Schematic, it says VDD_SOC will use 14156mA, image attached i felt this was too high, and as per their table imx95 soc itself uses 25 watts. so i crosschecked it with the imx95 datasheet and there the same VDD_SOC is using 4400mA max, image attached and not only this VDD_SOC line many other lines are also showing discrepancy, i would like to know which data is correct Thankyou Re: Conflicting data for imx95 max power consumption Hello, These values come from PI simulation is to verify the PCB performance to see if it meets the imx95 requirement, the spec in HDG is bases on the maximum current which list in EVK schematic. The real current will NOT be that high, but we still recommend you use the maximum current to do the simulation and ensure it meets the requirement in NXP HDG. The recommendation is use maximum supply currents from table 33 of datasheet in real use case scenario. Best regards.
查看全文
如何使用 nvm 你好, 我目前使用的是s32k324板。我想在板子上创建一个密钥并保存日志,但我想要使用 nvm 区域。它在内存区域运行良好,但是如何使用 NVM 区域呢? Re: How to use nvm 你好@bohee2 您可以使用模拟 EEPROM(FEE)进行数据存储。在S32K3 EEPROM 仿真主题中,我的同事已经分享了在哪里可以找到相关的示例和文档。 BR,VaneB
查看全文
SL3S1013FTB0 RFIDトランスポンダー回路図の確認 これが私たちが使っているRFIDトランスポンダー回路で、回路図の接続が正しいか確認してほしい。 この回路は、自己給電構成と外部給電(3.6V)構成の両方に対応しています。 自己給電構成 - R37 = DNP とし、R35 に 0 オームを接続します。 外部(3.6V)電源構成 – R35 = DNP、R37に0オームを接続します。 私の設定が正しいかどうか教えてください。 Re: SL3S1013FTB0 RFID transponder schematic check こんにちは、 @pragashsangaran さん。 あなたの調子が良いといいのですが。 UCODE G2iMの場合、OUTピンはタンパーループ、小型外部回路、またはインジケーターとして使用できるデジタル出力です。これらの構成にはVDDピンを外部から供給する必要があります。 R35に部品を実装すると、タグ改ざんアラーム機能に従って「改ざんインジケーター」ビットをアクティブにするガルバニック接続が導入されます( UCODE G2iに関するAN10940 FAQ 、第16章を参照)。これがあなたのアプリケーションの意図された目的ですか? 外部電源供給の場合、以下の構成が必要です。 よろしくお願いいたします。 エドゥアルド。 Re: SL3S1013FTB0 RFID transponder schematic check こんにちは、エドゥアルドさん。 このRFIDチップを自己駆動式にどう構成すればよいのでしょうか?セルフパワーとは、チップに直流電力を供給する代わりに、DCに変換されたRFID信号がチップに電力を供給することを意味します。 Re: SL3S1013FTB0 RFID transponder schematic check こんにちは、エドゥアルドさん。 つまり、このチップはRFIDエネルギーを使って自己駆動式のRFIDトランスポンダーとして動作させることができないということですか?電源を入れるのに外部電源が必要ですか? Re: SL3S1013FTB0 RFID transponder schematic check こんにちは、 インタロゲーターはタグに電力を供給するRFフィールドを提供します。チップの追加機能(読み書き範囲の拡張やデジタル出力など)を利用するには、外部電源が必要です。 よろしくお願いいたします。 エドゥアルド。 Re: SL3S1013FTB0 RFID transponder schematic check こんにちは、エドゥアルドさん。 私の製品にはCASEが2つあります。 1) 外部電源(3.6V)RFIDトランスポンダー。 2) 自己駆動(RFID駆動)RFIDトランスポンダー。 上記の回路図を送付しました。回路図はCASE 1には良いと思います)。CASE 2)はうまくいかないと言いましたね。ケース2の変更案を提案できますか? Re: SL3S1013FTB0 RFID transponder schematic check こんにちは、 外部電源は以下のように(VDDとRFN間)接続されるべきであることを考慮してください: VDDピンとOUTピンの間にガルバニック接続が存在する場合、不正開封警報が作動します。UCODE G2iのFAQ AN10940セクション16によると、改ざん機能と外部電源モードは同時に使用できません。 参照点として、 AN11237 UCODE G2iM+デモボードのドキュメント、図3と図5をご覧になることをお勧めします。 よろしくお願いいたします。 エドゥアルド。 Re: SL3S1013FTB0 RFID transponder schematic check こんにちは、エドゥアルドさん。 回路図にGNDに接続されたRFNが表示されていなくても、実際にはRFNはGNDに接続されているので、外部電源としては回路図が問題ありません。VDDとOUTのピンはタンパーアラーム用に繋がれていて、自己電源用ではないと理解しています。 今の唯一の疑問は、自己供電式のRFIDトランスポンダーの回路図をどう接続するかです。自己供電とは、電力がRFIDエネルギーによって供給されることを意味します。
查看全文
RT1172 底部配置 你好呀 我们在新的PCB板上使用了RT1172,启动模式为0x10(内部启动)。 但问题是,所有启动配置都使用了未连接(NC)引脚,在这种情况下,MCU 将从哪里启动?或者您有什么好办法可以帮帮我们吗?谢谢... 启动 ROM | 启动配置 | 闪存 Re: RT1172 Bott Config 嗨@dongjun , BT_FUSE_SEL eFuse 或许能解决这个问题。
查看全文
How to use nvm Hello, I'm currently using the s32k324 board. I want to create a key here on the board and save the log, but I want to use the nvm area. It works well for the ram area, but how do I use the nvm area? Re: How to use nvm Hi @bohee2  You can use Emulated EEPROM (FEE) for data storage. In the thread S32K3 EEPROM emulation, my coworker has already shared where you can find the relevant examples and documentation. BR, VaneB
查看全文
RT1172 ボット構成 やあ 新しい PCB ボードでは RT1172 を使用しており、ブート モードは 0x10 (内部ブート) です。 しかし問題は、すべての起動設定がNC(接続不可)ピンで、この場合MCUはどこで起動するのかということです。それとも、何か良いアイデアがあれば教えてください。ありがとう... ブートROM|ブート|フラッシュ Re: RT1172 Bott Config こんにちは@dongjunさん BT_FUSE_SEL eFuse がこの問題の解決に役立つかもしれません。
查看全文
imx95 最大功耗数据存在冲突 我想知道imx 95的最大功耗是多少。 当我查看 EVK 原理图中的电源树时,它显示 VDD_SOC 将使用 14156mA 电流,附图。 我觉得这个功耗太高了,而且根据他们的表格,IMX95 SoC 本身的功耗是 25 瓦。 所以我对照了imx95的数据手册,发现VDD_SOC的最大电流也是4400mA,图片已附上。 不仅是VDD_SOC这条线,其他很多线也存在差异,我想知道哪个数据才是正确的。 谢谢 Re: Conflicting data for imx95 max power consumption 你好, 这些数值来自 PI 仿真,用于验证 PCB 性能是否满足 imx95 要求,HDG 中的规格是基于 EVK 原理图中列出的最大电流。 实际电流不会那么高,但我们仍然建议您使用最大电流进行仿真,以确保其满足 NXP HDG 中的要求。 建议在实际使用场景中使用数据手册表 33 中的最大供电电流。 顺祝商祺!
查看全文
MCUXpresso Config Tools: How to Use the Pins Tool (Japanese Blog) table of contents Introduction In what situations can the Pins Tool be used? Installing Config Tools Pins Tool screen configuration Pins Tool Basics ~Where do signals flow from and to?~ Demonstration: Change pin settings and change the blinking color of the LED. Bonus - View the pin list in a document (Excel file)   Introduction This article explains the "Pins Tool," which is included in MCUXpresso Config Tools and is used for configuring pins. For instructions on using the "Clocks Tool," please refer to the following article. MCUXpresso Config Tools: How to Use the Clocks Tool (Japanese Blog) Recent microcontrollers (MCUs) integrate many peripheral functions, resulting in some MCUs having over 200 pins. MCU pin configurations are designed for flexibility, allowing multiple functions (signals) to be assigned to a single pin. Furthermore, multiple pin options are available for the same function. While highly flexible, this flexibility makes configuration quite complex. Therefore, deciding which function to assign to which pin (pin multiplexing configuration) is one of the important and challenging tasks in the early stages of design. This is where the "Pins Tool" in MCUXpresso Config Tools comes in handy. Pins Tool allows you to intuitively perform pin assignments and electrical settings via a GUI, and automatically generate the results as code, thus avoiding manual configuration errors and conflicts. We'll start by explaining how to use the Pins Tool within Config Tools in the VS Code environment. Then, we'll demonstrate how to change pin settings and alter the LED blinking color.   In what situations can the Pins Tool be used? When you want to check existing pin settings When you want to design to avoid pin conflicts (*If you accidentally make a conflicting setting, the error will be displayed in a visually clear way.) When you want to adjust electrical settings such as pull-up/pull-down and drive strength using a GUI. When you want to automatically generate pin configuration codes   Installing Config Tools This guide explains how to install Config Tools in the VS Code environment. *If you haven't installed MCUXpresso for VS Code yet, please refer to this blog post. Installing MCUXpresso for VSC and SDK (Japanese blog) After launching VS Code, select MCUXpresso from the left-hand panel, and then click Open MCUXpresso Installer from the Quick Start Panel. The installer will launch. Select MCUXpresso Configuration Tools and click Install in the upper right corner. (This blog post describes the installation of MCUXpresso Config Tools v26.03.) You will be prompted to log in to MyNXP as soon as the installation begins. After logging in, the License Agreement will be displayed. Please review its contents and agree to them. *Please restart VS Code after installation. Q. What if the installation fails? A. Please download the installer appropriate for your PC's OS environment from the following website and try it out. MCUXpresso Config Tools | Software Development for NXP Microcontrollers (MCUs) | NXP Semiconductors As you proceed with the installation, the following screen will appear on the initial screen. If you do not see anything relevant, you can close it. To access Config Tools from VS Code, install the SDK, import the sample, and then right-click on your project. "Open with MCUXpresso Config Tools" will appear; click on it. *This entire process will be explained in detail in the final demonstration, so we will omit it here. Config Tools will start after a short while. If you are using the MCUXpresso IDE, Config Tools are integrated by default and can be launched directly from the top tab.   Pins Tool screen configuration After launching Config Tools, you can switch between tools using the panel on the right side of the screen. This time, we'll select "Pins". This section describes the main views within the Pin Tool. Pins: Assign peripherals on a pin-by-pin basis. Peripheral Signals: Assign pins on a per-peripheral basis. Package: Visualizes the pin configuration of the chip. Routing Details: Configures the connections between each pin and peripheral, as well as input/output settings. Problems: Errors or warnings related to the settings are displayed. Next, we'll take a closer look at Routing Details, which are the most important aspect of the setup. # : Indicates the actual pin number (location) on the MCU package. Peripheral: Indicates the peripheral assigned to the pin. Signal: Indicates the peripheral's signal. For UART, TX/RX will be displayed; for SPI, SCK or MOSI will be displayed. Arrow: Indicates connection direction.:<-> <- :ペリフェラルへの入力 ->Bidirectional: Output from peripheral Routed pin/signal: Indicates the pin to which a peripheral signal is connected or an internal signal. Label: A label that can be set arbitrarily. Identifier: An identifier used during code generation. This identifier is automatically generated as a #define macro and referenced from the application code. Direction: Specifies the input/output direction when using the pin as a GPIO. For signals such as UART and SPI, the input/output direction is predetermined, so the Direction may only be a reference display. If there is an error due to incorrect pin settings, the Problems view will display the location and cause of the error. Other areas will also be highlighted in red, allowing you to visually identify the problem areas. In the diagram below, multiple peripherals are configured for pin B12, meaning a conflict is occurring.   Pins Tool Basics ~Where do signals flow from and to?~ Before actually using the tool, let's clarify what Pins Tool is used to configure. In PinsTool "Where do traffic signals come from, and where do they go?" We will configure the pin settings from this perspective. There are three main patterns to this "flow." ① Inputting external signals into the MCU (pin ⇀ peripheral) First, let's look at input. This involves inputting signals from external sensors, switches, or other ICs into peripherals within the MCU via pins. Clicking the "+" button in Routing Details will add a row, allowing you to enter data directly. The example in the diagram below shows that "the signal input from the reset button SW1 is taken into the MCU via the F3 pin (RESET_B)." ② Outputting signals from inside the MCU to the outside (Peripheral ⇀ Pin) Next is output. This is a case where a signal is sent to the outside from the peripherals inside the MCU via pins. The example in the diagram below shows how to "assign the signal (FLEXSPI_B_DATA0) from the internal peripheral (FlexSPI) to the K3 pin and output that signal externally." ③ Internally self-contained connections (peripheral ⇀ peripheral) Finally, there's the case where the output of one internal peripheral is connected to the input of another internal peripheral. In the example shown in the diagram below, the PWM trigger signal (PWM0_A0_TRIG0) is routed to the ADC0 trigger input (TRG) via internal routing. This indicates that it will be used as CH0. In this case, since it does not go through an external pin, the "#" indicating the leftmost pin assignment is n/a. In most actual designs, cases ① and ②, which involve input and output to external systems, make up the majority. Internal connections (③) are used for more advanced control and optimization.   Demonstration: Change pin settings and change the blinking color of the LED. From here, we will actually change the pin settings in Pins Tool and see if the blinking color of the LEDs on the evaluation board changes. Hardware Preparation The evaluation board used in this article is the FRDM-MCXN947 Installing the SDK With MCUXpresso selected in the left-hand panel within VS Code , click " Import Repository ". Next, click on " REMOTE ARCHIVE ," the second option from the left, and search for " FRDM-MCXN947 " in the Package section . It should appear immediately when you type " 947. " The Name , Location , and the "Create Git" checkbox can be set as you wish. *For Name and Location names, it is best to use only lowercase alphanumeric characters and underscores (_) or hyphens (-) , and avoid symbols such as ( \, /, :, *, ?, ", <, >, | ) and spaces (which may cause program malfunctions). Finally, check the " I agree " box and click " Import " to begin the SDK installation. Please wait a moment. The installation is complete when " Repository successfully imported" is displayed in the lower right corner of the screen. Importing sample code Once the SDK installation is complete, proceed to import the sample code. Click " Import Example From Repository " in the panel on the left. Within each tab displayed on the right, under " Repository ," select the SDK you just imported. Please select FRDM-MCXN947 for " Board ". In this " Template " demonstration, we will show how to change the blinking color of the LED . Try typing " led " and selecting " driver_examples/gpio/gpio_led_output_cm33_core0 " that appears. Next, select the Toolchain and click " Import" . Open ConfigTools Right-click on the imported sample and select " Open with MCUXpresso Config Tools ". The Config Tools will launch after a short wait. Once Config Tools opens, first check the Overview in the right-hand panel. In this example, both Clocks and Pins are green (ON ) , indicating that both tools are enabled. Select Pins to see the current pin settings. Looking at " Routing Details ," three pins (A1, B1, B12) are enabled. However, when we look at the Direction of the B12 pin set for the LED , it says " Not Specified ," which means that the LED is not set to output in Pins Tool . So, why does the LED blink even though it's not configured? Let's go back to VS Code and look at the C source file (gpio_led_output.c). Looking at the C source file, the pin functionality is reflected by BOARD_InitHardware() , but as we confirmed earlier, at this point, pin B12 is not set as a GPIO output in Pins Tool . Therefore, in the initial state of this sample, the GPIO input/output direction depends on the source code, not on Pins Tool. Specifically, the GPIO_PinInit() function initializes pin B12 as a "GPIO output," making it ready to control the LED . The goal here is to change the pin settings using Pins Tool and reflect those changes in the code. Therefore, we will remove the parts of the source code related to GPIO initialization and control ( shown in red below ) . Deleting it will remove the GPIO output settings from anywhere, so the LED will no longer blink when you build and debug. Next, configure the pins using Pins Tools . In Pins Tools , change the Direction of GPIO0_10 for pin # B12 to Output . This is the case of ② above, where an internal MCU signal is sent to the outside (peripheral ⇀ pin). This changes the configuration so that "pin B12 ( PIO0_10 ) is set as a GPIO output, and the signal controlled by the MCU 's internal GPIO (software control) is output to the outside ( LED_RED ) via the pin." You can see the code changes in the Code Preview panel on the right. Changing from "Not Specified" to "Output" adds GPIO initialization code to the bottom of pin_mux.c . Now, we will rewrite the sample code. First, click Update Code in the upper left corner of the Config Tools screen. A window will then appear. Here, you can see the code changes, just like in Code Preview. When you return to VS Code , you will see three checkboxes at the top of the screen. Make sure they are checked and click OK . After a short while, the changes made in Clocks Tool will be applied to the sample code in VS Code . *This may not be displayed if you are using a different SDK version. Once complete, connect the board (FRDM-MCXN947) to your PC before building. Once the connection is established, debug the imported sample ( build, write, and run the application ) . Once the debugging process is complete, the program will have stopped at the breakpoint, so click the "|▶" icon at the top of the screen. As shown in the video, the red LED will start flashing. (function() { var wrapper = document.getElementById('lia-vid-6397512171112w304h540r886'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (Show My Videos) To exit the program, click the square icon ( the LED will continue to blink as long as it's connected to the PC, but please ignore this for now ) . Why did the red LED blink? Here's some additional information about why the red LED was blinking. The blinking of the red LED in this case is determined by two main settings: app.h: Defines which LED (pin) to control. pin_mux.c: Defines how to use that pin. These two elements enable the LED to blink. Which LED is being controlled? (app.h) At the bottom of the C source file " gpio_led_output.c ", there is a function called GPIO_PortToggle : which inverts the output of a specified GPIO pin. In this function, BOARD_LED_GPIO (GPIO port) BOARD_LED_GPIO_PIN(pin number) This inverts the output of the specified GPIO pin, causing the LED to blink. However, at this point, it's not clear which color LED corresponds to this GPIO port and pin. Then, right-click on BOARD_LED_GPIO and select " Go to Definition " (or "fn + F12" ) to open " app.h ". If you check the Definitions section in app.h , you'll see that these definitions are assigned to the GPIO pin for the red LED . This confirms that the target of the operation is the red LED . However, even if the red LED is assigned in app.h , the LED will not light up unless the pin is configured as a GPIO output. How to use pins (pin_mux.c) Next, we'll look at the contents of pin_mux.c to check the pin settings. Inside " gpio_led_output.c ", you'll find Pin, Clock, Debug There is a BOARD_InitHardware(); function to initialize each console, so right-click here and select " Go to Definition " (or "fn + F12" ) to see more details. The next location is BOARD_InitPins();, where the pin settings are described. Right-click on BOARD_InitPins(); again and select " Go to Definition (or "fn + F12" )" to open " pin_mux.c ". pin_mux.c is a file that reflects the settings configured in Pins Tool , and it is the same as what you saw in Code Preview when you changed the red LED to an output earlier. At the very bottom, there is the following description, which means that pin B12 connected to the red LED is initialized as a GPIO output with an initial value of 0 . In this way, app.h determines "which LED to control (the red LED )," and pin_mux.c makes "that pin available as a GPIO output," so that the red LED can be controlled by GPIO_PortToggle() . Change the pin settings to change the LED's blinking color to blue. Next, we will change the LED 's blinking color from red to blue by changing the pin settings. Returning to the Config Tool , if you search for " LED " in Pins , you will find that pin C4 corresponds to the blue LED (LED_BLUE) . When you check the C4 pin, a window like the one shown below will appear. Check GPIO1:GPIO,2 (PIO1_2) and click Done . Once you've completed these steps, the C4 pin you added will appear in the Routing Details . The C4 pin is configured as a GPIO function ( PIO1_2 ), and the label "LED_BLUE " is assigned to this pin. This allows the software to treat this pin as a blue LED . Next, we will configure the pin input/output settings. Change the red LED in the Direction panel from Output ⇀ Not Specified, and the blue LED from Not Specified ⇀ Output . With this setting, the blue LED is configured as a GPIO output. You can see the changes in pin_mux.c in Code Preview . Now, rewrite the sample code. As before, run Update Code in Config Tools and confirm the changes in VS Code . The changed pin settings will be reflected. So far, pin_mux.c has been updated. Finally, update app.h. Open app.h using the steps described earlier, and change LED_RED to LED_BLUE . By changing this definition, you can switch the GPIO control target from a red LED to a blue LED . Once you've completed these steps, debug again ( build, flash, and run the application ) . Once the debugging process is complete, click the "|▶" icon at the top of the screen. As shown in the video, the blue LED will start flashing. (function() { var wrapper = document.getElementById('lia-vid-6397512593112w304h540r703'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (Show My Videos) Incidentally, the reason why one LED could blink in different colors is that the FRDM-MCXN947 board used in this project is equipped with an RGB LED. Looking at the circuit diagram of the FRDM-MCXN947 , you can see that R/G/B are assigned to each pin. Therefore, by setting the output of two colored pins simultaneously within Pins Tool and formatting the source code appropriately, it is possible to represent a variety of colors (e.g., red + blue = purple ).   Bonus - View the pin list in a document (Excel file) When you open the MCX N reference manual , you will find an attached file called MCXNP184M150F70_Pinout.xlsx . This file contains a list of pins and a list of peripheral functions for each pin. These days, with the evolution of Pins Tool, the need to manually configure pin settings while referring to such lists may be decreasing. On the other hand, it can still be used as a useful reference document in the early stages of system design, such as for device selection, package comparison, and checking available peripherals. To download the MCX N reference manual, you need to register for a MyNXP account . *Opened in Acrobat Reader This explanation used a simple example, but pin configurations in actual designs are much more complex. That's where Pins Tool comes in handy; it helps prevent errors and allows for efficient configuration. Please give it a try! =========================​ We are currently unable to respond to comments left in the " Comment " section of this post . We apologize for the inconvenience, but please refer to " Technical Questions to NXP - How to Contact Us ( Japanese Blog ) " when making inquiries . (If you are already an NXP distributor or have a relationship with NXP , you may ask your representative directly.) This guide focuses on the "Pins Tool" within MCUXpresso Config Tools, explaining the basics and methods of setting up pins. This guide will cover everything from installation in the VS Code environment to a demonstration of LED blinking by changing pin settings. (Estimated time: 10 minutes *Assumes MCUXpresso for VSC (Visual Studio Code) SDK is installed) MCUXpresso MCX Victoria | Downloads Japanese Blog
查看全文
MCUXpresso 配置工具:引脚工具的使用方法(日语博客) 目录 介绍 在哪些情况下可以使用图钉工具? 安装配置工具 引脚工具屏幕配置 引脚工具基础知识——信号从哪里流向哪里? 演示:更改引脚设置并更改 LED 的闪烁颜色。 额外福利 - 在文档(Excel 文件)中查看密码列表   介绍 本文介绍 MCUXpresso 配置工具中包含的“引脚工具” ,该工具用于配置引脚。有关“时钟工具”的使用说明,请参阅以下文章。 MCUXpresso 配置工具:如何使用时钟工具(日语博客) 近年来,微控制器(MCU)集成了许多外围功能,导致一些MCU拥有超过200个引脚。MCU的引脚配置设计灵活,允许将多个功能(信号)分配给单个引脚。此外,同一功能还可以有多个引脚选项。虽然这种高度灵活性也使得配置变得相当复杂。 因此,决定将哪个功能分配给哪个引脚(引脚复用配置)是设计早期阶段一项重要且具有挑战性的任务。这时,MCUXpresso 配置工具中的“引脚工具”就派上了用场。 Pins Tool 允许您通过 GUI 直观地执行引脚分配和电气设置,并自动将结果生成为代码,从而避免手动配置错误和冲突。 我们将首先解释如何在 VS Code 环境中的配置工具中使用引脚工具。然后,我们将演示如何更改引脚设置和更改 LED 闪烁颜色。   在哪些情况下可以使用图钉工具? 当您想要检查现有引脚设置时 当你想在设计中避免引脚冲突时 (*如果您不小心进行了冲突的设置,错误信息将以清晰易懂的方式显示。) 当您想使用 GUI 调整上拉/下拉和驱动强度等电气设置时。 当您需要自动生成引脚配置代码时   安装配置工具 本指南解释了如何在 VS Code 环境中安装 Config Tools。 *如果您尚未为 VS Code 安装 MCUXpresso,请参阅此博客文章。 安装适用于 VSC 和 SDK 的 MCUXpresso(日文博客) 启动 VS Code 后,从左侧面板中选择 MCUXpresso,然后从快速启动面板中单击“打开 MCUXpresso 安装程序”。 安装程序将启动。选择 MCUXpresso 配置工具,然后单击右上角的“安装”。 (这篇博文介绍了 MCUXpresso 配置工具 v26.03 的安装过程。) 安装开始后,系统会提示您登录 MyNXP。 登录后,将显示许可协议。请阅读并同意其内容。 *安装完成后请重启VS Code。 问:如果安装失败怎么办? A. 请从以下网站下载适合您电脑操作系统环境的安装程序并进行尝试。 MCUXpresso 配置工具 | NXP 微控制器 (MCU) 软件开发 | NXP 半导体 安装过程中,初始屏幕上会出现以下界面。如果您没有看到任何相关信息,可以将其关闭。 要从 VS Code 访问配置工具,请安装 SDK,导入示例,然后右键单击您的项目。“使用 MCUXpresso 配置工具打开”将出现;单击它。 *整个过程将在最终演示中详细解释,因此我们在此省略。 配置工具将在短时间内启动。 如果您使用的是 MCUXpresso IDE,则配置工具默认已集成,可以直接从顶部选项卡启动。   引脚工具屏幕配置 启动配置工具后,您可以使用屏幕右侧的面板在工具之间切换。 这次,我们将选择“别针”。 本节介绍图钉工具中的主要视图。 引脚:逐个引脚分配外设。 外设信号:按外设分配引脚。 封装:显示芯片的引脚配置。 路由详情:配置每个引脚与外设之间的连接,以及输入/输出设置。 问题:显示与设置相关的错误或警告。 接下来,我们将仔细研究路由细节,这是设置中最重要的方面。 #:表示MCU封装上的实际引脚编号(位置)。 外设:指示分配给该引脚的外设。 信号:指示外设信号。对于 UART,将显示 TX/RX;对于 SPI,将显示 SCK 或 MOSI。 箭头:指示连接方向。<->:双向连接 <- :ペリフェラルへの入力 ->:输出到外围设备 布线引脚/信号:指示连接外围信号或内部信号的引脚。 标签:可以任意设置的标签。 标识符:代码生成过程中使用的标识符。此标识符会自动生成为 #define 宏,并在应用程序代码中引用。 方向:指定引脚用作 GPIO 时的输入/输出方向。对于 UART 和 SPI 等信号,输入/输出方向是预先确定的,因此“方向”仅供参考。 如果由于引脚设置错误而导致故障,问题视图将显示错误的位置和原因。其他区域也会以红色突出显示,方便您直观地识别问题区域。 在下图所示的电路中,多个外设配置在引脚 B12 上,这意味着发生了冲突。   引脚工具基础知识——信号从哪里流向哪里? 在实际使用该工具之前,让我们先明确一下 Pins Tool 是用来配置什么的。 在 PinsTool 中 “交通信号灯从哪里来,又到哪里去?” 我们将从这个角度配置引脚设置。 这种“流程”主要有三种模式。 ① 将外部信号输入到MCU(引脚⇀外设) 首先,我们来看一下输入。这涉及到通过引脚将来自外部传感器、开关或其他集成电路的信号输入到微控制器内部的外围设备中。 在“路线详情”中点击“+”按钮将添加一行,允许您直接输入数据。 下图中的示例显示,“复位按钮 SW1 的信号输入通过 F3 引脚 (RESET_B) 进入 MCU”。 ② 将MCU内部信号输出到外部(外设⇀引脚) 接下来是输出。在这种情况下,信号会通过引脚从MCU内部的外设发送到外部。 下图中的示例展示了如何“将来自内部外设 (FlexSPI) 的信号 (FLEXSPI_B_DATA0) 分配给 K3 引脚,并将该信号向外输出”。 ③ 内部自包含连接(外围设备⇀外围设备) 最后,还有一种情况,即一个内部外设的输出连接到另一个内部外设的输入。 在下图所示的示例中,PWM 触发信号 (PWM0_A0_TRIG0) 通过内部路由连接到 ADC0 触发输入 (TRG)。 这表明它将被用作 CH0。 在这种情况下,由于它不通过外部引脚,因此表示最左侧引脚分配的“#”为 n/a。 在大多数实际设计中,涉及与外部系统进行输入和输出的情况①和②占绝大多数。内部连接(③)则用于更高级的控制和优化。   演示:更改引脚设置并更改 LED 的闪烁颜色。 接下来,我们将实际更改引脚工具中的引脚设置,看看评估板上的 LED 闪烁颜色是否会发生变化。 硬件准备 本文使用的评估板是 FRDM-MCXN947 安装 SDK 在VS Code 的左侧面板中选择MCUXpresso ,然后单击“导入存储库”。 接下来,点击左侧第二个选项“远程存档”,然后在“软件包”部分搜索“ FRDM-MCXN947 ”。输入“ 947 ”后,它应该会立即出现。 您可以根据需要设置名称、位置和“创建 Git”复选框。 *对于名称和位置名称,最好只使用小写字母数字字符和下划线(_)或连字符(-) ,并避免使用符号( \、/、:、*、?、"、、| )和空格(这可能会导致程序故障)。 最后,勾选“我同意”复选框,然后点击“导入”开始安装SDK 。请稍候片刻。当屏幕右下角显示“存储库导入成功”时,安装即完成。 导入示例代码 SDK安装完成后,即可导入示例代码。 点击左侧面板中的“从存储库导入示例”。 在右侧显示的每个选项卡中,“存储库”下,选择您刚刚导入的SDK 。 请为“主板”选择FRDM-MCXN947 。 在本“模板”演示中,我们将展示如何更改LED的闪烁颜色。 尝试输入“ led ”,然后选择出现的“ driver_examples/gpio/gpio_led_output_cm33_core0 ”。 接下来,选择工具链并点击“导入” 。 打开配置工具 右键单击导入的示例,然后选择“使用 MCUXpresso 配置工具打开”。稍等片刻,配置工具将启动。 配置工具打开后,首先查看右侧面板中的概览。在本例中, “时钟”和“引脚”均显示为绿色(开启) ,表示这两个工具均已启用。 选择引脚以查看当前引脚设置。 查看“布线详情”,可以看到三个引脚(A1、B1、B12)已启用。 但是,当我们查看LED的B12 引脚组的方向时,它显示“未指定”,这意味着LED未在引脚工具中设置为输出。 那么,为什么即使没有进行配置, LED也会闪烁呢?让我们回到 VS Code,查看C源文件 (gpio_led_output.c)。 查看C源文件,引脚功能由BOARD_InitHardware()反映出来,但正如我们之前确认的那样,此时引脚 B12 并未在Pins Tool中设置为 GPIO 输出。 因此,在该示例的初始状态下, GPIO输入/输出方向取决于源代码,而不是引脚工具。 具体来说, GPIO_PinInit() 函数将引脚 B12 初始化为“GPIO 输出”,使其可以控制 LED 。 此处的目的是使用引脚工具更改引脚设置,并将这些更改反映到代码中。因此,我们将删除与GPIO初始化和控制相关的源代码部分(如下红色部分所示) 。 删除它将从任何地方移除 GPIO 输出设置,因此在构建和调试时LED将不再闪烁。 接下来,使用引脚工具配置引脚。在引脚工具中,将引脚 # B12 的GPIO0_10方向更改为输出。 这是上面 ② 的情况,其中内部MCU信号被发送到外部(外设 ⇀ 引脚)。 这样就改变了配置,使得“引脚B12 ( PIO0_10 ) 被设置为GPIO输出,并且由MCU的内部 GPIO 控制(软件控制)控制的信号通过该引脚输出到外部 ( LED_RED )。 您可以在右侧的代码预览面板中看到代码更改。 将“未指定”更改为“输出”会在pin_mux.c的底部添加GPIO初始化代码。 现在,我们将重写示例代码。首先,点击“配置工具”屏幕左上角的“更新代码” 。 此时会弹出一个窗口。在这里,您可以像在代码预览中一样看到代码更改。 返回VS Code后,您会在屏幕顶部看到三个复选框。请确保选中它们,然后单击“确定” 。稍等片刻,时钟工具中所做的更改将应用到VS Code中的示例代码。 *如果您使用的是其他 SDK 版本,则可能不会显示此内容。 完成后,在组装之前将电路板(FRDM-MCXN947)连接到您的电脑。 连接建立后,调试导入的示例(构建、编写和运行应用程序) 。 调试过程完成后,程序将在断点处停止,因此请点击屏幕顶部的“|▶”图标。 如图所示,红色LED灯将开始闪烁。 (function() { var wrapper = document.getElementById('lia-vid-6397512171112w304h540r886'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (显示我的视频) 要退出程序,请点击方形图标(只要连接到电脑, LED 指示灯就会继续闪烁,但请暂时忽略这一点) 。 为什么红色LED灯会闪烁? 以下是关于红色LED 指示灯闪烁原因的一些补充信息。 在这种情况下,红色LED的闪烁由两个主要设置决定: app.h:定义要控制的LED(引脚) 。 pin_mux.c:定义如何使用该引脚。 这两个元件使LED能够闪烁。 哪个LED正在被控制?(app.h) 在C源文件“ gpio_led_output.c ”的底部,有一个名为GPIO_PortToggle的函数:它可以反转指定GPIO引脚的输出。 在这个函数中, BOARD_LED_GPIO(GPIO 端口) BOARD_LED_GPIO_PIN(引脚编号) 这将反转指定 GPIO 引脚的输出,使 LED 闪烁。 但是,目前还不清楚哪个颜色的LED对应于这个GPIO端口和引脚。 然后,右键单击BOARD_LED_GPIO ,选择“转到定义”(或“fn + F12” )打开“ app.h ”。 如果您查看app.h中的Definitions部分,您会发现这些定义被分配给了红色LED的GPIO 引脚。这证实了操作的目标是红色LED 。然而,即使在app.h中已为红色LED指定了引脚,除非将该引脚配置为GPIO输出,否则LED 也不会亮起。 如何使用引脚(pin_mux.c) 接下来,我们将查看pin_mux.c的内容以检查引脚设置。在gpio_led_output.c文件中,您会找到 Pin、Clock 和 Debug 参数。每个控制台都有一个 BOARD_InitHardware()函数用于初始化,因此请在此处右键单击并选择“转到定义”(或“fn + F12” )以查看更多详细信息。 下一个位置是BOARD_InitPins();,其中描述了引脚设置。再次右键单击BOARD_InitPins();并选择“转到定义(或“fn + F12” )”以打开“ pin_mux.c ”。 pin_mux.c文件反映了Pins Tool中的配置,与您之前在代码预览中将红色LED设置为输出时看到的内容相同。文件底部有如下描述,表示连接到红色LED 的引脚B12被初始化为GPIO输出,初始值为0 。 这样, app.h确定“要控制哪个LED (红色LED )”,而pin_mux.c使“该引脚可用作GPIO输出”,以便可以通过GPIO_PortToggle()控制红色LED 。 更改引脚设置,将 LED 的闪烁颜色更改为蓝色。 接下来,我们将通过改变引脚设置,把LED的闪烁颜色从红色改为蓝色。 返回配置工具,如果您在引脚中搜索“ LED ”,您会发现引脚C4对应于蓝色LED (LED_BLUE) 。 检查C4引脚时,会出现如下所示的窗口。选中GPIO1:GPIO,2 (PIO1_2)并单击“完成” 。 完成这些步骤后,您添加的C4引脚将出现在“布线详情”中。 C4引脚配置为GPIO功能( PIO1_2 ),并被赋予标签“LED_BLUE ” 。这使得软件能够将此引脚视为蓝色LED 。 接下来,我们将配置引脚的输入/输出设置。在“方向”面板中,将红色LED 的设置从“输出”更改为“未指定”,将蓝色 LED 的设置从“未指定”更改为“输出”。这样,蓝色 LED 就被配置为 GPIO 输出。 您可以在代码预览中看到pin_mux.c的变化。 现在,重写示例代码。和之前一样,在配置工具中运行“更新代码” ,并在VS Code中确认更改。更改后的引脚设置将会生效。 目前, pin_mux.c已更新。 最后,更新app.h。 按照前面描述的步骤打开app.h ,并将LED_RED更改为LED_BLUE 。 通过更改此定义,您可以将GPIO控制目标从红色LED切换到蓝色LED 。 完成这些步骤后,再次进行调试(构建、刷写并运行应用程序) 。 调试过程完成后,点击屏幕顶部的“|▶”图标。 如图所示,蓝色LED灯将开始闪烁。 (function() { var wrapper = document.getElementById('lia-vid-6397512593112w304h540r703'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (显示我的视频) 顺便一提,之所以一个LED可以闪烁不同的颜色,是因为本项目中使用的FRDM-MCXN947开发板配备了RGB LED。查看FRDM-MCXN947的电路图,可以看到每个引脚都分别对应了R/G/B三种颜色。 因此,通过在引脚工具中同时设置两个彩色引脚的输出并适当格式化源代码,可以表示各种颜色(例如,红色+蓝色=紫色)。   额外福利 - 在文档(Excel 文件)中查看密码列表 打开MCX N 参考手册后,你会发现一个名为MCXNP184M150F70_Pinout.xlsx的附件。该文件包含引脚列表以及每个引脚对应的外设功能列表。 如今,随着引脚工具的不断发展,参考此类列表手动配置引脚设置的需求可能会减少。 另一方面,它仍然可以作为系统设计早期阶段的有用参考文档,例如用于器件选择、封装比较和检查可用外围设备。 要下载 MCX N 参考手册,您需要注册一个 MyNXP 帐户。 *使用 Acrobat Reader 打开 这个解释使用了一个简单的例子,但实际设计中的引脚配置要复杂得多。这时Pins Tool就派上用场了;它可以帮助避免错误,并实现高效的配置。请试用一下! =========================​ 我们目前无法 回复 此帖子“ 评论”部分留下的评论。 对于由此造成的不便,我们深表歉意,但 在进行咨询时, 请 参考“ NXP 技术问题 - 如何联系我们 ( 日语博客 ) ” 。 (如果您已经是 恩智浦的 分销商或 与 恩智浦 有合作关系 ,您可以直接咨询您的代表。) 本指南重点介绍 MCUXpresso 配置工具中的“引脚工具”,解释设置引脚的基本原理和方法。 本指南将涵盖从在 VS Code 环境中安装到通过更改引脚设置来演示 LED 闪烁的所有内容。 (预计耗时:10 分钟 *假设已安装 MCUXpresso for VSC(Visual Studio Code)SDK) MCUXpresso MCX SW | 下载 日本博客
查看全文