Многоканальный логический анализатор своими руками

Многоканальный логический анализатор. Часть 1 — Характеристики и схемотехника

В статье мы рассмотрим характеристики и устройство дешевого и простого многоканального логического анализатора для радиолюбителей и полупрофессионалов. Аппаратная часть прибора представляет собой модуль, который подключается к персональному компьютеру или ноутбуку. Посредством программного приложения, установленного на компьютере, осуществляется все управление прибором и визуализация передаваемых данных.

Основные характеристики прибора:

  • до 32 входных каналов;
  • память 128 КБайт на каждый канал;
  • частота дискретизации до 100 МГц;
  • вход внешнего тактирования;
  • все входы совместимы с 3.3 В и 5 В логикой;
  • настраиваемый размер буфера предвыборки/поствыборки кратный 8 КБайт;
  • 16 битный генератор внутренней синхронизации;
  • несколько режимов внутренней синхронизации;
  • программируемая задержка синхронизации;
  • программируемый счетчик событий синхронизации;
  • вход внешней синхронизации;
  • коммуникация с ПК по LPT (EPP режим) или USB интерфейсу;
  • несколько версий приложений для ПК под различные операционные системы.

Основным элементом логического анализатора является ПЛИС XC95288XL, производства компании Xilinx, которая и выполняет все основные функции. Принципиальная схема прибора изображена на Рисунке 1.

Рисунок 1. Принципиальная схема многоканального логического анализатора (версия 1.1)

В качестве источника тактовой частоты для ПЛИС используется осциллятор IC4 (IC6), позаимствованный со старой материнской платы компьютера. Несмотря на то, что осциллятор рассчитан на работу при напряжении 5 В, проблем в работе прибора при питании его напряжением 3.3 В выявлено не было.

Для хранения выборок используется внешнее быстродействующее ОЗУ – микросхема AS7C33128.

Для питания прибора используется внешний источник с выходным напряжением до 15 В. ПЛИС и ОЗУ имеют напряжение питания 3.3 В, поэтому установлен регулятор напряжения 3.3 В серии LD1117DT33.

Коннектор параллельного порта K7 размещен на плате логического анализатора и подключен непосредственно к ПЛИС. Печатная плата логического анализатора двухсторонняя, используются компоненты для поверхностного монтажа и обычные компоненты с выводами. Вид печатной платы показан на Рисунке 2.

Рисунок 2. Вид печатной платы логического анализатора (версия 1.1)

Замечание. Вместо вывода 40 (Vss) микросхемы SRAM к «земле» подключен вывод 39 этой микросхемы. Решение: соединить на печатной плате вывод 39 и 40 вместе (вывод 39 не используется в микросхеме SRAM).

Для подключения к персональному компьютеру по интерфейсу USB необходимо использовать специальный адаптер, схема которого изображена на Рисунке 3.

Рисунок 3. Принципиальная схема адаптера USB интерфейса для логического анализатора (версия A 1.1)

Адаптер USB интерфейса для логического анализатора собран на микросхеме серии FT2232C производства компании FTDI. Данная микросхема объединяет в себе функциональность двух отдельных микросхем FT232BM и FT245BM. Она имеет два канала ввода/вывода, которые конфигурируются отдельно. Основные моменты конфигурации FT2232C для применения в составе прибора – это питание от USB интерфейса и режим эмуляции шины микроконтроллера (MCU Host Bus Emulation mode). Этот режим конвертируется в протокол EPP посредством мультиплексора IC3 74HCT4053D. Так как непосредственное декодирование сигналов /DST, /AST и RD/WR может вызывать конфликты таймингов, используется дополнительный сигнал A8, который используется в качестве сигнала RD/WR (чтение/запись) в периоды передачи данных по EPP протоколу.

Читайте также:  Колыбель своими руками размеры

Коннектор JTAG (CON2) используется для конфигурирования ПЛИС – это для будущих разработок, на текущий момент данный интерфейс не используется.

Микросхема EEPROM серии 93LC56 (IC2) хранит конфигурационные данные для микросхемы FT2232C и является обязательным элементом для правильного функционирования программируемого интерфейса. Для программирования данной микросхемы используется утилита FT_Prog (ранее она имела название MProg). Данная утилита и драйвера FT2232C доступны для скачивания на сайте компании FTDI.

Печатная плата адаптера разработана односторонней, что упрощает ее изготовление.

