Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
PN7642 - スリープモード やあみんな PN76_Sys_PCRM_EnterStandby(); 関数を使ってスリープさせようとしています。GPIO3でイベントが発生するまでスリープさせるように指示するだけでは、何も問題はありません。 WUC を使用しようとすると問題が発生しました。 スリープ状態に移行するときにエラーは発生しませんが、IC が直接起動しており、その理由がわかりません。 使用例としては、たとえば 5 分間スリープするために、スリープを複数回入力することです。 論理: (calc_sleep_en_b == FALSE)の場合 { dwWakeUpCntValue = calculate_sleep_time(new_lock_values. public_timer_value ); 計算されたパブリックカウンター値UI = dwWakeUpCnt値; タイマーカウンタ値ui = 0; select_wake_up_reason = E_PN76_PCRM_WAKEUP_SOURCE_GPIO3_LOW | E_PN76_PCRM_WAKEUP_SOURCE_TIMER ; max_sleep_time_li = 最大スリープ時間; PCRM_CLEARBITN(PCRM_GPREG6、 PHHAL_HW_PN76XX_GPREG_6_LPCD_ENABLED_POS ); status_pn7642 = PN76_Sys_PCRM_EnterStandby(選択ウェイクアップ理由、最大スリープ時間li); } そうでない場合、 { PCRM_CLEARBITN(PCRM_GPREG6、 PHHAL_HW_PN76XX_GPREG_6_LPCD_ENABLED_POS ); PN76_Sys_PCRM_ReEnterStandby(); } 寝た後: - BOOT Regsを確認する - BOOT REG 2と3をリセットする - カウンター値が予想される計算値と等しくない場合は、 PN76_Sys_PCRM_ReEnterStandby() で再度スリープします。 ウェイクアップの理由とカウンターを確認するためのすべての変数は AO-RAM で定義されています。 __attribute__ ((section( ". noinit .$RAM2" )))揮発性uint8_t magic_num; __attribute__ ((section( ". noinit .$RAM2" )))揮発性uint8_t sleep_reason_uc; __attribute__ ((section( ". noinit .$RAM2" )))揮発性uint32_t timer_counter_value_ui; __attribute__ ((section( ". noinit .$RAM2" )))揮発性uint32_t計算されたパブリックカウンター値ui; この問題の原因は何でしょうか? 何か見逃しましたか? これらの規則も少しリセットする必要がありますか? PCRM_SYS_BOOT1_STS PCRM_SYS_BOOT2_STS PCRM_SYS_BOOT3_STS PCRM_SYS_STBY_CFG_REG PCRM_SYS_STBY_CFG_REG PCRM_SYS_LP_CLK_EN_REG PCRM_INT_SET_STATUS_REG PCRM_INT_CLR_STATUS_REG 助けてくれてありがとう。 よろしくお願いいたします。 オリバー Re: PN7642 - Sleep Mode やあ、エドゥラド、 PN7642 FW は 02.06、SDK バージョンは 2.15.004 です。 ウェイクアップ カウンターの値は 2690 ミリ秒で 1023 です。 低電力カード検出は必要ありません。スリープして、AO-RAM カウンターを比較し、>= でない場合は反復処理を行い、再度スリープします。 再びスタンバイ状態に入るときに、BOOT レジスタ、割り込みフラグ (PCRM レジスタから) を処理 (リセット) する必要がありますか、それともこれは内部で実行されますか? スリープ状態に入るとき、BOOT_2 レジスタは 0x00000000 である必要がありますか? この PDF は知っていますが、これに関する詳細な情報はありません。 よろしくお願いいたします。 オリバー Re: PN7642 - Sleep Mode こんにちは@MPEngineering あなたの調子が良いといいのですが。 使用している PN7642 ファームウェアと SDK のバージョンは何ですか? PN7642 の低電力機能を評価する場合は、nfc_examples > nfc_low_power_mode を参考にすることを検討してください。また、低電力カード検出を実装する場合、PN7642 SDK では、さまざまな LPCD オプションを示す Nfcrdlib_Ex6_LPCD プロジェクト例が提供されます。 使用している時間 (またはウェイクアップ カウンター) の値を確認してください。最大ウェイクアップ時間は 2690 ミリ秒であることを考慮してください。PN76 ファミリー NFC コントローラーの低電力機能の使用方法も参照することをお勧めします。 よろしくお願いいたします エドゥアルド。 Re: PN7642 - Sleep Mode こんにちは、 PN7642 用の開発キットを使用していますか、それともカスタム ボードですか? ウェイクアップ ソースとして GPIO3 とタイマーを OR 結合していることがわかります。ウェイクアップソースとしてタイマーのみを設定すると(E_PN76_PCRM_WAKEUP_SOURCE_TIMER)、正常に動作するか確認してください。 PN7642 SDK の nfc_low_power_mode デモを使用して、オプション 1 -> カウンターをウェイクアップとしてスタンバイに入るを選択し、オプション 2 -> 2690ms (低電力スタンバイ最大間隔) を選択して、期待どおりに動作するかどうかをお知らせください。 よろしくお願いいたします エドゥアルド。 Re: PN7642 - Sleep Mode こんにちは、 このトピックに関してサポート チケットを送信されたことは承知しております。コミュニケーションのチャネルを 1 つだけ維持するために、社内チケットで議論を続けてください。 よろしくお願いいたします エドゥアルド。 Re: PN7642 - Sleep Mode おい、 1. はい、カスタム ボードで nfc_low_power_mode デモを実行でき、動作します。 2. PN7642 をホストなしのスタンドアロン MCU として使用します。実際の RTC がないため、定期的にスリープ状態にする必要があります。たとえば、最大スリープ時間を 2650 ミリ秒にして 5 分間スリープしたい場合、スリープ サイクルを 113 回繰り返します。SO: 起動して、AO-RAM カウンター変数を確認します。カウンター変数が 113 未満の場合、カウントアップして再度スリープします。 3. プロジェクトで PN76_Sys_PCRM_EnterStandby() などの API 関数を使用すると、IC は最大時間 (2.65 秒) スリープすることはありませんが、AO-RAM カウンターに到達し、期待どおりにコードを実行します。API を呼び出すときにエラーは発生しません。あまりにも速すぎます。 4. はい、MAX_SLEEP_TIME は 1023 です。 5. LPCD モードを使用したくありません。GPIO3 と一緒に WUC だけを使用する可能性もあるはずです。 この API の問題の他に、API 関数を使用しないようにしました。代わりに、PCRM Regs を直接使用します。現在、MCU は 1 回 (2.65 秒) スリープしますが、2 回目はスリープしません。何かがそれを妨げているため、再び眠りにつくのだと思います。 私は安全でした: - ブート1 (0x00000000) - BOOT2 (0x00022000 -> GPIO3 および WUC) - BOOT3(0x00000000)、 - PCRM_INT_ENABLE ( 0x4060010 )、 - EEPROM 内の PCRM_INT_STATUS (0x00000104)。 PCRM_SYS_STBY1_CTRL_CLR_BOOT_REGS_MASKとPCRM_SYS_STBY1_CTRL_CLR_RST_STS_MASKを使ってBOOT2をクリアしようとしましたが、効果がありません。PCRM_INT_STATUSは謎です。GPIO2_ZIFが有効になっていないからでしょうか? 防止フラグを削除するにはどうすればいいですか? よろしくお願いいたします。 オリバー Re: PN7642 - Sleep Mode こんにちは、 カスタムボードです。 タイマー (E_PN76_PCRM_WAKEUP_SOURCE_TIMER) のみを使用しても機能しません。 論理的には動作しますが、IC は 2650 ミリ秒間スリープしません。最後に、カウンターは予想されるスリープ サイクルと等しくなり、スイッチをオンにします。 例をカスタム ボードにフラッシュしたところ、動作しました。 00> 1 PCRM_SYS_STBY_CFG: 0x00000001 00> 00> ブート1レジスタ: 0x00000010 00> ブート2 レジスタ: 0x00000000 00> ブート3 レジスタ: 0x00000020 00> ---PN7642 IC構成の詳細--- 00> **************************************************************************************** 00> *****警告*****: PN7642 IC は以下の設定で構成されています。 00> *****警告*****: IC 設定はボード設定と一致する必要があります。不一致があると、PN7642 IC が損傷する可能性があります。 00> 電源/DCDC構成: 00> カードモードでのDC-DCの使用: DC-DCはバイパスではなく電源供給されます 00> リーダーモードでのDC-DCの使用: DC-DCはバイパスではなく電源供給されます 00> VUP入力電圧:内部DC-DC使用:自動バイパスおよびVDDPAに対する可変ブースト付き 00> LPCD用DC-DCの使用: LPCD用DC-DCの使用は無効 00> RFLD/NFCLD キャリブレーションステータス: キャリブレーションされていません 00> DPC関連の設定: 00> DPC アクティブターゲットモード: 有効 00> DPC はアクティブ イニシエーター モードです: 有効 00> DPC のリーダー/パッシブ イニシエーター モード: 有効 00> オートコレクト設定: 00> ランダム UID の有効化: 無効。EEPROMに保存されたUIDを使用する 00> **************************************************************************************** 00> 00> Test_a 変数:0 00> 00> 低電力モードの例: 00> ウェイクアップカウンタの期限切れ後のスタンバイ後の起動 00> ブート2 レジスタ: 0x00000000 00> ブート3 レジスタ: 0x00000020 00> Test_a 変数:0 00> モードを選択します: 00> 1 -> カウンターをウェイクアップとしてスタンバイ状態に入る: 00> 2 -> 外部RFをウェイクアップとしてスタンバイ状態に入る: 00> 3 -> カウンターをウェイクアップとして超低電力スタンバイに入る: 00> 4 -> 外部RFによるウェイクアップで超低電力スタンバイに入る: 00> 5 -> ULPCDキャリブレーションを入力: 00> 6 -> ULPCD検出を入力: 00> 7 -> LPCDキャリブレーションを入力: 00> 8 -> LPCD検出を入力: < 1 00> 1 00> 以下のオプションからウェイクアップ間隔を選択します。 00> 0 -> 500ミリ秒: 00> 1 -> 1000ミリ秒: 00> 2 -> 2690ms (低電力スタンバイ最大間隔): 00> 3 -> 4095ms (超低電力最大間隔) : 2未満 00> 2 PCRM_SYS_STBY_CFG: 0x00000001 00> 00> ブート1レジスタ: 0x00000010 00> ブート2 レジスタ: 0x00000000 00> ブート3 レジスタ: 0x00000020 Boot Regs、PCRM INT Regs などを操作する必要がないことを確認できますか? これは内部的に行われていると思います (NXP FW / FSM)。例では処理は示されていません。 他に何かアイデアはありますか? よろしくお願いいたします。 オリバー Re: PN7642 - Sleep Mode こんにちは、 私の理解では、カウンターをウェイクアップ ソースとして使用すると、PN7642 SDK から nfc_low_power_mode デモを正常に実行でき、スタンバイ モードが期待どおりに動作する、ということになりますが、これは正しいですか? また、カスタム実装では、PN7642を一定時間(例えば、デバイスは 2690 ミリ秒間スタンバイ状態になります。この「ウェイクアップ -> スタンバイ」プロセスは 5 分間繰り返されます) これも正しいですか?このようなアプリケーションが必要となるシナリオについて説明していただけますか? 「IC は 2650 ミリ秒間スリープしない」というのは、デバイスがスタンバイ状態に入るのを何かが妨げているという意味ですか?それとも、ウェイクアップ間隔が完了する前にデバイスがウェイクアップしてしまうのでしょうか? 実装では、dwWakeUpCntValue = calculate_sleep_time(new_lock_values.public_timer_value) を計算していることがわかります。ただし、max_sleep_time_li = MAX_SLEEP_TIMEを設定し、この変数を PN76_Sys_PCRM_EnterStandby(select_wake_up_reason, max_sleep_time_li) にパラメータとして渡します。N76_Sys_PCRM_EnterStandby のパラメータ dwWakeUpCntValue に対して MAX_SLEEP_TIME 値が有効であることをご確認ください。 これはスタンバイ時の LPCD モードの一般的なシーケンスです。参考になるかもしれません。 よろしくお願いいたします エドゥアルド。
記事全体を表示
zephyr build for XIP in NOR Flash on Flexspi of RT1160 Hi, I am trying to build a zephyr image for a custom RT1160 board that uses a different QSPI NOR flash than the one used in the evk. I am using the primary group of Flexspi1 and I used the MCUXpresso config tool to generate the pinctrl and pinmux for the firmware. However, when I tried to build the image, it keeps failing on the linker script stage as it keeps targeting the onchip memory space instead of the external flash. Do I need define a new linker script in zephyr project so the build system can target the external memory space? Are there any tutorial or application documents that provide the guide to develop the XIP zephyr firmware for imxrt?  Re: zephyr build for XIP in NOR Flash on Flexspi of RT1160 Hi @TomC818 , Thanks for your interest in NXP MIMXRT series! The default Zephyr examples for the CM7 on the RT1160 should all support XIP. You can locate this KConfig CONFIG_BOOT_FLEXSPI_NOR in the successfully compiled .config file. If your goal is simply to modify Flash, these two links will be helpful: 1. https://github.com/zephyrproject-rtos/zephyr/discussions/83607 2. https://github.com/zephyrproject-rtos/zephyr/blob/main/boards/nxp/mimxrt1160_evk/CMakeLists.txt Additionally, if memory relocation is required, you can refer to this AN. Best regards, Gavin
記事全体を表示
Asymmetric Crypto (RSA/ECC) Support for Secure Flashing on S32K144 Hi, Hardware: S32K144EVB-Q100 Software: S32 Design Studio, OpenBLT Bootloader, an5401-csec We are planning to implement a secure flashing on the S32K144. For asymmetric cryptography (RSA and ECC) used in firmware signature verification, we would like to know: Is asymmetric cryptography (RSA/ECC) supported only via software implementation on the S32K144, or is there any hardware acceleration available for these algorithms? If the S32K144 MCU does not have hardware acceleration for RSA or ECC, and must perform signature verification entirely in software (using the CPU), what is the expected time required to verify a digital signature using: RSA with a 2048-bit key ECC with the secp256r1 curve Are there any reference documents, or recommended libraries for these operations on this MCU? We need to know how long it takes to verify RSA and ECC signatures in software. Thanks. Re: Asymmetric Crypto (RSA/ECC) Support for Secure Flashing on S32K144 Hi @Kishore_14  CSEc on S32K1 supports only symmetric operations. Asymmetric operations are not supported by hardware. If needed, it must be emulated by software. You can use something like WolfSSL or similar. Because we do not provide such SW libraries, I can’t tell what will be the execution time. We do not have such benchmark. I would consider to use S32K3 devices with HSE which supports also asymmetric operations. Regards, Lukas
記事全体を表示
ucode 7xm 読み取り保護 こんにちは、サポートチームの皆様 ucode 7xm は EPC/ユーザーメモリ読み取り保護をサポートしていますか?(正しいアクセス パスワードがないとメモリ データを読み取ることができません)、またはこの効果を達成する方法はありますか?どうもありがとう。SL3S1004_1014 UCODE-9xm Re: ucode 7xm read protect こんにちは@zysu UCODE 7xm は EPCglobal v1.2.0 に準拠しています。セクション 6.3.2.1 タグ メモリに従って、EPC、TID、またはユーザー メモリ バンクをロックまたは永続的にロックすると、ロックされたメモリ位置は書き込み不可になりますが、読み取り可能なままになります。 よろしくお願いいたします エドゥアルド。
記事全体を表示
PFE MCALドライバのレシーバプロセッシングに再入可能性の問題がある可能性があります こんにちはチーム PFE MCAL ドライバ 1.6.0 以降、レシーバ プロセッシングに再入可能性の問題が発生する可能性があります。関数 pfe_hif_drv_process_rx_frames() の呼び出し関係は次の図のようになります。 ドライバがポーリング モードで動作している場合、_Receive、TxConfirmation、および MainFunction はpfe_hif_drv_process_rx_framesを呼び出します。呼び出し元が異なるタスクにある場合、pfe_hif_drv_process_rx_frames には再入可能性のリスクがあります。pfe_hif_drv_process_rx_framesに排他的保護を追加する必要がありますか? よろしくお願いいたします。 ライダー PFE PFE MCAL Re: PFE MCAL driver receiver processing may have reentrancy issue こんにちは@Ryder_Gongさん、 PFE チームがこのCASEを引き継ぎましたが、これを報告したお客様は誰ですか? よろしくお願いします、 ラドゥ Re: PFE MCAL driver receiver processing may have reentrancy issue こんにちは、 元の問題は Mobileye によるもので、実際にはソフトウェア チームがデバッグ呼び出しに関与しています。 Re: PFE MCAL driver receiver processing may have reentrancy issue こんにちは、ライダー。 競合状態を見つけてくれてありがとう。これは「Rx が動作を停止する」問題の原因であることが確認され、これを修正するためにバグ チケット ANET-1032 が作成されました。ご提案いただいたように、排他領域保護を追加することで修正されます。 このバグは、ポーリング モードの PFE MCAL ドライバーのすべてのバージョンに影響し、バージョン 1.8.0 で修正される予定です。
記事全体を表示
配置未使用 GPIO 端口/引脚的最佳方法 配置未使用的 GPIO 端口或引脚的最佳方法是什么,以降低噪声和功耗等。默认情况下,端口在启动时初始化为高 Z。那么,我们是否需要对其进行配置? Re: Best way to configure unused GPIO Ports/Pins 感谢您的回答 Re: Best way to configure unused GPIO Ports/Pins 你好,我是@sharonfmc93、 没错,高 Z 是引脚的默认状态,因此无需设置。此外,我们建议将未使用的 GPIO 保持未连接状态或外部连接到 VSS/GND 参考。 有关详细信息,请参阅文章《硬件设计指南》->第7 章:未使用的引脚。 您可以从以下链接中找到应用笔记: S32K3 通用型 MCU — 硬件设计包 BR IsaulO.
記事全体を表示
RTOSでPFEクロック構成を実装する方法   専門家の皆様、 私たちは、リアルタイム オペレーティング システム (RTOS) 内で S32G274A 用の PFE (パケット転送エンジン) イーサネット ドライバーを実装する作業を進めています。私たちの RTOS には Linux のクロック フレームワークやデバイス ツリー インフラストラクチャがないため、ハードウェア レジスタを直接プログラミングして必要なクロックを構成する必要があります。 PFE モジュールの完全なクロック構成ロジックまたはリファレンス コードを入手する方法についてアドバイスをいただけますか?あらゆるドキュメント、レジスターレベルの例、またはベストプラクティスをいただければ幸いです。 ご返信よろしくお願いします。 Re: How to implement the PFE clock configure in RTOS Hello 私はマルチコアのシナリオで作業しています。ご回答によると、システムが U-Boot によって起動される場合、オペレーティング システムはクロックを構成する必要がないということですか? Re: How to implement the PFE clock configure in RTOS こんにちは、ウェイトワン ご返信と情報ありがとうございます。 シングルコアまたはマルチコアのシナリオを使用しているかどうか教えてください。クロックの初期化はブートローダで後から行うことができますが、なぜ RTOS で PFE クロックを構成することを選択するのですか? BR ジョーイ Re: How to implement the PFE clock configure in RTOS こんにちは専門家の皆様 PFE モジュールのクロックに関して、次のような別の質問があります。 既存の RTOS BSP の GMAC ドライバーのクロック構成を参照しました。PFE モジュールを初期化するときには、MC_CGM_2 レジスタ ブロックを設定する必要があります。具体的には、PFE_MAC_0 の TX クロックを設定するには、次の図に示すように、このレジスタ グループ内のクロック Mux 1 選択制御レジスタ (MUX_1_CSC) を設定する必要があります。 このレジスタの SELCTL フィールドでは、クロック ソースを選択する必要があります。ただし、リファレンス マニュアルに記載されている clk_src_x 識別子が実際のハードウェア クロック ソースとどのように対応するかは不明です。 デバイス ツリー ファイル内に関連する説明がいくつか見つかりましたが、それらを正しくマップする方法がわかりません。マニュアルの clk_src_x がシステムで使用される実際のクロック ソースとどのように関連しているかを明確にしていただけますか? Re: How to implement the PFE clock configure in RTOS こんにちは、ウェイトワン お問い合わせいただきありがとうございます。 申し訳ございませんが、PFE + RTOS アプリケーションをお客様に参考用に提供しておりません。 通常、マルチコア シナリオではクロックはブートローダ ステージで構成されます。M コアでクロック レジスタを設定する場合は、第 24 章クロック生成モジュールの S32G2RM.pdf を参照してください。 また、PFE 用のパーティションを構成する必要があります。 BR ジョーイ
記事全体を表示
未使用のGPIOポート/ピンを設定する最適な方法 ノイズや電力使用量などを削減するために、未使用の GPIO ポートまたはピンを構成する最適な方法は何ですか。デフォルトでは、ポートは起動時に High Z として初期化されます。それで、それを設定する必要があるのでしょうか? Re: Best way to configure unused GPIO Ports/Pins 回答ありがとうございます Re: Best way to configure unused GPIO Ports/Pins こんにちは@sharonfmc93さん、 そうです。High Z はピンのデフォルト状態なので、設定する必要はありません。さらに、未使用の GPIO は未接続のままにするか、VSS/GND リファレンスに外部接続することをお勧めします。 詳細については、「ハードウェア設計ガイドライン」の記事の「 7 章: 未使用ピン」を参照してください。 アプリケーションノートは以下のリンクからご覧いただけます。 汎用S32K3 MCU – ハードウェア設計パッケージ BR イサウルO。
記事全体を表示
Sharing data between bootloader and app Is there a way to hold ram data after a function reset? Statement of Need: The MCU model used is the S32K364, which is required to maintain state during the upgrade process between the bootloader and the app. 1. When the app needs to be upgraded, write flags to the flag memory; 2. Executive function reset; 3, MCU reset into the bootloader query this state, if you need to upgrade to perform the upgrade; For now, I'm reserving a slice of RAM space. SHARE_RAM : ORIGIN = 0x2000ee00, LENGTH = 0x200 .share_ram (NOLOAD) . { . = ALIGN (4); /* 4-byte alignment */ KEEP (*(.share_ram)) . = ALIGN (4). } > SHARE_RAM But ram is cleaned up after a functional reset; Is there a way to reset the specified ram without clearing it, or another feasible solution, or is it only possible with dataFlash. Re: bootloader 和app共享数据方案 Hi @caigangwu  SRAM content is lost after Power-On reset or after any type of destructive reset. SRAM content is retained after functional reset. This is mentioned in Table 185 (S32K3 RM rev. 12): https://www.nxp.com/webapp/Download?colCode=S32K3XXRM Then there are two things to consider. First, SRAM memory must be initialized due to ECC after power-on and after destructive resets. In any project with RTD, there’s file startup_cm7.s. Here you can find “RamInit” section. There’s already a code which conditionally initializes standby RAM memory. You can implement something similar for your new RAM segment created in linker file. Your segments should be initialized only after POR or destructive resets. read the DES register in MC_RGM module to see if the last reset was destructive or not. If it was destructive reset, initialize this SRAM segment by 64bit writes. If not, you can skip this initialization – i.e. retain the content during functional reset. This register is read and cleared later by RTD drivers, so do not clear it here. Second, there’s a code in the same file for copying and zeroing of variables. There are tables init_table and zero_table. Your RAM segment should not be included in these tables, so your data are not overwritten. It won’t be a problem if you create new segment for your data. Regards, Lukas
記事全体を表示
S32E288 multicore Hello, I am a bit new to this whole multicore ordeal and would need a bit of guidance. What I would like to achieve is the following: Use the M33 as the boot core and run FreeRTOS and distribute commands Use all the other (R52_0_0, R52_0_1, R52_1_0 and R52_1_1) cores as designated workers with their own state machines I have managed to run FreeRTOS on the M33 as the boot core, but I don't quite understand how to enable the other cores from the M33 core.  AI has suggested that I would need to basically just flash my code to the correct place in memory and then wake the cores/enable the core clock from the boot core, which generally makes sense to me. But what I don't understand is: Is there a specific RTD that I would need to enable for the boot core that would handle starting of other cores? The S32 Design Studio creates different projects for each core, so how can I be sure that each project is built and loaded as one flash image? How can I use the S32 Debugger for debugging the entire stack (all the cores) and which settings should I apply or check, since the debugging is done from RAM I believe? My setup: S32 Design Studio 3.6.4 S32 Debugger S32E288-975EVB Re: S32E288 multicore Hello @HiddenSquid, Thanks for reaching out to us. Regarding your questions, we do not offer a bootloader implementation using FreeRTOS for the M33, we offer an AUTOSAR project called GreenVIP for the S32Z/E family, it includes a bootloader for the SMU/M33 core. My recommendation at the moment would be to compile and debug one of the projects (SMU_LA or SMU_LAV) and check which registers are configured to load the binary and start the RTU cores. You can check section 3.2 GreenVIP booting sequence for S32E2 device and 3.1.3 Boot Service Mode of the GreenVIP user guide for mode details on how it works. I would recommend using SMU_LA, which is simpler that SMU_LAV. You can download the GreenVIP in AUTO-SW-PACKAGE-MANAGER: Please check the documentation carefully to know how to build it, it can be somewhat confusing sometimes since it is quite a big project.  Let me know if you have more questions Re: S32E288 multicore Hello @HiddenSquid, you should be able to find the user guide and user manual in your installation directory, if you are using the default installation path you can find them in C:\NXP\S32ZE_GreenVIP_1.3.1\doc. It can get somewhat tricky to configure all dependencies to build the SMU_LA/SMU_LAV projects, you can see all dependencies in Table 2. Software Products Integrated in GreenVIP, in the User Manual. Then you can check section 9.2.3 Setup EB ACP Partition of the user guide. The SMU_LA and SMU_LAV projects are not meant for S32 Design Studio they are for EB Tresos Studio, you can check this guide to know how to install and get the license for EB Tresos Studio, although the installation is a little different because you need EB Tresos AutoCore, the installation steps are the same it is just a different product. In the same guide you can see how to debug EB Tresos Projects. Let me know if you have more questions. Re: S32E288 multicore Hey, Thanks for the answer and I am now trying to use the greenVIP package, but I am unable to find a proper user manual or a getting started page. I have managed to download and install the required packages from the suggested package manager. There is suggested link at the offical greenVIP page, but it seems to be restricted. Could you post a link or a specific tutorial on how to get greenVIP package up and running in the S32 Design Studio 3.6.4? Thanks in advance for bearing with me! 😄
記事全体を表示
MCXA346VLQ デバイスには FlexIO モジュールが含まれていますか? UM12348: FRDM-MCXA346 ボード ユーザー マニュアルのGPIO グループ インターフェースセクションには、 「MCX A346 MCU には Flexible Input/Output (FlexIO) モジュールがありません」と記載されています。 ただし、 MCX A345、A346、A355、A356、A365、および A366 リファレンス マニュアルには、A346 デバイスのFlexIOに関する説明があります。 MCXA346VLQデバイスが FlexIO モジュールをサポートしているかどうかを明確にしていただけますか? FlexIO がサポートされていない場合、 UM12348のカメラ インターフェイスの章で説明されているカメラ インターフェイスは実際にはどのように実装されますか?カメラは、固定された専用ピンを使用してSmartDMA ファームウェアによって完全に駆動されますか? MCXA Re: Does the MCXA346VLQ device include a FlexIO module? 分かりやすく詳しいご説明をありがとうございます。これにより、MCXA346 に関するいくつかの疑問が解消され、その後の調査に非常に役立つでしょう。 Re: Does the MCXA346VLQ device include a FlexIO module? こんにちは、 MCX A346 MCU には、フレキシブル入力/出力 (FlexIO) モジュールがありません。 MCX A345、A346、A355、A356、A365、A366リファレンスマニュアルの表63に記載されているALTピンマックス割り当ての説明は、表63セクション12の注記で「CAN1、I3C、FlexIO、SLCDはMCXA34x/A35xでは利用できません」と規定されているため、MCXA346には適用されません。 MCX A346 には、J9 のカメラ コネクタを介した通信をサポートする SmartDMA モジュールが含まれています。SmartDMA 固定ピンの説明は、FRDM-MCXA346 ボード ユーザー マニュアル (セクション 2.7、カメラ インターフェース) の図 12 と表 14 に示されています。 他にご質問がございましたら、お知らせください。 敬具、ルイス
記事全体を表示
[Lear][SAF][S32K3]メモリ要件の確認 こんにちは、チームの皆さん リアには問題がある: ----------------------------------------------------------------------------------------- SAF: v1.0.5 誘導体: S32K311 対応する ASIL パーティションにシンボルを割り当てるときに、深刻な問題が発生し始めています。問題は、sCheck がシンボル sCheck_DataCacheL1_Buffer の間に大きなギャップを導入することです。 合計で、これらのシンボルは 8KB のメモリを必要としますが、実際に使用されるのは 384 バイトだけです。適切な解決策は、各バッファに異なるメモリ セクションを用意することです (VAR_INIT_8192_EXEC_0 および VAR_INIT_8192_EXEC_1 と同様)。ただし、これには SAF の修正が必要になります。この変更を加えた SAF バージョンを作成することは可能ですか?代替案を提案してもらえますか? ---------------------------------------------------------------------------------- BR ステファノ 優先度: 高 SAFETY_SW 出典: 直接お客様 Re: [Lear][SAF][S32K3]sCheck memory needs こんにちは、 @StefanoGattazzoさん。 これは4月1日に送信された最後のメールからの提案です。 現時点で、アライメントによる大きな未使用メモリギャップを回避するために試せる対策は次のとおりです。   1) .s32_saf_bss にアプリケーションの BSS 変数も追加していただけます か? これにより、リンカーはBSSコンテンツを効率的に配置するためのより多くの選択肢を得ることができ、大きなギャップを減らすことができる。   2) リンカーファイルでOVERLAY機能を使用できます。 重ね合わせたメモリ領域が同時に使用されない場合は、それらすべてに同じメモリ範囲を利用することで、メモリを無駄にしないようにすることができます。 簡略化した例: .sram_bss (NOLOAD) : { . = ALIGN(8); ... EXCLUDE_FILE(sCheck_CacheTest_S32K3XX.c) (.s32_saf_bss) // all SAF BSS sections except sections from sCheck_CacheTest_S32K3XX.c file with huge alignment ... __sram_bss_end = .; } > int_sram OVERLAY : { .sram_bss_2 (NOLOAD) { sCheck_CacheTest_S32K3XX.c(.s32_saf_bss) // SAF buffers from sCheck_CacheTest_S32K3XX.c file with huge alignment // (this creates section size of ~6KB) } .user_bss_buffers { /* Other user BSS sections 6KB or more that can overlap with cacheable SAF BSS section and are not used at the same time*/ } } > int_sram 今のところ返答はありません。 この方法がお客様のご要望に合わない場合は、お客様のご提案に基づき、各セクションを特定のセクションに配置するなど、リンカーファイル内の正確な配置をお客様が制御できるようにする改善策を検討する可能性があります。 敬具、 ラドスラフ
記事全体を表示
MCSPTR2AK396 EVBイーサネット接続、CRS_DV信号の明確化 S32K396 イーサネット コネクティビティを調査していたところ、TJA1103A CRS_DV (RX_CTL/CONFIG6) ピンが MCSPTR2AK396 ボード上の MCU にルーティングされていないことに気付きました。 これは意図的なものでしょうか、それとも配線のバグでしょうか? ボードにパッチを当てて信号を MCU ピン 41 PTD14 に接続したところ、イーサネットは動作しますが、信号がなくても動作するかどうかが気になります。信号をパッチせずにテストしたことがなかったことに気付きました。 Re: MCSPTR2AK396 EVB ethernet connectivity, CRS_DV signal clarification こんにちは、 MCSPTR2AK396 のルーティングが欠落しているのは、意図的な選択ではなく、デザイン上の見落としによるものであることはほぼ間違いありません。 あなたの修正 (CRS_DV を PTD14 にルーティング) は正しい、必要な解決策です。 BR、ペトル
記事全体を表示
[Nexteer][S32K3] 有关在 Bist 上注入 eMcem 错误的问题 嗨,团队、 本问题源于Nexteer 社区中的这个帖子。 在使用 SAF eMcem 模块注入故障 73、74、75 和 76 时,Nexteer 发现了不正确/不一致的行为。在使用 eMcem 驱动程序和 API 设置故障后,尝试清除注入的故障时,它们在硬件寄存器中无法清除。您能提供支持吗? 我一直在尝试通过 eMcem 模块注入有关 BIST 的 DCM 级 FCCU 故障。到目前为止,我都没有成功,因为无论我注入什么故障(我正试图分别注入 73、74、75 和 76),我都会得到 73 号故障。 在阅读了您的 eMcem 文件后,文件指出 我从 emcem NMI 调用挂钩中获得 Fault 73 是有道理的,但我预计,如果我在 NMI 中让 emcem 控制权之前用 73 和 75 调用 emceM_ClearFaults,它应该会清除 DCMROD5 为零(或者至少是我想测试的那位)。但事实并非如此。相反,我可以清除第 11 位,但不能清除第 9 位。我似乎做什么都无法清除第 9 位,包括在调试器中写入第 9 位。 这是我第一次输入 NMI 时的截图 但在拨打 eMcem_ClearFaults(emcem_dcm_ncf_5_sys_xfr_err); eMcem_ClearFaults(emcem_dcm_ncf_5_mbist_backdoor); eMcem_ClearFaults(emcem_dcm_ncf_5_lmbist_user_cf); eMcem_ClearFaults(emcem_dcm_ncf_5_stcu_ncf); 我还有 这意味着我的调用中总是出现 FaultId 73。我执行了清除功能,试图向第 9 位写入 1,但寄存器仍未清除。 你知道我错过了什么吗?这是应该发生的,还是另有隐情?如果我有真正的故障,就会出现这种情况,还是这只是假冒注入这些故障的副作用?注入这些故障时,是一次性注入还是永久性注入? 谢谢, Daniel V. SAFETY_SW Re: [Nexteer][S32K3] Question Regarding eMcem Error Injection on Bist 嗨,团队 - 有更新吗? Re: [Nexteer][S32K3] Question Regarding eMcem Error Injection on Bist 嗨,丹尼尔, ,我可以确认我观察到了相同的行为,但从 eMcem 的角度来看,这种故障的处理与其他故障相同,因此我看不到 eMcem 代码中有任何错误。 问题是 sCheck 没有覆盖 NCF[5] 组,我们也没有要求对这些机制的潜在故障进行检查,因此我们只能依靠 LBIST 对这些机制进行覆盖。 我认为调试这些故障很棘手,因为我们可以看到,调试器可能会受到干扰,导致不可预测的结果。 RM 中没有关于这些故障的更多信息,因此我认为我们需要与硬件团队讨论或询问功能安全架构师是否需要对 EIM 进行一些潜在故障检查,还是仅仅依靠 LBIST。 亲切的问候, Radoslav Re: [Nexteer][S32K3] Question Regarding eMcem Error Injection on Bist 嗨,@RadoslavB、 感谢您的回复。我已经在 Internal SafeAssure 社区开了一张后续通知单来咨询硬件团队和功能安全架构师:https://community.nxp.com/t5/INTERNAL-SafeAssure/Nexteer-S32K3-Question-Regarding-eMcem-Error-Injection-on-Bist/m-p/2330980#M1741 如果我遗漏了任何从 SW 角度来看所需的信息,请随时补充细节。 谢谢, Daniel V.
記事全体を表示
841-RDFXWIN8USB - is it compatible with Windows 10? 841-RDFXWIN8USB - is it compatible with Windows 10? SensorFusion Re: 841-RDFXWIN8USB - is it compatible with Windows 10? Shelly, I'll have to do some research to determine the internal sampling interval. Given the nature of your questions, I think you might want to consider a different platform: specifically our Sensor Fusion for Kinetis MCUs library (nxp.com/sensorfusion) runs on a variety of ARM-based Freedom boards available at nxp.com/freedom.  Full source code is supplied, and you have total control.  The Windows 8 reference design was targeted at OEMs developing Windows-based computers and tablets.  The onlyY defined interface to the module is via the Windows 8 HID standard. What is your application? Mike Re: 841-RDFXWIN8USB - is it compatible with Windows 10? Hi Thank you for the information What is the minimum sampling interval possible? Is there a way to interrupt the MCU code? Thanks, Shelly Re:  841-RDFXWIN8USB - is it compatible with Windows 10? Shelly, The board is compatible with Microsoft's "HID Sensor Class. Here is the spec: https://msdn.microsoft.com/en-us/library/windows/hardware/dn613934(v=vs.85).aspx You can communicate with the HID sensor using the Accelerometer class in the Windows.Devices.Sensors namespace. For example, you can change the sample rate by setting the ReportInterval property. https://msdn.microsoft.com/library/windows/apps/windows.devices.sensors The RDFXWIN8USB isn't designed for general development use, but rather as a reference design for the HID interface.  So we're not supplying libraries as part of our general enablement. Mike Re:  841-RDFXWIN8USB - is it compatible with Windows 10? Hi, Thank you for your reply. Is there a way with RDFXWIN8USB to change the sampling frequency? The SpWin8View Demo sowtware output a log every 63mSec (15Hz). As for the accelerometer the MMA8451Q have ODR of 1.56 to 800Hz. Is there a way to write code and communicate with the with the MCF51Jx: ColdFire? Thank you, Shelly Re: 841-RDFXWIN8USB - is it compatible with Windows 10? Shelly, We haven't requalified against the Microsoft Windows 10 regression suite.  So technically, no. Regards, Mike
記事全体を表示
What is the maximal absolute pressure of the sensor MPX5010? In the datasheet the maximal differential pressure is specified as 40kPa (400mbar). I.e. P1 - P2 < 40kPa But the maximal absolute pressure (when P1 = P2) is not specified. In other words the maximal pressure between the sensor internals (P1=P2) and the environment (atmosphere, the surrounding gas, etc.). So, what is this maximal absolute pressure for this pressure sensor? Pressure Sensors Re: What is the maximal absolute pressure of the sensor MPX5010? Hi, Unfortunately, the MPX5010 on 867C package (or any other package), would be able to handle 1.2MPa in common pressure, not even increasing the environment pressure. Regards, Jose Re: What is the maximal absolute pressure of the sensor MPX5010? Hi. Thanks for your answer. And, what a luck, I will most probably use exactly 867C package. Unfortunately (but I have expected it) I need to measure 10kPa difference pressure with common pressure of about 1.2MPa. So, the next question: Can I increase the environment pressure in order to increase the maximal common mode pressure of the sensor? For example, by mounting the whole sensor into the pressurized vessel. Re: What is the maximal absolute pressure of the sensor MPX5010? Hi, We call this “the common mode pressure”, and it depends on the package. Let’s say that you are using an unibody package like the 867C. The highest common mode pressure in the unibody packages is 690kPa. The reason of why isn’t the Common Mode Pressure Value on the datasheets, is because we have not test the sensors lately, the value that I’m giving to you is the value of the initial tests (when the sensor came on the market), so I really recommend you to make a test with the sensors before you to take out your application. I hope you find this information useful. Re: What is the maximal absolute pressure of the sensor MPX5010? Anybody? Even estimation can help...
記事全体を表示
How to implement sensitive motion detection which is independent of orientation? Hi, I am using the MMA8653FC accel to detect motion of a handheld device. The idea is to implement a timer on the microcontroller and have motion interrupts reset it. If the timer runs over, the device switches itself off to conserve battery power. If I understand the documentation correctly, one sets a threshold (FF_MT_THS register, which has a resolution of 0.063 g) and the device compares the readings in the X-, Y- and Z-axis independently to trigger the motion interrupt. To make sure that gravity alone doesn't keep the device awake, the threshold needs to be comfortably above 1.0 g (18 or 19 counts at least). If my device is held at an oblique angle, each direction will register 0.7 g or less. To exceed my threshold value (19 counts) would mean to add 0.5 g of motion acceleration, which is already quite a bit. Now I wonder how sensitivity could be improved. The obvious way of comparing the vector sum of all three axes, however, seems not to be implemented. Please confirm that my understanding is correct. If it isn't, this could save me from computing the vector sum and doing the comparison on my microcontroller. As it seems to be implemented, the current motion detection is too coarse and would not pick up slight motion. The last thing I want is my device to switch off while being used, so I need this sensitivity. Accelerometers Re: How to implement sensitive motion detection which is independent of orientation? Hi Thomas, thank you for your helpful answer! Why did we select the MMA8653FC? Price mainly, and ignorance about the details of its internal functions, and your offer in general, I guess. We plan to replace it with the MMA7660FC for the same reason (1.5 g is plenty for our application, and the price is much lower again), and there we would still need to read and compare the acceleration "manually". Re: How to implement sensitive motion detection which is independent of orientation? Hi Peter, May I know why you have selected the MMA8653FC accelerometer? For your application, I would recommend using either the MMA8652FC with an embedded transient detection function or the FXLS8471Q with both transient detection and vector-magnitude functions. If there is a strong reason for using the MMA8653FC, you will have to compute the vector sum and do the comparison on your MCU or employ the motion detection function in conjunction with the auto-wake/sleep feature. The clear disadvantage of these solutions is higher current consumption or lower sensitivity. Hope it helps. Regards, Tomas PS: If my answer helps to solve your question, please mark it as "Correct" or “Helpful”. Thank you.
記事全体を表示
FXTH87 and FXTH87E acceleration tolerance are very large. Hi friend, I use FXTH87 and FXTH87E for same TPMS projects. It is as a car start if the X or Z axis acceleration exceeds +-6g. I use X/Z compensated values to calculate them. I set the values of X=410 (6g) X= 102 (-6g) and Z=307(6g) Z=205(-6g) for FXTH87. And I set values X=362 (6g) X= 148 (-6g) and Z=292 (6g) Z=213(-6g) for FXTH87E. The X-axis acceleration uses an offset of 7, and the Z-axis acceleration uses an offset of 6 to get the compensation value. I put the two TPMS in the machine for a spin. Its diameter is about 14 inches. The FXTH87 TPMS sends car start data at 80 rpm and the FXTH87E TPMS sends data at 160 rpm. Why the result is so much different. Am I doing something wrong? Can anyone guide me? Thank you in advance. Best wishes Ted Wu Re: FXTH87 and FXTH87E acceleration tolerance are very large. Hi Ted, Let me apologize for the delay in answering your question, we were experiencing some issues on certain areas of the NXP.com website including this community webpage. Here is the answer I have received from our TPMS expert Camille S-J. First of all, I would like to highlight that it is the accelerometer orientated in the radial direction which is the most suitable for motion detection. The accelerometer in the tangential direction is generally only slightly influenced by centrifugal acceleration, which does not allow to detect motion in a reliable manner. Sampling only the accelerometer in the radial direction (versus both accelerometers) allows to save power. Then, to understand why motion is detected at these wheel speeds, I would recommend to start by looking at the acceleration measured by each axis when the wheel is not moving, and the TPMS placed at each of the four positions below. So, place the TPMS in each of the four positions and send out via RF the value of X and Z axis. This will be the first step to understand what is happening when the wheel starts moving. Best regards, Tomas PS: Feel free to reach out to Camille to discuss it in more details if needed.
記事全体を表示
(FXTH87 Tire Pressure Monitor Sensor Family) Accelerometer Wake up I am new to FXTH87 Family. I ran demo code using codewarrier and measured temperature, pressure and accelerometer and are working fine. Now i need to implement a functionality, For example:- Vehicle is in parking, at that time device should go into low power mode.  and when it starts moving accelerometer will sense it any wake up the whole device. In b/w what is the difference b/w these two API's UINT8 TPMS_READ_ACCELERATION_X(UINT16 *u16UUMA, UINT8u8Avg, UINT8 u8FiltSelect, UINT8 u8DynamicOffset) UINT8 TPMS_READ_DYNAMIC_ACCEL_X(UINT8 u8Filter, UINT8* u8Offset, UINT16* u16UUMA) Accelerometers Re: (FXTH87 Tire Pressure Monitor Sensor Family) Accelerometer Wake up Hi Arvind, The purpose of these two functions is explained in the Embedded Firmware User Guide. As you can see in the datasheet of the FXTH87xx (e.g. FXTH871x6), the acceleration range for X-axis is between -80g and 90g  (page 156 of the datasheet). This range is divided into 16 steps (also called offsets or windows) of 20g. Whatever the offset is, the value of the acceleration that we get from the ADC will always be between 1 and 510 counts. But depending on the offset these counts will not have the same meaning. For example, 510 counts means 10g at offset 7 and 50g at offset 11. So in order to calculate the actual value of acceleration, we need to know the value of the actual offset. When the FXTH87 is not moving or moving very slowly then we are at offset 7 (we know that the acceleration is between -10g and 10g). But when the module is moving faster (when it is in a car) then we do not know the offset. This is why there are two functions to read the acceleration: -  TPMS_READ_ACCELERATION: As you can see, one of the input parameters of the function is u8DynamicOffset (the offset). So in order to call this function you need to know the offset. - TPMS_READ_DYNAMIC_ACCELERATION: As you can see, one of the input parameters is a pointer to the offset UINT8* u8Offset, and the value pointed by this pointer is not used as input by the function. The function will calculate the actual offset and an updated offset value is returned at the end of the function. So in order to calculate the actual value of the acceleration you will use the updated value of the offset returned by the function. So this function is used when the car is moving so when we do not know in advance the actual value of the offset. I hope it clarifies your question. If you need more information, please let us know. Regards, Tomas PS: If my answer helps to solve your question, please mark it as "Correct". Thank you.
記事全体を表示
无法从 MMA9555L 读取有效数据 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 大家好, 我正在通过 i2c 接口使用 MMA9555L 模块,但在使用 MMA9555L 的计步器功能时遇到了问题。为了进行正确性检查,我读取了版本信息,结果正常,并返回了所需的数据,但当我想读取计步器应用程序的数据时,从属设备却返回了无意义的数据。下面是我的代码: void main() { void pedometerConfigRegs(); //设置计步器应用程序的配置寄存器 //将这些字节发送到该部分:0x15、0x20、0x00、0x11、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00 void pedometerReadValue(); // 读回从属设备的数据 //将这些字节发送到该部分:0x15、0x30、0x00、0x0C     while(1)     { read_i2c(16);     } } 如蒙帮助,不胜感激。 此致, 米拉德 加速度传感器 陀螺仪 Re: can't read valid data from MMA9555L <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好,米拉德、 要更新信息,COCO 标志应为 1、 因此,写入和读取之间的固定延迟将确保数据的正确性、 延迟必须为> 33ms。 另外,在设置计步器功能之前,您是否将设备退出睡眠模式,即 RESET? 为此,您需要清除 CFG 寄存器的第 0 位。 至于错误代码,可能是您发送的命令不正确、 您能分享一下您所做的修改吗? 谢谢! 此致, 奥尔多 Re: can't read valid data from MMA9555L <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 经过一些修改,现在从属设备返回错误 0x9C,而不是 0x80,这表明"命令解释器无法识别命令代码。" 如何解决这个问题?
記事全体を表示