Народный осциллограф "Мурзик" на базе STM32F303VCT6 - проект

Кто любит RISC в жизни, заходим, не стесняемся.
Аватара пользователя
DrLivsy
Встал на лапы
Сообщения: 89
Зарегистрирован: Чт ноя 03, 2011 17:05:03

Народный осциллограф "Мурзик" на базе STM32F303VCT6 - проект

Сообщение DrLivsy »

Доброго...,
недавно я ознакомился с документацией на МК STM32F303vct6, установленный на плате STM32F3DISCOVERY (описание в аттаче). И меня очень заинтересовало наличие в нем 4х штук 5ти мегасемпловых АЦП. Причем эти АЦП могут работать парами по внутреннему стробу, расширяясь до 10ти MSPS при 12ти битной точности.
Типа так:
Изображение
см. STM32F30x ADC modes.pdf в аттаче
То есть, мы видим камушек ценой до 10 баксов с двумя 10MSPS АЦП. Это грозит нам возможностью красиво, не по Найквисту/Котельникову, а именно красиво разворачивать на экране осциллографа любые сигналы с частотой до 1-2МГц применяя прямую выборку по времени, и периодические сигналы до 10-20Мгц и выше, применяя техники выборок по эквивалентному времени, по двум каналам одновременно.
Типа так:
Изображение
см. Equivalent_time_sampling_technics.pdf в аттаче
Если приобрести плату STM32F3DISCOVERY (11 баксов на st.com, на алибабах/ибэях 23 бакса, а у нас немного дороже, около 30ти), то мы поимеем прекрасный макет для оценки возможностей этого МК в качестве почти готового USB осциллографа. (не забывая ознакомится с Лицензионным соглашением на использование оценочных плат ST, в аттаче снизу).
На этой плате собран программатор/отладчик типа ST LINK V.2 на МК STM32 103-ей серии, а также сам МК STM32F303vct6 с небольшой, но интересной обвязкой, которая может пригодится.
1. Для начала предлагаю реализовать одноканальный USB осциллограф на "настоящие 1Мгц" на базе платы STM32F3DISCOVERY (не забывая, что она оценочная, на всех ее фотках должна быть надпись типа "демонстрационный/оценочный макет, не для продажи")
2. Дальнейшее развитие - одноканальный осциллограф с народным ЖКИ от Nokia 1100 - цена и доступность которого зашкаливают. Кроме того, Nokia заявляет, что выпустила этот телефон в количестве 250млн штук, и что он является чуть ли не самым массовым бытовым радиоэлектронным прибором всех времен и народов. Это значит, что запчасти для него еще долго будут на рынке.
3. В продолжение этого балета есть смысл сделать два канала, прикошачить несколько плюшек типа частотомера, измерителя RCL, логического пробника и использовать дисплей от Nokia 6300, который стоит недорого (китайская копия всего в два раза дороже (около 6 баксов) дисплея от Nokia 1100) и на него есть описание.

В этой теме предлагаю определиться с пунктом №1, и реализовать его. Остальные пункты наверное лучше будет потом вынести в отдельные темы, если администрация позволит.

По ходу пьесы можно немного увеличить скорость работы АЦП понизив его точность до 10ти или даже 8ми бит.
типа так:
Изображение
Если посмотреть на скорость семплирования при точности 8бит, то мы увидим 7,2MSPS для одного АЦП. При использовании сдвоенного черезстрочного режима она возрастет почти вдвое.

Мои обстоятельства не дают повода надеяться на самостоятельную реализацию по нескольким причинам:
1. Я слаб в Сях и радиолюбительских делах. Даже если смогу, то не скоро. :)
2. Обстановка у нас на Донбассе сложная, даже страшновато заказывать эту плату в иногородних интернет магазинах, а вдруг не дойдет?
Но недорогой и более-менее качественный осцил в свою лабу мне все равно хочется. :)
И именно поэтому я и создал эту тему, изложив максимум имеющейся у меня инфы, а так же мои собственные соображения.
Выкладывать даташит и справочное руководство по STM32F303vc не буду, дабы не перетяжелять тему.

Предполагаю следующие проблемы:
1. Изготовление печатной платы и распайка на ней микроконтроллера: корпус LQFP суров, особенно в стоногом варианте.
Вложения
Equivalent_time_sampling_technics.pdf
(1.95 МБ) 2976 скачиваний
STM32F30x ADC modes.pdf
(725.42 КБ) 2162 скачивания
STM32F3DISCOVERY.pdf
(327.91 КБ) 2192 скачивания
EvaluationProductLicenseAgreement.pdf
Лицензионным соглашением на использование оценочных плат ST
(21.08 КБ) 1838 скачиваний
Последний раз редактировалось DrLivsy Пт май 09, 2014 11:54:19, всего редактировалось 7 раз.
Аватара пользователя
DrLivsy
Встал на лапы
Сообщения: 89
Зарегистрирован: Чт ноя 03, 2011 17:05:03

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение DrLivsy »

Решение проблемы с печатной платой: EmKit_QFP100 Макетная, отладочная плата. Гугл знает где и почем.
Последний раз редактировалось DrLivsy Пт май 09, 2014 11:53:35, всего редактировалось 1 раз.
Morroc
Друг Кота
Сообщения: 19494
Зарегистрирован: Чт фев 20, 2014 18:57:55

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение Morroc »

дисплей 96 x 65 что ли ? данунафиг
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Аватара пользователя
DrLivsy
Встал на лапы
Сообщения: 89
Зарегистрирован: Чт ноя 03, 2011 17:05:03

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение DrLivsy »

Morroc писал(а):дисплей 96 x 65 что ли ? данунафиг

Для народного/ширпотребовского употребления вполне. тем более, что этот дисплюк для автономной работы, без USB.
Особенно с перспективой перепрошивки и установки дисплея 320х240 - очень даже.
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение Леонид Иванович »

DrLivsy писал(а):Но недорогой и более-менее качественный осцил в свою лабу мне все равно хочется. :)


Тут ситуация такая: если хочется иметь осцилл, то нужно просто купить какой-нибудь DSO203, или лучше QDSO за 120$. А вот если хочется с этим всем долго повозиться, тогда можно браться делать. Тема с самодельным цифровым осциллографам, наверное, рекордсмен по незаконченным проектам.
Аватара пользователя
DrLivsy
Встал на лапы
Сообщения: 89
Зарегистрирован: Чт ноя 03, 2011 17:05:03

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение DrLivsy »

Леонид Иванович писал(а):
DrLivsy писал(а):Но недорогой и более-менее качественный осцил в свою лабу мне все равно хочется. :)


Тут ситуация такая: если хочется иметь осцилл, то нужно просто купить какой-нибудь DSO203, или лучше QDSO за 120$. А вот если хочется с этим всем долго повозиться, тогда можно браться делать. Тема с самодельным цифровым осциллографам, наверное, рекордсмен по незаконченным проектам.

Спс, подумаю...
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение oleg110592 »

может пригодится http://tomeko.net/miniscope_v2d/
Аватара пользователя
DrLivsy
Встал на лапы
Сообщения: 89
Зарегистрирован: Чт ноя 03, 2011 17:05:03

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение DrLivsy »

oleg110592 писал(а):может пригодится http://tomeko.net/miniscope_v2d/

Действительно интересный проект, на таком же МК, но низкоскоростной.
Причина - нехватка памяти для буферизации данных. (? надо разобраться, исходников не видал)
А вот софтина для ББ почти готовая, и кроме осцилла, реализован генератор. Причем форма выходного сигнала вырисовывается мышкой - я в восторге! (на видео можно увидеть) :music:
PS. Пообщался с автором: маловат буфер USB.
Аватара пользователя
optima
Прорезались зубы
Сообщения: 232
Зарегистрирован: Вт май 08, 2012 10:42:29

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение optima »

Не вижу ничего сурового у LQFP100 делал платку без проблем! а по поводу осциллографа соглашусь с ЛИ.
Изображение
Аватара пользователя
DrLivsy
Встал на лапы
Сообщения: 89
Зарегистрирован: Чт ноя 03, 2011 17:05:03

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение DrLivsy »

optima писал(а):Не вижу ничего сурового у LQFP100 делал платку без проблем! а по поводу осциллографа соглашусь с ЛИ.

Красиво, это ЛУТ или фотоспособ?
Аватара пользователя
optima
Прорезались зубы
Сообщения: 232
Зарегистрирован: Вт май 08, 2012 10:42:29

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение optima »

ФОТО!
pcb
Опытный кот
Сообщения: 833
Зарегистрирован: Пт авг 12, 2011 09:14:27
Откуда: Млечный путь/Земля/РФ/Екатеринбург

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение pcb »

Почему не ПЛИС+АЦП?
Разработал:
-BLDC
-ФУОЗ/МПСЗ
-SMART BMS
-ECU/EDC на STM32F4(43%)+CPLD(57%)
-Моноинжектор на ATSAMD20G16
-контроллер эффектов для RGB LED ленты
-умные часы/обратный счет/секундомер
-устройство измерения емкости АКБ
Аватара пользователя
DrLivsy
Встал на лапы
Сообщения: 89
Зарегистрирован: Чт ноя 03, 2011 17:05:03

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение DrLivsy »

pcb писал(а):Почему не ПЛИС+АЦП?

Та я не гордый, мне бы хоть МК к USB прикрутить. Просто опыта мало, и пока видится одна проблема по п. 1му: действительно большой поток данных от МК через USB на комп. Если МК тупо делает АЦП и отдает на ББ, то мы имеем поток в ~15МБ/сек (типа 10MSPSx12bit). Это и вправду много для 2х юсбей, тем более, что буфер у МК под ЮСБ всего 512 байт. Это намекает на то, что надо делать какую-то предобработку прямо на МК, тем более,, что у него есть какие-то DSP возможности. Особенно ввиду того, что 12бит нам не надо, нам хватит и 8ми, а там вообще 14MSPS. :oops:
Вообще это мой первый проект на СТМ, я еще даже оценочной платой не обзавелся, ожидаю на след. неделе.
В общем, ридю даташиты/референсы, жду плату, обсуждаю перспективы с опытными людьми.
Аватара пользователя
GARMIN
Держит паяльник хвостом
Сообщения: 952
Зарегистрирован: Вс дек 02, 2012 16:58:33
Откуда: от туда
Контактная информация:

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение GARMIN »

DrLivsy писал(а):Просто опыта мало, и пока видится одна проблема по п. 1му: действительно большой поток данных от МК через USB на комп. Если МК тупо делает АЦП и отдает на ББ, то мы имеем поток в ~15МБ/сек (типа 10MSPSx12bit). Это и вправду много для 2х юсбей, тем более, что буфер у МК под ЮСБ всего 512 байт. Это намекает на то, что надо делать какую-то предобработку прямо на МК, тем более,, что у него есть какие-то DSP возможности. Особенно ввиду того, что 12бит нам не надо, нам хватит и 8ми, а там вообще 14MSPS. :oops:

Немного отодвиньтесь от близкого рассмотрения вопроса.
512 байт это уже 512 отсчётов. Довольно много, ведь на экране осциллографа мы видим не больше 100 отсчётов. Памяти даже на растяжку хватит.
Обновление экрана не чаще 10 раз в секунду. Значит, вам достаточна скорость передачи 5120 байт в секунду. Скорость 115 кбод перекроет потребности в четыре раза.
Достаточно захватывать сигнал в буфер при совпадении условий синхронизации, а потом передавать себе в комп потихоньку. ;)
Аватара пользователя
DrLivsy
Встал на лапы
Сообщения: 89
Зарегистрирован: Чт ноя 03, 2011 17:05:03

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение DrLivsy »

GARMIN писал(а):
DrLivsy писал(а):Просто опыта мало, и пока видится одна проблема по п. 1му: действительно большой поток данных от МК через USB на комп. Если МК тупо делает АЦП и отдает на ББ, то мы имеем поток в ~15МБ/сек (типа 10MSPSx12bit). Это и вправду много для 2х юсбей, тем более, что буфер у МК под ЮСБ всего 512 байт. Это намекает на то, что надо делать какую-то предобработку прямо на МК, тем более,, что у него есть какие-то DSP возможности. Особенно ввиду того, что 12бит нам не надо, нам хватит и 8ми, а там вообще 14MSPS. :oops:

Немного отодвиньтесь от близкого рассмотрения вопроса.
512 байт это уже 512 отсчётов. Довольно много, ведь на экране осциллографа мы видим не больше 100 отсчётов. Памяти даже на растяжку хватит.
Обновление экрана не чаще 10 раз в секунду. Значит, вам достаточна скорость передачи 5120 байт в секунду. Скорость 115 кбод перекроет потребности в четыре раза.
Достаточно захватывать сигнал в буфер при совпадении условий синхронизации, а потом передавать себе в комп потихоньку. ;)

Спасибо. Гора с плеч.
Это типа намек на то, что пора садиться за CoIDE и начинать кодить?
Понял.
Я тока еще немного теорию цифрового осциллоскопирования почитаю. А то у меня пока есть небольшие непонятки с простыми вопросами типа синхронизация, особенно для режима с хитроэквивалентными выборками. :)
svs39
Встал на лапы
Сообщения: 95
Зарегистрирован: Вс авг 22, 2010 09:23:08

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение svs39 »

