该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

/* for (bufIdx=0; bufIdx < NUM_DISPLAY_BUFS-1; bufIdx++) {

fbp[bufIdx+1] = fbp[bufIdx] + displaySize;

}*/

for(bufIdx=0;bufIdx

{

buf=(unsigned int *)fbp;

for (i=0; i < displaySize / sizeof(unsigned int); i++) {

buf[i] = UYVY_BLACK;

}

}

//pix=calloc(screensize,1);

yuv=fopen(FILE_YUV,"rb");

//displayIdx = (displayIdx + 1) % NUM_DISPLAY_BUFS;

fread(fbp,displaySize,1,yuv);

//fbp[displayIdx]=pix[displayIdx];

// for(j=0;j

//{fbp[j]=pix[j];}

//memset(fbp,yuv,screensize);

munmap(fbp, screensize);//ÉŸ³ýÌضšµØÖ·ÇøÓòµÄ¶ÔÏóÓ³Éä int munmap(void *start, size_t length); printf("The framebuffer device was munmapped to memory successfully.\n");

close(fbfd);

printf("The framebuffer device was closed successfully.\n");

return 0;

}

//static int osdInit(char *displays)

void osdInit(void)

{

struct fb_var_screeninfo varInfo;

struct fb_fix_screeninfo fixInfo;

int fd;

int size=0;

char * displays;

// Open the OSD device

fd = open("/dev/fb/0", O_RDWR);

printf("123456\n");

if (fd == -1) {

printf("Failed to open fb device %s\n", "/dev/fb/0");

}

if (ioctl(fd, FBIOGET_VSCREENINFO, &varInfo) == -1) {

printf("Failed ioctl FBIOGET_VSCREENINFO on %s\n","/dev/fb/0" );

}

if (ioctl(fd, FBIOGET_FSCREENINFO, &fixInfo) == -1) {

printf("Failed FBIOGET_FSCREENINFO on \n");

} // Try the requested size

varInfo.xres =720; ///WIDTH=720

varInfo.yres =576; ///HEIGHT=480 全屏显示

// varInfo.xres_virtual =720;

// varInfo.yres_virtual =1728;

varInfo.bits_per_pixel = 16; //=2,,,,,16位的显示屏SCREEN_BPP=16 if (ioctl(fd, FBIOPUT_VSCREENINFO, &varInfo) == -1) {

printf("Failed ioctl FBIOPUT_VSCREENINFO on %s\n", "/dev/fb/0");

} if (varInfo.xres !=720 ||

varInfo.yres !=576 ||

varInfo.bits_per_pixel != 16) {

printf("Failed to get the requested screen size: at bpp\n");

}

size = fixInfo.line_length * varInfo.yres_virtual;

printf("size=%d\n",size);

// Map the frame buffers to user space

displays= (char *) mmap(NULL, size ,

PROT_READ | PROT_WRITE,

MAP_SHARED, fd, 0); if (displays == MAP_FAILED) {

printf("Failed mmap on %s\n", "/dev/fb/0");

}

memset(displays,0,size);

//setOsdBuffer(fd, 0); } static int setOsdTransparency(unsigned char trans) //trans的值是0,设置OSD透明度参数

