Последняя редакция схем/плат версии 2.0 - NS_V2_0_rev3_7
Прошивка для 2.0 - NS_V2_0_rev1_7E_Firmware Вкл./Отк. каналов А/В происходит по нажатию соотв. кнопок когда ни одно меню не выбрано, при выборе меню Sync эти кнопки перекл. источник синхронизации.
Для конфигурации DS1085 прошить соответствующей прошивкой МК, передернуть питание, подождать некоторое время пока на экране ЖК не выведется надпись об успешном завершении и выключить осцилл. Адрес DS1085 устанавливается равным 0x59 (89 по десятичной системе).
Данная прошивка просто делает автоматом то что можно сделать вручную из программы на ПК и если настраивать вручную из программы то она не нужна.
Внимание! При конфигурации к I2C не должно быть подключено ничего кроме DS1085.
Схема ревизия 3.2 - NS_3.0_rev_3.2.pdf Схема соединения ЖК с 16-ти битной шиной(только для ревизий ниже 3.2, в 3.2 HC573 уже есть на основной плате) - NS_3.0_HC573.pdf BOM(список компонентов) - BOM_NS3_rev3_2.htm
//---------------------------------------------------------------------------------------------------------- Прошивальщик МК (автор Ильдар) - NSFlashLoader2. Утилита для перепрошивки СР2102 VID/PID под NeilScope3 (автор Ильдар) - NSCP2102Utilite2.rar. Использование данных VID/PID для перепрошивки СР2102 под другие устройства категорически запрещено, они были получены по запросу у Silicon Laboratories Inc. и предназначены для использования только с NeilScope3 или другими версиями NeilScope.
Утилита для теста осциллографа - ns_test_util. Для запуска нужно скачать и установить Python 3.4 и PyQt5, при установке добавляем переменные окружения. Распаковать архив куда нибудь и набрать из этой папки в консоли - "python main.py"
Для последующих обновлений просто запускаем NSFlashLoader, и обновляемся. Джампер при этом трогать уже не нужно.
//---------------------------------------------------------------------------------------------------------- . . . Важные замечания по сборке
На плате не указана перемычка с 10-го вывода(INTRL) 74НС4052(U15) на вывод SWDIO МК, можно и просто подпаять пока на +3.3В в любое удобное переходное отверстие.
Блин ну и достали же глюки Keil-а Прям как в сказке, только с плохим подтекстом... Жила была функция для смены делителей, называлась ChangeDividers(uint8_t channel, uin8_t div), так вот ну ни в какую переключение делителей не работало, я уже начал копаться в I2C, думал неправильно инициализировал или еще чего... Смотрю а долбанный Keil вообще в эту функцию не заходит и точку останова там не поставить, ну ладно может с оптимизацией переборщил, поменял, ага фиг вам называется не заходит и все . Ничего не меняя переименовал функцию на cngDivider и о чудо все заработало! Ну вот как это называется
Можно не обращать на это сообщение внимания, просто мне хватает своих ошибок и глюков чтобы еще с таким дебилизмом парится вот эмоции и зашкаливают ... ---
Практически доделал основной функционал, "накопил" необходимые изменения в ПЛИС, внесу и просимулирую, ну а затем прошью и протестирую в железе. Осталось сделать меню настроек, режимы триггера и прокрутку. ---
Интерполяция сигнала будет предусмотрена, спектроанализатор? Вот похожий по использованному АЦП девайс, но одноканальный, так там есть, как говорится, ВСЁ. Oscill Это, конечно, не эталон и не показатель, хотелось бы знать, что из этого автор хочет воплотить в Neil Scop-е?
У него преимущество обработки сигнала на ПК, в автономе для всех этих функций нужен быстрый камень. Прошвырнусь по возможностям осцилла, функции Oscill и комментарии то что у нас:
OSCILL авто/ждущая/ручная/задержанная развертки; - у нас тоже самое. произвольное соотношение пред- и поствыборок; - аналогично аппаратный оффсет до трех экранов; - не хорошая функция, не документированная производителем АЦП, может привести к завороту спектров и еще много чему что, к примеру, может обеспечить идеальный видимый на экране сигнал но в реальности все ужасно, обсуждали здесь эту функцию решили отказаться.
аналоговые фильтры 3кГц и 3МГц; - это да, этого у нас нет. 15типозиционный аппаратный аттенюатор; - у нас хуже, для простоты и меньшой цены всего 6 диапазонов. закрытый/открытый вход;- тоже. произвольный уровень синхронизации, / , \ и /+\ - у нас лучше, намного больше режимов. растяжка осциллограммы по вертикали и горизонтали; - без проблем даже в автономе статистический режим (DPO) цветом/яркостью; - это в автономе сложно, но возможно и реализуемо, не думал про этот режим.
стробоскоп (RIS, эквивалентная развертка); - если честно не совсем знаю как реализуется стробоскоп, поэтому не занимался. интерполяция (4 вида, в т.ч. sin(x)/x ); - хотел делать, после тестов производительности на МК усреднение до 256 раз; - можно сделать, если есть смысл. режим пикового детектора (2 варианта); - тоже без проблем реализуется режим высокого разрешения (до 14 бит); - не знаю каким образом они это сделали, у нас нет. гибкие настройки баланса качество/скорость; - это так, абы написать :) измерения постоянного и среднего значений напряжения; - есть, точнее будет когда прошивку допилю. вольтметр переменного тока: СКЗ (True RMS) и дБ; - аналогично предыдущему пиковый вольтметр: мин, макс, пик-пик; - аналогично предыдущему измерения нижнего, верхнего уровней, амплитуды; - аналогично предыдущему измерение периода, частоты, длительности, скважности; - думал над реализацией, если в автономе потянет, то будет. измерения времени нарастания/спада, выбросов; - без проблем. спектроанализатор, измеритель КНИ, селективный вольтметр; - думал над реализацией, если в автономе потянет, то будет. гистограммы сигнала (статанализ); - у нас нет, не потянет. экранные измерения, выделение области для измерений; - это естественно есть. сохранение статических и динамических осциллограмм; - также без проблем. экспорт данных в различных форматах, в т.ч. непрерывный; - аналогично предыдущему рекордер - длительная запись осциллограмм; - также без проблем, до пропускной способности СР2102
Ну вот и сравнивайте, у нас в отличии от oscill есть хороший цветной ЖК и большинство измерений/автоизмерений в автономном варианте, то есть ноут с собой носить не надо , плюс открытое железо, плюс открытые все исходники. Не понравилось что то или хочется сделать именно под себя, пожалуйста все открыто ---
Нет войне!
Сообщение отредактировал LeftRadio - Вторник, 20.12.2011, 16:21
Ну и грех не добавить функцию "логический анализатор", т. к. имеется 2 канала, очень удобно будет наблюдать взаимное расположение сигналов в 2-х разных точках
В реальности еще лучше , фотик не очень... Интерполяция смотря какая, линейная или sin(x)/x, или еще какая , sin(x)/x например будет упорно делать из прямоугольников синус.
Вот еще фото, допилил "быстрое" меню, в нем можно корректировать ноль и смещать осциллограммы по Y, и сохранить эти значения что бы каждый раз при включении не выставлять
Всем привет! По поводу дизайна. Углы основной рамки нужно сделать прямыми, а не закругленными. Ведь больше на экране нет ничего закругленного, все прямое. Углы смотрятся как на старом телеке
ОК, сделаю без скругления, кстати зря Вам так не нравится, в реальности выглядит совсем неплохо, ну да ладно это мелочи
Quote (volk0203)
Как минимум линейная и sin(x)/x. Возможно?
Линейная будет осуществляться по Брезенхему, тут думаю проблем с производительностью не должно быть, ну а для sin(x)/x нужно будет сначала интерполировать сигнал по sin(x)/x а затем уже по Брезенхему соединять точки, тут не уверен что будет быстро, пробовать надо. ---
Ну рисование линий по Брезенхему уже реализовано в в моей граф. библиотеке, так что тут работы не много, остается только sin(x)/x, сегодня этим и займусь, плюс начну делать автоизмерения. ---
Сделал линейную интерполяцию, что могу сказать, производительность камня на ппределе, мерцания отчетливо видны при двух включенных каналах, при одном нет. А сигнал конечно лучше смотрится чем при отсутствии интерполяции Sin(Х)/X камень не потянет, при работе с ПК конечно проблем никаких. Правда можно будет потом сменить МК на STM32F103, благо они пин-пин совместимые.
Итого в автономе три режима отображения осциллограммы, точками, линейная интерполяция, режим макс./мин. ---
Сейчас у меня его нет, так что пока отлаживать буду на сотом, эти МК практически не отличаются, потом будет достаточно перекомпилить и проверить, ну и если что поправить пару регистров ---
Решайте сами, разница только в скорости, 100-ый начинает заикаться , хоть и не сильно, на линейной интерполяции с рисованием линий по Брезенхему, в обычном режиме скорости вполне хватает. Нормально, по скорости, и в режиме макс./мин., так как там линии рисуются не по Брезенхему, а "обычные" прямые, с небольшой оптимизацией вывода под ЖК. ---
Для такого дела 40 грн. + доставка за 103 погоды не сделают... Когда Вы проходили по пунктам осциллографа OSCILL во многих было "если потянет". Я так думаю, что всё-таки стоит запаять 103, это при Вашем желании сможет расширить функционал девайса...
Основной функционал осцилла уже готов, оптимизировал вывод, осциллограммы теперь совсем не мерцают даже когда очень редко обновляются из-за медленной развертки или тормозов МК при интерполяции, в принципе тормозов особо и незаметно Как чуток допилю основные функции, выложу прошивку и исходники. ---
Привет всем участникам форума! С НАСТУПАЮЩИМ НОВЫМ ГОДОМ всем участникам форума! Доброго времени суток, форум-чане , случайно забрел сюда и заинтересовался Вашим проэктом сам леплю что-похожее. Уважаемый "LeftRadio" по какой причине пришлось снизит чувствительность входа на порядок см. pdf-ки " NS_3.0_rev_1.9.pdf против NS_3.0_rev_1.1.pdf" ведь иметь максимальную чувствительность 0,1 В /дел. маловато . Поздравляю Вас за смелость создать что-то свое , не шагая по дороге "Copy - paste" даже у китайцев. Слизать что-то у Янки сложновато в данной области для маленького коллектива и даже практически невозможно и очень дорого из-за полного отсутствия соответствующей элементной базы . Наладка и выпуск которого возможен только по госпрограмме и все равно приводит только к вечному отставанию и краху, как пример главного копировщика , поэтому надо идти по своей дороге где сам все понимаешь и не надо догадываться придумать о чем думал и руководствовался совсем незнакомый тебе человек и тянуть свой крест до конца . __________________________________________________
P.S. Сейчас играюсь на базе XC3S50AN и STM32F105 на платке от Дискaвери , экран СХ65 ( вместо АЦП стоят счетчики тактируемые 50МГц в интерливе на 90 градусов ) .=>> (потом 4-х АЦП типа АД831Е в интерливе на 50МГц )В начале у меня было АT90S8535 потом разные АTмега-варианты по 2 до 644-го и они стали временной рабочей лошадкой на базе ( 2х ТДА8703, быстрая память и логика , счетчики АС и др.) пока не понял , что это тоже ТУПИК.Почти 1.5 года (лето 2009 - 2010) штудировал, дедуктировал и мечтал про переход на XMEGA , DSP_Texas , CYPREX или FPGA . Насчет STM32F100 особо и не думал , сначала купил в ИМРАДЕ по двойному тарифу чтобы приценится потом позже получил как халяву от немцев. Начал с Альтеры как более доступного но у меня ничего толком не получилось кроме мелочей, тогда решил делать очередную попытку с XC3S50AN. Освоил вроде быстро XC3S50AN , но после 4-5 месяца игр-освоения столкнулся с проблемой нехватки ресурсов особенно памяти , а на переход XC3S200-1000AN для меня был невозможен по причине что только имеются БГА корпуса (нужна 4-х слойная платы и финансы). И вот снова и снова начал думать об Альтере как о возможном варианте и снова пшик , где-то месяца 2-2.5 коту под хвост с EP2C8T144 , но появился свет в туннели в виде XC6SLX9-2TQG144C может-быть уже здесь уже есть ресурсы на уровне хороших Альтер и на порядок больше памяти чем в XC3S50AN но снова НОВЫЙ ГОД впереди . Для меня 2011 был "годом ПЛИС-а а не КОТА ".
Расширять функционал, используя ресурсы STM32F103RBT6, не планируете? Прошивки будет две, для разных МК?
Планирую, планирую но дайте же сначала доделать основной функционал, так что бы работало надежно и без глюков, потом можно и расширять
Quote (Arpad)
Уважаемый "LeftRadio" по какой причине пришлось снизит чувствительность входа на порядок см. pdf-ки " NS_3.0_rev_1.9.pdf против NS_3.0_rev_1.1.pdf" ведь иметь максимальную чувствительность 0,1 В /дел. маловато .
Здравствуйте и Вас тоже с наступающим Снизить пришлось по причине стоимости и Т.У., у автономного прибора нет особо лишнего заряда аккумулятора для питания реле, есть конечно бистабильные высокочастотные реле, но они дороги и труднодоступны, ставить же ключи нельзя, для коэффициента 1, один вход ключа должен быть подключен непосредственно ко входу осцилла, второй допустим через делитель 1:20, тогда какой смысл в делителе если не то что бы 20В, а даже 10В не подашь на вход осцилла так как тот первый вход ключа этого "не поймет" Получится 20В/дел., но больше +-5В на вход подавать нельзя. В общем, если подумать, такой вариант который сейчас оказался оптимальным для автономного прибора по параметрам/цене/потреблению, тем более прибор и так получается довольно дорогим. Как поставите АЦП и начнете заниматься аналогом поймете Хотя, как я понимаю, Вы делаете стационарный осцилл так что у Вас один путь - реле по входу ---