嵌入式爱好者

查看: 4569|回复: 7

lcd 显示屏出现问题

[复制链接]

1

主题

1

帖子

27

积分

扫一扫,手机访问本帖
发表于 2014-7-2 14:01:39 | 显示全部楼层 |阅读模式
以下代码
  • #include <unistd.h>  
  • #include <stdio.h>  
  • #include <stdlib.h>  
  • #include <fcntl.h>  
  • #include <string.h>  
  • #include <linux/fb.h>  
  • #include <sys/mman.h>  
  • #include <sys/ioctl.h>  
  • #include <arpa/inet.h>  
  • int main ( int argc, char *argv[] )  
  • {  
  •     int fbfd = 0;  
  •     struct fb_var_screeninfo vinfo;  
  •     struct fb_fix_screeninfo finfo;  
  •     long int screensize = 0;  
  •     struct fb_bitfield red;  
  •     struct fb_bitfield green;  
  •     struct fb_bitfield blue;  
  •   
  •     //打开显示设备  
  •     fbfd = open("/dev/fb0", O_RDWR);  
  •     if (!fbfd)  
  •     {  
  •         printf("Error: cannot open framebuffer device.\n");  
  •         exit(1);  
  •     }  
  •   
  •     if (ioctl(fbfd, FBIOGET_FSCREENINFO, &finfo))  
  •     {  
  •         printf("Error:reading fixed information.\n");  
  •         exit(2);  
  •     }  
  •   
  •     if (ioctl(fbfd, FBIOGET_VSCREENINFO, &vinfo))  
  •     {  
  •         printf("Error: reading variable information.\n");  
  •         exit(3);  
  •     }  
  •   
  •     printf("R:%d,G:%d,B:%d \n", vinfo.red, vinfo.green, vinfo.blue );  
  •   
  •     printf("%dx%d, %dbpp\n", vinfo.xres, vinfo.yres, vinfo.bits_per_pixel );  
  •     xres = vinfo.xres;  
  •     yres = vinfo.yres;  
  •     bits_per_pixel = vinfo.bits_per_pixel;  
  •   
  •     //计算屏幕的总大小(字节)  
  •     screensize = vinfo.xres * vinfo.yres * vinfo.bits_per_pixel / 8;  
  •     printf("screensize=%d byte\n",screensize);  
  •   
  •     //对象映射  
  •     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");  
  •         exit(4);  
  •     }  
  •   
  •     printf("sizeof file header=%d\n", sizeof(BITMAPFILEHEADER));  
  •   
  •     printf("into show_bmp function\n");  
  •   
  •     //显示图像  
  •     show_bmp();  
  •   
  •     //删除对象映射  
  •     munmap(fbp, screensize);  
  •     close(fbfd);  
  •     return 0;  
  • }  
回复

使用道具 举报

1

主题

1

帖子

27

积分

 楼主| 发表于 2014-7-2 14:02:45 | 显示全部楼层
Error:reading fixed information.
在2440开发板上运行的时候,报错
点评回复 支持 反对

使用道具 举报

1

主题

1

帖子

27

积分

 楼主| 发表于 2014-7-2 14:03:14 | 显示全部楼层
这是怎么回事啊,这个程序不是通用的吗:'(
点评回复 支持 反对

使用道具 举报

153

主题

3910

帖子

4207

积分

AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FCU1401通行证FCU1301通行证FCU11xx通行证

发表于 2014-7-3 08:51:29 | 显示全部楼层
楼主,这是你自己编写的程序?

点评

不是,网上搜的  详情 回复 发表于 2014-7-3 18:17
技术支持电话:0312-3119192
技术支持邮箱:Linux@forlinx.com
点评回复 支持 反对

使用道具 举报

1

主题

1

帖子

27

积分

 楼主| 发表于 2014-7-3 18:17:49 | 显示全部楼层
飞凌-unix 发表于 2014-7-3 08:51
楼主,这是你自己编写的程序?

不是,网上搜的
点评回复 支持 反对

使用道具 举报

1

主题

1

帖子

27

积分

 楼主| 发表于 2014-7-3 18:18:21 | 显示全部楼层
哪来的不重要吧,重要的是问题在哪?
点评回复 支持 反对

使用道具 举报

4

主题

36

帖子

71

积分

发表于 2014-10-18 21:49:01 | 显示全部楼层
那你也不能随便找个程序就来用吧!
点评回复 支持 反对

使用道具 举报

153

主题

3910

帖子

4207

积分

AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FCU1401通行证FCU1301通行证FCU11xx通行证

发表于 2014-10-20 09:03:25 | 显示全部楼层
建议你先把程序源码看懂是怎么回事,你也不能随便下载一个程序就用吧
技术支持电话:0312-3119192
技术支持邮箱:Linux@forlinx.com
点评回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-12-21 06:02

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表