fb设为24位模式:
fbset -fb /dev/fb0 -g 800 600 800 600 24 -n
用r g b填充fb:
use-fb 255 0 0 //red
use-fb 0 255 0 //green
...
use-fb.c 代码:
/* use-fb.c*/
#include <stdio.h>
#include <fcntl.h>
#include <linux/fb.h>
#include <sys/mman.h>
#include <stdlib.h>
struct fb_var_screeninfo vinfo;
int
main(int argc, char *argv[])
{
int fbfd, fbsize, i;
int red, green, blue;
unsigned char *fbbuf;
if (argc != 4) {
printf("usage: use-fb red green blue/n");
exit(0);
}
red = atoi(argv[1]);
green = atoi(argv[2]);
blue = atoi(argv[3]);
/* Open video memory */
if ((fbfd = open("/dev/fb0", O_RDWR)) < 0) {
exit(1);
}
/* Get variable display parameters */
if (ioctl(fbfd, FBIOGET_VSCREENINFO, &vinfo)) {
printf("Bad vscreeninfo ioctl/n");
exit(2);
}
/* Size of frame buffer */
fbsize = vinfo.xres*vinfo.yres*(vinfo.bits_per_pixel/8);
/* Map video memory */
if ((fbbuf = mmap(0, fbsize, PROT_READ | PROT_WRITE,
MAP_SHARED, fbfd, 0)) == (void *) -1) {
exit(3);
}
/* Clear the screen */
for (i = 0; i < fbsize; i++) {
*(fbbuf + i++) = red;
*(fbbuf + i++) = green;
*(fbbuf + i) = blue;
}
printf("clear screen with rgb:%s %s %s/n", argv[1], argv[2], argv[3]);
munmap(fbbuf, fbsize);
close(fbfd);
}
分享到:
相关推荐
嵌入式应用中测试framebuffer。支持RGB565.彩虹色,七色转换。
qvfb是QT virtualframebuffer的缩写,是QT在X11下的一个framebuffer仿真器,有了它我们就可以利用X11下众多便利的工具来开发基于framebuffer的应用程序了。qvfb的原理很简单,它建立了一个systemV共享内存,用户只需...
一个简单的framebuffer测试小程序,方便LINUX 驱动开发
linux嵌入式下,基于framebuffer画图测试程序
CHA1 第一个驱动与测试程序 CHA2 1 信号量同步 2 阻塞式读写 3 定时器 4 内存映射 5 /proc访问 6 工作队列 CHA3 LED.c LED灯驱动 button.c 键盘驱动 CHA4 Linux内核I2C驱动 CHA5 usb-skeleton.c USB驱动框架 ...
2.2 Linux C程序设计17 2.2.1 C程序设计概述17 2.2.2 Makefile介绍17 2.2.3 Makefile中的变量18 2.2.4 Makefile隐含规则19 实验2.2 Makefile与helloworld19 2.3 Linux多线程库编程21 2.3.1 多线程21 2.3.2 ...
2.2 Linux C程序设计17 2.2.1 C程序设计概述17 2.2.2 Makefile介绍17 2.2.3 Makefile中的变量18 2.2.4 Makefile隐含规则19 实验2.2 Makefile与helloworld19 2.3 Linux多线程库编程21 2.3.1 多线程21 2.3.2 ...
CHA1 第一个驱动与测试程序 CHA2 1 信号量同步 2 阻塞式读写 3 定时器 4 内存映射 5 /proc访问 6 工作队列 CHA3 LED.c LED灯驱动 button.c 键盘驱动 CHA4 Linux内核I2C驱动 CHA5 usb-skeleton.c USB驱动框架 ...
第4章 嵌入式Linux接口设计与驱动程序53 4.1 驱动程序设计基础53 4.1.1 Linux驱动程序简介53 4.1.2 开发驱动程序的方法53 4.1.3 设备驱动程序的分类53 4.1.4 主设备号和次设备号54 4.1.5 设备文件系统...
CHA1 第一个驱动与测试程序 CHA2 1 信号量同步 2 阻塞式读写 3 定时器 4 内存映射 5 /proc访问 6 工作队列 CHA3 LED.c LED灯驱动 button.c 键盘驱动 CHA4 Linux内核I2C驱动 CHA5 usb-skeleton.c USB驱动框架 camera ...
2.2 Linux C程序设计17 2.2.1 C程序设计概述17 2.2.2 Makefile介绍17 2.2.3 Makefile中的变量18 2.2.4 Makefile隐含规则19 实验2.2 Makefile与helloworld19 2.3 Linux多线程库编程21 2.3.1 多线程21 2.3.2 ...
CHA1 第一个驱动与测试程序 CHA2 1 信号量同步 2 阻塞式读写 3 定时器 4 内存映射 5 /proc访问 6 工作队列 CHA3 LED.c LED灯驱动 button.c 键盘驱动 CHA4 Linux内核I2C驱动 CHA5 usb-skeleton.c USB驱动框架 ...
CHA1 第一个驱动与测试程序 CHA2 1 信号量同步 2 阻塞式读写 3 定时器 4 内存映射 5 /proc访问 6 工作队列 CHA3 LED.c LED灯驱动 button.c 键盘驱动 CHA4 Linux内核I2C驱动 CHA5 usb-skeleton.c USB驱动框架 camera ...
CHA1 第一个驱动与测试程序 CHA2 1 信号量同步 2 阻塞式读写 3 定时器 4 内存映射 5 /proc访问 6 工作队列 CHA3 LED.c LED灯驱动 button.c 键盘驱动 CHA4 Linux内核I2C驱动 CHA5 usb-skeleton.c USB驱动框架 camera ...
CHA1 第一个驱动与测试程序 CHA2 1 信号量同步 2 阻塞式读写 3 定时器 4 内存映射 5 /proc访问 6 工作队列 CHA3 LED.c LED灯驱动 button.c 键盘驱动 CHA4 Linux内核I2C驱动 CHA5 usb-skeleton.c USB驱动框架 camera ...
CHA1 第一个驱动与测试程序 CHA2 1 信号量同步 2 阻塞式读写 3 定时器 4 内存映射 5 /proc访问 6 工作队列 CHA3 LED.c LED灯驱动 button.c 键盘驱动 CHA4 Linux内核I2C驱动 CHA5 usb-skeleton.c USB驱动框架 camera ...
CHA1 第一个驱动与测试程序 CHA2 1 信号量同步 2 阻塞式读写 3 定时器 4 内存映射 5 /proc访问 6 工作队列 CHA3 LED.c LED灯驱动 button.c 键盘驱动 CHA4 Linux内核I2C驱动 CHA5 usb-skeleton.c USB驱动框架 camera ...
现在,您可以启动“驱动程序”并使用测试程序“ get_fb_info_test”,如下所示: $ make $ sudo ./driver & $ sudo ./get_fb_info_test /dev/fb_fuse_buffer 同一程序还可以与本机帧缓冲区一起使用: $ sudo ./...
嵌入式Linux下的LCD驱动程序设计与实现,从设备驱动程序的作用、分类及文件操作,对设备驱动开发的相关知识作了简单介绍。...通过测试程序的编译运行,在LCD上显示了彩色条纹,完成了驱动设计的要求。