8-битный шум на 16-битном сигнале осциллографа в Matlab - PullRequest
0 голосов
/ 06 сентября 2018

Я пытаюсь получить данные с 12-битного осциллографа Lecroy, используя Matlab.

Я создаю объект visa "scope", устанавливаю длину формата "word" (16 бит), а затем использую "fread", чтобы получить данные формы сигнала в виде 16-битных целых чисел со знаком:

fwrite(scope,'comm_format Def9,word,bin'); % The only relevant thing here is the "word" setting 

fwrite(scope,'C1:Wf?'); % This gets the waveform from channel 1 on the scope

[wf]=fread(scope,SampleSize,'int16');

Проблема заключается в том, что на захваченных данных присутствует 8-битный шум. Я приложил изображение, которое показывает увеличенную часть сигнала. Вы можете видеть, что есть сигнал, который будет иметь полное 12-битное разрешение области видимости, но иногда появляются глюки, которые оцифровываются до 8 бит. Эти глюки не появляются в области видимости, только в захваченных данных.

Вот мои примерные данные:

Sample Data

Кто-нибудь знает, что вызывает это и как я могу это исправить?

1 Ответ

0 голосов
/ 13 сентября 2018

Данные вашего осциллографа имеют размер 12 бит, но вы используете слово «16». Использование флага 'bit12' может решить вашу проблему. Также не забывайте использовать 'bit12' в функции fread().

...