Содержание
- Назначение и возможности.
- Технические характеристики основных моделей.
- Подключение, примеры использования.
- Достоинства и недостатки.
- Вывод.
- FAQ.
Назначение и возможности
Логический анализатор - это небольшой прибор, предназначенный, как можно предположить из названия, для анализа цифровых сигналов логического уровня, то есть наблюдения за каналами обмена информации компьютеров, контроллеров и подключаемых к ним устройств.
В этом месте искушенный в цифровых премудростях мастер спросит: а зачем нужен какой-то анализатор, если есть старый (или новый) добрый осциллограф. На что мы немедленно ответим: для работы именно с информационными сигналами определенного логического уровня анализатор удобнее в десятки раз. Он компактнее, проще подключается, значительно дешевле (с оговорками, см. ниже), особенно если речь идет про многоканальную модель. Информация выводится на большой экран компьютера, где масштабируется, перемещается, декодируется из всевозможных протоколов, внимательно рассматривается и измеряется при помощи мышки и клавиатуры, что, согласитесь, принципиально удобнее крутилок и относительно небольшого монитора даже самого лучшего осциллографа.
Разумеется, осциллограф он не заменит. Большинство анализаторов не имеет аналоговых входов вообще, а у остальных они весьма простые, на уровне “показометра”. У этого прибора, скажем так, более узкая специализация, с которой он справляется на “отлично”.
В природе существует несколько семейств анализаторов, каждое из которых несомненно обладает своими достоинствами и преимуществами. Мы рассмотрим работу с девайсами на примере популярной ветки, созданной фирмой из Сан-Франциско - Saleae. Родные устройства этой компании шикарны во всем, от внешнего вида до технических характеристик. Выпускается всего три вида “родных” моделей, отличающихся по количеству входов, наличию аналоговых сигналов, объему памяти и так далее. Все они представляют образец того, каким должен быть образцовый логический анализатор.
Единственное, что немного смущает даже заваленного работой на годы вперед цифрового мастера, это цена девайсов.
К счастью, наш юго-восточный сосед как всегда позаботился о нас раньше, чем мы успели испугаться, и наштамповал широкую линейку совместимых устройств. Причем намного шире оригинальной. А главная причина популярности семейства - бесплатное ПО от американских партнеров. Оно без проблем устанавливается на любой платформе: Windows, Linux и Mac, включает в себя необходимые драйвера и поддерживает работу с откровенным неоригиналом. Наблюдения в течение многих лет доказывают, что фирма в курсе проблемы, но палки в колеса не вставляет, вероятно, популярность того стоит. Глядишь, кто-то да приобретет настоящее звездно-полосатое изделие.
Различные ЧПУ комплектующие
Можно купить в нашем онлайн магазине https://3d-diy.ru/catalog/cnc-components/ с оплатой онлайн и доставкой от 1 дня.
Самый простой и недорогой аналог Saleae Logic 8 можно найти в продаже по цене от 400-500 рублей. Несмотря на лаконичный внешний вид и подозрительную доступность, является весьма неплохим вариантом не только для начинающего Ардуино-мастера, но и более продвинутого специалиста, обеспечивая решение большинства задач малой и средней сложности.
Если обмен сигналами укладывается в частоту до 24 МГц, что покрывает максимальные возможности “стандартной” Ардуино в полтора-два раза, то можно на нем и остановиться. Параллельно отслеживает до восьми каналов, этого если и бывает недостаточно, то не чаще, чем раз в несколько лет. Для реальных задач полупрофессионального мониторинга достаточно 3, максимум 4 канала.
Более продвинутая модель - аналог Saleae Logic Pro 16, но только без аналоговых входов, обойдется раз в 10-20 дороже.
Отличается гордым наличием 16 каналов, частотой отслеживания до 100 МГц и несколькими дополнительными настройками. Следует учитывать, что заявленную частоту анализатор способен развить не более чем на трех каналах одновременно, с дальнейшим увеличением их числа максимальная частота снижается пропорционально.
Шеснадцатиканальная модель рекомендуется для более требовательных пользователей, работающих с высокочастотными контроллерами вроде ESP32 и подобных.
Остальные совместимые изделия являются вариантами на тему этих двух, поэтому все сказанное здесь будет применимо ко всему спектру выпускаемых Saleae-подобных анализаторов.
Технические характеристики основных моделей
Как уже было сказано, соседним государством выпускается две основные реплики Saleae-совместимых анализаторов. Назовем их по оригинальной классификации: Logic 8 и Logic 16.
Программа автоматически конфигурирует возможные настройки.
Базовые характеристики для удобства сведем в небольшую таблицу:
Logic 8 обладает простой защитой входов от статики. В Logic 16 дополнительно заявлена защита по цепям входов, что дает надежду не сжечь его при первом же превышении напряжения или КЗ.
Сигналы обеих моделей могут быть сразу расшифрованы по одному из двух десятков стандартных протоколов, например:
Каждый из них имеет все необходимые подробные настройки.
Кроме того, программа позволяет подключать большое количество дополнительных протоколов для разных устройств, созданных разработчиками и сообществом пользователей, а также создавать свои собственные. Короткий фрагмент списка:
Удобные разноцветные маркеры делают процедуру измерения сигналов еще проще и нагляднее.
Все сделано для максимально комфортной и интуитивно понятной работы. Трудностей с освоением программы не возникнет даже у новичков.
Подключение, примеры использования
Подключается анализатор к компьютеру максимально просто - через USB порт. При инсталляции программы и первом запуске самостоятельно установится необходимый драйвер. Программа автоматически определит тип подключенного устройства и настроится под работу с ним.
Ищите, где купить комплектующие для Arduino и робототехники?
Купить запчасти для Arduino и робототехники можно в нашем магазине 3DIY https://3d-diy.ru/catalog/arduino-and-robotics/ с доставкой по всей России.
Соединение с измеряемыми сигналами осуществляется еще проще - разъемами или щупами как у осциллографа. Важно не забыть объединить GND устройства и анализаторы, для чего существует аж 4 специальных контакта.
Попробуем выдать с Ардуино приветственную фразу “Hello, 3DiY!” через аппаратный UART. Подключаем GND и первый канал к ножке TX. Заливаем программу:
void setup() { Serial.begin(9600); } void loop() { Serial.println("Hello, 3DiY!"); delay(200); }
Запускаем запись сигнала и видим, что каждые 200 мс на канале номер ноль проскакивает нечто.
Увеличиваем одно из них, покрутив колесико мышки, после чего уже становятся различимы отдельные биты.
Включим Serial-декодер в символьном режиме и вот теперь над “забором” отчетливо читается наше послание.
За подробностями по таймингам обращаемся к панели справа.
Вот так выглядит ШИМ от команды analogWrite(9, 64); :
А так более наполненный плюсами analogWrite(9, 128);
Так выглядит передача одного байта информации на сдвиговый регистр 595. Тут уже задействовано три канала одновременно (latch, clock и data):
Сигнал от ножек настроечного энкодера. Анализатор позволяет вычислить минимальные промежутки времени, которые следует выдерживать между опросами, чтобы не потерять ни единого шага:
Это пресловутый “дребезг” таковой кнопки:
Сканирование матричной клавиатуры 4х4:
Сигналы измерительного сверхточного энкодера:
Примеров можно приводить бесконечное множество. Везде, где нужно отследить цифровой сигнал, то есть наличие на проводе нуля или единицы, их продолжительности, количества и интервалов, цифровой анализатор будет самым удобным средством.
Достоинства и недостатки
Сравнивать цифровой анализатор можно только с осциллографом, да и то делать это не слишком корректно. Задачи их, конечно, иногда пересекаются, но принципиальное назначение у каждого свое. Занять достойное место на столе настоящего DIY-мастера должны оба эти устройства.
И все же:
Преимущества:
- низкая цена;
- компактные размеры;
- отсутствие дополнительного питания;
- удобная работа с полученными данными на компьютере;
- возможность сохранять данные и сравнивать разные измерения;
- огромное количество расшифровок разнообразных протоколов, включая возможность добавления собственных;
- легкое подключение и настройка;
- большое количество входов.
Недостатки:
- не показывает реальное напряжение на входе, может быть, оно критично низко или высоко для оцифровки;
- не показывает аналоговый сигнал;
- в компанию требует компьютер;
- ограниченное быстродействие (впрочем, осциллограф тоже).
Вывод
Цифровой анализатор - нужный и важный инструмент для любого DIY-цифровика, у которого необходимость посмотреть, что происходит в проводах или на ножках микросхем создаваемого устройства возникает регулярно. Отслеживание и изучение сигналов, даже самых сложных, поиск ошибок и источников помех, “лупа времени” для очень коротких событий, расшифровка того, о чем “разговаривают” устройства и многое другое - посильная задача для этого небольшого и недорогого устройства. Иметь его в своем арсенале просто необходимо, если вы собираетесь изучать цифровую технику на уровне хотя бы чуть выше начального.
FAQ
Как часто возникает необходимость в применении цифрового анализатора?Зависит от интенсивности вашей работы, уровня сложности и квалификации. Отработанные и проверенные временем схемы и куски кода обычно не вызывают проблем, но изучение чего-то нового очень часто заводит в тупик, выйти из которого трудно, если не видишь причины проблемы. Анализатор позволит сэкономить очень много времени, сил и нервов в поиске непонятного.
Стоит ли подкопить и приобрести сразу 16-канальный анализатор?
Если нет прямых задач, которые требуют или скоро потребуют такого количества входов, то не стоит. 8 каналов хватает почти всегда и для всего с большим запасом.
Какая частота анализатора оптимальна для работы с 8-битной Ардуино?
Ардуино работает на частоте 16 МГц, то есть самый быстрый сигнал, который она может теоретически сформировать, это 8 МГц. На практике, частота гораздо ниже, например, команда для адресной светодиодной ленты, считающаяся очень скоростной, происходит на частоте 800 КГц. То есть сверхвысокие частоты для работы с Ардуино анализатору не нужны.
Как зависит максимальная частота опроса от количества задействованных каналов?
На примере Logic 16 вот так:
То есть для “стандартной” Ардуино у Logic 16 со своей ролью справятся все 16 входов одновременно. А вот у Logic 8 все 8 входов работают всегда без возможности отключения и максимальная частота постоянна - 24 МГц. Однако не рекомендуется завышать частоту без нужды, чем она ниже, тем меньше потребуется памяти, тем больше будет времени непрерывного отслеживания.