#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<fcntl.h>
#include<unistd.h>
#include<linux/fb.h>
#include<sys/mman.h>
#include<sys/types.h>
#include<sys/ioctl.h>
#include<sys/stat.h>
int main()
{
int fd;
short *p;
int i;
struct fb_var_screeninfo var;
struct fb_fix_screeninfo fix;
printf("***** LCD test********\n");
fd=open("/dev/fb0",O_RDWR);
printf("fd=%d\n",fd);
if(fd<0)
{
printf("open device error\n");
exit(1);
}
ioctl(fd,FBIOGET_FSCREENINFO,&fix);
ioctl(fd,FBIOGET_VSCREENINFO,&var);
p=mmap(0,fix.smem_len,PROT_READ|PROT_WRITE,MAP_SHARED,fd, 0);
for(i=0;i<160*272;i++) //480*272
*(p++)=(0x1f<<11); //red
for(i=0;i<160*272;i++)
*(p++)=(0x3f<<5); //green
for(i=0;i<160*272;i++)
*(p++)=0x1f; //blue
close(fd);
return 0;
}
评论0