Последняя редакция схем/плат версии 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В в любое удобное переходное отверстие.
Тогда зачем было включать его по 16-битной схеме? Это не даёт никакого выигрыша. На 9 ноге скорее всего IM0, переключает шину между 8 и 16 битами. Рекомендую перевести экран на 8 бит.
serj_k4852, так я же писал, что он никак не хочет ничего показывать ни в 8 ни в 16 битном режиме, я понимаю что выигрыша большого нет, но он же должен хоть что-то показать, хоть один какой-то пиксель засветить, ан нет. А Ваш как я понял с "Радио Кота" Samsung Galaxi 3 (i9300) 4"?
А Ваш как я понял с "Радио Кота" Samsung Galaxi 3 (i9300) 4"?
Да. Всё таки рекомендую открыть мануал на ILI9481 на стр.12. Взять свой экран и глядя на шлейф на просвет через лупу найти согласно стр.12 сигналы IM. Сигналы из чипа выходят на шлейф как в мануале. Один из них может быть жёстко подключен без резисторов на землю или питание. Скорее всего это IM2 на землю. Определить их текущее подключение к резисторам и контактам шлейфа. Относительно этого определить требуемое подключение для 8-битного режима. Так же можно проверить подключение управляющих сигналов. На стр.12 они немного по другому названы. RESX - RESET, RDX - RD, WRX - WR, D - RS, CSX - CS. Далее правильно всё подключить, включая шину данных и проверять. Кстати, судя по фотке шлейфа, сигналы IM2 и IM1 уходят вправо через переходные и выходят около D0. Может я не прав.
serj_k4852, внимательно проследил дорожки от контролера дисплея под мощной лупой (20Х) и вот что у меня получилось: nRD-RD выв 15, nWR/SCL-WR выв 14, D/CX-RS выв 13, nCS-CS выв 12, IM0 выв 36, IM1 выв 35, IM0-постоянно на "0". Но это меня не успокоило, всё равно ничего не показывает. Сейчас нашёл у себя ещё один дисплейчик 4" SPT-040-035B_U1, кристалл у него 24x0,9 мм, будем искать.
Добавлено (25.09.2018, 17:26) --------------------------------------------- Произошла ошибка, 'IM0-постоянно на "0" '? читать-IM2- постоянно на "0". А у второго дисплея размер кристалла 24х1,5 мм.
'IM0-постоянно на "0" '? читать-IM2- постоянно на "0"
Значит 16-битный режим. Нарыл у себя свободный экран на ILI9481. Если нужно, то смогу на следующей неделе проверить. Может в исходниках где-то косяк образовался.
serj_k4852,просветите пожалуйста в COOIDE, не могу понять, куда он сохраняет скомпилированный файл elf, не могу найти, просто нашёл программку инициализации ili9481, скомпилировал её, он пишет что всё хорошо, создан файл elf, а где он не понятно?.
Просвещаю. В директории проекта создаётся директория с именем проекта, а в ней Debug/bin. И вот уже в ней и лежит результат. Я кажется понял, почему мог не работать вывод на 8-битной шине на ILI9481. Скомпилировал бинарник для этого режима, пробуйте. Сам проверить до следующей недели не смогу. Хотя для 16-битной шины должно было работать. PS. Второй файл для правостороннего шлейфа. Если первый заработает, то прошу и его проверить.
serj_k4852, добрый день. Инициализация прошла успешно, т.е. на дисплее отображается прямоугольник, при прошивке "правый шлейф" справа и при другой слева, значит дисплей всё-таки живой, а я хотел уже его выбрасывать.Что самое интересное, то это то, что не имеет значения подключаю я IM1 и IM0 к "+" или нет, значит, эти выводы могут быть в воздухе при 8 bit и 573 можно не ставить. Спасибо за помощь.
Инициализация прошла успешно, т.е. на дисплее отображается прямоугольник
Это хорошо, а в прямоугольнике что? Хотя бы начальный текст должен быть виден, на фотке не разглядеть.
Цитатаhohlovalehan ()
Что самое интересное, то это то, что не имеет значения подключаю я IM1 и IM0 к "+" или нет
Наверное экран раньше не работал в 16-битном режиме так как был в 8-битном, а в прошивке была ошибка для 8 бит. Нужно таки сделать переходную платку для проверки, но на следующей неделе у меня командировка, могу не успеть.
Тестовый файлик - заливает экран основными цветами по очереди.
serj_k4852,просветите пожалуйста ещё раз, при компиляции программы выдаёт кучу ошибок связанных с регистрами т.е. LCD_WR_REG(LCD_FR_INV_CTL) и т.д. и все что начинаются с LCD_WR_REG пишет что неверный синтаксис, в чём ошибка? В строках где LCD_WR_DATA всё в порядке, подскажите пожалуйста.
Добавлено (29.09.2018, 22:08) --------------------------------------------- Забыл добавить, в квадратике ничего нет, но это я думаю из за того, что мешает 573-я, уберу и посмотрю.
Добавлено (29.09.2018, 23:09) --------------------------------------------- Прошил RGB, ни чего не изменилось, тот-же прямоугольник без всяких надписей. 573-ю выпаял, ничего это не дало.
LCD_FR_INV_CTL и др - это описания состояния регистра, которые компилятор не может найти. Должны быть в каком-то h-файле. Если есть - добавить этот файл через #include. Если нет - то точные значения этих описаний не скажет никто, кроме автора, но можно попробовать понять по названию регистров.
Цитатаhohlovalehan ()
Прошил RGB, ни чего не изменилось, тот-же прямоугольник без всяких надписей. 573-ю выпаял, ничего это не дало.
Плохо, значит есть ещё где-то ошибка. Буду искать.
serj_k4852,я наверно Вас уже замучил, ну извините. Подскажите, а можно в COIDE скопировать файл из другого проекта по типу "копировать"-"вставить", уж очень много приходится переносить вручную, если самому писать, то понятно, а копировать и ещё проверять что-бы не было ошибок, уже хуже.
Подскажите, а можно в COIDE скопировать файл из другого проекта по типу "копировать"-"вставить"
Файл скопировать можно, но его потом нужно добавить в проект, как существующий файл, если это с-файл, или если это h-файл, то добавить его через #include в те файлы, где это нужно. После этого могут появиться ещё всякие зависимости от других файлов.
Разобрался с ILI9481. Пришлось внести изменения в функции вывода шрифтов и в некоторых других из за отсутствия отдельной команды позиционирования точки вывода. Инициализация экрана не поменялась. Экран ILI9481 у меня оказался с полосатыми артефактами, но проверить вывод это не помешало. В приложенных файлах две прошивки - тестовая заливка экрана основными цветами и нормальная, обе для 8-битной шины. У меня есть ещё один экран, но он пока не заработал, возможно он на другом чипе. Сейчас разбираюсь.
serj_k4852 Спасибо, завтра посмотрю. Я уже сам пытался собрать прошивку, но у меня при компиляции постоянно вылезают ошибки и как их убрать, не понимаю, ведь в программировании я полный ноль.
Воторой экран тоже оказался ILI9481, но я по цоколёвке ошибся между WR и RS. Поменял в прошивке и экран заработал. Проверил и при 16-битной шине - работает. Однако в этом экземпляре что-то с цветопередачей, очень кривая, причём она отличается при 8 и 16-битной шине. Буду разбираться дальше. По крайней мере сам чип поддерживается нормально.
PS. Экран этот таки проблемный. Выводит изображение в инверсных цветах и некоторые цвета вообще не выводит. Фактически годится только для ЧБ текстового режима. Нашёл ошибку в инициализации шины управления экрана - не было инициализации пора для сигнала записи в регистр НС573. Из за этого регистр не защёлкивал данные.
PPS. Повозился с этим экраном. Сами по себе цвета он вроде нормально выводит, но в осциллографе их ломает, пропадают плавные градации. Ну и инверсию нужно включать. Что-то с ним не так. Предыдущий экран с артефактами нормально работал с цветом.
Сообщение отредактировал serj_k4852 - Понедельник, 15.10.2018, 16:11
Прошил Вашими прошивками и вот что получилось. Тестовая, вроде прошла нормально, а вот основная как-то не понятно т.е. буковки вроде есть, но какие, не ясно, какая-то билиберда, да ещё это постоянное мигание в 1Гц, как Вы утверждаете, перезагрузка, да и цвета по моему тоже инверсные. Кстати по поводу WR и RS. У меня работает только так CS, RS, WR, RD. На счёт мигания, может ли это быть из за того, что не установлены энкодеры?
В этом случае должен быть чёрный текст на белом фоне. Это у меня так на втором экране было. Мигание это при ошибке в процессе тестирования железа при запуске. Например если ПЛИС нету/не работает или с ОЗУ проблемы. Чтобы не мигало, можно временно снять резистор между базой транзистора подсветки и контроллером, тогда подсветка будет всегда гореть.
Вот, сделал прошивку с пропуском проверки ПЛИС. Под шину 8 бит. Сейчас должно загрузиться до основного экрана. Ещё может заткнуться при отсутствии микросхемы FRAM, но тут я не уверен.
Как я понял, у меня скорее всего экранчик такой-же как у Вас второй, значит буду ждать от "братьёв" наших восточных "подарочка". Заказал дисплей ST7793 4", а этот куда нибудь приспособлю, посмотрим. А вот с миганием непонятки, нужен ST_Link, кстати, при работе тестовой прошивки их нет, или смена цветов совпадает с миганием, вот если-бы был исходник, то можно было бы изменять время смены цветов и смотреть
Добавлено (15.10.2018, 23:41) --------------------------------------------- Как-то странно стал работать инет, написал сообщение, а Вы оказалось уже ответили до этого на некоторые.
Добавлено (16.10.2018, 09:51) --------------------------------------------- Прошил без проверки ПЛИС, включается основная заливка и пропало мигание, цвета инверсные, значит буду искать косяки с ПЛИС и ОЗУ, возможно не запускается кварц 100МГц, заодно проверю FRAM, кнопка питания заработала штатно. Спасибо огромное за помощь, без Вас я бы ещё долго ковырялся с проверкой инициализации дисплея, да и вообще огромное СПАСИБО!
Как я понял, у меня скорее всего экранчик такой-же как у Вас второй
А фотку финальной картинки можно? Мне самому интересно разобраться, так как экран сам по себе вроде рабочий и жалко его выкидывать. Тем более если такая проблема частая и такой экран может ещё попадётся. При тестах он градации цветов нормально воспроизводит, а в прошивке ломает. Вчера так и не одолел.
Цитатаhohlovalehan ()
при работе тестовой прошивки их нет, или смена цветов совпадает с миганием, вот если-бы был исходник, то можно было бы изменять время смены цветов и смотреть
Не мигает, потому что проходит мимо ошибок. Исходники выложу, я там ещё мелкие правки сделал.
Я смотрю, что проблема не только с цветопередачей - вся картинка съехала вниз, нету нижней строчки меню. Возможно, что физическое разрешение экрана меньше, чем 320, так как 2 клетки по осциллогафу это 50 точек, и они как раз сверху влазят. А положенные 240 + 50 всё равно меньше 320, а здесь уже обрезано снизу. Возможно при перевороте экрана меню начнёт отображаться. Попробуем. И у меня цвета по другому выводились при инверсии. Вечером сделаю тестовую прошивку для чтения ID экрана с выводом его на экран, предполагаяя, что это ILI9481, посмотрим что за чип.
Понимаете в чём фишка, этот экран был снят с такого же телефона, что и тот который сейчас стоит на NS 3.28 (который сейчас в Питере), так вот в нём всё хорошо, только чуть заужена картинка, а с этим такая бяка. Возможно в поднебесной в разных подвалах свои стандарты.
Добавлено (16.10.2018, 14:39) --------------------------------------------- Добавлю, причиной перезапуска стал всё-таки кварц 100МГц, когда я собирал первый NS, то заказал партию 10 штук (дешевле чем одна) и вот остался последний и не работает, выходит что хороших менее 50%.
Добавлено (16.10.2018, 16:09) --------------------------------------------- Всё забываю спросить при выключении пишет 12C BUS Error: SLAW+NACK, о чем он?
Сделал тестовую прошивку под ILI9481 с инверсией для чтения регистров для 5 разных чипов, читается и выводится на экран по 6 байт. Для выбранных чипов ILI в строке вывода будет присутствовать номер чипа, если чип совпадёт, для других чипов информация может быть разная, для НХ8357 должно быть 99. На фотке вывод для моего экрана. Если будут все 0 или бред, то это какой-то другой чип и придётся читать другие регистры. Выкладываю эту тестовую прошивку и исходники текущей версии.
Добавлено (17.10.2018, 15:35) --------------------------------------------- Как я понял, надпись 12c BUS Error:SLAW+NACK означает что не загружена библиотека славянских и латинских символов, правильно? А если так, то почему? и должна ли она быть? Просмотрев исходники там вроде всё есть. Проверил кварц отдельно-работает, чёткий синус 99,634МГц, (так-что выходит зря я оговорил восточных братьев наших 50%-есть), а вот сигналы от проца к ПЛИС не идут, контакты пропал ещё раз, безрезультатно.
Ошибка при обмене по шине I2С c микросхемой памяти FRAM. Нашёл ошибку в выводе шрифтов, поэтому и бред выводился. Сейчас должно быть нормально. Проверил на своём ИЛИ9481.
Не понимаю, почему. У меня нормально всё. Сделал вариант для вывода двумя разными шрифтами + одна строчка другим способом. Между символами сделал пропуски, чтобы было видно сдвиг при выводе. Если опять будет бред, то нужна будет фотка с максимально различимыми символами. Должно быть как на фотке. Так же сделал другой вариант только со вторым способом вывода. В каком формате давать прошивку - в хекс или бин?
Последний эксперимент на сегодня. Прошивка выводит 2 символа поточечно с интервалом 1с между точками. Нужно заметить направление вывода и число точек в столбцах. Вывод должен быть снизу вверх, слева направо. Первый символ "-", второй "F", между ними пропуск. Первый символ 4 столбца шириной, второй - 8, высота 16 точек. Шрифт из прошивки timesNewRoman12, там можно посмотреть точный вид символов. Символы закрасил, чтобы было видно движение точек. По фотке даже мысли не возникло о формировании символов.
Блин, на сколько же корявые эти китайские экраны. Сделал тест для того, чтобы получить такой же неправильный вывод. В цикле перебрал 8 возможных вариантов направлений вывода информации. Все имеют одинаковый результат. То есть на моём экране работает толлько один вариант. Выкладываю этот тест. По идее должны вывестись 8 визуально РАЗНЫХ текстовых строчек с текстом TEST.
Доброго времени суток всем. У меня тоже с выводом изображения на экран были проблемы, перебрал 3 экрана, купленные на таобао, один из них заработал. На данный момент проходит тестирование регистров EPM570, на экране появляется надпись "SUCCESSFUL write/read EPM570 registers... ". Дальше ничего не происходит. В пошаговой отладке программа крутится в цикле (показано на картинке) и из него не выходит. Почему так происходит? Неисправна SRAM?
serj_k4852, я даже не буду выкладывать фото и так всё ясно, бред. Ну да ладно, я уже разуверился в том , что этот дисплей когда нибудь нормально заработает, как видно их десятки модификаций и то что работает на одном, то не работает на другом. И пес с ним, всё равно заказан ST7793, жаль конечно можно было бы использовать где-то в другом месте, а если и там будет то-же? Меня сейчас больше беспокоит другое, то что проц не может проверить наличие ПЛИС, все выводы пропаял ЕЩЁ раз-безрезультатно, с проца на ПЛИС нет никаких сигналов, проверял на разных развёртках вплоть до 25нс и ничего, тишина. Поставил энкодеры, работают, а вот настройки в EEPROM не сохраняются, значит не работает 12С. В чём проблема не понимаю, уже мозги закипают. Да, ещё, SRAM у меня стоит не CY7C1041, a IS61WV25616BLL-10TLI, это полный аналог (если верить инету).
В пошаговой отладке программа крутится в цикле (показано на картинке) и из него не выходит. Почему так происходит? Неисправна SRAM?
Это подпрограмма записи в память, а не чтения. Здесь анализируется только факт завершения цикла записи. А он завершится, если генератор будет работать И сработает триггер. Выделенная на картинке проверка как раз это и проверяет. Возможно, что-то из этого не произошло. Если не работает генератор, то можно поставить для проверки не на 100МГц, а меньше, просто будет время/деление другое. Чтение из регистров ПЛИС и памяти происходит по тактам от контроллера, а не от генератора, поэтому тест чтения регистров прошёл.
Цитатаhohlovalehan ()
я даже не буду выкладывать фото и так всё ясно, бред.
А мне интересно это увидеть.
Цитатаhohlovalehan ()
Меня сейчас больше беспокоит другое, то что проц не может проверить наличие ПЛИС, все выводы пропаял ЕЩЁ раз-безрезультатно, с проца на ПЛИС нет никаких сигналов, проверял на разных развёртках вплоть до 25нс и ничего, тишина.
Это на той тестовой прошивке, с обходом инициализации ПЛИС, что я давал? Так там как раз и происходит настройка портов контроллера.
Цитатаhohlovalehan ()
а вот настройки в EEPROM не сохраняются, значит не работает 12С. В чём проблема не понимаю, уже мозги закипают.
В схеме стоит не ЕЕПРОМ а ФРАМ. Для ЕЕПРОМ нужна задержка в циклах записи. Прошивка может быть собрана с поддержкой ЕЕПРОМ - добавить EEPROM_NO_FRAM в параметры компилятора. Забыл про неё. Также микросхема может не работать на 2.7В.
Сообщение отредактировал serj_k4852 - Четверг, 18.10.2018, 18:47