Андрей Смирнов
Время чтения: ~13 мин.
Просмотров: 9

LogicDiscovery — простой логический анализатор

-New-Arrival-USB-Logic-Analyzer-24M-8CH-MCU-ARM-FPGA-DSP-debug-tool.jpg

  • Цена: $5.74

Сегодня мой обзор о дешевом клонелогического анализатора SALEAE Logic 8 Что такое логический анализатор? Это такой прибор… для логического анализа ))) Сразу приходит на ум фильм с Робертом Де Ниро Анализируй этоПодробности под катом.f126db.jpgНа самом деле речь немного о другом Зачем я его купил? Ну конечно же занимать логическим анализом ))). А точнее анализом логических уровней разных микроконтроллеров и периферии к ним. То что принято называть реверс инжинирингом. Недавно разбирался с двумя ультразвуковыми датчиками DYP-ME007Y, на вид абсолютно одинаковыми, но работающими совершенно по разному. И, когда в очередной раз захотелось посмотреть, какие сигналы бегают от датчика к микроконтроллеру и обратно, вспомнил о таком чудном приборе. И тут подвернулся ОН по цене менее $6. Всегда думал, что устройства такого типа стоят намного дороже, но отзывы были хорошими, решил, что нужно брать. Характеристики прибора такие:

  • Число цифровых входов — 8
  • Два индикатора — питания и состояние логических входов
  • Входное сопротивление 100КОм, входная емкость 5пФ
  • Питание через USB
  • Поддерживаемые частоты дискретизации:
  • 24МГц,16МГц, 12МГц, 8МГц, 4МГц, 2МГц, 1МГц, 500КГц, 250КГц, 200КГц, 100КГц, 50КГц, 25КГц;
  • Количество сохраняемых значений одного измерения — 10000

Покупки в интернете приучают к терпению и философской созерцательности. Вот и сейчас, бесконечное ожидание в 38 дней закончилось, и почта России доставила мне это приборчик в упакованном пакете.058d6c.jpg На вид прибор такой же как на картинке в описании товара. В комплекте сам анализатор, разъем miniUSB с проводом 70см и 10 соединительных проводков на штырьковые контакты.

Анализатор представляет собой маленькую пластмассовую коробочку С одной стороны разъем на 10 штырьков и распиновкой на корпусе С другой разъем miniUSB (извините, фокус слегка ушел) Сразу прикупил таких вот клипс-зажимов Качество зажимов не очень — очень хлипкая пластмасса и проволочка на конце. Но на первое время сойдет. Внутри корпуса плата, на ней микропроцессор с высокоскоростным USB интерфейсом CY7C68013A от компании CYPRESS, EEPROM ATMLH432 и шинный формирователь LVC245A от NXP
На входе анализатора стоят токоограничивающие резисторы 100 Ом, подтягивающие к земле резисторы 100 КОм и конденсаторы 5 пФ. Все честно, как в описании. Самое вкусное в данном анализаторе это то, что подходит фирменный софт Saleae Logic . Доступны версии для OSX, Linux и Windows на 32 и 64 бита. Saleae Logic 1.2.3 под Windows 7 заработал с пол пинка, софт запустился, железо опозналось, не смотря на надпись версии «Beta».Интересные плюшки в программе Saleae LogicТриггер срабатывания записи логической последовательности на каждый канал

  • На изменения логического уровня в «0»
  • На изменение логического уровня в «1»
  • На положительный импульс заданной длительности
  • На отрицательный импульс заданной длительности

Подсчет статистических показаний по текущему измерению Декодирования протоколов: Async Serial, I2C, SPI, Hide, 1-Wire, Atmel SWI, BISS C, CAN, DMX-512, HD44780, HDLC, HGMI CEC, I2S/ PCM, JTAC, LIN, MDIO, Manchester, Midi, Modbus, PS/2 Keyboard/Mouse, SMBus, SWD, Simple Parallel, UNI/O, USB LS и FS Ведение журнала по декодируемому протоколу Позанимаемся логическим анализом. Для начала разбираюсь с ультразвуковыми датчиками, о которых писал в начале обзора. Если один работает точно по даташиту: короткий импульс на «триггер» запускает ультразвуковой импульс и по длительности эхо измеряется расстояние. То второй и третий (с мигающим светодиодом) примерно раз в 100мс без каких либо внешних пинков сам мерит расстояние и посылает его на скорости 9600 в виде четырех байт (включая контрольную сумму). Программа Saleae Logic позволяет включить декодирование сигнала последовательной шины в последовательность байт. Датчики второго типа отлично работают с отключенным выводом «TRIG», хотя может и ждут какой нибудь команды на этом входе, но сие даже волшебный приборчик не покажет. Далее захотелось посмотреть ШИМ сигнал Aтмеги 168? Включил все шесть каналов поддерживающих PWM на разный уровень и с удивлением обнаружил, что частота двух каналов ШИМ отличается от 4-х других. Задействованы разные таймеры?

