views:

358

answers:

3

hi all,

I need to display images on an embedded system. The board configuration is as follows:

It is AT91sam9263-EK, with Linux 2.6.20 kernel running on it. Are there any image processing libraries for this board.The processor is ARM926EJ-S.

thank you all

A: 

First of all, you need to configure framebuffer (fbdev) running on your board. It will act as a layer between your hardware and your GUI app. Here you will find a lot of info about it.

After you are done there is a bunch of libraries/frameworks out there. Few of the most populars are SVGAlib and SDL (requires X).

As usually with cross-platform sources, you will need to recompile those libraries using the toolchain for your board.

UPDATE:

Few more links for you from SO: here, and here.

Andrejs Cainikovs
hi andrejs,i think you are telling me to configure the pins directly instead of using the OS support which is already present on the board. I want to use the OS support.Please correct me if i am wrong.Are there any libraries which i can use for displaying images at same time using the OS present on board.thanks
skyrulz
Linux is OS. And the fbdev is the part of the linux kernel. What pins you are talking about? Your comment is not clear for me.
Andrejs Cainikovs
hi andrejs,Firstly, i am sorry that i posted that comment with out going through the links provided by you. Just now i had read the links and i am clear about the answer.Yes, i need to develop a GUI application for my project work.how do i configure frame buffer.In the links given by you it is not mentioned.thank you
skyrulz
You need to recompile your kernel and include the framebuffer support if it's not already included, and then try to display something. Just check first link and google.
Andrejs Cainikovs
hi andrejs,The device boots up to linux kernel properly.I can even use the key board by plugging it to USB port available on the device.Since the kernel is already booting up and since i am able to see some GUI applications running on it, i can assume that the frame buffer is already set.I need to buid a GUI application on it so that i can display some images.thanks
skyrulz
Yes, framebuffer is set up if you see something on your screen. Now, just play with SVGAlib, Qt, SDL, or similars to get the desired result.
Andrejs Cainikovs
A: 

If the framebuffer isn't activated in the Linux OS you got I know that it is in the Linux OS provided by Linux4Sam. You can always try if it is activated by issuing the command cat /bin/sh > /dev/fb0; a random pattern should appear on the screen (note that it might be necessary to activate the backlight - if it is turned off you might not see anything at all). You might have to kill the graphical environment that is running on target first.

If all you want to do is to display an image it is possible to do that by opening the framebuffer (/dev/fb0) and write to it (or just cat it); but you have to have an image in the correct format. If I remember correctly the framebuffer in the evaluation board is a RGB555 (i.e. 5 bits for red, 5 bits for green and 5 bits for blue).

If you want to use a GUI library you have to use one that has a framebuffer backend. On a standard Linux system a GUI library assumes that you have X installed but some of them also have framebuffer backends. Qt for instance can be compiled in such a way (but I think you have to modify it to provide the correct color information; it only supports RGB565 out of the box). DirectFB is a simpler solution that provides basic graphic support (but it has support for FreeType giving you good font support). See the links provided above for other examples.

Anders Holmberg
I believe that the issue with Qt was that the framebuffer is BGR and Qt expects RGB (it only looks at the bits-per-pixel). To configure Qt correctly, add "-depth generic" to configure (when building Qt) and then export "QWS_DISPLAY=Linuxfb:genericcolors" on your target before launching your Qt app.
e8johan
A: 

hello i am aslo lookin for display on VGA but i done with Image display using frame buffer but not getting how to program for text display

lalitha