Библиотека Adafruit_GFX и экран HX8352B
- Войдите на сайт для отправки комментариев
Пт, 26/01/2018 - 10:41
Всем привет.
Написал небольшой скетч на базе вышеуказанного экрана и библиотеки.
получил вот что https://youtu.be/0AKp1jTsYsk
Вопрос. Почему так медленно перерисовывается экран? Это нормально или я где-то неправильно написал скетч?
Для отрисовки использовал следующие функции.
setCursor - устанавливаем курсор
fillRect - затираем область в которой будет выводится значение
print - выводим значение.
Использовал два шрифта. Встроенный и свой самописный (glx)
А почему Вы решили, что это медленно?
Нам, например, для того, чтобы оценить это, явно недостаточно данных:
- какой протокол обмена?
- ширина шины данных?
- частота, на которой осуществляется обмен?
- глубина цвета экрана?
- объем выводимой информации?
- время необходимое для вывода информации?
Только располагая всеми этими данными, можно заключить, медленно или быстро.
Вот это Вы вопросов набросали... Ответ на большинство - Не знаю )) Купил экран в китае.
Вот распиновка
// TFT Breakout -- Arduino UNO
// GND -- GND
// 3V3 -- 3.3V
// CS -- A3
// RS -- A2
// WR -- A1
// RD -- A0
// RST -- RESET
// LED -- GND
// DB0 -- 8
// DB1 -- 9
// DB2 -- 10
// DB3 -- 11
// DB4 -- 4
// DB5 -- 13
// DB6 -- 6
// DB7 -- 7
Судя по распиновке - ширина шины 8 бит
Как видно из видео - шилдовый для ардуино Уно. К нему шла библиотека. я единственно, что
обновил саму Adafruit_GFX до последней версии и прикрутил вывод кирилицы. Собственно все.
Хорошо. Перефразирую вопрос. Можно ли аналогичную информацию выводить/обновлять быстрее чем в представленном видео? Или уже смириться со этой слоупочностью? )
У Вас в данном шрифте очень большие знакоместа, а библиотека (скажем мягко) быстродействием не отличается. Поэтому с данной библиотекой, скорее всего, ничего не сделать. А вот если Вы готовы ее слегко допилить, то можно повысить быстродействие в разы - это точно, на порядок - скорее всего.
Я все собираюсь кардинально ее ускорить и все руки не доходят (старшая сетера не разрешает).
Скорее речь идет о скорости отображения некоторой площади экрана. Неважно каким шрифтом заполнять область.
Речь идет о допиливании базовой Adafruit_GFX или о MCUFRIEND_kbv(которая на ее базе и шла вместе с экраном)? В любом случае буду признателен если пнете в нужном направлении.
Базовая Adafruit сделана просто из рук вон плохо, достаточно сказать, что она формирует символ на экране по-пиксельно. всякий раз вызывая запись пикселя с пересчетом координат, так что в первую очередь ее. Вторую библиотеку не смотрел, ничего сказать не могу.
Но ускорение базовой вполне возможно, только надо аккуратненько все делать.
Как бы вы сделали ускорение? В каком ее модуле искать вывод символов?
Судя по впросам, Вам это пока не по зубам.
А можно я сам решу что мне по зубам, а что нет?
Если уважаемый GarryC пнет в нужном направлении, то я попробую решить эту задачу, потому, что слоупочность адафруита напрягает нИпАдеЦки ))). А уважаемого Логика попрошу держать свое мнение при себе. Тем более, такое бестолковое.