1- Логический анализатор с аналоговым каналом "LOGIC-U PRO" http://6-lab.com/ru/news/3-projectnews/ ... u-pro.html. Одновременно на мониторе 8 каналов логического анализатора и один канал осциллогрофа и все с объемом памяти ПК и частотой дискретизации 12 МГц! Купил в 2010 г и доволен (насчет осциллографа- меня устраивает, но понравится не всем). Анализатором читал только И2С и УАРТ(с другими нет работ). Достоинство- память в ОЗУ ПК, т.е. можно писАть долго. Там еще ряд возможностей(генератор,вольтметр,частотомер), но я их не пробовал. Кстати китайцы продают аналоги дешевле (в 2010г не продавали)
2- в самодельном придется повозиться с входной частью если захотите хорошие характеристики
3- вот может поможет " Цифровой осциллограф своими руками". viewtopic.php?f=10&t=10324&p=1832086&hilit=осциллограф+stm32f303#p1832086
Аватара пользователя
balmer
Это не хвост, это антенна
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение balmer »

DrLivsy писал(а):измерителя RCL


Хех, а я свой измеритель RCL на STM32F303 уже почитай полгода делаю по вечерам. Уже почти готов, осталась мелочевка :)) Могу сказать, что аналоговая часть для осциллографа и RCL сильно отличаются, врядли имеет смысл совмещать в одной конструкции.

Особенности такие.
1. Коэффициэнт усиления. Сигнал 100 мкВ это уже считается хорошая амплитуда сигнала.
2. Нелинейные искажения. Если будет скажем 1% нелинейных искажений - это уже не откалибровать во всем диапазоне нормально. Поплывет определение фазы сигнала.
3. Фильтрация верхних частот обязательна. На частотах порядка 1 МГц куча радиостанций/помех. И каждый сантиметр выводов деталей их ловит.

PS: А так да, 303-я серия очень хороша.
Аватара пользователя
DrLivsy
Встал на лапы
Сообщения: 89
Зарегистрирован: Чт ноя 03, 2011 17:05:03

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение DrLivsy »

А я токо шо принес STM32F3DISCOVERY домой! :music:
На одном ЮСБ порте говорит программатор СТлинк, а на втором - СТМ32 мышь. Но мыша не работает, там видать отдельная прошивка есть.
Мои опасения насчет жестокости лицензионного соглашения не совсем оправдались: в инструкции на обратной стороне вкладыша написано "...10/ Develop your own applications using available examples" - разрабатывайте свои собственные приложения используя имеющиеся примеры.
То есть это не ардуино, ее нельзя встраивать в готовые изделия, но и не просто игрушка, можно свои проекты отрабатывать.
Красиво на ней светодиодов напаяли. :)
balmer писал(а):
DrLivsy писал(а):измерителя RCL

Хех, а я свой измеритель RCL на STM32F303 уже почитай полгода делаю по вечерам. Уже почти готов, осталась мелочевка :)) Могу сказать, что аналоговая часть для осциллографа и RCL сильно отличаются, врядли имеет смысл совмещать в одной конструкции.

Просто одним коробком на столе меньше.
Аватара пользователя
balmer
Это не хвост, это антенна
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение balmer »

DrLivsy писал(а):Просто одним коробком на столе меньше.


Это только сначала кажется, что "просто". Вот скажем сделаешь ты осциллограф. Очень быстро сделаешь. Потратишь всего 3 месяца.
Дальше выбор:
- вставить это в корпус и радоваться готовому изделию.
- промучаться еще 3 месяца и прикрутить RLC Meter.

Причем разработка нескольких устройств в одном - это дополнительный гемморой. Например в RLC измерителе важно сделать короткие провода между аналоговой и цифровой частью, это очень сильно уменьшает уровень помех, наводимых на ADC входы микроконтроллера.

Я бы вообще присоветовал сделать для начала USB осциллограф простенький на основе Discovery. USB примеры есть простые у STM32. Приделать пару ОУ на вход и готово.

Можно даже данные качать по USB без реалтайма. Выделить буфер на 20 КБ и пихать туда сэмплы. Потом скачивать на компьютер и строить графики.
Аватара пользователя
DrLivsy
Встал на лапы
Сообщения: 89
Зарегистрирован: Чт ноя 03, 2011 17:05:03

Re: Народный осциллограф "Мурзик" на базе STM32F303VCT6 - пр

Сообщение DrLivsy »

balmer писал(а):Я бы вообще присоветовал сделать для начала USB осциллограф простенький на основе Discovery. USB примеры есть простые у STM32. Приделать пару ОУ на вход и готово.

Можно даже данные качать по USB без реалтайма. Выделить буфер на 20 КБ и пихать туда сэмплы. Потом скачивать на компьютер и строить графики.

Как раз это программа-минимум - сделать простенький USB осцилл.

А насчет РЦЛ измерителя: http://radiokot.ru/circuit/digital/measure/113
С исходниками. Рекомендую.
Ответить

Вернуться в «ARM»