Moto Linux應用開發(五):frame buffer

moto linux支持framebuffer寫屏,SDK中包含了一個sample,直接寫framebuffer顯示紅色和綠色。不過在寫framebuffer之前需要了解一下framebuffer的相關特性。以下是我的A1200e的framebuffer信息:

framebuffer info: bits_per_pixel(18), xres(240), yres(320)

非常奇怪的是,每個像素18個bits。上網查了一下,原來很多手機LCD都是使用的18bpp。18bpp有packed 18bpp和aligned 18bpp之分,都佔用3字節。packed 18bpp的像素定義爲000000rr rrrrgggg ggbbbbbb,aligned 18bpp和24bpp兼容,像素定義爲00rrrrrr 00gggggg 00bbbbbb或者0rrrrrr 00gggggg 00bbbbbb。因爲寫framebuffer就是操作每個輸出像素,所以必需弄清楚framebuffer的寬、高以及顏色格式。A1200e採用的是packed 18bpp(rgb666)格式,所以紅色和綠色的定義如下:

 

#define RGB666_RED 0x3F000

#define RGB666_GREEN 0xFC0

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章