2020年2月25日火曜日

PIC32MX USBMSC USBメモリで音声再生4_読みだす単位を4096byteへ変更

20200225(+6.0h)

前回のUSBメモリとのデータ転送とNAKの問題を解決しました。 USBメモリからの1回のデータ転送のByte数をセクタに合わせて512Byteに設定していたのが問題でした。 これを8倍の4096Byteにしたところ、NAKの返信回数が減り、16bit-Stereoのデータもそれなりに再生できるようになりました。


USBメモリをフォーマットする時にアロケーションサイズを指定できます。 このアロケーションサイズに合わせて一回のデータ転送Byte数を設定したいところですが、最近のUSBメモリのアロケーションサイズは8Kbyteや16Kbyteと大きめです。 PIC32MXマイコンはRAMの容量が限られていますで、しかたなく4096Byteとしました。 


PIC32MX USB PLAYER 16bit Stereo 20200225
USBからのデータ転送を4096byte単位にして 16bit Stereo dataの再生に間に合うようになりました。


PIC32MX USB PLAYER 8bit Mono 20200225
比較用の 8bit Mono dataの再生。 USBからのNAKが減り、処理自体が安定しました。

0 件のコメント:

コメントを投稿

pic16F18326のNCO1の機能を使った信号発生器

pic16F18326のNCO1の機能を使った、信号発生器をテストしました。 8Mhzのセラクロックを内部PLLで4倍し、FOSC 32Mhzを基に動いています。 pic16FのNOC1の仕様上は上限16MHz程度まで発信できるようですが、試していません。 ロータリーエンコーダー...