Логический анализатор BeagleLogic (14 каналов, 100 МГц) своими руками — Видео
Просмотров: | 17213 | |||
Комментариев: | 91 | |||
Опубликовано: | 01.01.2020 | |||
Автор: | Паяльник TV | |||
JLCPCB Prototype for $2(Any Color): https://jlcpcb.com Сборка и проверка OpenSource проекта BeagleLogic Как работать с программой KiCAD: https://youtu.be/qXZUOuXKIFg Пишите об интересных 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. Источник Миниатюрный 4-канальный логический анализатор на AVRЛогический анализатор – это инструмент, который позволит увидеть и проанализировать последовательность логических 0 и 1 в цифровом сигнале. К примеру, можно изучить цифровой сигнал с ИК приемника-демодулятора типа TSOP-1736, выходные и входные сигналы микросхемы MAX232, а также шину I2C (линия тактирования и линия данных) во многих электронных устройствах. В статье мы рассмотрим конструкцию миниатюрного 4-канального логического анализатора с ЖК дисплеем от мобильного телефона Nokia 5110/3110. Основой конструкции является микроконтроллер Atmel ATmega8, помимо него используются еще несколько дискретных компонентов. Основные характеристики прибора:
Принципиальная схема На Рисунке 1 представлена принципиальная схема прибора. Сразу следует отметить, что прибор питается от 4 аккумуляторов с напряжением 1.2 В каждый. Внимание. Питание от 4 батареек с напряжением 1.5 В недопустимо, при данной схеме прибора, так как напряжение 6 В может вывести из строя микроконтроллер и ЖК дисплей. Выключатель S1 предназначен для подачи питания. Подтягивающие резисторы R2-R5 установлены с целью исключения появления ложных данных на цифровых входах прибора из-за влияния электромагнитных полей или при касании пальцами сигнальных щупов. Светодиод LED1 предназначен для индикации наличия сигнала на цифровых входах прибора и, следовательно, начала записи сигналов в память. В схеме используется ЖК индикатор от мобильного телефона Nokia 3310/5510, он рассчитан на работу при напряжении питания 3.3 В – 5.0 В, однако максимальное напряжение для подсветки дисплея – 3.3 В, поэтому в схеме установленo три последовательно включенных диода 1N4007 (D1-D3) по линии питания подсветки дисплея. Благодаря диодам напряжение снизится до 2.7 В и его вполне будет достаточно для питания подсветки. Процесс захвата данных и программное обеспечение Следует отметить, что автором подготовлены две версии прошивки микроконтроллера. Изначально, для версии 1.00 логического анализатора, использовалась интегрированная среда разработки AVR Studio 4.18, но затем автор перекомпилировал исходный код и для AVR Studio 5 – версия 1.01. После перекомпиляции под 5 версию среды разработки и дальнейшего тестирования прибора, было замечено улучшение стабильности захватываемых сигналов. Запись сигналов ведется во внутренний буфер памяти ОЗУ, который рассчитан на 290 отсчетов. Буфер данных образован 870 байтами (для 1 версии программы микроконтроллера) из которых 2 байта используются для счетчика и 1 байт для информирования о входном канале. В версии 1.01 буфер данных был сокращен до 256×3=768 Байт с целью увеличения скорости захвата данных, т.к. переменная размера буфера является 8-битной, вместо 16-битной, которая использовалась в первой версии ПО. После подачи питания, микроконтроллер переходит в режим ожидания импульса на любом из 4 входов прибора. По определению входного импульса микроконтроллер начинает подсчет времени до поступления следующего импульса на любом из 4 входов. Длительность выборки хранится в 16-битной переменной «counter». После переполнения этой переменной информация о состоянии 4 входов и значение счетчика сохраняются в буфере и значение его адреса увеличивается на три (2 байта для счетчика и 1 байт – информация о входной линии). Этот процесс повторяется пока микроконтроллер не заполнит весь буфер (870/3=290 выборок или импульсов). Процесс записи сигналов в память микроконтроллера изображен на рисунке 2. После заполнения буфера, все накопленные данные отображаются на ЖК дисплее в виде осциллограммы. Пользователь может управлять осциллограммой – передвигать влево (кнопка S3) или вправо (кнопка S4), чтобы просмотреть всю сохраненную последовательность импульсов. Если были записаны низкоскоростные сигналы, то пользователь может изменить масштаб в пропорции 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096 или 8192 нажатием на кнопку S2. При программировании микроконтроллера необходимо установить Fuse-биты в соответствии с рисунком. Вид печатной платы и расположение компонентов Демонстрация работы прибора Загрузки Принципиальная схема, рисунок печатной платы, исходный код и файл для прошивки микроконтроллера (v1.0, AVR Studio 4.18) – скачать Исходный код и файл для прошивки микроконтроллера (v1.01, AVR Studio 5) – скачать Перевод: Vadim по заказу РадиоЛоцман Источник Присосаться к I2C. Сделай простой логический анализаторЗдравствуйте. Хочу показать простой USB-логический анализатор, который можно собрать на любой отладочной плате с микроконтроллером STM32F042 например NUCLEO-F042K6 от ST. А впрочем, по ссылкам найдёте исходники и легко переделаете на любой другой из этого семейства. В этой конструкции 8 каналов. Под них в микроконтроллере задействованы порты PA0-PA7. Максимальная частота выборки – 8 МГц. Максимальная частота входного сигнала – 2 МГц. Максимальное количество выборок на канал – 4096. Вот здесь нужно отметить, что логический анализатор это железо & ПО для захвата сигнала и его последующего исследования, измерения, анализа интерфейсов.
Оболочка для ПК позволяет после захвата проанализировать сигналы на всех 8 каналах, а также А если присосаться к последовательному I2C интерфейсу и активировать анализатор, то будут автоматически расшифрованы все компоненты I2C подкрашены и обозначены в удобном для анализа виде. Работа логического анализатора начинается с нажатия на кнопку «Начать захват». Дальше происходит следующее: 1) Устройству передаются параметры захвата. Триггер может быть установлен на один или несколько каналов. Если триггеры заданы для нескольких каналов, захват сигнала начинается при одновременном наступлении всех условий, заданных установленными триггерами, т.е. между триггерами действует логическая связь «И». С помощью инструмента «Измерение» можно измерить продолжительность выбранного участка, период, частоту, длительность импульса, посчитать количество фронтов. Инструмент «Линейка» проводит вертикальную линию, охватывающую сигналы всех каналов, в указанном месте с указанием времени. «Линейка» удобна при оценке расположения фронтов разных каналов относительно друг друга и относительно нулевой отметки времени. В этом ролике на простом примере можно посмотреть, как это всё работает: В заключении хочу добавить, что оболочка написана в Visual Studio, ПО для микроконтроллера в IAR. В ближайшее время подарю 16+ канальный логический анализатор с I2C, SPI, UART, I2S. Для построения рассматриваются два микроконтроллера: stm32f730, stm32f446. Спасибо всем, пользуйтесь на здоровье! → Скачать инструкцию, прошивку и скетч. Источник LogicDiscovery — простой логический анализаторДовольно часто в домашних электронных поделках возникает необходимость посмотреть тот или иной сигнал, причем достаточно его цифрового представления — что передает МК по I2C, правильно ли настроен ШИМ и т.п. Если на работе есть хороший осциллограф, то покупать его для дома — слишком дорогое удовольствие, особенно, когда необходимость возникает лишь от случая к случаю. Логический анализатор (далее ЛА) – устройство предназначенное, для записи, просмотра и анализа сигналов в цифровых схемах. Подобно осциллографу, ЛА подключается одним или несколькими щупами к анализируемой схеме, но в отличие от осциллографа фиксирует только два состояния сигнала «0» и «1». Важной функцией ЛА является способность автоматически расшифровывать записанные сигналы, например, разобрать обмен данными по шине I2C или SPI. Также ЛА отличаются бОльшим, по сравнению с осциллографами, количеством анализируемых линий: от 8 в простых анализаторах до сотен в промышленных образцах. ПриступимИтак, все, что нам понадобится это:
Клиент написан на Java, поэтому полученное решение не зависит от ОС. Теоретически вы можете использовать любой SUMP-совместимый клиент, однако ниже я буду описывать работу именно с этой программой. Плата опознается ПК как COM-порт, для Linux драйвера стандартные и должны уже быть в ядре, для Win драйвера скачиваются с сайта ST. После того как плата опозналась можно запускать клиент и приступать к работе. ОграниченияВ проекте используется открытый протокол SUMP. Данный протокол изначально разрабатывался для ЛА на базе ПЛИС, и поскольку в части записи входных сигналов и анализа потока данных микроконтроллеры по-прежнему им уступают, нам будут доступны не все функции реализованные в клиенте:
Эти ограничения следует иметь ввиду при настройке клиента. Тот ничего не знает об этих ограничениях и позволит выбрать любые настройки. Полученный результат в этом случае будет некорректным. ПользуемсяЗапускаем клиент через файл run.bat или run.sh, в зависимости от используемой ОС. О функциях клиента можно почитать на его страничке, здесь я опишу процесс получения первых сэмплов и те настройки, которые попадают под ограничения. В меню «Capture», выбирая пункт «Begin capture», открываем окно настроек записи. На первой странице в поле ««Analyzer port» выбираем порт, на котором сидит наш ЛА, больше ничего менять не нужно. Кнопкой ««Show device metadata» можно проверить наличие связи: На второй странице указываем параметры захвата. Первые два пункта не трогаем, Страница «Triggers» — самое интересное. Первый флажок ставим, чтобы просто включить триггеры. Для проверки работы соедините порты PD0 и PA2 (на данном порту выводится тестовый сигнал UART) перемычкой. Вот и все, нажимаем «Capture» и смотрим на полученный сигнал (Ctrl+F — обзорный масштаб): Если ничего не происходит, значит, вы выставили срабатывание триггера на неправильные линии, или сигнала вовсе нет — проверьте настройки и подключение платы. Триггер можно запустить вручную, нажатием User button (синяя кнопка). Техника безопасностиПомните: вы подключаетесь напрямую к портам микроконтроллера! Никакой защиты, кроме встроенных в МК диодов на плате нет. Поэтому сначала удостоверьтесь что, изучаемый сигнал имеет максимальное напряжение 3.3В, в крайнем случае 5В, но тогда желательно добавить между источником сигнала и ЛА защитный резистор. При подключении к анализируемой схеме не забывайте сначала соединять земли, и только уже потом сигнальные линии. Особенно, когда анализируемая схема питается от своего источника питания, а не от того же ПК, к которому подключен ЛА. ПолезностиPS: LogicDiscovery успешно применяется как дома, так и на работе, преимущественно для анализа последовательных интерфейсов (SPI, UART). Если будут пожелания по расширению функционала — буду рад выслушать. Учитывайте только, что многое упирается в ограничения клиента, например, размер выборки на F4 можно сделать в разы больше, однако клиент просто не знает других размеров. Источник |