framebuffer 设置页面大小 尺寸


 
 
#include <stdio.h>
#include <fcntl.h>
#include <linux/fb.h>
#include <sys/mman.h>
#include <stdlib.h.>
 
int main() {
int fb;
struct fb_var_screeninfo vinfo;
 
// 打开framebuffer设备
fb = open("/dev/fb0", O_RDWR);
if (fb < 0) {
perror("Error: cannot open framebuffer device");
exit(1);
}
 
// 读取当前的var信息
if (ioctl(fb, FBIOGET_VSCREENINFO, &vinfo)) {
perror("Error reading variable information");
exit(2);
}
 
// 设置新的分辨率大小
vinfo.xres = 1024; // 水平分辨率
vinfo.yres = 768; // 垂直分辨率
 
// 设置新的分辨率大小
if (ioctl(fb, FBIOPUT_VSCREENINFO, &vinfo)) {
perror("Error setting variable information");
exit(3);
}
 
printf("Screen size set to %dx%d\n", vinfo.xres, vinfo.yres);
 
close(fb);
return 0;
}

posted on 2024-10-02 11:25  zxddesk  阅读(6)  评论(0编辑  收藏  举报

导航