嵌入式linux下framebuffer的双缓冲编程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式linux下framebuffer的双缓冲编程相关的知识,希望对你有一定的参考价值。

我在做嵌入式图像显示的时候遇到一个问题,我做的是通过写framebuffer来完成图片的显示,因为在显示过程中有闪烁现象,所以想到用framebuffer下的双缓冲模式来解决,但是在网上找了一下这方面的资料,不是很多,再加上又是新手,所以很着急!
望各位大哥不吝赐教
有人在百度知道里贴过:
怎样应用framebuffer中yoffset,实现双缓冲?

提问者: xujia619 - 试用期 一级 最佳答案如果你的屏幕为800x600,各参数设定为:
xres = 800
yres = 600
xres_virtual = 800
xres_virtual = 600x2 = 1200
缺省的yoffset = 0;
显示的是(0,0)到(800,600)到可视区
当你设定yoffset = 600时
(0,600)到(800,1200)将显示到可视区,就这样实现双缓冲
谢谢!我现在的做法是在内存中绘制好图片,然后把图片复制到屏幕缓冲区在用户空间的映射内存中,映射的内存为实际显示大小的两倍,怎么会出现同时进行呢?具体程序设计的话怎么个流程? 我现在确实是不知道如何使用啊!谁能举个具体的例子指导一下啊?

我觉得可以增加几个个ioctl(检查下是不是已经有现成的了),用来将缓冲区复制到实际屏幕,切换绘图模式等。而且根据上面的回答很可能系统早就处理好这个了,你现在只是应用层不知道该怎么去用双缓冲而已。 参考技术A 顶嵌,专注嵌入式Linux,国内最具特色嵌入式培训机构:400-661-5264

以上是关于嵌入式linux下framebuffer的双缓冲编程的主要内容,如果未能解决你的问题,请参考以下文章

#导入Word文档图片# Linux下FrameBuffe(LCD)驱动编写

linux驱动之framebuffer

直接访问linux framebuffer - copyarea

Linux驱动框架之framebuffer驱动框架

linux下framebuffer显示图形的基本思想是啥

4 linux lcd驱动框架分析