Можно ли использовать логический анализатор (например, этот ) для определения формы сигнала на выводе DATA out модуля ISM-диапазона ASK/OOK (315/433,92 МГц) RF, в свою очередь, для декодирования его схемы кодирования. Я точно знаю, что это не Манчестер/NRZ. Под «формой волны» я подразумеваю максимумы/минимумы с продолжительностью каждого бита.
Обратите внимание, что эти вопросы являются продолжением моей другой темы по выбору DSO. Хотя я мог бы еще заняться DSO, но мне очень хотелось досконально понять LA как вариант для моей цели.
Теперь другой (возможно глупый) вопрос - будет ли логический анализатор работать без тактового входа? Скажем, в моем случае декодирования закодированных данных ASK/OOK у меня нет возможности получить часы, так как это асинхронная операция.
Расширение запроса (9 ноября 2011 г.): закодированный шаблон моего целевого радиочастотного кодировщика использует 32 цикла колебаний для кодирования каждого бита. Итак, для 9600 бод у меня 307200 отсчетов/сек. Однако для большей точности может быть полезно использовать 3x-5x, что многие нет. выборок (применимо ли это понятие и к логическим анализаторам)? Если это правда, то для 5-кратной выборки мне потребуется 1536000 (~ 1,5 Мбит/с) на одном канале. Конечно, это рассуждение о (своего рода избыточной) выборке исходит из мира DSO, но не уверен, что оно применимо и к логическим анализаторам?
Я сделал именно это в предыдущем проекте, я использовал не открытый логический анализатор, а шинный пират, который использует то же программное обеспечение.
http://s3cu14r.wordpress.com/2011/06/19/basic-rf-sniffing-with-the-bus-pirate/
Я использовал это для декодирования протокола для другого проекта, который перехватывал данные RKE.
http://hackaday.com/2009/10/03/garage-door-packet-sniffer/
Надеюсь это поможет.
Чтобы ответить на добавленную часть вашего вопроса:
Да, частота дискретизации применима и к логическим анализаторам. Очевидно, что состояние сигнала будет точно представлено, поскольку оно может быть только 0 или 1 (в отличие от DSO), но чем выше частота дискретизации, тем точнее синхронизация.
Например, если у вас есть следующее:
Данные:
__---_-____---____---_-____---____
LA Sample clock:
--__--__--__--__--__--__--__--__--
LA Display:
____----____----____----____----__
Если мы предположим, что логический анализатор производит выборку по переднему фронту тактового сигнала, вы можете увидеть, как он может немного сбить синхронизацию или вообще пропустить изменение.
Вы никогда не пропустите изменение, если частота дискретизации по крайней мере вдвое превышает скорость передачи данных, но фактическое время изменений будет все менее и менее точным по мере приближения к этой точке.
В вашем случае LA, на который вы ссылаетесь, легко справится с частотой переключения 300 кГц, поскольку он производит выборку со скоростью до 200 Мвыб/с, что дает вам точность +/- 5 нс. Поскольку данные изменяются только каждые 3,3 мкс или около того, логический анализатор будет очень точным, так как за этот период он может выполнить 666 выборок.
Частота дискретизации, используемая для цифровых сигналов, зависит от скорости передачи данных, а также от рабочего цикла, например, скажем, у вас есть сигнал данных 1 кГц с рабочим циклом 50%, выборка с частотой 2 кГц или выше даст надежные результаты, так как вам нужно только проверить с обеих сторон перехода.
Теперь, если у вас есть сигнал данных 1 кГц с рабочим циклом 10%, вам нужно сэмплировать как минимум 10 кГц, чтобы убедиться, что вы получаете каждую часть формы волны. С такими цифровыми сигналами частота дискретизации вряд ли имеет значение, поскольку вы, вероятно, все равно просто настроите ее с помощью прерывания. Единственное место, где это важно, это при использовании логического анализатора, и в этом случае вы можете просто использовать auto или попробовать пару раз.
бдутта74
s3c
бдутта74
Джон Л