|
248 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 229
|
|
STM32F103C8T6 и дисплей ST773502.09.2022, 13:07. Показов 3325. Ответов 35
Метки нет (Все метки)
Вывожу график на дисплей, размер окна графика 140х50 = 7000 точек. Сам дисплей 160х128 точек. Сначала - подложку, затем оси, курсоры в виде вертикальных линий, которые постоянно изменяют своё положение, точки графика в виде квадратиков и сам график, соединяющий точки. Точек не более 16. В общей сложности количество выводимых точек, помимо подложки, составляет не более 5% от всего окна. Перерисовывать приходиться не менее 4 раз в секунду. Всё работает даже при большей частоте вывода (10 Гц), но при перерисовке происходит раздражающее мигание. Попробовал другие более скоростные варианты программ вывода, но ничего принципиально не изменилось.
Тогда решил попробовать вариант создания массива результирующей картинки uint16_t img[7000] с тем, чтобы окно, выделенное под график, заполнять не последовательно разными объектами, а одной картинкой. Но такой объём памяти не устраивает Keil, понятно, что ресурсов STM32F103C8T6 не хватает. Сейчас обдумываю вариант без перерисовки фона, но каждый объект проходить два раза. Сначала с цветом фона с целью замазать рассматриваемый объект, а затем с нужным цветом и текущим его расположением. Знатоки, что можете посоветовать?
0
|
|
| 02.09.2022, 13:07 | |
|
Ответы с готовыми решениями:
35
ST7735 + STM32 STM32F4Discovery + дисплейчик ST7735 STM32F103 + ST7735 + STemWin |
|
Windows must die
|
||||
| 02.09.2022, 13:53 | ||||
|
Если нужен цвет, то можно поступить, как в старых спектрумах и иже с ними: использовать спрайтовую графику. Т.е. квадрат 8×8 пикселей будет кодироваться 8 байтами на bg/fg и двумя байтами цвета. Итого - 10 байт на 256 пикселей, т.е. для вашего цветного дисплея понадобится 3200 байт буфера в ОЗУ, для чего с лихвой хватит (+USB) даже STM32F103C4T6. Правда, понадобится еще промежуточный буфер, байт на 512, в котором будет формироваться очередной кусок для передачи по SPI посредством DMA в конечном автомате. И все будет отлично работать. И быстро, кстати! В общем, главное - правильный подход. Добавлено через 2 минуты В общем, налицо в корне неверный подход.
0
|
||||
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,922
|
|||
| 02.09.2022, 14:51 | |||
|
0
|
|||
|
248 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 229
|
|||
| 02.09.2022, 16:49 [ТС] | |||
|
Пока прихожу к мысли: "А не скатится ли до 8 ми байтовой раскладке цвета". При этом получается, что можно иметь набор из 256 шестнадцатибитных цветов. То есь иметь ещё 256-ти элементный массивчик, в каждом элементе которго забит 16-ти битный цвет.
0
|
|||
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,922
|
|||
| 02.09.2022, 17:16 | |||
|
А ведь можно не попиксельно считать, а по столбцам или строкам. Тогда один столбец передаете, а второй в это время считаете.
0
|
|||
|
248 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 229
|
||
| 02.09.2022, 17:49 [ТС] | ||
|
0
|
||
|
Windows must die
|
||||
| 02.09.2022, 17:59 | ||||
|
Но таки лучше использовать спрайты.
0
|
||||
|
248 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 229
|
||
| 02.09.2022, 18:21 [ТС] | ||
|
Да, для этого дисплея есть только три варианта кодирования цвета 12, 16 и 18 бит. Так, что о желании передачи одним байтом цвета я погорячился.
0
|
||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,696
|
|
| 02.09.2022, 21:53 | |
|
7000 байт? У вас массив 16 бит значит 65535х7000=458 745 000 бит. Ну и как такой массив уберется.
Добавлено через 2 минуты Видео карты для пк и придумали что бы разгрузить ЦП.
0
|
|
|
248 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 229
|
|||
| 02.09.2022, 22:59 [ТС] | |||
|
0
|
|||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,696
|
|
| 06.09.2022, 19:59 | |
|
Юрий_48, как успехи с работой над дисплеем? Вы библиотеку с гигхаб используете? Хочу тоже переходить на дисплей серии ST77xx.
0
|
|
|
248 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 229
|
||
| 06.09.2022, 21:12 [ТС] | ||
|
Добавлено через 8 минут Библиотеку с гигхаб не использую, даже не помню залезал ли я туда. С моим дисплеем проблемы с инициализацией. Нормально запускается процентов 70. Иначе приходиться перестартовывать иногда и не один раз. Проблемой пока серьёзно не занимался, единственное поигрался с задержками, но результатов положительных нет.
0
|
||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,696
|
|
| 06.09.2022, 21:15 | |
|
Передумал юзать ST77xx выбрал для себя ILI9341 на него больше инфы и примеров в HAL. А то как то знакосентизирующего дисплея уже не хватает. Но мне для вывода текста в основном.
0
|
|
|
248 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 229
|
|||||||||||||||||
| 07.09.2022, 11:20 [ТС] | |||||||||||||||||
0
|
|||||||||||||||||
|
Windows must die
|
|
| 07.09.2022, 14:17 | |
|
Юрий_48, жесть-то какая!
А не бывает в массив все это запихать и спокойно в цикле инициализацию выполнить? Зачем копипастить у криворуких китайцев, которые вместо одного цикла будут 100500 раз повторять команды send_data()? Ох уж эта молодежь…
0
|
|
|
248 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 229
|
|||
| 07.09.2022, 20:06 [ТС] | |||
|
0
|
|||
|
Windows must die
|
||||
| 07.09.2022, 20:11 | ||||
|
0
|
||||
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,696
|
||
| 07.09.2022, 22:13 | ||
|
0
|
||
| 07.09.2022, 22:13 | |
|
Помогаю со студенческими работами здесь
20
LCD ST7735 и ST7789 Дисплей на контроллере ST7735 и Ucglib st7735 проблема с пролистыванием на экране. Спрошу-ка я тоже про экнанчик. stm32f4 + st7735 ESP32 Вывод на экран ST7735 с драйвером ST7789 240х240 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|