Далее посмотрел работу шины I2C. И опять софт нормально справился с декодированием.Можно видеть пакеты записи в регистры при работе драйвера дисплея TM1637 Подключил ленту с диодами WS2812 — анализатор нормально проглотил 800КГц и успешно расшифровал протокол DFX-512 RF-приемник на 315МГц, подключенный напрямую к анализатору, получил сигнал с радиовыключателей, и выдал манчестреский код. После подбора скорости манчестреский код превращается умной программкой в последовательность байт. Интересно, а как с точностью измерения временных интервалов? Точного генератора импульсов у меня под рукой не оказалось, но Ардуиновская tone(1000) на 1000Гц и tone(20000) на 20КГц дают довольно точный результат.

Небольшой итог

Логический анализатор очень нужная и полезная вещь для тех, кто занимается раскапыванием китайской периферии к микроконтроллерам (Назовем красиво — реверс инжинирингом) Из достоинств данной железки хочу отметить:

  • Привлекательную цену
  • Совместимость с довольно удобным софтом Saleae Logic
  • Защита на входе в виде шинного формирователя LVC245A
  • Малые габариты

Явных недостатков у этой железки для себя не нашел. Жаль, что я не приобрел логический анализатор раньше -сколько времени бы я сэкономил во многих проектах. Сейчас стоит задача анализа логических уровней на 12В, давно хотел разобраться с датчиками ABS своего авто. Думаю, что резисторный делитель и 5-ти вольтовый стабилитрон на каждом входе будет в самый раз.Кота публикую согласно правилам этого сайта Часто при разработке или отладке радиоэлектронных устройств состоящих из нескольких компонентов(микроконтроллер, АЦП, I2C память, итд) хочется посмотреть на общение этих компонентов между собой. Чтобы наконец понять почему всё написано «правильно», но ничего не работает. В целом для этого можно использовать цифровой осциллограф, но осциллографы с 4 каналами стоят достаточно дорого, да и не очень это удобно. Гораздо приятней такая задача решается при помощи логического анализатора. Логический анализатор по сути похож на осциллограф, но если основная задача осциллографа отображение изменение аналогового сигнала с чем он замечательно справляется, то цель логического анализатора запись цифрового(но не всегда только цифрового) сигнала с последующим его анализом в удобных программах. Ниже я опишу опыт работы с логическими анализаторами Logic Pro 8 от Saleae ценой около 480$ и DSLogic Pro от DreamSourceLab(скорей всего копия) ценой $99 мне достался за 73$. Кому стало интересно добро пожаловать под кат.

Технические характеристики

Логические анализаторы отличаются друг от друга в основном: количеством и типом каналов, наличием буфера, частотой сэмплирования. Небольшая сравнительная таблица с характеристиками:

  <nobr>Logic Pro 8</nobr> <nobr>DSLogic Pro</nobr> <nobr>Описание</nobr>
Число цифровых каналов 8 16 Чем больше тем лучше, но за год использования больше 4 пока было не особо нужно
Число аналоговых каналов 8 Для аналога предпочтительней всё же осциллограф, но иногда бывает удобно увидеть, что творится не только в цифре на канале, но и в аналоге.
Интерфейс USB 2.0 / USB 3.0 USB 2.0 USB 3.0 предпочтительней если он у вас есть конечно. Хотя момент спорный, ниже опишу почему.
Частота сэмплирования цифровых каналов Чем больше тем лучше, но в случае есть один нюанс, но об этом ниже.
Частота сэмплирования аналоговых каналов Чем больше тем лучше.
Диапазон напряжений цифра/аналог: <nobr>1.2V — 5.5V / -10V — +10V</nobr> <nobr>0V — 5V / -</nobr>
Внутреннее сопротивление каналов 1,8 MOm 250 кOm Чем больше тем лучше, меньше оказывается наводок на исследуемую схему.
Буфер 256Mbits Чем больше тем лучше, от этого параметра зависит сколько сэмплов может захватить анализатор не передавая их в компьютер. Вещь крайне полезная особенно для UBS 2.0
Глубина выборки в теории не ограничена 16MS на канал Чем больше тем лучше, Logic Pro 8 использует память PC глубина выборки может быть очень большой, однако буфера DSLogic Pro тоже хватает.

