Прошу помощи в настройке Qt-embedded для работы с фрэймбуфером.
Собрал простую программку в Qt - Label с текстом "Hello, world!". Запустил ее на фулскрине.
Проблемы:
1. Инвертирован цвет (в программе Qt задан черный – на экране пиксель светится, задан белый – пиксель погашен)
2. Перепутаны попарно пиксели (т.е. тетрады в байтах фреймбуфера)
При этом ядро выводит своего пингвина в верном цвете и пиксели не путает.
пингвин не показатель.. попробуйте утилитой fbi или чем-то подобным вывести контрольную картинку формата bmp с областями, залитыми цветом с определенным кодом (например в фотошопе можно указать номер цвета)
тогда будет понятно - правильно ли драйвер настроен в линуксе..
и не очень понятно, экран монохромный или с градациями серого?
Экран монохромный.
Градации серого делает LCD-контроллер процессора по такой технологии: за 16 фреймов пиксель зажигается столько раз, сколько нужно для обеспечения заданного для пикселя оттенка - по сути ШИМ, в даташите называется dithering.
2Jury093 fbi - не нашел, где включается в билдруте...
Попробовал утилиту fbv - frame buffer viewer.
Пишет: unsupported video mode! You have got 4bpp :(
2sasamy
Да, в билдруте этот кыржик поставил. Qt собран для 4 bpp
У атмела в LCD контроллере была ошибка - где-то даже еррата была, там вроде перепутаны BGR - RGB в качестве одного из путей решения - менять соединительные проводники местами, может для монохромных дисплеев тоже что-то наподобное LSB - MSB перепутано - это же атмел :) - надо погуглить. И Юра правильно говорит - не факт что если пингвина видно то все ОК, как он понастоящему должен выглядеть - это вопрос :)
Но в консоли, которая писала в tty0 (на дисплей) всё развалилось - и пингвин, и текст под пингвином (цвет инверсный, пиксели попарно перепутаны).
Консоль мне пока не нужна, поэтому пока так оставлю.
Но если кто-нибудь объяснит, как сделать чтоб и Qt и консоль работали правильно, я буду очень благодарен!
1) Можно подсказать в каком файле прописать в Linux
чтобы были доступны настройки хотя бы для одного разрешения экрана ?
2) Это подходит для разных платформ
или на других платформах может другой конфигурационный файл ?
3) Только после добавления этих настроек будет доступен fb0 ?