Рисунок 4. Вид рисунка печатной платы адаптера USB интерфейса (версия A1.1).

Существует также версия B 1.0 адаптера USB интерфейса (Рисунок 5). Данная версия отличается отсутствием коннектора JTAG и печатной платой, которая выполнена с учетом встраивания ее в корпус коннктора CANNON 25. Внешний вид собранных адаптеров а Рисунке 6.

Рисунок 5. Схема и печатная плата адаптера USB интерфейса для логического анализатора (версия B 1.0).
a) b)
Рисунок 6. Внешний вид адаптера USB интерфейса версия A 1.1 (а) и версия B 1.0 (b)

Также имеется еще одна версия схемы логического анализатора (Рисунок 7), в которую уже интегрированы интерфейсы USB и LPT. Автором этого варианта является Bob Grieb и при разработке схемы использовалась среда TinyCAD, печатная плата для него разрабатывалась в редакторе FreePCB.

Рисунок 7. Принципиальная схема второго варианта логического анализатора с интегрированным коммуникацонным интерфейсом USB и LPT (версия Bob Grieb)

Часть 2 – Прошивка ПЛИС, программное обеспечение для ПК

Загрузки

Проект (схема, печатная плата) логического анализатора (версия 1.1) – скачать
Проект Bob Grieb (схема, печатная плата) — скачать
Проект адаптера USB интерфейса (версия A 1.1) – скачать
Проект адаптера USB интерфейса (версия B 1.0) – скачать

Перевод: Vadim по заказу РадиоЛоцман

Источник

Логический анализатор BeagleLogic (14 каналов, 100 МГц) своими руками — Видео

Просмотров: 17213
Комментариев: 91
Опубликовано: 01.01.2020
Автор: Паяльник TV

JLCPCB Prototype for $2(Any Color): https://jlcpcb.com

Сборка и проверка OpenSource проекта BeagleLogic
Репозиторий проекта: https://github.com/abhishek-kakkar/BeagleLogic
Страница с инструкциями и образом системы: https://beaglelogic.readthedocs.io/en/latest
Специальная версия Pulseview для работы с TCP сервером: https://goo.gl/7z1w7h

Как работать с программой KiCAD: https://youtu.be/qXZUOuXKIFg
Разработанный мной корпус: https://3dtoday.ru/3d-models/mechanical-parts/body/korpus-beaglelogic-otkrytyy
Приобрести платки можно тут: https://vk.com/bestradionews

Пишите об интересных opensource проектах в комментариях к видео!

Инструкция по настройке системы в текстовом варианте:

— используя Etcher прошиваем его на SD карту

— вставляем карту в BeagleBone

— зажимаем кнопку «user» (находится с другой стороны от кнопок reset и power) и подключаем usb сабель к компьютеру

— ждем загрузки компьютера с SD карты

— подключаемся по SSH (например используя putty) к адресу 192.168.7.2

Имя пользователя: debian

— изменяем файл /boot/uEnv.txt, удаляем символ # (решетка) перед строкой

— сохраняем файл и выключаем систему (sudo shutdown)

— зажимаем кнопку «user» (находится с другой стороны от кнопок reset и power) и подключаем usb сабель к компьютеру

— ждем прошивки образа во внутреннюю память, по окончанию потухнут светодиоды

— вытаскиваем SD карту и пере подключаем usb кабель

— подключаемся по SSH (например используя putty) к адресу 192.168.7.2

Имя пользователя: debian

— подключаем компьютер к интернету (либо кабель, либо wifi зависит от вашего компьютера)

— вводим следующие команды:

sudo apt update

sudo apt upgrade

git config http.sslVerify false

sudo ./install.sh —upgrade

— проверяем скомпилировался ли tcp сервер в выводе скрипта install, если нет, то:

sudo go server.go

— перезагружаем beaglebone (sudo reboot now)

— запускаем Pulseview, открываем окно Connect to device, выбираем beaglelogic, TCP IP, адрес вводим 192.168.7.2 и жмем scan. После чего выбираем появившиеся устройство ниже.

Далее просто работа в Pulseview.

Источник

Многоканальный логический анализатор на логических м/с

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

Но после, решил доработать конструкцию. В конечном варианте получилось вот что:

