Jump to content

    

AVI-crak

Участник
  • Content Count

    251
  • Joined

  • Last visited

Everything posted by AVI-crak


  1. Кубик обновился, появилась серия STM32MPxxx, с возможностью подключения DDR3 памяти. Вроде как можно победить, наверное.
  2. Ну, возможно он не знает про младший бит адреса для данных и команд.
  3. С запуском меньше всего проблем, тем более для таких массовых экранов. В сети можно найти готовые сценарии запуска, функции естественно будут чужими - но вам нужны последовательность команд регистр-данные. Тут желательно на другое обратить внимание - то как он должен обновляться в рабочем режиме, точнее что вы собираетесь на него выводить. От этого зависит предпочтительная ориентация пикселов. Для того чтобы потом не выполнять дополнительный код по размещению точек графики, точнее сократить его до минимума.
  4. Есть ещё вариант с таймером и дма, но в любом случае случайные пикселы заливаются очень туго - смысла нет. Всегда выделяется область видимости экрана, после чего цвет сливается в режиме нон стоп.
  5. 30кадров в сек, на 107 чипе в режиме ногодрыга. Вы завязывайте там со своим халом и адруиной, тут нужны сишные функции на несколько с строчек - с прямым обращениям к регистрам. К тому-же глупо каждый раз отдавать полный адрес пиксела, ili9486/ili9488 и ещё куча подобных - умеют принимать данные в потоке, с автоматическим увеличением адреса пиксела.
  6. Кхм, все ide имеют несколько вариантов сборки проекта, в виде готовых кнопок. Собрать готовое, собрать изменённое, пере_собрать проект полностью, и остановить зависший процесс сборки. Разница в скорости сборки просто громадная. Если части проекта уже были собраны и не изменены - то повторная сборка будет моментальной. Это свойство ide - полностью аннигилирует потребность в ручных библиотеках, вообще полностью. Как можно пропустить эти кнопки? они-же на самом виду.
  7. Allwinner V3s Кхм, прикольный камень. Годится для ускорителя графики за копейки. Периферии в нём ну очень мало, и наверное главный затык - дма за пределами видимости кеша ядра, + отсутствие двойной точности. 300 рублей за чип - это намного дешевле stm32hxxx + sdram (1300+800).
  8. MPU->RNR = 0; MPU->RBAR = 0x20000000; MPU->RASR = 0x03090025; /// C=0, B=1, TEX=1, S=0, SRD=0, XN=0, AP=3, size=0x12 (512k) MPU->RNR = 1; MPU->RBAR = 0x08000001; MPU->RASR = 0x03020027; /// C=1, B=0, TEX=0, S=0, SRD=0, XN=0, AP=3, size=0x13 (1M) MPU->RNR = 2; MPU->RBAR = 0x600fff02; MPU->RASR = 0x03040029; /// C=0, B=0, TEX=0, S=1, SRD=0, XN=0, AP=3, size=0x13 (1M) MPU->RNR = 3; MPU->RBAR = 0x90000003; MPU->RASR = 0x0306002d; /// C=1, B=0, TEX=0, S=1, SRD=0, XN=0, AP=3, size=0x16 (8M) MPU->RNR = 4; MPU->RBAR = 0xc0000004; MPU->RASR = 0x03070033; /// C=1, B=1, TEX=0, S=1, SRD=0, XN=0, AP=3, size=0x19 (64M) MPU->RNR = 5; MPU->RBAR = 0x40000005; MPU->RASR = 0x13040039; /// C=0, B=0, TEX=0, S=1, SRD=0, XN=1, AP=3, size=0x16 (0.5G) MPU->RNR = 6; MPU->RBAR = 0xe0000006; MPU->RASR = 0x1300002d; /// C=0, B=0, TEX=0, S=0, SRD=0, XN=1, AP=3, size=0x16 (0.5G) MPU->RNR = 7; MPU->RBAR = 0; MPU->RASR = 0; MPU->CTRL = 7; stm32f7xx
  9. Просто несколько эффективных топменеджеров st - купили себе изогнутые доски для серфинга в интернете. На них старая версия кубика выгладила слишком ущербно.
  10. Уровни прерываний, их всего 15 штук - читайте внимательней документацию. SysTick должен иметь максимальный уровень 15, и на этом уровне больше не должно быть прерываний. То-есть его должно вытеснять любое из существующих прерываний. Ну и само прерывание SysTick работает весьма странно для arm. Регистры r0, r1, r2, r3, r12, LR, PC, xPSR сохраняются автоматически при входе в прерывание. Нет смысла сохранять r3, lr. Как оно объявлено-то?
  11. STM32G07x STM32G08x

    Вот когда уволят обкуренного проектировщика, тогда будут новые продукты. А сейчас у них маниакальная зависимость от менеджеров проекта свихнувшихся на совместимости корпусов разных серий. Новое - это когда при разводке ПП не придётся собирать контакты со всех четырёх сторон чипа под память, дисплей, и так далее. Оно должно выглядеть красиво, тогда и работать будет лучше, и стоить дешевле.
  12. Перепроверил. EXTI->PR сбрасывается в ноль после записи единицы. Читать его нужно только в случае множества линий на одно прерывание, а таких всего два EXTI9_5_IRQHandler и EXTI15_10_IRQHandler.
  13. Физически - да, а по смыслу - нет. Чтение их этого регистра не имеет смысла, он всегда успевает сбросится в ноль аппаратно. Но GCC об это не знает.
  14. Совершают точно такие-же ошибки. Модификаторы const и volatile, а так-же их комбинации - не позволяют реализовать условие - "только запись". Наличие такого нового модификатора могло-бы запретить чтение из регистра. Выдав ошибку ещё в процессе набора кода.
  15. Ну это ограничение самого GCC. Пока есть всего два доступных модификатора const и volatile для типов - ситуация не изменится. Тут нужен модификатор "только запись", но его пока не изобрели.
  16. Возможно чипы нужно делать иначе,
  17. Мне тоже понравилось. Они выполнили компоновку всех необходимых элементов c-sip - в одном пластиковом корпусе. Необходимых - это тех что что инженеру придётся использовать в любом случае. Но чёт подери, почему так дорого??? Если делать то-же самое для stm чипов - то цена получится просто космической... Это-ж нужно сначала купить чип памяти, потом стравить пластик, снять с подложки, и разварить на новой. Они-ж не умеют делать чипы памяти самостоятельно...
  18. Ну это понятно, но триста баксов за чип из омерики - это как-то непропорционально рядом с stm.
  19. Если не секрет, где так мёдом намазано? Прошёлся поиском - цены просто дурные по сравнению с риалтеком, у которого кстати 500Msps и сразу три канала. (дёргаю с дохлых мониторов)
  20. Я не в курсе насколько будет ускорение, потому как F7, 16 бит память, и 800*480 экран. Но могу точно сказать - свободных ног мк станет значительно меньше.
  21. Я тоже в поисках. https://www.micron.com/products/dram/sdram - нету, снято с производсва http://www.issiusa.com/products-dram-SDR.htm - например IS42S32160B, ценник откровенно конский, снято с производсва http://www.mt-system.ru/sites/default/file...msungmicron.pdf - Samsung откровенно дешёвый, но подходящего тоже нет https://www.alliancememory.com/products/synchronous-dram/ - не уверен что заработает, у меня не завелось. Статическая память ещё дороже, там прямо космические цены. Комбинированные чипы флеш+память - сразу начинаются с ddr. Остаётся вяло пинать ST, чтобы она встраивала sdram под крышку чипа мк. Вот пусть где хочет - там и берёт. А ещё мне жутко понравилась HyperRAM http://www.cypress.com/search-results?as_q=HyperRAM , так сказать - память будущих аурдинщиков.
  22. Я и здесь могу это повторить - можно и нужно. Более того - код будет более простым и нативным по сравнению с явным указанием адреса команд и данных. Обращаться к области памяти как к массиву, да почти так. Без адреса, через имя структуры, и линейно от начала до конца окна. Дело в том что у всех дисплеев счётчик адреса данных щёлкает автоматически с каждым чтением/записи данных. А для новых дисплеев это свойство распространяется на всю периферию (наверное забыли отключить).
  23. Это-ж dma2d, смешивание двух слоёв. Эту операцию можно полностью аппаратно выполнять. Прогресс будет даже на небольших блоках. По самому алгоритму. Честно говорю - пытался понять и нишмог. Блочную схему, ну или хотя-бы точку входа в алгоритм... А то там столько напечатано, что ногу свернуть можно.
  24. NEON имеет множество пробелов по сравнению с возможностями Cortex-M7. И уж точно Cortex-M7 может выполнять всё что есть в NEON. Нужно просто перелопатить код, удаляя и заменяя вставки NEON функций.
  25. Чем проще - тем надёжнее. Для такого однообразного события достаточно сохранённых семплов. Программно их собирать достаточно сложно, и уж точно невозможно собрать мгновенно. А для музыки имеет смысл произвести раскопки среди форматов MID. MOD. XM. S3M. iT. Для них есть открытые проекты плееров, редакторов самой музыки и готовая музыка.