2326796_ja-JP

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

2326796_ja-JP

2326796_ja-JP

UART プロトコル テスト MCXN546VKL で、while (0U == (base->STAT & LPUART_STAT_TDRE_MASK)) で停止しました。

こんにちは。私は NXP の初心者です。IoT モジュールへの UART PIO8 および PIO9 ピンを備えた MCXN546VKL PCB を使用して、MCUXpresso IDE で LPUART プロトコルをテストしようとしています。その前に、UART ポーリングと DMA の TX および RX 機能をテストしようとしています。ポーリングモードのシンプルなループバックUARTテストで、UART TX経由でサンプルデータを送信しようとすると、fsl_lpuart.cファイルの「while (0U == (base->STAT & LPUART_STAT_TDRE_MASK))」で停止してしまいます。FLEXCOMM4に12MHz、システムクロックに150MHzを指定しているのですが、なぜこのようなことが起こるのでしょうか。設定のスクリーンショットの.pngファイルをこの投稿に添付しましたので、ご確認の上、詳細をお知らせください。ありがとうございます。 clock_config.png

クロック|タイマー通信と制御(I3C | I2C | SPI | FlexCAN | イーサネット | FlexIO)開発ボードMCX N回复: In UART protocol test MCXN546VKL, it stuck at while (0U == (base->STAT & LPUART_STAT_TDRE

こんにちは@Elakiya

 

MCXN デバイスでは、UART モジュールが実際にクロックされ、TX FIFO レベルが構成された TX ウォーターマーク以下の場合にのみ、TDRE ビットが 1 になります。


Snipaste_2026-03-06_15-54-56.png

FlexComm クロックを有効にしていただいてもよろしいでしょうか?

mcxn547 sdk lpuart デモを参照できると思います。

Snipaste_2026-03-06_15-57-57.png

BR

ハリー


回复: In UART protocol test MCXN546VKL, it stuck at while (0U == (base->STAT & LPUART_STAT_TDRE

こんにちは@Harry_Zhang 、私は MCXN546VKL PCB ボードを持っていますが、あなたの指示に従って、MCXN547V の SDK からの LPUART ポーリングのサンプル ファイルを使用して、uart ピンの同じピン PIO8 と PIO9 を使用し、clock_config.c 内でプロセッサのGlobalInfoと package_id を MCXN456VKL に手動で変更しました。そして pin_mux.c。

プロセッサ: MCXN546

パッケージID: MCXN546VKL

プロジェクトをビルドすると、エラーは発生せず、UART ポーリング操作の送受信は正常に行われますが、それでもピン構成設定内でエラー通知が表示されます。問題ツール: MCUconfiguration に表示される通知とエラーの問題のスクリーンショットを共有しました。

構成ページからエラー通知を削除するには、構成でプロセッサ設定も MCXN547 から MCXN546 に変更して、エラーをすばやく修正するにはどうすればよいですか。スクリーンショットを確認し、解決策を更新してください。前もって感謝します。

processorNotification.pngerror_chip.png


回复: In UART protocol test MCXN546VKL, it stuck at while (0U == (base->STAT & LPUART_STAT_TDRE

こんにちは@Elakiya

あなたの以前の投稿を確認しました。

clock_config.c 内のプロセッサの GlobalInfo と package_id を MCXN456VKL に手動で変更しました。および pin_mux.c。

プロセッサ: MCXN546

パッケージID: MCXN546VKL"

この方法は間違っているため、エラーが報告されます。現時点では、このエラーを防ぐ方法はありません。

まず、MCXN546とMCXN547は、GPIOの数とフラッシュRAMのサイズ以外はほとんど同じです。

上記のメッセージに基づきます。私には2つの提案があります。

1.MCXN546 SDKをベースにプロジェクトを作成する場合は、mcxn5xxevk_lpuart_pollingをベースにいくつかのファイルを変更するだけで、設定ツールを直接使用できます。

2. mcxn5xxevk_lpuart_polling をベースとして使用する場合は、config tool を直接使用することはできません。しかし、別のmcxn546プロジェクトを作成し、設定ツールを使用して必要なピンとクロックを設定し、生成されたコードをプロジェクトmcxn5xxevk_lpuart_pollingにコピーすることもできます。

BR

ハリー

回复: In UART protocol test MCXN546VKL, it stuck at while (0U == (base->STAT & LPUART_STAT_TDRE

こんにちは@Elakiya

返信が遅くなり申し訳ありません。mcxn946 SDKパッケージをベースにしたFreeRTOSプロジェクトを作成してみましたか?

Snipaste_2026-03-24_15-49-09.png

BR

ハリー

回复: In UART protocol test MCXN546VKL, it stuck at while (0U == (base->STAT & LPUART_STAT_TDRE

こんにちは、 @Harry_Zhang さん。上記の問題について、アップデートと解決策を教えていただけないでしょうか。startup_mcxn546_cm33_core0.c でプロジェクトを実行する必要があります。startup_mcxn547_cm33_core0.c で実行する代わりに。手動で作成すると、UARTとMCUでクロック設定の問題が発生します。プロセッサとクロックをmcxn547からmcxn546に手動で変更しましたが、起動ファイルに変更を加えることができず、チップ構成ページにもプロセッサのエラー警告が表示されました。もしくは、mcxn546構成でFreeRTOSを使用したUARTポーリングおよびDMA動作のテストコードを含む、私のシンプルなプロジェクトを提供してください。上記の件について、最新情報をお知らせください。ありがとう。

回复: In UART protocol test MCXN546VKL, it stuck at while (0U == (base->STAT & LPUART_STAT_TDRE

こんにちは、 @Harry_Zhang さん。mcxn546 や mcxn946 では作成していませんが、最初に mcxn546 で基本的な UART 操作を実行しようとしましたが、動作せず、UART と MCU でクロックの問題が発生しました。そこで、SDKからmcxn547のUARTポーリングのサンプルプロジェクトを作成し、pin_mux.cでプロセッサとパッケージIDを手動で変更しました。および clock_config.cmcxn546 MCU向けに構築・製造する。私のmcxn546ボードでは、UARTデータの送受信が行われています。しかし、startup_mcxn547_cm33_core0.c で実行されており、.mex のピン構成ページに表示されます。下記にファイルを示します。

startup_mcxn546_cm33_core0.c で実行して、config のこのエラーを解消する必要があります。この投稿にプロジェクトを添付しましたので、ご確認ください。

問題: MCUXpresso_IDE プロジェクトで検出されたプロセッサ「MCXN547」が、現在選択されている「MCXN546」と一致しません。

レベル: エラー

标记 (1)
无评分
版本历史
最后更新:
‎03-26-2026 04:31 AM
更新人: