VirtOs - Самый простой двухлучевой осциллограф осциллограф на Arduino

gun-58
Offline
Зарегистрирован: 10.02.2016

Третье фото это частота 703265 КГц.

oleg.forkop
Offline
Зарегистрирован: 21.06.2015

  gun58 Cхема и прошивка от Okmor без именений?Печатка в Lay есть?Если можно скинте на почту печатку,схему и хек фаил . Буду очень блогодарен . oleg.forkop@yandex.ru

alexandr55
Offline
Зарегистрирован: 26.03.2017

Удалил

man_200
Offline
Зарегистрирован: 29.04.2016

gun-58, синусоида не показатель. Погоняй приборчик меандром и посмотри на каких частотах начинаются изменения формы импульсов - это и будет реальная максимальная частота отображения формы неискаженного сигнала

Okmor
Okmor аватар
Offline
Зарегистрирован: 16.10.2015

man_200 пишет:

 Погоняй приборчик меандром и посмотри на каких частотах начинаются изменения формы импульсов

man_200
Offline
Зарегистрирован: 29.04.2016

Для пультоскопа отлично, но форма меандра уже на 200к меняется. Т.е. можно сказать, что это низкочастотный аппарат. Для полного счастья не хватает показаний уровня размаха сигнала.

Okmor
Okmor аватар
Offline
Зарегистрирован: 16.10.2015

man_200 пишет:

Для пультоскопа отлично, но форма меандра уже на 200к меняется.

Все зависит от входного операционника. Хотя при питании 0в - 5в трудно добится лучших характеристик. Тут надо переходить на большие напряжения питания, двуполярное питание, или более дорогие операционники.

sslobodyan@ya.ru
Offline
Зарегистрирован: 25.12.2011

Эх, рискую быть битым, но все же гляньте на еще один проектик http://www.stm32duino.com/viewtopic.php?t=107 Тоже ардуинка, только 32-разрядная. Цена маленькая, а скорость захвата - почти 2 мегасемпла в секунду.

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

sslobodyan@ya.ru пишет:

Тоже ардуинка, только 32-разрядная. 

Это не ардуино. Да, эта плата на STM32 поддерживается в Arduino IDE, но от этого ардуиной она не стала.

sslobodyan@ya.ru
Offline
Зарегистрирован: 25.12.2011

Ну это как бы спорный вопрос. Ардуинка это не только мега328 и мега2560, а все что официально поддерживает Ардуино ИДЕ, в том числе и 32-разрядные атмелки. И я даже не призываю бросать все здесь и делать тот проект (я его и сам то не делал - не надо). Просто кому мало частоты семплирования - там вариант не намного сложнее, софт писаный в привычной атмосфере Ардуино ИДЕ. Берите отсюда аналоговую часть, а оттуда - скоростной захват. Цена платок 2 бакса с доставкой из Китая.

Juris
Juris аватар
Offline
Зарегистрирован: 28.10.2016

sslobodyan в этом смысле прав, что уж всосалось в среду Arduino, то тем, так сказать, и стало. Там и STM32, и модули Teensy, и платформа Intel, и всякое. За этой веткой STM32duino я слежу, время от времени по любознательности пробую кое-какие версии. Кстати, ещё такая там ветка, модификации китайского DLO-138:
http://www.stm32duino.com/viewtopic.php?f=19&t=1847

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

sslobodyan@ya.ru пишет:

Ардуинка это не только мега328 и мега2560, а все что официально поддерживает Ардуино ИДЕ, в том числе и 32-разрядные атмелки.

Ну во-первых, это не атмелки. STM32 - это микроконтроллеры фирмы STMicroelectronics на ядре Cortex-M (архитектура ARM). С микроконтрроллерами фирмы Atmel на ядре AVR не имеют ничего общего.

Во-вторых, официальной поддержки нет (найдите на официальном сайте (ТУТ или ТУТ) хоть одну плату на STM32). Интеграция STM32 в среду Arduino IDE - это всё неофициально, сделано энтузиастами.

sslobodyan@ya.ru пишет:

И я даже не призываю бросать все здесь и делать тот проект (я его и сам то не делал - не надо). Просто кому мало частоты семплирования - там вариант не намного сложнее, софт писаный в привычной атмосфере Ардуино ИДЕ. Берите отсюда аналоговую часть, а оттуда - скоростной захват. Цена платок 2 бакса с доставкой из Китая.

Я ничего не имею против, если кто-то будет программировать STM32 в среде Ардуино. Я просто поправил Вас, что STM32 - это не ардуино.

sslobodyan@ya.ru
Offline
Зарегистрирован: 25.12.2011

Меня поправлять не надо. Надо самому лично просмотреть список поддерживаемых плат и обнаружить там платки с контроллерами на М0. То есть - не ядро Мега. Кстати, назовите еще и Интел энтузиастами :) А то они не знают.

ТС, извините за вторжение. Ваша разработка, как и сам подход, мне понравилась. Соединить бы эти проекты вместе :)

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

sslobodyan@ya.ru пишет:

Меня поправлять не надо. Надо самому лично просмотреть список поддерживаемых плат и обнаружить там платки с контроллерами на М0. То есть - не ядро Мега.

Разговор был конкретно про STM32. А на ядре Cortex-M существует много микроконтроллеров разных производителей. В том числе Atmel SAMD21 (Cortex-M0), который официально есть в списке поддерживаемых плат (MKR1000, MKRZero). Или Atmel SAM3X8E (Cortex-M3), который стоит в плате Arduino DUEЕщё раз - найдите платы на STM32 на официальном сайте ардуино. Их нет...

sslobodyan@ya.ru пишет:

Кстати, назовите еще и Интел энтузиастами :) А то они не знают.

А при чём здесь интел? Плата на Intel, в отличие от STM32, есть официально - Genuino 101.

И да, под "энтузиастами" я имел в виду тех людей, кто сумел добавить программную поддержку в Arduino IDE, а не самих производителей микроконтроллеров.

sslobodyan@ya.ru
Offline
Зарегистрирован: 25.12.2011

Эх, не люблю я споры. Но коль пошла такая пьянка...

Что такое ардуино? Это набор подпрограмм, которые скрывают "сложные" с точки зрения новичка части для программирования микроконтроллера. Ну и плюс под этот набор уже написали кучу библиотек. А в конечном итоге весь этот код обрабатывает стандартный компилятор GCC. И под какой камень сделают этот набор - то и будет ардуинкой. Сделали под ESP - и она тоже стала ардуинкой. Потому что ардуинка - это не аппаратная платформа. Вот из ИДЕ вызывается настройка библиотек и там есть библиотека поддержки STM32. Да, разработчики ИДЕ ее официально не разрабатывали и не поддерживают. Так они многие библиотеки не разрабатывали и не поддерживают. Посмотрите сколько разработали ребята из ФруктовойАды, которые в официальную команду ардуины и не записывались.

Конечно, более правильно и профессионально писать под STM32 на кейле, иаре или даже кокосе (кстати, а ведь есть и неплохой бесплатный официальный компилятор SW, поддерживающий куб - достаточно удобная вещь). Но пока я могу взять ардуиноИДЕ и написать в ней digitalWrite, а система имеет блок setup и блок основного кода в loop плюс ардуинский загрузчик - эта платка будет считаться (по крайней мере мной) одной из ардуинок. Так же как и интеловская Genuino или на атмеловском SAMе. А если в моем коде появится что-то из SPL или HAL - то та же платка уже не ардуино. Так же, как и обычный камень мега328 сразу перестает быть ардуиной как только разработка пойдет в аврстудии и затрется ардуиновый загрузчик.

Я вот не вникал в код топикстартера. Но почему-то у меня есть почти 100% уверенность, что его код (особенно UI) очень легко переносится на STM32 именно в среде ардуино. А вот если задействовать аппаратные превосходства STM32 над мегой328 - то получим выигрыш в скорости захвата в разы. И отрисовка экрана по DMA SPI 36Mhz (если экран позволит - ILI9314 позволяет) - тоже существенный плюс. И все будет в среде ардуино. Ок, называйте это ардуиноподобной платой. Только если я вижу нечто похожее на яблоко, с яблочным вкусом и цветом, которое выросло на яблоне, то говорю что это и есть яблоко, а не яблокоподобный фрукт.

Лекс 59
Лекс 59 аватар
Offline
Зарегистрирован: 02.04.2016

Удалил.

printer
Offline
Зарегистрирован: 23.10.2017

в схеме    шина   с ic1 на ic2 последовательное подключение КАК ? ?

HenKEY
Offline
Зарегистрирован: 25.10.2017

Кто нибуть может поделится списком деталей на этот девайс (лучше даже ссылочками на али), конкретно интересуют кварц, DC-DC, зарядка, энкодер, корпус и аккум. Буду очень благодарен.

Novice User
Offline
Зарегистрирован: 25.09.2017

Развожу плату под вариант с 1 страницы,вопрос по дисплею http://arduino.ru/forum/proekty/virtos-samyi-prostoi-dvukhluchevoi-ostsillograf-ostsillograf-na-arduino#comment-215992

он стоит контактами вверх или вниз?

добавил-сделал вверх,посмотрим что получится

Novice User
Offline
Зарегистрирован: 25.09.2017

Надо было контактами вниз,буду переделывать плату

P.S. Жаль что тема умерла

Okmor
Okmor аватар
Offline
Зарегистрирован: 16.10.2015

Novice User пишет:
Надо было контактами вниз,буду переделывать плату

Тоже так лоханулся.

Novice User пишет:
P.S. Жаль что тема умерла

Пополнение в семъе заставило вынести все в подвал.

Novice User
Offline
Зарегистрирован: 25.09.2017

мои поздравления!буду рыться сам

Novice User
Offline
Зарегистрирован: 25.09.2017

собрал,работает,оу MCP6022,в корпус ставить не буду-собирал для интереса

Vanjook
Offline
Зарегистрирован: 12.05.2017

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

LS020 не найду, пытался, лежит хамелеон, плата распаяна, но нет дисплея(был, сдох...), и комплект запчастей еще на 2 шт, НО LS020 не найти, заказывал уже и тлефоны в сборе и отдельно дисплеи, всяко, устал. Трудно найти их, эти дисплеи. Хумалеона убрал под стекло. 

зы под другой дисплей, более доступный.

Novice User
Offline
Зарегистрирован: 25.09.2017

на 1 стр самый первый пост есть ссылка где купить дисплей,там же схема

я его собрал,но никак не могу победить-у меня все горизонтальные линии внизу экрана в куче(то есть егулируются от одной линии(=все линии слились в одну),кручу дальше полоса шире-шире а потом максимум все линии через пару пикселей),что может быть не так не понимаю,спрашивать не стал т к тема похоже умерла

а что вы называете "более доступный дисплей"? нокиа5110 чтоли?)))

ili9341 есть?

Лекс 59
Лекс 59 аватар
Offline
Зарегистрирован: 02.04.2016

Novice User пишет:

я его собрал,но никак не могу победить-у меня все горизонтальные линии внизу экрана в куче(то есть егулируются от одной линии(=все линии слились в одну),кручу дальше полоса шире-шире а потом максимум все линии через пару пикселей),что может быть не так не понимаю,спрашивать не стал т к тема похоже умерла

Что умерла, не факт.

Я не очень понял из вашего описания проблему. Возможно просто входной усилитель не пашет.

Novice User
Offline
Зарегистрирован: 25.09.2017

я по вертикальные деления,осциллограмма есть,регулируется норм

чуть позже выложу фото

Vanjook
Offline
Зарегистрирован: 12.05.2017

ILI9341 есть, подбирал для dso138, даже 2 шт, снятые с FLY DS123. А нарыл их благодаря вот этой теме: http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov?page=3#comment-216869  пост 166

как их можно использовать для наших целей? У меня в процессе еще DSO138, но на своих з.ч. Пока развожу плату, делать буду на  miniSTM32 платке.

Контроллер уже прошит у меня и дисплей работает.

Где посмотреть ваше детище в работе с этим дисплеем?

Novice User
Offline
Зарегистрирован: 25.09.2017

Фото особо не делал,парочка фото есть здесь http://radiokot.ru/forum/viewtopic.php?f=57&t=150142

пролшивка здесь http://radiokot.ru/forum/viewtopic.php?f=25&t=19878&start=8160

разбеусь с осциллом VirtOs и думаю доделать свой хамелеон на ili9341 до конца-осталось вкл шим чтоб отрицательное напряжение вырабатывалось как в оригинале хамелеона,на плате от влада (покупал плату у него)

Vanjook
Offline
Зарегистрирован: 12.05.2017

Если допилите Хамелеон для ILI9341 ,будет офигенно. Я тогда доделаю и хамелеон свой, и VirtuOs сделаю, DSO138 отодвину. Я так понял ILI9341 работает чисто по 1битному SPI? Кстати плата у меня на хамелеон такая же, она на работе, позже скину фото. Можно схему как цепляли дисплей к хамелеону? Я попробую подключить, помогу в тестах. У меня отрицательно енапряжение на Хамелеоне плохо появлялось, пока добивался его, добил дисп. Год назад было. Пылится в коробке, откопаю, покажу.

Novice User
Offline
Зарегистрирован: 25.09.2017

DSO138 у меня разогнан в 9 раз,прошивка от GFX с кота (платная)

как подключен дисплей понятно из печ платы,связи нарисованы

 

Vanjook
Offline
Зарегистрирован: 12.05.2017

Теперь я "перед камнем")) 

Novice User
Offline
Зарегистрирован: 25.09.2017
Vanjook
Offline
Зарегистрирован: 12.05.2017

Контроллер точно 9341, значит подойдет. Проверю, там ясно будет.

Novice User
Offline
Зарегистрирован: 25.09.2017

залил прошивку UpgaradeLibSPI_1canal с первых страниц,все работает

до этого наверно сам накосячил в исходнике

энкодер прыгал через шаг,сделал так

ISR (PCINT1_vect) {
  TimeClickB = millis();
  static byte old_n = PINC & B00011000; // маска B00011000 что б читать только нужные 2 бита
  byte new_n = PINC & B00011000;
  if (old_n == 8 && new_n == 24 ) {
    if ((PINC&(1<<5))==0){NumberMenu = constrain(NumberMenu-1,0,3) ;} else {--EncoderGo /*-= 1*/;}
  }
  if (old_n == 16 && new_n == 24) { 
    if ((PINC&(1<<5))==0){NumberMenu = constrain(NumberMenu+1,0,3) ;} else {++EncoderGo /*+= 1*/;}
  }
  old_n = new_n;
}

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

printer
Offline
Зарегистрирован: 23.10.2017

Okmor-- Ваш скетч на оцил не льется- извени но где то косяк ошибка компеляции.Все другое в лет шьет. По другим скетчам и библиотекам все по другому не как у тебя. Скинь еше нормально с библиотеками деталюшки уже куплены.И не только у меня.

Novice User
Offline
Зарегистрирован: 25.09.2017

я все препобовал,все компилиются,какой именно у вас не компилируется?

 

printer
Offline
Зарегистрирован: 23.10.2017

Залил с горем пополам базар закончен.Не люблю форумы

Vanjook
Offline
Зарегистрирован: 12.05.2017

Эх, у меня дисплей только с 8ми или 16 битным интерфейсом, чтоб перевести его в 4 проводной интерфейсн, нужно линии конфигурации переключить, а на шлейф они не все выведены, только IM0. Может попробывать взять мегу с большим количеством ног, например Mega16? Подключить по 8ми битной шине и перекомпилить, а?

Novice User
Offline
Зарегистрирован: 25.09.2017

попробуйте,у меня нет такого дисплея(только SPI)

Vanjook
Offline
Зарегистрирован: 12.05.2017

Хм, а скетч влезет в мегу16?

boriss
Offline
Зарегистрирован: 07.01.2018

Добрый день. Решил повторить но, скетч не компилируется .

В прогромировании не разбираюсь , а по железу собрать пока всё нормально...

Из опоратной части есть дисплей st7735, arduino328, остальное "приделаю" если зароботает программа.

Ошибка

Arduino: 1.8.5 (Windows 8), Плата:"Arduino/Genuino Uno"
 
java.io.IOException: Отказано в доступе
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createTempFile(File.java:2024)
at processing.app.BaseNoGui.saveFile(BaseNoGui.java:908)
at processing.app.SketchFile.save(SketchFile.java:287)
at processing.app.Sketch.save(Sketch.java:138)
at processing.app.SketchController.save(SketchController.java:344)
at processing.app.Editor.handleSave2(Editor.java:2020)
at processing.app.Editor.handleSave(Editor.java:2000)
at processing.app.Editor.handleRun(Editor.java:1718)
at processing.app.Editor.handleRun(Editor.java:1713)
at processing.app.EditorToolbar.mousePressed(EditorToolbar.java:345)
at java.awt.Component.processMouseEvent(Component.java:6530)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6298)
at java.awt.Container.processEvent(Container.java:2236)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4522)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
at java.awt.Container.dispatchEventImpl(Container.java:2280)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Отказано в доступе
 
 
 
 
 
 
 
 
 
 
sketch\ST7565.cpp:29:82: fatal error: c:\Program Files\Arduino(x86)\hardware\arduino\avr\libraries\SPI\SPI.h: No such file or directory
 
 #include <c:\Program Files\Arduino(x86)\hardware\arduino\avr\libraries\SPI\SPI.h>
 
                                                                                  ^
 
