Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
オーバーレイファイルが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 | 下载 日本博客
記事全体を表示
MCUXpresso Config Tools : Pins Toolの使い方 (日本語ブログ) 目次 はじめに Pins Toolはどのような場面で活用するのか Config Toolsのインストール Pins Toolの画面構成 Pins Toolの基本 ~信号はどこからどこへ流れるのか?~ デモンストレーション:ピン設定を変更し、LEDの点滅色を変更する おまけ - ピン一覧をドキュメント(Excelファイル)で確認する   はじめに  本記事では、MCUXpresso Config Toolsに含まれ、ピンの設定をおこなう「Pins Tool」について解説します。「Clocks Tool」の使い方については、以下の記事をご参考ください。 MCUXpresso Config Tools : Clocks Toolの使い方 (日本語ブログ) 最近のMCUには多くのペリフェラル機能が集約・統合されており、それに伴いピンの数も200ピンを超えるようなMCUも出ています。MCUのピン設定は柔軟に使えるように設計されており、1つのピンで複数の機能(信号)を切り替えて使うことができます。また、同じ機能でも複数のピン候補から選べるようになっています。柔軟性が高い分、設定は非常に複雑です。 そのため、どの機能をどのピンに割り当てるか(ピン・マルチプレックス設定)は、設計初期の重要かつ大変な作業の一つです。そこで活躍するのが、MCUXpresso Config Toolsの「Pins Tool」です。 Pins Toolを使うことで、ピン割り当てや電気的設定をGUI上で直感的に行い、その結果をコードとして自動生成することができ、手作業による設定ミスや競合(コンフリクト)を避けることができます。 VS Code環境からConfig Tools内のPins Toolを開き、はじめにツールの使い方を解説します。その後、ピン設定を変更し、LED点滅色を変更するデモンストレーションを紹介いたします。   Pins Toolはどのような場面で活用するのか? 既存のピン設定を確認したいとき ピンの競合(コンフリクト)を避けて設計したいとき (*誤って競合した設定をすると視覚的に分かりやすくエラー箇所が表示されます) プルアップ/プルダウンやドライブ強度などの電気的設定をGUIで調整したいとき ピン設定コードを自動生成したいとき   Config Toolsのインストール VS Code環境におけるConfig Toolsのインストール方法について解説します。 ※MCUXpresso for VS Codeのインストールがお済みでない方はこちらのブログをご参照ください。 MCUXpresso for VSCとSDKのインストール (日本語ブログ) VS Codeを起動後、左側のパネルからMCUXpressoを選択し、Quick Start PanelよりOpen MCUXpresso Installerをクリックしてください。 Installerが立ち上がりますので、MCUXpresso Configuration Toolsを選択し、右上のInstallをクリックしてください。 (今回のブログではMCUXpresso Config Tools v26.03 をInstallしています) インストールの開始と同時にMyNXPへのログインを求められます。 ログインの後、License Agreementが表示されますので内容をご確認のうえ同意してください。 ※インストール後は、VS Codeを再起動してください。 Q. もしインストールに失敗した場合は? A. 以下ウェブサイトからのご自身のPC OS環境に応じたインストーラーをダウンロードして、お試しください。 MCUXpresso Config Tools | NXPマイクロコントローラ (MCU) 向けソフトウェア開発 | NXP Semiconductors) インストールを進めると初期画面で以下のような画面が表示されますが、該当がなければ閉じて問題ありません。 VS CodeからConfig Toolsを呼び出すにはSDKをインストールし、サンプルをインポート後、プロジェクトを右クリックすると Open with MCUXpresso Config Toolsが現れますので、こちらをクリックしてください。 ※この一連のプロセスは最後のデモンストレーションで詳細に説明するので、ここでは割愛します。  しばらくするとConfig Toolsが起動します。 なおMCUXpresso IDEを使用している場合、Config Toolsは標準で統合されており、上部タブから直接起動できます。   Pins Toolの画面構成 Config Tools起動後、画面右側のパネルでツールの切り替えが可能です。 今回は「Pins」を選択します。 Pin Tool内の主要なビューについて説明します。 Pins : ピン単位でペリフェラルの割り当てを行う Peripheral Signals:ペリフェラル単位でピンの割り当てを行う Package:チップのピン配置を可視化 Routing Details:各ピンとペリフェラルの接続関係や入力/出力設定を行う Problems:設定内容に関するエラーや警告が表示される 続いて、設定において最も重要となるRouting Detailsについて深堀りして見ていきます。 # : MCUパッケージ上の実際のピン番号(位置)を示す。 Peripheral : ピンに割り当てられているペリフェラルを示す。 Signal : ペリフェラルの信号を示す。UARTであればTX/RX、SPIであればSCKやMOSIが表示される。 Arrow: 接続方向を示す。 <->:双方向 <- :ペリフェラルへの入力 -> :ペリフェラルからの出力 Routed pin/signal:ペリフェラルの信号が接続されるピンもしくは内部信号を示す。 Label : 任意に設定可能なラベル。 Identifier:コード生成時に使用される識別名。この識別名が #define マクロとして自動生成され、アプリケーションコードから参照される。 Direction:ピンをGPIOとして使用する場合の入出力方向(Input or Output)を指定。UARTやSPIなどの信号は、あらかじめ入出力方向が決まっているため、Directionは参考表示となる場合がある。 ピン設定に誤りがあり、エラーが発生するとProblemsビューにはエラーの発生箇所と原因が表示されます。またその他の箇所にも赤色でハイライト表示されるため、問題箇所を視覚的に特定できます。 下記図では、B12ピンに対して複数のペリフェラルが設定された状態、つまり競合(コンフリクト)が起きています。   Pins Toolの基本 ~信号はどこからどこへ流れるのか?~ 実際にツールを操作する前に、Pins Toolが何を設定しているツールなのかを整理しておきましょう。 Pins Toolでは 「信号がどこから来て、どこへ流れるか」 という観点でピン設定を行います。 この“流れ”には、大きく3つのパターンがあります。 ① 外部の信号をMCUに取り込む(ピン⇀ペリフェラル) まずは入力です。外部のセンサやスイッチ、他のICからの信号をピン経由でMCU内のペリフェラルに取り込むケースです。  Routing Details上の”+”をクリックすると行を追加し、直接入力できます。  下記図の例では、「リセットボタンSW1からの入力された信号をF3ピン(RESET_B)経由でMCUに取り込むこと」を示しています。 ② MCU内部の信号を外部に出す(ペリフェラル⇀ピン) 続いて出力です。MCU内部のペリフェラルからピンを介して外部に信号を出すケースです。 下記図の例では、「内部ペリフェラル(FlexSPI)の信号(FLEXSPI_B_DATA0)をK3ピンに割り当て、その信号を外部へ出力すること」を示しています。 ③ 内部で完結する接続 (ペリフェラル⇀ペリフェラル) 最後に内部ペリフェラルの出力を別の内部ペリフェラルの入力に接続するケースです。 下記図の例では、「PWMのトリガ信号(PWM0_A0_TRIG0)を、内部ルーディングによりADC0のトリガ入力(TRG CH0)として使う」ことを示しています。 この場合は外部ピンを経由しないため、左端のピン割り当てを示す”# “はn/aとなっています。 実際の多くの設計では、外部との入出力となる①・②のケースが大半を占めます。 ③の内部接続は、より高度な制御や最適化を行う際に使用されます。   デモンストレーション:ピン設定を変更し、LEDの点滅色を変更する ここからは実際にPins Tool上でピン設定を変更し、評価ボード上のLEDの点滅色が変更されるかを見ていきます。 ハードウェアの準備 本稿で使用する評価ボード ・FRDM-MCXN947 SDKのインストール VS Code内の左側のパネルからMCUXpressoを選択した状態で「Import Repository」をクリックしてください。 その後、左から2番目の「REMOTE ARCHIVE」をクリックし、Packageにて「FRDM-MCXN947」を検索してください。「947」と打ち込むとすぐに出てきます。 Name名、Location名、Create Gitへのチェックは任意に設定して下さい。 ※NameおよびLocation名については、「小文字の英数字」「アンダースコア(_)またはハイフン(-)」のみを使用し、(\, /, :, *, ?, ", <, >, |)などの記号やスペース(プログラムの動作不良の原因になりうる)を避けるのが無難です。 最後に「I agree」にチェックを入れた後、「Import」をクリックするとSDKのインストールが開始しますので、しばらくお待ちください。画面右下に"Repository successfully imported"が表示されたら完了です。 サンプルコードのインポート SDKのインストールが完了したら、サンプルコードのインポートへと進みます。 左側のパネルから「Import Example From Repository」をクリックしてください。 右側に表示された各タブ内で、「Repository」では先ほどインポートしたSDKを選択、 「Board」はFRDM-MCXN947を選択してください。 「Template」では、今回はLEDの点滅色を変えるデモンストレーションですので、 「led」と打ち込んで表示される「driver_examples/gpio/gpio_led_output_cm33_core0」で試してみます。 その後、Toolchainを選択して「Import」をクリックしてください。 ConfigToolsを開く インポートしたサンプル上で右クリックして、「Open with MCUXpresso Config Tools」を選択してください。少し待つとConfig Toolsが立ち上がります。 Config Toolsが開いたらまずは右側のパネルにあるOverviewを確認します。このサンプルにおいては、ClocksとPinsの2つが緑色(ONの状態)になっており、2つのツールが有効であることを示しています。 Pinsを選択し、現在のピン設定の状況を見てみます。 「Routing Details」を見ると3つのピン(A1,B1,B12)が有効になっています。 しかしながら、LEDに対して設定されているB12ピンのDirectionを見ると“Not Specified”となっており、つまりPins Tool上ではLEDに対してOutput(出力)設定がされていない状態となっています。 では、なぜ設定がされていないのにLEDが点滅するのかというと、VS Codeに戻りCソースファイル(gpio_led_output.c)を見てみます。 Cソースファイルを見ると、BOARD_InitHardware()によってピンの機能は反映されますが、先ほど確認したように、この時点ではPins Tool上でB12ピンはGPIO出力として設定はされていません。 したがって、このサンプルの初期状態では、GPIOの入出力方向はPins Toolではなく、ソースコード側に依存しています。 具体的には、GPIO_PinInit()関数によってB12ピンが「GPIO出力」として初期化され、LEDを制御できる状態になっています。 今回の目的はPins Tool上でピン設定を変更し、その結果をコードとして反映させることですので、ソースコード側からGPIOの初期化および制御に関する部分(下記赤枠)を削除します。 削除するとGPIOの出力設定がどこにも存在しなくなるため、ビルド・デバッグを行うとLEDは点滅しなくなります。 続いて、Pins Toolsでピン設定を行います。Pins Toolより#B12ピンのGPIO0_10のDirectionをOutputに変更します。 これは先ほどの②MCU内部の信号を外部に出す(ペリフェラル⇀ピン)のケースです。 これにより「B12ピン(PIO0_10)をGPIO出力として設定し、MCU内部のGPIO制御(ソフトウェア制御)による信号をピン経由で外部(LED_RED)へ出力する状態」へと変わりました。 コードの変更点は右側のパネルのCode Previewより確認できます。 Not SpecifiedからOutputに変更することでpin_mux.cの最下部にGPIOの初期化コードが追加されます。 この状態でサンプルコードを書き換えます。まずはConfig Toolsの画面左上にあるUpdate Codeをクリックしてください。 その後Windowが表示されます。ここでもCode Previewと同様にコードの変更を確認することができます。 VS Codeに戻ると、画面上部にチェックボックスが3つ並んで表示されますので、チェックが入った状態でOKをクリックしてください。少し時間が経つと、Clocks Toolでの変更がVS Code上のサンプルコードに適応されます。 ※SDKのバージョンが異なる場合は表示されない場合もあります。 完了したら、ビルドの前にボード(FRDM-MCXN947)とPCを接続します。 接続が完了したらインポートしたサンプルをデバッグ(ビルド&書き込み&アプリケーションの実行)します。 デバッグのプロセスが完了したら、プログラムがブレイクポイントで止まっているので、画面上部のアイコン内の"|▶"をクリックします。 動画のように赤色の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'); }); }); }); } }})(); (マイビデオを表示) プログラムの終了は、アイコンの□をクリックします(PCと接続している限りLEDは点滅を続けますが一旦無視してください)。 なぜ赤色LEDが点滅したのか? ここで、なぜ赤色LEDが点滅したのかについて補足します。 今回の赤色LEDの点滅は、大きく次の2つの設定によって決まっています。 app.h:どのLED(ピン)を操作するかを定義 pin_mux.c:そのピンをどのように使うかを定義 この2つによりLEDの点滅が実現されています どのLEDを操作しているか?(app.h) Cソースファイル「gpio_led_output.c」の最下部には、GPIO_PortToggle :指定したGPIOピンの出力を反転するための関数が存在します。 この関数では、 BOARD_LED_GPIO (GPIOポート) BOARD_LED_GPIO_PIN(ピン番号) で指定されたGPIOの出力を反転し、LEDを点滅させています。 ただしこの時点では、このGPIOポートとピンがどの色のLEDに対応しているかはわかりません。 そこで、BOARD_LED_GPIO で右クリックし「Go to Definition(もしくは"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 consolのそれぞれ初期化を実行するためのBOARD_InitHardware(); があるので、ここで右クリックし「Go to Definition(もしくは"fn + F12")」を選択し、さらに詳細を見てみます。 遷移先にBOARD_InitPins();があり、ここにピン設定が記述されています。BOARD_InitPins(); 上でもう一度右クリックし、「Go to Definition(もしくは"fn + F12")」を選択すると「pin_mux.c」が開きます。 pin_mux.c はPins Tool上で設定した内容が反映されたファイルで、先ほど赤色LEDをOutputへ変更した際にCode Previewで確認したものと同じです。最下部に以下の記述があり、赤色LEDに接続されたB12ピンを、初期値0のGPIO出力として初期化することを意味しています。 このように、app.hで「どのLEDを操作するか(赤色LED)」が決まり、pin_mux.cで「そのピンをGPIO出力として使えるようにする」ことで、GPIO_PortToggle()によって赤色LEDを制御できる状態になっています。 ピン設定を変更し、LEDの点滅を青色に変更する 次にピン設定を変更することでLEDの点滅色を赤色から青色に変更します。 Config Toolに戻り、Pinsから「LED」検索するとC4ピンが青色LED(LED_BLUE)に対応していることがわかります。 C4ピンにチェックを入れると下図のようなウィンドウが表示されるので、GPIO1:GPIO,2(PIO1_2)にチェックを入れてDoneをクリックします。 ここまで完了すると、Routing Detailsに追加したC4ピンが表示されます。 C4ピンをGPIO機能(PIO1_2)として設定し、このピンに青色LED(LED_BLUE)というラベルを割り当てています。これにより、ソフトウェアからこのピンを青色LEDとして扱うことができます。 続いて、ピンの入出力設定を行います。Directionの赤色LEDをOutput⇀Not Specifiedに、青色LEDをNot Specified ⇀Outputに変更します。この設定により青色LEDをGPIO出力として設定できました。 Code Previewで、pin_mux.cの変更点は確認できます。 この状態でサンプルコードを書き換えます。先ほど実施したようにConfig Tools上でUpdate Codeを実行し、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'); }); }); }); } }})(); (マイビデオを表示) ちなみに、なぜ1つのLEDで異なる色の点滅ができたかについて、今回使用したボードFRDM-MCXN947にはRGB LEDが搭載されています。FRDM-MCXN947の回路図を見るとピンごとにR/G/Bが割り当てられていることがわかります。 このため、2色のピンを同時にPins Tool内で出力設定し、ソースコードを適切な形に整えれば様々な色を表現することも可能です (例 : 赤 + 青 = 紫)。   おまけ - ピン一覧をドキュメント(Excelファイル)で確認する MCX Nのリファレンス・マニュアルを開くと、添付ファイルにMCXNP184M150F70_Pinout.xlsx というファイルがあります。ここにはピンの一覧と各ピンに対するペリフェラル機能の一覧が載っています。 最近では、Pins Toolの進化により、このような一覧表を参照しながら手作業でピン設定を行う機会は少なくなってきているかもしれません。 一方で、デバイス選定やパッケージ比較、利用可能なペリフェラルの確認など、システム設計の初期段階では今でも有用なリファレンス資料として活用できます。 MCX Nのリファレンス・マニュアルをダウンロードするには、MyNXPアカウントの登録が必要です。 ※Acrobat Readerで開いています 今回はシンプルな例で説明しましたが、実際の設計ではピン設定はさらに複雑になります。そんなときこそPins Toolを活用することで、ミスを防ぎながら効率的に設定を進めることができます。是非ご活用ください。 =========================​ 本投稿の「Comment」欄にコメントをいただいても、現在返信に対応しておりません。​ お手数をおかけしますが、お問い合わせの際には「NXPへの技術質問 - 問い合わせ方法 (日本語ブログ)」をご参照ください。​ (既に弊社NXP代理店、もしくはNXPとお付き合いのある方は、直接担当者へご質問いただいてもかまいません。) MCUXpresso Config Toolsの中から「Pins Tool」にフォーカスし、ピン設定の基本および設定方法を解説します。 VS Code環境での導入方法から、ピン設定の変更によるLED点滅デモまで紹介します。 (作業時間:10分 *MCUXpresso for VSC (Visual Studio Code), SDKをインストールしている前提) MCUXpresso MCX SW | Downloads 日本語ブログ
記事全体を表示
Function of solid plane in the NFC antenna Hello, We have integrated our NFC antenna onto a controller board. Our antenna measures approximately 90 mm x 40 mm and has 3 turns. It is already surrounded by ground planes on two sides. The distance between the ground planes and the antenna is approximately 5 mm. Our PCB manufacturer (of a multi-layer PCB) wants us to fill the antenna area of the inner layers with copper. Since I found NFC demo boards from NXP where this is implemented in a similar way, I think it should work and would like to implement it similarly. Are there any reasons why it was implemented this way on these evaluation boards? To what extent does the copper area affect the range? Does the copper area affect EMC? Is it better or worse? What should be the minimum distance between the copper area and the antenna? Is it better to use a single large area or several small areas? Thank you very much, and best regards, Michael Re: Function of solid plane in the NFC antenna Hello Michael,  The main reason why we use this inner metallization is mainly for a demonstration purpose to simulate a realistic environment around the NFC antenna e.g. in the POS terminal.  Also this metal filling may help to reduce the detuning effect by a different object because the antenna is already tuned with the "metal loading" inside.   However for the real product, I would go for a conventional NFC antenna without any filling inside. BR Tomas  Re: Function of solid plane in the NFC antenna Hi Tomas, Thank you very much for the information. We have since conducted tests by gluing copper tiles (8 mm x 8 mm, spaced 2 mm apart, 2 layers each) to the antenna surface on both the top and bottom. We then measured the antenna and rematched it. We can’t detect any differences in terms of functionality (range, current measurement, and EMI). You wrote that you would recommend a conventional design. Are there reasons for this, and if so, what are they? Maybe several smaller areas with more spacing between them would be better than the 8x8 mm with 2 mm spacing? Thank you very much, Michael Re: Function of solid plane in the NFC antenna Hello @michael_d_1983 , As mentioned, we use the copper tiles to demonstrates a a bit more realistic environment. This means that you may observe a slightly lower reading range, which is more reflecting the reality than an ideal antenna in free space. This because of some energy is absorbed the the metal tiles.  But there is no change in the TX current and EMI, if the tuning stays the same.  Therefore there is no need to implement such design into the "real" product.  BR Tomas  Re: Function of solid plane in the NFC antenna Hi Tomas, Thanks for your feedback! We actually don’t want to include the copper areas at all. The PCB manufacturer wants us to do that. (The reason is that if the copper distribution on the PCB is uneven, problems arise during the lamination process in PCB production—such as air pockets and delamination—because the resin in the prepregs isn’t sufficient to compensate for the missing copper.) We just want to clarify whether there’s any fundamental reason against this that we haven’t considered yet. We’ve tested it (reader functionality). Everything seems to be working as usual. Best regards, Michael
記事全体を表示
使用 NXP DDR Tool 在 IMX8M Plus 中无法完成 DDR 测试 您好, 我下载了RPA工具并更新了信息。附件是截图。   通过脚本,我能够在调试模式下获取 PMIC 信息。 这里是调试日志和 .ds 文件。文件供参考。 我在调试日志中发现内存容量显示为: 每个芯片选区的密度:4096MB 每个控制器的容量为:4096MB 但我使用了 1GB 容量的 LPDDR4 RAM(W66DP2RQQAGJ:双芯片封装 (DDP) 32Mb x 16DQ x 8 组 x 2 通道,密度为 8 Gb (8,589,934,592 位)。 它还卡在了“步骤 1:DDRPHY 训练”这一步。 Re: Unable to complete DDR test via NXP DDR Tool in IMX8M Plus 您好,我的配置工具也出现了同样的问题。以下是日志,供您参考。 此致 Re: Unable to complete DDR test via NXP DDR Tool in IMX8M Plus 你好, 我看不出你的内存配置有什么问题。 如果使用配置工具中的 DDR 工具,是否也会出现同样的问题? 顺祝商祺! Re: Unable to complete DDR test via NXP DDR Tool in IMX8M Plus 你好, 您在配置工具中遇到的问题是串口连接存在问题,请确认串口已连接到 Cortex-A 控制台,并且开发板处于串口下载模式。 请问您能分享一下您的原理图吗? 顺祝商祺! Re: Unable to complete DDR test via NXP DDR Tool in IMX8M Plus 您好, 使用 MSCALE_DDR_TOOL 可以解决此问题。 这是IMX8MP的页面链接 https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX-8M-Family-DDR-Tool-Release/ta-p/1104467 以及 LPDDR 的 RPA 表格链接 https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX-8MPlus-m865S-DDR-Register-Programming-Aids-RPA/ta-p/1235352 谢谢!
記事全体を表示
chromium-ozone-waylandのコンパイル中にビルドが失敗しました こんにちは、 YoctoでIMX8MPボード用にchromium-ozone-waylandをコンパイルしようとしていますが、以下のエラーでコンパイルが失敗します: | デバッグ: Python 関数 extend_recipe_sysroot が完了しました | デバッグ: シェル関数 do_configure を実行中 | エラー //.gn:150:5: 代入が無効でした。 | build_dotfile_settings.exec_script_allowlist + | ^--------------------------------------------- ここで変数「exec_script_allowlist」を設定しましたが、以前は使用されていませんでした。 対象外です。 警告: シェルコマンドからの終了コードが 1 です。 エラー:タスク(/home/admin/Dharmik/IMX8M-Plus/sources/meta-browser/meta-chromium/recipes-browser/chromium/chromium-ozone-wayland_138.0.7204.157.bb:do_configure)終了コード「1」で失敗しました 注:タスクの概要:2814個のタスクが試行され、そのうち2800個は再実行の必要がなく、1個が失敗しました。 conf/local.conf に CORE_IMAGE_EXTRA_INSTALL += "chromium-ozone-wayland" を追加しました。 以下は私のヨクト設定です。 ビルド構成: BB_VERSION = "2.16.0" BUILD_SYS = 「x86_64-linux」 NATIVELSBSTRING = 「ユニバーサル」 TARGET_SYS = "aarch64-poky-linux" MACHINE = "imx8mp-lpddr4-evk" ディストリビューション = "fsl-imx-wayland" DISTRO_VERSION = 「6.18-whinlatter」 TUNE_FEATURES = "aarch64 armv8a crc crypto" ありがとうございます ダルミック Re: Build failed while compiling chromium-ozone-wayland 過去のChromiumバージョンでもこのエラーを見たことがあり、そのビルド状況で私の場合うまくいったのはこのファイルの変更でした。 \tmp\work\armv8a-mx8-poky-linux\chromium-ozone-wayland\117.0.5938.132\chromium-117.0.5938.132\media\gpu\sandbox\BUILD.gn if (current_cpu != "s390x" && current_cpu != "ppc64" && is_linux && ozone_platform_x11 && !is_castos) { # For DRI_DRIVER_DIR. configs += [ "//build/config/linux/dri" ] } このファイルの下部のプラットフォームリストに「&& ozone_platform_x11 」を追加したことで問題は解決しました。 Chromium v138がすでに追加されているか確認してもらえますかozone_platform_x11? よろしくお願いいたします。 ダイアナ Re: Build failed while compiling chromium-ozone-wayland PREFERRED_VERSION_gn-native = "0+git" の変更を追加した後、以下のエラーが発生します。 |DEBUG: Python関数extend_recipe_sysroot完了しました |DEBUG:シェル関数の実行do_configure |//build/config/linux/dri/BUILD.gn:11:20でのエラー:スクリプトがゼロでない終了コードを返しました。 |dri_driver_dir = exec_script(pkg_config_script, |^---------- |現在の編集名: /home/admin/Dharmik/IMX8M-Plus/build-imx8mp/tmp/work/armv8a-mx8mp-poky-linux/chromium-ozone-wayland/138.0.7204.157/sources/chromium-138.0.7204.157/out/Release/ |コマンド: python3 /home/admin/Dharmik/IMX8M-Plus/build-imx8mp/tmp/work/armv8a-mx8mp-poky-linux/chromium-ozone-wayland/138.0.7204.157/sources/chromium-138.0.7204.157/build/config/linux/pkg-config.py --dridriverdir dri |1枚返品して印刷しました: | |pkg-configからのエラーです。 | |スタール: | |pkg-configの検索パスにはdriパッケージが見つかりませんでした。 |おそらく「dri.pc」を含むディレクトリを追加したほうがいいかもしれません |PKG_CONFIG_PATH環境変数に |パッケージの「ドリ」は見つかりませんでした | |//media/gpu/sandbox/BUILD.gn:31:18:を参照し、これがファイルが含まれた原因となりました。 |configs += [ "//build/config/linux/dri" ] |^------------------------- |警告:シェルコマンドからコード1を終了してください。 ありがとうございます ダルミック Re: Build failed while compiling chromium-ozone-wayland こんにちは、ダルミックさん。 local.confにchromiumパッケージ以外にもう一つ追加してみてはどうでしょうか? PREFERRED_VERSION_gn-native = "0+git" 問題が解決しない場合はお知らせください。 よろしくお願いいたします。 ダイアナ
記事全体を表示