В общем по многим характеристикам Logic Pro 8 имеет перевес, особенно в плане аналоговой части. Однако отсутствие буфера сказывается отрицательно, во-первых скорость падает в два раза при использовании 4 каналов, и в 4 раза при использовании 6 и больше каналов. Но это не все, так как скорость плотно завязана на USB шину то казусы случаются если эта шина загружена, иногда достаточно подключить к одному USB хабу UART кабель, чтобы программа ругнулась и сказала, что скорости USB не хватает и скорость захвата будет снижена. Не то, чтобы это бывает часто и сильно мешает, но помнить про такое стоит. Из особенностей DSLogic Pro хочется отметить ещё наличие внешней линии клока, и сигналов внешнего входа триггера, и выхода триггера.

Внешний вид и комплектация

Комплект Logic Pro 8:

  • сам анализатор
  • два коннектора с разноцветными проводами, по 4 канала на коннектор
  • 16 клипс для соединения с ногами микросхем, проводами, итд
  • USB 3.0 кабель USB-A to MictoUSB 3.0

Фотография на столе

Комплект DSLogic Pro:

  • сам анализатор
  • широкий коннектор на 16 каналов плюс дополнительные сигналы,
  • 16 разноцветных клипс для соединения с ногами микросхем, проводами, итд
  • USB 2.0 кабель USB-A to MictoUSB

Фотки с распаковки

Сравнение

Если сравнивать комплектацию то она приблизительно одинакова. Однако на мой взгляд коннектор с проводами для <nobr>Logic Pro 8</nobr> гораздо удобнее и приятней в обращении, провода более мягкие и гибкие. Клипсы у Logic Pro 8 в несколько раз удобнее. Во-первых имеют два штыря для соединения с проводом анализатора, что удобно, и во-вторых штыри для соединения находятся сбоку, что упрощает зацепку клипс с уже подключённым к ним проводом. У DSLogic Pro штырь находится сверху, что усложняет его подключение в разы, хотя по хваткости клипсы не отличаются, но общее качество всё же хромает.Несколько сравнительных фото

Программное обеспечение

Какой бы не был хороший логический анализатор, без хорошего софта удобства работы с ним не будет. Хороший софт должен быстро отображать захваченные данные, позволять смотреть их характеристики такие как частоту, скважность. И очень хорошо, что бы он умел расшифровывать общеизвестные протоколы. Это невообразимо удобно указать где находятся ноги I2C и увидеть, что же именно происходило на шине с точки зрения I2C протокола, а не сидеть и чесать затылок вглядываясь и пытаясь понять так ли оно всё и какой здесь записался адрес. Каждый анализатор комплектуется своей программой:

Saleae Logic

Анализаторы Saleae комплектуются Saleae Logic Программа мультиплатформенная, поддерживаются все версии Windows начиная с XP(год назад были проблемы с Win 7 и выше, в новой версии Win 7 работает без нареканий, выше не тестировал), Mac OS X 10.7 Lion+ устанавливалась и работала без нареканий, Ubuntu 12.04.2+ у меня так и не заработала(тестировал год назад на старой версии программы сейчас может работает), но я особо и не пытался. Поддерживает большой список протоколов для анализа I2C/SPI/UART/CAN, работают без нареканий. Возможен захват как по ручному старту так и по триггеру на одном из каналов. Из недостатков на длинных выборках начинает достаточно сильно тормозить. Из фич программы стоит отметить, возможность управление по telnet-подобному протоколу, наличие SDK для написания своих декодеров протоколов. Протоколы пишутся на C++, что усложняет процесс их написания.

DSView

DSLogic Pro комплектуется программой DSView: Тоже мультиплатформенная программа поддержка Windows начиная с XP, Mac OS X 10.11.4, Linux(прога идёт в исходниках). По возможностям программа превосходит Saleae Logic, имеются более продвинутые триггеры с поддержкой сразу нескольких каналов, список протоколов достаточно обширен. Но тут разработчики пошли дальше и на протокол можно ещё навесить возможность расшифровки работы с конкретной реализацией этого протокола. Например Можно выбрать протокол I2C и реализацию 24СXX и после этого сразу прочитать, что именно происходило на шине с точки зрения данной микросхемы. Как протоколы так и их реализации пишутся при на Python, что по идее должно упростить написание и отладку. Тормозов в работе замечено не было. Также стоит отметить, что проект является частично OpenSource и на GitHub выложены исходники софта, и HDL части. А на Wiki приведена схематика. Поэтому возможно скоро будет куча клонов данного устройства(возможно у меня тоже клон).

