Если не поворачивать через MADCTL - рисует правильно. Если же повернуть на 90 или 270 градусов - по y все рисует вроде правильно а по x как будто 2 изображения рисуются. Уже все что можно попробовал. Нормального даташита похоже нет. Точнее есть но там не все регистры описаны. Подскажите куда копать вообще? Или забить и вертеть софтверно?
Как тут делайте? https://github.com/Xinyuan-LilyGO/T-Track/blob/main/examples/QWIIC_Sesnsor/JD9613.cpp
они там софтверно делают на ардуине. у них судя по issues тоже не получилось я переписал все на аппаратный spi на espressif idf. Их код рабочий но жрет под 95% cpu Мой 6% и вертиально работает отлично пока не повернуть )
Ну там как минимум инит есть
ага его и использую. код поворота они тоже написали
просто с их кодом они шлют по пол пиксела за такт. не используя dma и хардверный spi
ИМХО вертеть софтверно не надо, надо поправить установку пикселя в буфере чтобы сразу развёрнуто рисовался, а буфер оставить как быстрее выплевывается
ну потому сюда и пришел ) сам уже не знаю даже как паттерн этот разгадать.
Какой паттерн? Ну есть же setpixel какой-то который основа для отрисовки линий, шрифтов и примитивов
адрес ставится правильно. По одной точке рисует верно. А вот заполнение когда ставишь от и до координаты начинает зеркалить на повороте. Причем квадрат такой же. То есть начальная и конечная координаты при этом выставляются верно. А вот заливается в буфер как-то не так при повороте. Под паттерном я имел в виду как объяснить это искажение. Если понять как - можно будет как-то по-другому подать данные возможно.
Есть идея что или ошибка в подпрограмме закрашивания или все же точка рисуется верно не везде. Рекомендую через паузу отрисовать построчно экран по одной точке чтобы глазами было видно заполнение как бежит пиксель
рисовал по 100 пикселей через дебаг. закрашивает построчно сверху вниз слева на право.Плюс без поворота получается ожидаемое изображение (что намекает что эта часть должна работать верно. Тоже сначала на это грешил) Но если повернуть то фигня выходит. Подпрограмма закрашивания просто читает буфер и шлет в дисплей. Но спасибо попробую еще раз перепроверить
о, меня уже опередили)
Обсуждают сегодня