0men 2 5 сентября, 2022 Опубликовано 5 сентября, 2022 · Жалоба Переношу проект с STM32L4R7 на GD32F450. Начал разбираться с TLI модулем (интерфейс RGB к дисплеям) и IPA (графический акселератор). Функционально и регистрово аналогичные стм. Все подключилось влет, стмовская библиотека STemWin всосалась как родная. НО, выяснилось, что на дисплее видные артефакты (пиксели не там где нужно и шрифты корявенькие). После 2х дней жестких разборок выяснилось, что IPA на редкость кривой. При выводе линий используется режим PFCCM = 11:Fill up destination memory with specific color, который, как оказалось, и вносит артефакты. Что нашло и подтверждение в еррате от июля сего года: One extra pixel will be transferred when using register value to memory direction. Китайцы пишут, чтоWorkarounds Not available, но сие удалось обойти, воткнув костыль. Перед вызовом дма (IPA) рассчитывается, куда прилетит экстра пиксель, считывается оттуда значение, а потом восстанавливается. Со шрифтами оказалось все сложнее. IPA работает в разных режимах, в частности со шрифтами когда они полупрозрачные используется режим MixColor (PFCCM = 10: Blending foreground and background memory to destination memory) эта хрень не работает вообще, микширования не происходит, результат всегда 0. Данная инфа предоставлена для тех, кому интересны гигаадевайсы ) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Forger 24 5 сентября, 2022 Опубликовано 5 сентября, 2022 · Жалоба 44 minutes ago, 0men said: One extra pixel Обожаю китайский "юмор" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться