Комментарии 21
Вощем — пасибо за экономию времени!
А почему так с частотами? почему не получается выше 20МГц?
Сейчас базовая частота процессора — 120МГц.
Вот Вам и фичреквестик:)
Надо бы еще замутить шильд с диодами и резисторами защиты, питанием и разъемами на щупы.
Вот только объем работ там поболее будет, да и опыт написания софта под андройд у меня минимальный.
Вот бы ещё кто-нибудь на Stm32F4Discovery с HS USB анализатор сделал…
Если отбросить USB и выдавать данные по UART, то можно и на F1 сделать, но прошивку придется всю перелопатить — другие контроллеры USB, DMA
code.google.com/p/logicdiscovery/downloads/detail?name=LogicDiscovery-r12.bin
Добрый день! Да, старая статья, но, может, ответите.
Захотел сделать логический анализатор на STM32, начал искать различные варианты. Ваш пока самый "навороченный" из тех, которые я нашел.
Скажите, а у Вас поддерживается continuous режим, т.е. отправка данных на компьютер в реальном времени? Еще не дошли руки посмотреть Ваш код, и не до конца разобрался с SUMP протоколом, не знаю, позволяет ли он такое в принципе.
Не будет ли Isochronus трансфер более быстрым по сравнению с CDC? Правда, в таком случае потребуется написать поддержку протокола, с помощью libusb, я думаю.
На ваши вопросы в основном отвечает протокол SUMP (который, кстати, был выбран по причине наличия адекватных клиентов на то время)
1. Насколько я помню, SUMP не поддерживает непрерывную передачу.
2. SUMP-клиенту на ПК нужно указать COM-порт для подключения, поэтому CDC без вариантов.
Изохронная передача не гарантирует доставку, а выпадание сэмплов для данной задачи недопустимо.
И, да, если нужно добиться более высокой производительности, стоит сделать свой буферизующий (и передающий данные большими массивами) протокол, на базе libusb. Но придется добавлять поддержку в существующие sump-клиенты или найти что-то другое.
Я хочу сделать поддержку sigrok, который, как мне кажется, самый навороченный open source софт для логических анализаторов, осцилографов. Поддерживает большое количество оборудования с различными протоколами (и sump, и проприентарные, например saleae). Да и добавить поддержку своего в libsigrok
не очень сложно.
LogicDiscovery — простой логический анализатор