arm linux输出到lcd,求助 armlinux中实现lcd显示相关推荐

  1. linux lcd显示流程,求助 armlinux中实现lcd显示

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* for (bufIdx=0; bufIdx < NUM_DISPLAY_BUFS-1; bufIdx++) { fbp[bufIdx+1] = ...

  2. arm linux嵌入式网络控制系统,基于ARMLinux的嵌入式网络控制系统的研究与设计

    摘要: 随着计算机技术.控制技术和网络技术的蓬勃发展,嵌入式系统与网络控制系统的应用越来越广阔.当前控制系统正经历一场前所未有的变革,远程监控和智能控制成为控制系统发展的重要方向.通过嵌入式网络控制系 ...

  3. arm linux应用调用rtc接口,ARMLinux驱动RTC(实时时钟)驱动分析

    硬件平台:FL2440(S3C2440) 内核版本:Linux 2.6.28本文引用地址:http://www.eepw.com.cn/article/201611/317629.htm 主机平台:U ...

  4. 解决linux下oracle进入sqlplus环境中后退键显示^H、上下键无效与ctrl+l无法清屏等问题【weber出品必属精品】...

    习惯linux中上下键回退历史输入的人们肯定也希望sqlplus中也能实现相同的效果,可是不幸的是,sqlplus中不提供诸多方便的快捷键,这个时候我们就需要另外安装一个插件来实现这个想法. 这个插件 ...

  5. html中显示shell脚本的输出,网页从shell脚本中输入并显示结果

    首先,不是在BASH脚本中使用$USERNAME. $USERNAME是一个包含当前用户名的BASH变量.实际上,在BASH中使用UPPERCASE变量通常是一个糟糕的主意.大多数BASH环境变量都是 ...

  6. 第三十四期-ARM Linux内核的中断(4)

    作者:罗宇哲,中国科学院软件研究所智能软件研究中心 上一期中我们介绍了ARM Linux内核中外设中断处理的部分流程,这一期我们将继续介绍ARM Linux内核的外设中断处理流程中与中断描述符相关的部 ...

  7. 【Qt开发】【VS开发】【Linux开发】OpenCV、Qt-MinGw、Qt-msvc、VS2010、VS2015、Ubuntu Linux、ARM Linux中几个特别容易混淆的内容...

    [Qt开发][VS开发][Linux开发]OpenCV.Qt-MinGw.Qt-msvc.VS2010.VS2015.Ubuntu Linux.ARM Linux中几个特别容易混淆的内容 标签:[Qt ...

  8. 建立arm linux运行环境,构建 arm-linux 仿真运行环境 (skyeye + arm-linux + NFS)

    一 前言 本文旨在将 arm-linux 在 skyeye 上搭建起来,并在 arm-linux 上能成功 mount NFS 为目标, 最终我们能在 arm-linux 里运行我们自己的应用程序. ...

  9. linux 混音处理 arm,alsa移植到arm linux嵌入式系统中

    1  alsa-lib的移植 1.1  软件包下载 alsa-lib库:进入网站http://www.alsa-project.org/选择下载,在这里下载的是alsa-lib-1.0.22.tar. ...

最新文章

  1. 计算机组成原理知识点概叙
  2. python数据库有什么特点_python进阶十——mysql初识
  3. Spring Cloud Alibaba:Sentinel实现熔断与限流
  4. 【逆水寒三周年】大型MMO项目UI管理的价值与责任
  5. 使用Spring Boot和Vue进行有益的开发
  6. LeetCode MySQL 626. 换座位
  7. bigdecimal 保留两位小数_openpyxl修改单元格格式(隐藏小数、设定百分数位数)...
  8. Android图片加载之初步认识bitmap
  9. Eclipse用法和技巧十七:覆盖父类方法
  10. python mmap_python标准库基础之mmap:内存映射文件
  11. 使用python进行数学建模系列1 读表格 +简单处理+ 画图简单入门 代码可直接运行
  12. pikachu逻辑漏洞实验
  13. [离散数学]集合论基础P_4:运算定律及其证明
  14. sed 替换字符串以变量形式
  15. 如何在手机设置中打开位置定位服务器,手机gps定位功能如何设置
  16. 人纪--针灸---------12.7开始
  17. SpringBoot+WebSocket问题:Failed to register @ServerEndpoint class
  18. iPhone 13关闭个性化广告该怎么关 关闭个性化广告教程一览
  19. python 将pcm编码文件转化为wav音频文件
  20. *SAS语言结构**

热门文章

  1. python zipfile模块学习笔记(一)
  2. 利用BAT脚本加入域和退出域的代码
  3. 产品经理与交互设计师的对话——需求是如何变成产品原型的(转)
  4. Windows Workflow HOL学习笔记(十二):创建状态基工作流
  5. 学编程决不可心浮气燥(转)
  6. 5-5 常用系统接口
  7. matlab如何判断一个文件夹里面是否包含某个含有部分文件名的文件_如何构建一个成功的AI PoC(概念验证项目)...
  8. 拔染印花的主要特点和工艺技术
  9. Windows Azure Cloud Service (8) Role及其生命周期模型
  10. CS 540: Introduction to Artificial Intelligence