реклама на сайте
подробности

 
 
> Linux, как заполнить видеопамять
3.14
сообщение Sep 26 2007, 09:30
Сообщение #1


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Имею PXA270 + LCD 800х480
Как залить какой-нибудь массив в видеопамять (желательно из комманодной строки)?


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 14)
scifi
сообщение Sep 26 2007, 16:24
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Может быть так?
cp image.bin /dev/fb0
Go to the top of the page
 
+Quote Post
amw
сообщение Sep 26 2007, 18:21
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Цитата(scifi @ Sep 26 2007, 19:24) *
Может быть так?
cp image.bin /dev/fb0

Лучше все таки
cat image.bin /dev/fb0
Однако не уверен, что сработает прямая заливка.


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
v_shamaev
сообщение Sep 26 2007, 19:37
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 304
Регистрация: 5-07-04
Из: г. Москва
Пользователь №: 259



Цитата(amw @ Sep 26 2007, 22:21) *
Лучше все таки
cat image.bin /dev/fb0
Однако не уверен, что сработает прямая заливка.


Тогда уж так:
cat image.bin >/dev/fb0


--------------------
Водку пьянствовать и безобразия нарушать!!!
Go to the top of the page
 
+Quote Post
3.14
сообщение Sep 27 2007, 06:27
Сообщение #5


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



В моей корневухе нет утройства fb0 (любого fb), какие у него номера, блочное или символьное?
Странно, но без устройства, данные куда то копируются (по крайней мере не ругается на отсутствие устройства), но явно не в видеопамять ...

Еще, драйвер через несколько минут выключает экран, хотя никакого энергосбережения в ядро не включено ...


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
S_agent
сообщение Sep 27 2007, 09:05
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 208
Регистрация: 6-10-05
Из: Ukraine, Kiev
Пользователь №: 9 300



По фреймбуферу вводная

теоритически должно быть так:
Код
cat /dev/fb0 > screen.img - получить raw экрана
cat screen.img > /dev/fb0  - отобразить на экране

На практике пользовать не доводилось smile.gif
Go to the top of the page
 
+Quote Post
3.14
сообщение Sep 27 2007, 09:15
Сообщение #7


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Да, запотлняет, сейчас пытаюсь понять чего у меня с цветами творится.


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
S_agent
сообщение Sep 27 2007, 09:28
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 208
Регистрация: 6-10-05
Из: Ukraine, Kiev
Пользователь №: 9 300



Цитата(3.14 @ Sep 27 2007, 12:15) *
Да, запотлняет, сейчас пытаюсь понять чего у меня с цветами творится.

а что именно?
Go to the top of the page
 
+Quote Post
3.14
сообщение Sep 27 2007, 09:53
Сообщение #9


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Сложно описать smile.gif ... лого пингвина у меня "цветасто-полосатое", написал тестик заливки, ничего не пишется в видеопамять :
Код
#include <stdio.h>
#include <stdlib.h>
int
main(int argc, char *argv[])
{
FILE * data;
int i,x,y;
data = fopen("/dev/fb0","w");
for(y=0;y<480;y++);
{
   for(x=0;x<800;x++);
   {
     fputc(0xff,data);
   }
}
fclose(data);
return 0;
}


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
amw
сообщение Sep 27 2007, 09:54
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



busybox?
тогда запустить
mdev -s
Аналог udev. Создает файлы устройств.
Код
ls -l /dev/fb*
lrwxrwxrwx  1 root root 4 2007-09-27 13:05 /dev/fb0 -> fb/0
ls -l /dev/fb/0
crw-rw----  1 root video 29, 0 2007-09-27 13:05 /dev/fb/0

Нужны драйверы fb, pxa-fb. (точные имена уточнить по ядру.)
Управлять с помощью /usr/sbin/fbset.


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
3.14
сообщение Sep 27 2007, 10:06
Сообщение #11


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Устройство я уже создал, драйвера собраны ... я сечас как раз и пытаюсь выяснить "полосатость" вызвана моими руками или нет. В моей версии драйвера PXAFB небыло поддержки 18 бит TFT ...


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
3.14
сообщение Sep 27 2007, 11:52
Сообщение #12


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Блин, ну не пишет fputc в /dev/fb0, можно записать как то по другому?


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
path_finder
сообщение Sep 27 2007, 13:24
Сообщение #13


Участник
*

Группа: Новичок
Сообщений: 30
Регистрация: 28-01-05
Пользователь №: 2 260



Цитата(3.14 @ Sep 27 2007, 12:53) *
Сложно описать smile.gif ... лого пингвина у меня "цветасто-полосатое", написал тестик заливки, ничего не пишется в видеопамять :
Код
#include <stdio.h>
#include <stdlib.h>
int
main(int argc, char *argv[])
{
FILE * data;
int i,x,y;
data = fopen("/dev/fb0","w");
for(y=0;y<480;y++);
{
   for(x=0;x<800;x++);
   {
     fputc(0xff,data);
   }
}
fclose(data);
return 0;
}


А проверить коды ошибок при открытии и записи пробовали?
Вот это иногда помогает
http://doc.trolltech.com/4.1/qtopiacore-te...ramebuffer.html
Go to the top of the page
 
+Quote Post
amw
сообщение Sep 27 2007, 13:29
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



cat image.bin > /dev/fb0
write()

А что говорит fbset?
А прав хватает?


А фреймбуфер вообще включается?
/var/log/dmesg в студию.


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
3.14
сообщение Sep 28 2007, 07:02
Сообщение #15


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



cat image.bin > /dev/fb0
Пишет в видеопамять (я уже это говорил).

fbset у меня нет, я пока собрал только busybox и z-modem.
Насчет прав ... у меня пока только root.

Фрейм буфер включается, вот часть лога касающаяся fb:
Код
pxa2xx-fb pxa2xx-fb: overriding resolution: 800x480
pxa2xx-fb pxa2xx-fb: overriding bit depth: 18
pxa2xx-fb pxa2xx-fb: override pixclock: 30000
pxa2xx-fb pxa2xx-fb: override left: 1
pxa2xx-fb pxa2xx-fb: override right: 1
pxa2xx-fb pxa2xx-fb: override vsynclen: 10
PXA: invalid hsync_len 0
PXA: invalid hsync_len 0
Console: switching to colour frame buffer device 100x60


Далее, тестик по вышеприведеннйол ссылке (http://doc.trolltech.com/4.1/qtopiacore-te...ramebuffer.html) работает, заливает прямоугольник. Вот только с цветами какая то неразбериха ...

Еще, он меня уже забодал выключаться через 5 минут smile.gif


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st August 2025 - 02:00
Рейтинг@Mail.ru


Страница сгенерированна за 0.02728 секунд с 7
ELECTRONIX ©2004-2016