Последняя редакция схем/плат версии 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В в любое удобное переходное отверстие.
Прошу прощения за долгое молчание, был в разъездах...
Quote (LazyCat)
Наконец-то у Вас появилась нормальная сетка, но в Хантеке она гораздо удобнее(включая разметку), так что, если не трудно, сделайте выбор.
Сделал.
Quote (LazyCat)
Лично для меня, ради них и нужен цифровой осциллограф. Тем более, что там ПРАВИЛЬНЫЕ курсоры и показывается дифференциальная информация.
Что такое ПРАВИЛЬНЫЕ курсоры бог его знает, но тут больше Ваших личных предпочтений. Дифференциальную информацию добавлю, ее не было временно.
Quote (LazyCat)
Странно, но на 3-х разных компах у меня не более 7%. Попробуйте обновить DirectX или драйвера карты.
Ни DirectX, ни карта тут совершено не причем, так как GDI графика напрягает только процессор.
Quote (LazyCat)
Еще мне очень понравилось, что окно можно ресайзить и выбирать полноэкранный режим работы. Очень удобно и наглядно расположены все маркеры и при этом, при одном размере окна с Вашей программой, графики занимают большую площадь, что опять таки удобнее(нет захламляющей информации). У Вас, например, кнопки каналов занимают много места, хотя на их месте удобнее разместить простой флажок и divider, незачем занимать на экране место под Correction Zero, много неинформативности в курсорах(кстати, сами курсоры лучше выбирать не кнопкой, а выпадающим списком), Scalling тоже неинформативен и т.д. Вместо A+B лучше поставить выпадающий список с A+B,A-B,A*B,A/B
Ресайз не обещаю, полноэкранный режим думал сделать. График больше только по вертикали, кнопки каналов много места не занимают, Correction Zero удобен. Какой именно неинформативности много в курсорах? Scalling очень даже информативен и удобен. Хорошо сделаю A+B,A-B,A*B,A/B.
Quote (LazyCat)
Еще есть предложение сделать в софте при старте определение поддержки видеокартой OpenCL. Тогда можно свободить процессор от обсчета FFT и интерполяции sin(x)/x. Получим идеальное решение для работы в режиме реального времени. У меня есть наработки в этой области.
OpenGL наверное? Про OpenCL ничего не слышал, интересно предложение в любом случае. Кстати для обсчета БПФ использую alglib библиотеку.
Quote (LazyCat)
P.S. Еще не исправлена ошибка Project. И плохо когда любой маркер можно тянуть даже за пределы окна.
Исправлю, спасибо.
Quote (Муха)
Я думаю, взять аналоговую часть из схемы NeilScope2_1m_rev1.7, перенести туда MAX7312 (U27) из цифровой, то получится то что надо? Программная реализация конечно же нужна. Ваше мнение?
Да получится то что надо , тем более на плате MAX7312 установлена в аналоговом блоке. Программную реализацию почти доделал.
P.S. Очень хотелось бы услышать мнения по поводу предложений/критики LazyCat
---
Нет войне!
Сообщение отредактировал LeftRadio - Четверг, 21.10.2010, 14:49
скажите пожалйста! как потестировать маю плату? у меня есть сигнал генератор до 8 мегагерц, на экран ни чего не могу выводить, на экран отображаются только абры кадабры
Курсоры типа Cross ооочень удобны при изучении сложных сигналов(например, телевизионных) ибо позволяют одновременно контролировать и амплитуду и длительность каких-либо всплесков и т. д.
Quote (LeftRadio)
Correction Zero удобен
Не спорю, но занимать место на экране не должен. Т.к. вызывается очень редко, то лучше сделать из отдельного пункта меню.
Quote (LeftRadio)
Какой именно неинформативности много в курсорах?
Чтобы понять, лучше сравнить с хантеком.
Quote (LeftRadio)
Scalling очень даже информативен и удобен
Вы автор и Вам понятно, что два одинаковых X и два одинаковых Y - это разные X и Y, но так делать не принято(было хотя бы XA иXB или был бы расположен соответствующе). Но это придирки
Quote (LeftRadio)
Кстати для обсчета БПФ использую alglib библиотеку.
Хорошая библиотека, но напрягает только процессор, а OpenCL использует для расчетов мощности видеокарт(получается жуткое распараллеливание и быстродействие). Это нынче очень модно
Quote (LeftRadio)
Да получится то что надо , тем более на плате MAX7312 установлена в аналоговом блоке. Программную реализацию почти доделал.
Можно и так, но лично у меня собрана старая аналоговая часть из архива и ждал только программной поддержки, а теперь придется начинать с начала(детали-плата-пайка...)
Сообщение отредактировал LazyCat - Четверг, 21.10.2010, 21:12
скажите пожалйста! как потестировать маю плату? у меня есть сигнал генератор до 8 мегагерц, на экран ни чего не могу выводить, на экран отображаются только абры кадабры smile
Обновил софт, добавлен полноэкранный режим(это оказалось не так то просто...), дифференциальная информация пока только в полноэкранном режиме.
Очень хорошо! Сетка, когда точками, желательно в 1 пиксель. По поводу дифф инфы, хочется: Vavg, Vp-p, Vrms, и чтоб подписаны были. С частотой понятно, а еще бы период видеть и Duty Cycle шимы смотреть хорошо. А еще забыл, хоться Vmin и Vmax. Меню Channels сильно уж навороченное стало, надо подумать... Меню Display, пункты Grid type и Cursors text width сделай выбор в подменю, так лучше будет. В полноэкранном режиме риски сетки поменьше сделать нужно, мне кажется.
Меню About спрячь пожста в меню Help, постоянно туды тыкаюсь, и выход с подтверждением
Что именно бесполезно? По моему я старался сделать то что Вы просили, курсоры сделаю такие как вам нравится(точнее выбор между разными видами курсоров), сетка тоже на выбор риски/точки. Я конечно все понимаю, однако это мое хобби а не работа и поэтому сколько могу уделять времени на работу над софтом столько и дорабатываю, к сожалению времени этого совсем не много, есть и другим чем заняться...
Quote (Муха)
По поводу дифф инфы, хочется: Vavg, Vp-p, Vrms, и чтоб подписаны были. С частотой понятно, а еще бы период видеть и Duty Cycle шимы смотреть хорошо. А еще забыл, хоться Vmin и Vmax.
дифф. инф. это разница между курсорами(делтьа V и I),остальное все думал добавить в автоизмерения. ---
Ну тогда вообще все круто! Молодец Влад! И спасибо, что все таки находишь время заниматься проектом. Думаю тут всем понятно, что есть у человека и другие занятия (проблемы/заботы), просто мы немного не терпеливы.
Сообщение отредактировал Муха - Понедельник, 25.10.2010, 14:38
Спасибо, сейчас как раз делаю поддержку аналога из 2.0, я по простоте душевной не думал что это кому ни буть понадобится, но если надо, так надо :) .
P.S. По поводу подстройки нуля, я бы рад ее убрать, но точная подстройка нуля(та что находится возле инф. о курсорах) нужна для интерлива, так как автокоррекция может не совсем точно совместить лучи, попытаюсь расположить ее так что бы было удобно и не мешало.
---
Нет войне!
Сообщение отредактировал LeftRadio - Понедельник, 25.10.2010, 14:35
Я конечно все понимаю, однако это мое хобби а не работа
Я все понимаю и не хотел Вас обидеть, просто повторяться не хочется. Вот Муха все объяснил еще раз и про толщину линий и про About. Жаль, что многие мои замечания остались без внимания Еще могу только добавить, что дельту лучше обозначать не через X2-X1, а через значок дельты, как везде принято. И, на мой взгляд, совершенно не нужны пункты меню про интерполяцию.
Вот Муха все объяснил еще раз и про толщину линий и про About.
Хорошо, без проблем, спрячу я этот злосчастный About , толщину сетки сделаю настраиваемую выставляйте сколько нужно пикселей. Еще раз прочитаю Ваши замечания и попытаюсь их учесть. Заменю на дельту, а про интерполяцию просто не придумаю куда ткнуть трэкбар для нее как Вы писали(0 - отключена)... ---
толщину сетки сделаю настраиваемую выставляйте сколько нужно пикселей
Ну это, наверное, излишне.
Quote (LeftRadio)
а про интерполяцию просто не придумаю куда ткнуть трэкбар
Это сложный вопрос. Вообще-то я думал, что вместо General будет два окна группы Channel A и Chanel B со своими флажками и делителями, а флажок interlive и ползунок sin(x)/x будут стоять отдельно(там, где сейчас стоят делители). Но это мое видение и необходимо коллективное обсуждение.
Сообщение отредактировал LazyCat - Понедельник, 25.10.2010, 21:30
Вот так наааамного лучше ! Поигрался с толщиной линий и пришел к выводу, что кроме 1 пикселя больше и не надо Кстати, курсоры остались в 2 пикселя Осталось навести эстетический порядок(всякие там зазорчики и размерчики форм). Correction zero лучше сделать окном группы. В меню MATH можно удалить пункт A/B, т.к. не совсем понятна его практическая ценность, да и програмить будет легче(не надо учитывать 0) Ползунок sin(x)/x нужно сделать таким как в Scalling(max 10 точек будет достаточно). И для экономии вертикального пространства, я бы горизонтальную линейку прокрутки перенес на статусбар. Про программную реализацию аппроксимации и интерполяции мы поговорим позже.
P.S. А маркер синхронизации все равно можно таскать за пределы окна
Сообщение отредактировал LazyCat - Вторник, 26.10.2010, 10:39
Quote (LazyCat; 17.10.2010) Вместо A+B лучше поставить выпадающий список с A+B,A-B,A*B,A/B
Это я по аналогии с хантеком, а теперь не понимаю зачем нужно A/B ?
Quote (LeftRadio)
OpenCL считаю не нужным, ИМХО.
Пока мы об этом не говорим, все будет видно после реализации на основном процессоре. Под программной реализацией аппроксимации и интерполяции имелось ввиду другое, но это позже. Сейчас предлагаю пока оставить данный интерфейс и только доработать его, как было сказано выше(навести гламур, а то не очень эстетично смотрится). Что-то надо сделать со злополучным About(может сделать его обычным окном), наконец-то доделать ползунок Sin(x)/x и горизонтальную прокрутку. Correction zero должно стать активным только в Interlive mode, а вообще я по-прежнему против его наличия на экране, тем более, что в версии 2.1 он совершенно не нужен.
Сообщение отредактировал LazyCat - Вторник, 26.10.2010, 22:29
Что-то надо сделать со злополучным About, наконец-то доделать ползунок Sin(x)/x и горизонтальную прокрутку.
А что не так с About? По моему спрятал как и просили. Ползунок Sin(x)/x тоже сделал как просили 10 - максимум, просто он пока не активен, так как реализации нет. А зачем горизонтальная прокрутка ???
Quote (LazyCat)
Correction zero должно стать активным только в Interlive mode и там достаточно управлять только одним каналом А.
Не согласен, оставте его пока в покое.
Ладно, это все успеется, займусь пока доработкой 2.1 под ЖК...
to all Как удобней будет выводить Vavg, Vp-p, Vrms, Duty Cycle, Vmin Vmax и т. д., в отдельном окне? Или как по другому?
Было бы не плохо разместить их на рабочем окне (где сам график) по нижнему и верхнему краю шрифтом не большого размера. Так например сделано в моем хьюлете на работе. В меню предусмотреть отключение, а так же выбор источника (с какого канала меряется), нагромождать экран измерениями обоих каналов нет смысла. Чтобы было понятно какой канал в данный момент измеряется, нужно написи делать цветом графика канала. В полноэкранном режиме размер надписей будет больше.
Добавлено (27.10.2010, 20:04) --------------------------------------------- Вот кстати лог запуска в Windows 7 Ultimate x64 версия 6.1.7600
See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text ************** System.BadImageFormatException: Была сделана попытка загрузить программу, имеющую неверный формат. (Exception from HRESULT: 0x8007000B) at NeilScopeV2_0_1.SLUSBXpressDLL.SI_GetNumDevices(Int32& lpdwNumDevices) at NeilScopeV2_0_1.DriverInterface.Select_Driver() in C:\Visual Studio\Projects\Neil SoftWare 1.01\DriverInterface.cs:line 74 at NeilScopeV2_0_1.MainWindow.MainWindow_Load(Object sender, EventArgs e) in C:\Visual Studio\Projects\Neil SoftWare 1.01\MainFormNeilScope.cs:line 2294 at System.Windows.Forms.Form.OnLoad(EventArgs e) at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible) at System.Windows.Forms.Control.CreateControl() at System.Windows.Forms.Control.WmShowWindow(Message& m) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.Form.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** JIT Debugging ************** To enable just-in-time (JIT) debugging, the .config file for this application or computer (machine.config) must have the jitDebugging value set in the system.windows.forms section. The application must also be compiled with debugging enabled.
When JIT debugging is enabled, any unhandled exception will be sent to the JIT debugger registered on the computer rather than be handled by this dialog box.
Сообщение отредактировал Муха - Среда, 27.10.2010, 19:41
скажите пожалуйста как потестировать аналогувую часть 2.0 , у меня ни чего не показывает, может DS ка виновата? на проц частота есть,
Цифру уже проверили? Подайте на вход цифровой части меандр с небольшой частотой и амплитудой около 1,5В и попробуйте добиться показаний подстроечным резистором RV1. У меня только при одном положении RV1 осциллограф начал что-то показывать
Сообщение отредактировал Муха - Среда, 27.10.2010, 20:43
Не нужно тупить - Вы же даже не поняли к чему претензии И про Ваш вкус я, к сожалению, все понял... Да и читаете Вы невнимательно...
Quote (vahoo)
скажите пожалуйста как потестировать аналогувую часть 2.0 , у меня ни чего не показывает, может DS ка виновата? на проц частота есть, LazyCat а что у вас?
Цифру уже проверили? Подайте на вход цифровой части меандр с небольшой частотой и амплитудой около 1,5В и попробуйте добиться показаний подстроечным резистором RV1. У меня только при одном положении RV1 осциллограф начал что-то показывать
я бы на Вашем месте воздержался от подобных комментариев
Это еще почему ? Если кто-то начинает хамить, то нужно отвечать тем же !!! И чем же мое место особенное ? Тем более, что все замечания по-существу и, поверьте мне, LeftRadio их всеравно исправит.
Quote (vahoo)
а у вас?
У меня тоже, но я его пока забросил, к тому же там программно напутано с переключением Interlive mode
Сообщение отредактировал LazyCat - Четверг, 28.10.2010, 10:15