Простое тестирование

Для простой проверки анализаторов была использована дев.плата DE0-Nano-SoC на которой были сгенерированы меандры от 200Mhz каждый следующий получен делением на 2 предыдущего (200/100/50) попробую захватить их имеющимися анализаторами. На DSLogic Pro удалось захватить 200Mhz/100Mhz/50Mhz ниже и так понятно, что всё идёт отлично. Сказать, что 200 и 100 были захвачены идеально нельзя иногда есть небольшое уплывание частоты и скважности, но в целом нормально, на 50 уже всё идеально.DSLogic Pro Seleae нормально не смог снять 200Mhz и 100Mhz, но 50 Mhz уже идёт идеально. Logic Pro 8 И всё-таки к таким замерам я бы серьёзно не относился, 200Mhz замерять просто «накидными» проводами наверное перебор, но попробовать стоило. Для эксперимента попробуем захватить передачу данных по I2C(передачи разные поэтому данные не сходятся).SeleaeDSLogic Pro Всё отлично читается, понятно где какое событие наступило, какие адреса и данные были переданы. Никакой возни. Тоже самое для CAN:SeleaeDSLogic Pro Результат такой же как и в I2C всё наглядно понятно за минимальный промежуток времени.

Выводы

Оба логических анализатора отлично справляются со своими задачами. Не смотря на разницу в цене выделить кого-то в лидеры я бы не смог, у них есть и плюсы и минусы. На стороне Saleae внешний вид, удобные провода, качественные клипсы, USB3.0 и аналоговые каналы, стоит ли за это отдавать 400$ вопрос сложный, если есть возможность то почему бы и нет. На стороне DSView больше каналов, вход для внешнего клока и триггеров, буфер внутри анализатора, OpenSource софт, и цена. И тот и другой может очень сильно облегчить и ускорить работу по наладке своих или чужих схем, и изучению.сторонних протоколов. Если есть вопросы – спрашивайте. PS. Seleae используется у нас около года проблемы были только с ранними версиями софта под Win7 и выше, DSView купил для личного пользования около недели назад по пока нареканий нет, но и время пользования небольшое…Фото снятия дампа с I2C

Выберите свой Logic

Высокое качество изготовления

Поменять цвета Logic 8показано.8″ href=»/ru/images/content/home/hardware-info/Logic8.jpg» data-fancybox=»hardware»>Еще иллюстрации8 Red» href=»/ru/images/content/home/hardware-info/Logic8SE.jpg» data-fancybox=»hardware»>16″ href=»/ru/images/content/home/hardware-info/LogicPro16.jpg» data-fancybox=»hardware»>16 Red» href=»/ru/images/content/home/hardware-info/LogicPro16SE.jpg» data-fancybox=»hardware»>

Ежемесячно более 20 000 разработчиков приложений для встроенных систем активно используют Logic.

Технические данные

Logic 881 MΩ10 pF± 25V100 MS/s25 MHz10+ Млрд1.8V — 5.5VДа, непосредственно.6V низкий / 1.2V высокая10 MS/s1 MHz10 бит0 V to 5 V-50 dB или лучше-50 dB или лучшеx2x2Да2.1 oz ( 60 g )USB 2.0Logic Pro 882 MΩ10 pF± 25V500 MS/s100 MHz10+ Млрд1.2V — 5.5VДа, непосредственноМожно выбрать .6V / .9V / 1.65V50 MS/s5 MHz12 бит-10 V to 10 V-50 dB или лучше-50 dB или лучшеx2x2Да2.1 oz ( 60 g )USB 3.0Работает также с USB 2.0 примерно с 7-кратным снижением производительности. Logic Pro 16162 MΩ10 pF± 25V500 MS/s100 MHz10+ Млрд1.2V — 5.5VДа, непосредственноМожно выбрать .6V / .9V / 1.65V50 MS/s5 MHz12 бит-10 V to 10 V-50 dB или лучше-50 dB или лучшеx4x4Да7.8 oz ( 220 g )USB 3.0Работает также с USB 2.0 примерно с 7-кратным снижением производительности.

Используемые источники:

  • https://mysku.ru/blog/aliexpress/36442.html
  • https://habr.com/post/397381/
  • https://www.saleae.com/ru/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации