当社では、以下の固定ハードウェア配線でRW612 FLEXCOMM3/I2S3を使用しています。
- GPIO24 = PCM6120 SDOUTからのI2Sデータ入力
- GPIO25 = PCM6120 BCLKへのI2S SCK出力
- GPIO26 = PCM6120 FSYNCへのI2S WS出力
コーデックはスレーブモードのPCM6120です。
RW612は、BCLK/WSを生成し、オーディオデータを受信するI2Sマスターとして設計されています。
確認した内容:
- GPIO25/GPIO26はプレーンGPIOモードで正しく駆動可能です
- クロックFLEXCOMM3 12.288 MHzのオーディオ PLLです
- PCM6120とのI2C通信が正常に動作している
- PCM6120レジスタ構成が受け入れられます
観察された行動:
1. kI2S_MasterSlaveNormalMasterでI2S RXとして構成されたFLEXCOMM3は、GPIO25/GPIO26でSCK/WSエッジを生成しません。
2. kI2S_MasterSlaveNormalMaster で I2S TX として構成された FLEXCOMM3 も動作しません。FIFOSTAT.TXNOTFULL=1 ですが、FIFOWR への書き込み後も TXLVL は 0 のままで、ピンに SCK/WS エッジが表示されません。
3. PCM6120はクロックの欠落を報告します(ASI_STS=0xFF、DEV_STS1=0x80)。
質問:
1.RW612 FLEXCOMM I2S RXがノーマルマスターモードでSCK/WSを外部ピンに駆動することが期待されますか?
2. 「マスタークロック生成+外部コーデックからデータ受信」というユースケースで単一のFLEXCOMMインスタンスがサポートされているのか、それともデュアルFLEXCOMMアーキテクチャ(TXマスター+RxスレーブとI2Sブリッジ)が必要か?
3.FLEXCOMM3 I2S TXマスターの場合、I2S_TxInit()、FIFOWR書き込み、およびMAINENABLE以外に、FIFO書き込みを受け入れるための追加の前提条件はありますか?
4. FLEXCOMM3のGPIO24/25/26(AONドメイン)におけるI2Sクロック出力に関して、既知の制限事項はありますか?
この話題について助けてください
こんにちは、 @duyhung さん。お元気でお過ごしでしょうか。
テストを行うためにFreeRTOSを使っているのか、それともZephyrを使っているのか、教えていただけますか?FRDM-RW612ボードを使用していますか?
また、どのバージョン(SDKかZephyr)を使っているか、また開発の基準として例を取っているかも教えてください。
さらに、RW612(UM11865)のリファレンス・マニュアルには28.2節にI2Sペリフェラルの基本構成ガイドが含まれていますが、この一般的な手順を踏んだか確認していただけますか?