Почему бит 8 LSB поврежден при отправке плавающего сигнала с ПК на DSP через USB? - PullRequest
0 голосов
/ 28 мая 2019

Я отправляю данные из matlab в DSP через USB в формате 32-bit float. В DSP

  • Я получаю данные с некоторым искажением 8 LSB битов.

  • Остальные 24 MSB биты в порядке.

Я пытался играть с частотой дискретизации (16kHz и 48kHz) и с длиной буферов, но без помощи. Я также попробовал некоторые параметры драйвера в DSP , но без посторонней помощи.

Код Matlab:

 Audio_input_device                      = 'My USB Audio Device';
 AUDIO_DEVICE                            = 
 audioPlayerRecorder('Device',Audio_input_device);
 AUDIO_DEVICE.BitDepth                   = '32-bit float';
 AUDIO_DEVICE.SampleRate                 = 16e3;
 AUDIO_DEVICE.RecorderChannelMapping     = 1:8;
 AUDIO_DEVICE.PlayerChannelMapping       = 1:8;
 message                                 = reshape((1:1024)/1024,1024/8,8);
 [audioFromDevice,numUnderrun,numOverrun]            = AUDIO_DEVICE(message);

Например. Если я отправлю 0x00aaaaaa (на самом деле я отправляю float, но для на этот вопрос удобнее говорить Hex), могу получить 0x00aaaaab.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...