Я профессиональный разработчик программного обеспечения, который привык к роскоши встроенных отладчиков. Некоторое время я экспериментировал с платформой Arduino. Тем не менее, я считаю, что пытаться взаимодействовать с такими компонентами, как цифровой датчик температуры Dallas DS1820, все равно, что шарить в темноте.
Если предположить, что бюджет не превышает 200 долларов, какие инструменты помогут мне визуализировать происходящее? Я посмотрел на Link Instruments MSO-19, но честно говоря, я не очень много знаю о разнице между осциллографом и логическим анализатором.
Как я узнаю, что купленное мной устройство будет способно измерять типы (простых) компонентов, которые я использую?
источник
The soul of a new machine
Трэйси Киддер говорит (перефразируя), что пещерные люди использовали осциллограф, чтобы понять, почему огонь не горит. :-)это всего лишь дополнение к ответу пенджуина, так как он не помещается в комментарии, и его ответ, как правило, правильный. Просто хочу уточнить подтекст в своем ответе.
Будьте очень осторожны при выборе измерительного устройства на основе его полосы пропускания / частоты дискретизации. Устройство с частотой дискретизации 25 МГц не может точно сгенерировать цифровой тактовый сигнал 25 МГц, даже близко.
Если вы возьмете цифровой тактовый сигнал с частотой 25 МГц и подадите его в o-область с полосой пропускания 25 МГц, вы увидите нечто похожее на синусоидальную волну. Прицел с частотой дискретизации 25 МГц , вероятно, будет показывать уровень постоянного тока, поскольку по Найквисту сигнал с наивысшей частотой, который может быть выбран таким прицелом, будет 12,5 МГц.
Прямоугольная волна содержит основную частоту, которая является ее тактовой частотой, для этого примера 25 МГц. Он также содержит большие нечетные гармоники, которые придают ему квадратную форму, чтобы смотреть на цифровой тактовый сигнал с частотой 25 МГц с точностью, вам нужно смотреть не только на 25 МГц, но и на 75, 125, 175, 225 и т. Д. с вашей желаемой точностью или до скорости нарастания трансивера.
Хотя это немного менее важно, для логического анализатора все же очень важно. Логический анализатор ищет «максимум» и «минимум» выше или ниже некоторого порога. Если то, что видит, является синусоидальной волной, вы увидите искусственно короткие верхние и нижние состояния и искусственно длинные промежутки между битами. Это может в некоторой степени зависеть от архитектуры анализатора.
Это может сделать невозможной диагностику проблем, связанных с различными режимами передачи. Например, SPI имеет 4 различных режима, основанных на данных, действительных на растущих или падающих фронтах тактового сигнала, а также на полярности данных (высокое значение 1 или 0?). Другие протоколы передачи также имеют эту проблему (например, I2S и связанные аудио форматы). Если вы не можете точно определить, когда происходят краевые переходы, почти невозможно определить, действует ли шина в рамках спецификации.
Как правило, вам нужна пропускная способность / частота дискретизации, намного превышающая запланированную целевую скорость передачи данных. Если вы хотите выбрать шину I2C 40 кГц, логического анализатора с частотой дискретизации 100 МГц более чем достаточно. Если вам необходимо произвести выборку шины SPI 25 мГц, вам понадобится прицел / анализатор с гораздо более высокой пропускной способностью, около 500 МГц, если вам нужна реальная точность, а также частота дискретизации, позволяющая проводить измерения в этом частотном диапазоне.
Таким образом, устройство Penjuin, рекомендованное с частотой дискретизации 24 МГц, может обеспечить точные измерения только цифровых сигналов с частотой менее ~ 2 МГц при скорости нарастания, заметной для этой скорости передачи данных.
источник
Если вы планируете работать в основном с цифровыми цепями, вам нужен логический анализатор. Осциллографы превосходно показывают относительно небольшое количество (например, 2-4) аналоговых сигналов в мельчайших деталях, в то время как логические анализаторы, поскольку они касаются главным образом высокого-низкого-низкого, обычно имеют гораздо больше входных данных.
Вы, конечно, можете использовать O-scope в качестве логического анализатора, но преимущество последнего заключается в том, что легче получить «общую картину», имея возможность одновременно наблюдать десятки сигналов.
источник
Есть несколько хороших ответов на этот похожий вопрос: логический анализатор для начинающих?
источник
Что касается логических анализаторов, я написал базовое сравнение (относительно) недорогих:
Сравнение логических анализаторов на базе ПК
Следует отметить одно важное правило, касающееся скорости выборки: вам, как правило, требуется как минимум 4-кратная скорость передачи данных для точного считывания, а до 10-кратного - лучше. Поэтому, если вы хотите контролировать сигнал 8 МГц (который вы можете легко сгенерировать, например, из недорогого AVR в SPI), вам нужен анализатор частоты дискретизации 32-80 МГц. Это применимо только при захвате в асинхронном режиме. Если вы снимаете в «синхронном» режиме (например, с помощью тактового сигнала), то ваша частота дискретизации должна соответствовать частоте тактового сигнала. Например, в этом случае синхронной дискретизации 8 МГц будет достаточно для захвата сигнала SPI 8 МГц (поскольку он имеет выделенный тактовый сигнал).
источник
У меня есть MSO-19, и он мне очень нравится. Хотелось бы, чтобы у него было более одного аналогового канала, но он функционирует как осциллограф и логический анализатор. По цене, я думаю, что это хорошая часть оборудования (и хорошо работает в VMWare на OS X). Окуляр помог мне увидеть, что на самом деле происходит в части схемы, и не показывает только высокое / низкое состояние цифровой линии, как это делает логический анализатор. Это гораздо более точный (и быстрее реагирующий) вольтметр, чем ваш стандартный мультиметр. Было бы здорово, если бы он мог декодировать последовательные данные, а не только I2C и SPI…
источник
Этот ответ, вероятно, не очень полезен для вас, используя ardunio, но является ответом на общий вопрос.
Я часто использую функции логического анализатора моего pickit2. Ясно, что он предназначен для программирования PIC, но в нем также есть режим 3-канального логического анализатора, который я постоянно использую для просмотра цифровых сигналов. Я все еще использую его для этого, хотя я использую Cortex-M3 для своих текущих проектов. Очевидно, это чрезвычайно примитивный инструмент по стандарту надлежащего снаряжения, но даже в этом случае я нахожу его невероятно полезным
Я использовал его для отладки микросхем I2C и выходных телевизионных сигналов, например, см. Мой пост здесь
источник
Это довольно круто и очень дешево: http://www.seeedstudio.com/depot/preorder-open-workbench-logic-sniffer-p-612.html?cPath=75
Он имеет приличную частоту дискретизации, и вы можете поддержать классный открытый проект HW. Похоже, что он все еще находится на стадии бета-тестирования, поэтому, возможно, это не самая лучшая вещь, если вы просто хотите подключить что-то и заставить это работать.
источник