こんにちは、NXPコミュニティの皆さん、
私はNXPのlpspi_transfer_s32k142サンプルを、S32K142ボード上でLPSPI0をマスターモードで使用していますが、サンプル構成に大きな変更は加えていません。
私の問題は、 SCK/クロック波形が正しく切り替わらないことです。ロジックアナライザを使用して、SCK、MOSI、MISO、およびPCSを監視しています。
8ビット(1バイト)の転送の場合、8つのSCKクロックパルスが発生するはずですが、ロジックアナライザでは、期待されるパルスではなく、異常な/連続したように見えるクロック波形が表示されます。
構成:
SCK波形を示すロジックアナライザのスクリーンショットを添付しました。
NXPの例でSCKクロックが正しく切り替わらない理由と、どの設定を確認すればよいのか、どなたか教えていただけませんか?
よろしくお願いします。
可能であれば、修正済みテストプロジェクトを送ってほしい。そうすれば、S32K142EVBで直面した問題を素早く再現できるから。
こんにちは、ロビンさん。
ご返信ありがとうございます。
現在の構成では、PCS連続はチェックされておらず、生成された構成は次のようになっています。
.isPcsContinuous = false
私はこの設定を変更していません。
アップロードした波形でも、期待していたようなクリーンなSPIタイミングが得られていません。1バイトの転送の場合、転送完了までPCSがアサートされている間に8つのSCKクロックパルスが発生すると予想されます(PCSアクティブ→8クロックパルス→PCS非アクティブ)。しかし、私のロジックアナライザによるキャプチャでは、この期待される動作が明確に示されていません。SCKパルスは不規則に現れており、PCS/イネーブル信号はSPIフレーム全体にわたって期待されるハイ/ローの動作を示していません。
参考までに電流波形を添付しました。
このPCSやSCKの挙動は、LPSPI_DRV_MasterTransferBlocking()APIと現在のLPSPI構成で予想されるものかどうか確認していただけますか?
PCSを常時有効にした状態でもテストを行い、結果を共有します。
よろしくお願いいたします。
レシャム
ハイ
アップロードした画像はぼやけすぎます。SPIの波形がはっきり見えません。
lpspi_transfer_s32k142のLPSPI0設定を変更して、 PCS連続モードを選択しましたか?
lpspi_transfer_s32k142 LPSPI0 PCS continuous.pnglpspi_transfer_s32k142 LPSPI0 PCS continuous.pnglpspi_transfer_s32k142 LPSPI0 PCS 連続.png
明確なSPI波形で問題があると思われる箇所を示すために矢印やテキストを使うことが推奨されます。これにより、あなたの質問を迅速に理解できます。
よろしくお願いいたします
ロビン
こんにちは、
S32K142EVB用の修正済みLPSPI転送テストプロジェクトを含むZIPファイルを添付しましたのでご確認ください。
プロジェクトを確認して、LPSPIの転送設定が正しいか、または変更が必要か教えていただけますか?
ご対応ありがとうございます。
よろしくお願いします、
レシャム