Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
QUOTE (Gospodin_Riba @ Mar 10 2019, 04:51 PM)
Появилась проблема с загрузкой программ по UART0. То грузится, то нет. Выдаёт ошибку таймаута по COM-порту.
Пока проблему обошёл сменой UART, теперь гружусь с UART2 - с ним загрузка идёт стабильно.
Причина проблемы обнаружена и блестяще устранена.
Подтяжек в 10 кОм (на плате 9,1 кОм) - оказалось недостаточно. Напряжение на пинах было 1.8V. Для логической "1" надо больше. Поставил подтяжки 1,1 кОм - напряжение лог. "1" стало в норме: 3 - 3.2 V.
Попутно выяснил, что и с логическим "0" было тоже не всё впорядке - иногда напряжение на пинах было 1.4 V. Подтянул резистором 1 кОм на GND.
Теперь грузится с UART0 и с UART2 (с какого угодно)! И я рад! А то загрузка через UART Boot Host иногда капризничала по вышеназванным причинам.
А теперь о новом!
1) Поднял отрисовку через EDMA - теперь процессор может заниматься другими вещами и отрисовка идёт впаралель!
2) Сделал таймер и поднял прерывание от него. Это позволило делать замеры тестов на отрисовку.
При установленной шине EMIFA впритык и оптимальными времянками на дисплей, число кадров в секунду получилось таким:
CPU рисует 101 кадров в секунду DMA - 108 кадров в секунду.
Разрешение 480x320, 2 байта на точку. Шина - толщиной байт.
3) Поднял SPI и портировал инит SD-карты. Поддерживаются только SDHC и SDXC. Древние SDSC (менее 2 ГБ) - НЕ поддерживаются! Можно было и их поддержать, но мне лень
Ах, да, SD карту подцепил на SPI, потому что Техасцы - паразиты - сделали пины на SDIO пересекающимися с EMIFA. Яотдал предпочтение EMIFA - всё-таки лучше оставить скоростную отрисовку в дисплей.
Но это ещё не окончательное решение. Тут витают мысли через PRUSS сделать обмен с дисплеем через кастомные GPIO. Но это надо изучать. Карта SD при этом цепляется на SDIO, который кстати - 8 битный, только вот все 8 бит можно только в картах eMMC задействовать. Поэтому если и будет, то только в 4-битном исполнении
Ниже сорец проекта для CCS v.6 - по сути - прототип SDK на C6745 от Рыбы.
Большинство сорцов пришлось писать с нуля - хедеры тоже сам делаю, описываю регистры через даташит. Никаких калокубов и лишних структур, сжирающих память - объявление регистров прямое.
Это сообщение отредактировал Gospodin_Riba - Mar 16 2019, 11:44 AM
Gospodin_Riba а процессор вы припаивали "микроволной"?
QUOTE
PRUSS - это ещё 2 процессора внутри. Это довольно вещь в себе, для них отдельная системакоманд.
прелюбопытно, да http://processors.wiki.ti.com/index.php/PR...ly_Instructions в целом продумано, стандартные лог. операции, даже min/max. Вот это действительно, полезная многопроцессорность. (чего нехватало в интел, хотяб 8051-ых, на перефирии, на порту LPT и т.п. а не фейковых ядер по типу HT) Прееелестно-прелееестно... А вот ноут/нетбучные моники с lvds наверно нереально заюзать.. (там дифф.пары clc x 2, data_0-data3 x2 ) Хотя тоже, не угадаешь, долго пришлось привыкать к дешовке как гнус N100: экран хоть и матовый, но блеклый и углы обзора жуть. А когда другой собирал(N150-ый), то подвернулись остатки от более древней модели nc10. Запилил его (от нечего делать: и был, приятно шокирован, сочной и четкой картинкой (особенно в 80х25), нормальным углом обзора. стало понятно почему NC10-ый стоил 400эвров..
Это сообщение отредактировал microxa - Mar 16 2019, 03:01 PM
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
QUOTE
а процессор вы припаивали "микроволной"?
Нет, обычным игольчатым жалом, сточенным по диагонали "лопаткой". При пайке использую флюс котоый якобы из США, но на самом деле китайская подделка. Очень понравилось - припой реально растекается красиво по ножками и не слипается. Единственно, глаза потом 2 дня болят, если флюса много попало - ощущение как будто нагадили в глаза. И с рук смывается только спиртом, мыло не смывает. Но в отличие от канифоли - флюс полностью прозрачный и легко оттирается спиртом.
QUOTE
А вот ноут/нетбучные моники с lvds наверно нереально заюзать.. (там дифф.пары clc x 2, data_0-data3 x2 )
С6745 не имеет LCD контроллера. Только шины. Может лвдс как-то можно,но это выходит за сферу моих интересов.
QUOTE
гнус N100: экран хоть и матовый, но блеклый и углы обзора жуть. А когда другой собирал(N150-ый), то подвернулись остатки от более древней модели nc10. Запилил его (от нечего делать: и был, приятно шокирован, сочной и четкой картинкой (особенно в 80х25), нормальным углом обзора. стало понятно почему NC10-ый стоил 400эвров
Да, с дисплеями проблема: надо смотреть их в действии и потом покупать! Когда я брал Ардуино-дисплей 480x320 я подумал: "дам ка я шанс исправиться Ilitek'у - производителю дисплея", может дисплеи бОльшего чем 320x240 разрешения -они выпускают нормальные.... Нифига! Как были говном - так и остались! Более LCD с Ilitek-овскими контроллерами (это которые на ILI**** начинаются) -НЕ ПОКУПАЮ. Все они - говно одного сорта.
Утилита от TI для раскидывания пинов на C6743/45/47 omap-L137,полезная вещь - сокращает время :
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
Портировал 3D Туннель на C6745. Оказывается, этот процессор не умеет делить плавучку! Только умножать. Но на другом форуме профи подсказали, что есть инструкция 1/X которая поддерживается аппаратно. В итоге все фрагменты деления я переписал, заменив их умножением.
Вместо a/b надо a*rcp( b )
Пока это не сделал, туннель ворочал со скоростью 5 кадров в секунду.
Сейчас летает! Кадр 320x240 16 бит на точку, текстура 512x512 , всё во внешней памяти - выходит 129 FPS ! Если уменьшить текстуру вчетверо 128x128, то будет 178 FPS.
STM32H743 давал в 2 раза меньше !
Это сообщение отредактировал Gospodin_Riba - Mar 18 2019, 09:23 AM
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
Ну и на полный Экран: 480x320, тут уже 89 FPS. Хоть и площадь экрана возросла ровно в 2 раза, но FPS просел всего лишь в 1,5 раза - это DMA помогает, впараллель отрисовывает.
В целом виртуально C6745 выходит в 2 раза шустрее, чем STM32H743. Так что гипотеза о том, что этот DSP порвёт ARM-ы - оправдалась!
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
Я тут разгадывал квест по поводу того какой контроллер стоит в LCD и насколько трудно найти доки.
Итак, мой выбор пал на этот раз на LCD от сотового телефона LG GX500. Отличный LCD с хорошими углами и яркой картинкой! Ардуино-говно-LCD и рядом не валялись! И за 200 рублей вместе с телефоном б/у который на запчасти!
Донор:
Присоединённое изображение
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
Разъем дисплея - 40 контактов, марка GB042-40P-H10-E3000
Этот дисплей гуляет под целими тремя вариациями - две из которых:
1) LS030B3UW01(3.0"), (400*240) B grade DRIVER IC ( S6D14E0// SAMSUNG IC . PA7556 . MAGNA CHIP)
2) Парт-номер: SVLM0035201 Parts Description: LQ030B3UX01,Main ,3.0 inch ,240*400 ,43.08*75.4*1.8t ,262K ,TFT ,TM ,S6D14E0 , ,
Ваапще не подошли!!! До одури ночами сидел 2 суток пытаясь их запустить по даташитам (качаются с барыга-сайтов китайских после получения бизнес-аккаунта).
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
По этой информации откопал даташит и инит с китайских сайтов. Дисплей запустился! Ура!!! А я уже хотел логический анализатор покупать чтобы сдампить с телефона команды-данные
Присоединённое изображение (Нажмите для увеличения)
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
Далее попробовал поиграться с Туннелем - прикрутил билинейную фильтрацию в реальном времени - теперь из текстуры размером 128 на 128 делается стретч на весь экран. Раньше фильтрации не было, либо бралась огромная текстура 512 на 512.
Выжимал все соки и оптимизировал пиксельный шейдер. Скажу сразу, что софтваный текстурный мэппинг - неблагодарное дело - куча глюков всплывает из-за арифметики с плавучкой. В основном из-за потери точности.
Вот вначале фильтр работал неправильно:
Присоединённое изображение
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
QUOTE
А он же вроде как сенсорный? или сенсор там в защитном стеклышке.
Нет. Сенсор и дисплей отдельно. Сенсор заинтегрирован в переднюю часть корпуса и только выламывается. Соединяется с платой микроразъемом. А дисплей там просто приложен к обратной стороне сенсора - и слава Богу !!! А то на моем опыте были дисплеи с приклееной сенсорной панелью! И отодрать такую панель - большой риск.
QUOTE
Какаято фантастика. Особенно припаять такой разьемчик.. Просто высший пилотаж..
Основная проблема как раз не припаять разъем - это делается довольно легко с нужным флюсом. Основная проблема сделать макетку с такими дорожками (0.27). Я знаю, сейчас набегут и начнут про фоторезист толкать Но у меня на данный момент нет оборудования для УФ травки плат, поэтому старый ЛУТ. И то под вопросом - бумагу разобрали в магазинах, пришлось из журналов глянец искать. Вот на инструкции от усилителя хорошо пропечаталось, и бумага вся сразу отстала - не пришлось счищать вообще. Но иголочкой поработать пришлось - разделять слипшиесядорожки
Позже новое напишу, сегодня к сожалению интернет мне не улыбается
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
Очень странно. Ничего не приходило. От других приходят.
Создайте тему на форуме со своим вопросом.
Может это модераторы чем-то не довольны. Я, вроде, правила не нарушаю и первый раз, всё же дошел в личку. Очень странно! Так я попробую в эту же тему написать...
Итак, имеется устройство: китайский LCD дисплейчик TXW200035P0-CD (320 Х 240) IC:ILI9342C, управляется по SPI чипом от Nordic - NRF52832 (получаю по BLE файл, сохраняю в дополнительную Flash и с помощью этого же чипа передаю файл на дисплей). Сам NRF52832 не блещет быстродействием (пока получил только 5 кадров в секунду), но уверен, что можно и без дополнительных элементов ускориться.
Подскажите, пожалуйста, как добиться хорошей скорости (использование DMA, конвертация и пр.)?
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
Раньше были доступны инженерные образцы этого DSP и название начиналось на TMX (а не TMS). Были версии только на 300 МГц и содержали очень много багов. Хорошо, что это всё в прошлом!
Присоединённое изображение
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)