linux无限刷屏代码,linux下如何实现简单刷屏
大家好,又见面了,我是你们的朋友全栈君。
今天为了测试我的LCD有没有坏点写了一个简单的刷屏程序,效果还不错,分析给大家。代码如下:
#include
#include
#include
#include
#include
#include
#include
#include
int main(int argc,char *argv[])
{
int fbfd = 0;
struct fb_var_screeninfo vinfo;
struct fb_fix_screeninfo finfo;
long int screensize = 0;
char *fbp = 0;
char inbuf[240*320*2];
int i = 0;
/*open /dev/fb0 */
fbfd = open(“/dev/fb0”,O_RDWR);
if(fbfd<=0)
{
printf(“Error:cannot open framebuffer devices./n”);
return -1;
}
printf(“The framebuffer devices was opened successfully./n”);
/*get framebuffer infomation*/
if(ioctl(fbfd,FBIOGET_FSCREENINFO,&finfo))
{
printf(“Error: reanding fixed informatin./n”);
return -1;
}
if(ioctl(fbfd,FBIOGET_VSCREENINFO,&vinfo))
{
printf(“Error: reanding var informatin./n”);
return -1;
}
/*set screensiez*/
screensize = vinfo.xres*vinfo.yres*vinfo.bits_per_pixel/8;
/*mmap*/
fbp = (char*)mmap(0,screensize,PROT_READ|PROT_WRITE,MAP_SHARED,fbfd,0);
if((int)fbp == -1)
{
printf(“Error: failed to map framebuffer device to memory./n”);
return -4;
}
printf(” The framebuffer device was mapped to memory sucessfully./n”);
memcpy(inbuf,fbp,screensize);//保存刷屏前显存中的数据
for(i = 0;i<0xff;i++)
{
memset(fbp,i,screensize);
sleep(1);
}
memcpy(fbp,inbuf,screensize);//将保存的显存数据复原回去
munmap(fbp,screensize);
printf(“The framebuffer device was munmaped successfully./n”);
close(fbfd);
printf(“The framebuffer device was closed successfully./n”);
return 0;
}
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/136720.html原文链接:https://javaforall.cn
相关文章
- Linux网络安全:技术与实践(linux网络安全技术与实现)
- Linux驱动:实现设备与系统的连接(linux驱动加载驱动)
- Linux实现的FIFO文件系统(fifo文件linux)
- Linux系统渗透测试:加强防御(渗透测试linux)
- 银行Linux系统运维:稳定保障财富(银行linux运维)
- 在Linux系统中实现宽带连接的简便方法(linux宽带连接)
- 管理Linux日志管理:实现集中控制(linux日志集中)
- Linux下数据库连接实现完美。(linux数据库连接)
- 操作Linux分支操作:实现更多的功能(linux的分支)
- 定保护Linux文件:锁定有效方式(linux文件锁)
- 学习Linux的5大步骤(学习linux步骤)
- Linux系统的防火墙实用性!(linux有防火墙吗)
- Linux运维日常:实现良好的IT运行环境(linux运维日常工作)
- Linux之分支:新旧味道(linux的分支)
- 探讨Linux收费版的道路与选择(linux收费版)
- Linux 升级:制作补丁实现安全升级(linux制作补丁)
- Linux安装中文包:指引您实现中文环境(linux安装中文包)
- Linux查看端口连接数:深入实现(linux查看端口连接数)
- 开启Linux之旅:学习LINUX系统登录(linux系统登录)
- 「Linux上机题」——体验操作系统乐趣,掌握实用技能的必修课!(linux上机题)
- Linux下互斥锁的读写实现(linux互斥锁读写)
- Linux实现稳定代理服务器搭建(linux搭代理服务器)
- Linux C语言中实现延时程序的方法(linux c 延时)
- Windows远程访问Linux指南(windows怎么远程linux)