2024年3月26日发(作者:)
#include
#include
#include
#include
#include
#include
#define WIDTH 320
#define HEIGHT 240
#define BYTE_PER_PIXEL 2
#define MAX_X WIDTH
#define MAX_Y HEIGHT
#define FB_DEVICE "/dev/fb0"
static unsigned char *fb_mem = NULL;
int init_framebuffer(void)
{
struct fb_fix_screeninfo finfo;
struct fb_var_screeninfo vinfo;
int fb;
fb = open (FB_DEVICE, O_RDWR);
if ( fb < 0)
{
printf("Can't open framebuffer device %sn",FB_DEVICE);
return -1;
}
if ( ioctl ( fb, FBIOGET_FSCREENINFO, &finfo) )
{
printf("read fixed framebuffer infomation errorn");
return -2;
}
printf("printing fixed screen infomation:n");
printf("id:%sn",);
printf("smem_start:%dn",_start);
printf("smem_len:%dn",_len);
printf("type:%dn",);
printf("type_aux:%dn",_aux);
printf("visual:%dn",);
printf("xpanstep:%dn",ep);
printf("ypanstep:%dn",ep);
printf("ywrapstep:%dn",tep);
printf("line_length:%dn",_length);
printf("mmio_start:%dn",_start);
printf("mmio_len:%dn",_len);
printf("accel:%dn",);
if ( ioctl( fb, FBIOGET_VSCREENINFO, &vinfo) )
{
printf("read variable framebuffer informationn");
return -3;
}
printf("printing variable screen informationn");
printf("xres:%dn",);
printf("yres:%dn",);
printf("xres_virtual:%dn",_virtual);
printf("yres_virtual:%dn",_virtual);
printf("xoffset:%dn",t);
printf("yoffset:%dn",t);
printf("bits_per_pixel:%dn",_per_pixel);


发布评论