compilation terminated.
 
Несколько библиотек найдено для "SPI.h"
 Используется: C:\Program Files (x86)\arduino-1.8.5\hardware\arduino\avr\libraries\SPI
Не используется: C:\proekt\New Folder\libraries\SPI-master
exit status 1
Ошибка компиляции для платы Arduino/Genuino Uno.
 
Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"
 
Vanjook
Offline
Зарегистрирован: 12.05.2017
Лекс 59
Лекс 59 аватар
Offline
Зарегистрирован: 02.04.2016

Разместил на сайте "Радиосхемы" два обзора. По теме "Входные узлы самодельных осциллографов".

http://radioskot.ru/publ/vkhodnye_uzly_samodelnykh_oscillografov/1-1-0-1328

http://radioskot.ru/publ/nachinajushhim/vkhodnye_uzly_samodelnykh_oscillografov_2/5-1-0-1332

Планирую еще как минимум один, уже со схемой и платой входной части. Пока для ослика с сайта "Электрик". Благо есть вариант уже в металле. На АД823.

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

Если все пройдет нормально, то будет переделанная схема под голую Мегу 328 в TQFP и печатная плата. В идеале хотелось бы собрать одноплатный вариант, нечто типа ДСО138. Но с другими характеристиками, естественно. Сейчас в ожидании получения нужных компанентов, прорабатываю варианты входной части в Мультисиме.

В связи с этим вопрос к Okmor и VetalST.

Если вы не потеряли интерес к данной тематике, разумеется.

Возможно ли будет, не изменяя прошивку, изменяя только схему, отказаться от виртуальной земли?

 

yucan
Offline
Зарегистрирован: 20.04.2015

Лекс 59, спасибо за обзоры!

Если у кого то ещё нет, довольно полезно почитать книгу

"Ардуино Осциллограф Проекты"

 

alexandr55
Offline
Зарегистрирован: 26.03.2017

yucan пишет:

 

Если у кого то ещё нет, довольно полезно почитать книгу

 

Спасибо

Лекс 59
Лекс 59 аватар
Offline
Зарегистрирован: 02.04.2016

Опубликовал третий обзор по входным цепям осциллографа.

http://radioskot.ru/publ/nachinajushhim/vkhodnye_uzly_oscillografov_3_us...

К сожалению мой вопрос двумя постами выше пока так и висит без реакции. а ведь одной из главных причин составления данных обзоров было желание довести до логического завершения VirtOS_VetalST.

Okmor
Okmor аватар
Offline
Зарегистрирован: 16.10.2015

Лекс 59 пишет:
К сожалению мой вопрос двумя постами выше пока так и висит без реакции. а ведь одной из главных причин составления данных обзоров было желание довести до логического завершения VirtOS_VetalST.

Всем привет. К сожалению у меня по причинам пополнения в семье нет возможности заниматся пайкой и макетированием, но есть возможность программировать по вечерах. Если у автора будет вдохновение сделать отдельно входной тракт и выслать мне (можно и не бесплатно), остальные детали (экранчик и ардуинку я закажу сам какую нужно), то мы совместно можем продолжить проект.

Лекс 59
Лекс 59 аватар
Offline
Зарегистрирован: 02.04.2016

Okmor пишет:

 остальные детали (экранчик и ардуинку я закажу сам какую нужно), то мы совместно можем продолжить проект.

Предложение логичное и разумное. Я подумаю.

Трудности: у меня сейчас есть не все для реализации. Давно никуда ничего не отправлял, слабо представляю, как сейчас пройдет посылка с неизвестным электронным устройством. Вы ведь в Украине?

И по самой реализации. ХЗ какой дисплей. Я бы предпочел ЛС020. Или 7735. У каждого свои недостатки. А в идеале меня бы интересовал проект с не слишком проблемной локализацией под разные дисплеи.

Ардуино любая, я буду ориентироваться на мегу 328 и делать на голом камне.

Но это все позже. Пока проверю свои запасы и подумаю.

 

Лекс 59
Лекс 59 аватар
Offline
Зарегистрирован: 02.04.2016

что то глюки при попытке отредактировать пост. Заменю глюк этой надписью пока.