Передача IQ сэмплов,сгенерированных в Matlab,через HackRF

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Родился
Сообщения: 7
Зарегистрирован: Сб дек 14, 2024 00:14:40

Сообщение patt »

Всем привет!
Разбираюсь тут с тем как передавать данные с HackRF.Для начала решил попробовать передать синусоиду и один импульс ЛЧМ,сгенерированный в Matlab.
Генерация в Matlab импульса ЛЧМ производилась с помощью функции

Код: Выделить всё

phased.LinearFMWaveform('SampleRate',1e6,...'PulseWidth',100e-6)
.
Для генерации синусоиды были созданы отсчёты синуса и косинуса,при этом учитывалось,что отсчёты синуса - это значения I,а отсчёты косинуса значения Q.
Затем из результатов генерации был получен вектор комплексных чисел,который был записан в файл с расширением ".iq" виде Ii Qi с представлением чисел как int8.
Затем сигналы были посланы на HackRF а с него на спектроанализатор.
В случае ЛЧМ импульса было видно 3 гармоники где-то в районе 40 МГц,точнее,к сожалению,не вспомню.
В случае синуса было видно 2 гармоники на частотах около 2.7 и 5.4 ГГц.
Пробовал ещё ЛЧМ подать на осциллограф.Там было видно что-то похожее на ЛЧМ-импульс,но не полностью идентичный расчётам матлаба.
Для передачи на HackRF была использована следующая команда hackrf_transfer -t

Код: Выделить всё

<Путь к файлу>
-f 120000000 -s 3000000.
Самое интересное это,что хоть в команде и выставляется частота 120МГц,но на спектроанализаторе гармоники синусоиды видны только в районе 2.7 и 5.4.При увеличении частоты гармоники смещаются вправо,а при уменьшении влево.
Подскажите пожалуйста,где в данном подходе может быть ошибка и правильно ли я понимаю,что опция отвечает именно за центральную частоту передаваемого сигнала,а опция ,т.е sample rate за то с какой частотой данные будут браться из файла?
Реклама
Ответить

Вернуться в «Разные вопросы по МК»