Правильнее все же будет назвать это не доработкой, а переработкой, так как от исходного варианта ничего не осталось. Работает схема следующим образом: генератор на логических элементах DD4.1 и DD4.2 генерирует прямоугольные импульсы, поступающие на счетчик DD2.Счетчик преобразует эту импульсную последовательность в двоичный код, который поступает на адресные входы дешифратора и мультиплексора (соответственно микросхемы DD3 и DD1).Так как они поступают синхронно, то номер подключенного входа мультиплексора совпадает с включенным разрядом индикатора (всего их семь, но я использовал шесть), соответственно логический уровень на подключенном входе мультиплексора определяет светится на дисплее «0» или «1».

Теперь слово о деталях — микросхемы можно взять любые из ТТЛ серии, желательно к555, так как у них ток потребления ниже. Конденсатор и резистор в подборе не критичны, частоту мультивибратора можно брать произвольную, лишь бы на глаз не было заметно мерцания сегментов. Свою конструкцию я собирал «на коленке», потому внешний вид у нее невзрачный

Если возник вопрос, почему не указаны выводы индикатора, то ответ прост — я собрал конструкцию на каком-то допотопном экземпляре этого рода устройств, и не думаю что кто-то еще захочет на нем делать (называется АЛС-318, цифры ну очень маленькие). Так что смотрите на распиновку своего индикатора.

Источник

Присосаться к I2C. Сделай простой логический анализатор

Здравствуйте. Хочу показать простой USB-логический анализатор, который можно собрать на любой отладочной плате с микроконтроллером STM32F042 например NUCLEO-F042K6 от ST. А впрочем, по ссылкам найдёте исходники и легко переделаете на любой другой из этого семейства. В этой конструкции 8 каналов. Под них в микроконтроллере задействованы порты PA0-PA7. Максимальная частота выборки – 8 МГц. Максимальная частота входного сигнала – 2 МГц. Максимальное количество выборок на канал – 4096.

Вот здесь нужно отметить, что логический анализатор это железо & ПО для захвата сигнала и его последующего исследования, измерения, анализа интерфейсов.

Оболочка для ПК позволяет после захвата проанализировать сигналы на всех 8 каналах, а также
измерить частоту сигналов, период и длительность импульсов. Подсчитать количество фронтов в выделенном участке, длительность этого участка.

А если присосаться к последовательному I2C интерфейсу и активировать анализатор, то будут автоматически расшифрованы все компоненты I2C подкрашены и обозначены в удобном для анализа виде.

Работа логического анализатора начинается с нажатия на кнопку «Начать захват». Дальше происходит следующее:

1) Устройству передаются параметры захвата.
2.а) Если триггер не задан, захват сигнала начинается сразу после получения параметров захвата.
2.б) Если триггер задан, устройство анализирует входной сигнал, не выполняя захват. Захват сигнала начинается после обнаружения условий, заданных установленным триггером.
3) Буфер захвата заполняется в соответствии с заданным количеством выборок.
4) Устройство передает данные на ПК.
5) ПО обрабатывает и отображает полученные данные.

Триггер может быть установлен на один или несколько каналов. Если триггеры заданы для нескольких каналов, захват сигнала начинается при одновременном наступлении всех условий, заданных установленными триггерами, т.е. между триггерами действует логическая связь «И».
Можно изменить имя и цвет каждого канала. Область отображения сигналов можно прокрутить или масштабировать.

С помощью инструмента «Измерение» можно измерить продолжительность выбранного участка, период, частоту, длительность импульса, посчитать количество фронтов.

Инструмент «Линейка» проводит вертикальную линию, охватывающую сигналы всех каналов, в указанном месте с указанием времени. «Линейка» удобна при оценке расположения фронтов разных каналов относительно друг друга и относительно нулевой отметки времени.

В этом ролике на простом примере можно посмотреть, как это всё работает:

В заключении хочу добавить, что оболочка написана в Visual Studio, ПО для микроконтроллера в IAR. В ближайшее время подарю 16+ канальный логический анализатор с I2C, SPI, UART, I2S. Для построения рассматриваются два микроконтроллера: stm32f730, stm32f446.

Спасибо всем, пользуйтесь на здоровье!

→ Скачать инструкцию, прошивку и скетч.
→ Скачать IAR проект
→ Скачать Visual Studio проект

Источник

Читайте также:  Коптильня горячего копчения своими руками размеры чертежи
Оцените статью
Своими руками