在linux开发板上显示图片,制作开发板的logo标签

如何制作开发板的logo标签:

一,修改由kernel显示的开机logo:

注意:QQ截图可以得到jpg格式图片,用windows的 开始->程序->附件->绘图->ACD SEE绘图工具打开,可以另存为png格式。

1,下载图形转换工具:

# sudo apt-get install netpbm   //下载图形转换工具:netpbm,安装完以后就会有pngtopnm,pnmquant,pnmtoplainpnm三个命令

2,自己制作或下载一张png格式的图片,如 **.png。

//注意:因为我的开发板的最大分辨率是:480*272,所以图片分辨率不能超过这个范围。

3,制作.ppm格式的图片

# pngtopnm **.png > **.pnm  //png格式 转换成 pnm格式

# pnmquant 224 **.pnm > **224.pnm  //量化在netpbm图像的颜色较小的一组

# pnmtoplainpnm **224.pnm > logo_linux_**224.ppm

4,拷贝文件到相应目录

拷贝logo_linux_**224.ppm文件到kernel/drivers/video/logo目录下。

5,修改kernel/drivers/video/logo目录下的Kconfig文件

config LOGO_LINUX_CLUT224

bool "Standard 224-color Linux logo"

depends on LOGO && FB_S3C24X0_S320240 || FB_S3C24X0_W320240 //这里修改为:depends on LOGO

default y

//目的:depends on LOGO会一直是真,make menuconfig时,选项会一直有效,可供选择。

6,内核的配置,在内核路径下执行:

# make menuconfig

Device Drivers --->Graphics support --->下有

选项 S3c24x0 LCD framebuffer support --> LCD select(4.3 inch 480*272 CHIMEI LCD)

选项 Console display driver support --> Framebuffer console support

选项 logo configuration --> Bootup logo --> Standart 224-color linux logo

/*

注意:

1),选项 Standard black and white Linux logo 对应的是 logo_linux_mono.pbm图片,

跟我们这里生产的图片格式不一样,make生成.c文件时会报错,所以不选择这个选项。

2),选项 Standard 16-color Linux logo 对应的是 logo_linux_vga16.ppm图片,

跟我们这里生产的图片格式不一样,make生成.c文件时会报错,所以不选择这个选项。

3),选项 Standart 224-color linux logo 对应的是 logo_linux_clut224.ppm图片,

跟我们这里生成的图片格式一样,所以要选择这个选项。

4),如果不进行下面的图片替换,平台具体使用的logo将是这个原始图片。

5),我的开发板使用的LCD:4.3英寸,分辨率:480*272

*/

7,用logo_linux_**224.ppm替换kernel/drivers/video/logo目录下的

文件logo_linux_clut224.ppm。注意:先保存原始图片文件。

# cp logo_linux_clut224.ppm .bak.logo_linux_clut224.ppm;

# cp logo_linux_**224.ppm logo_linux_clut224.ppm;

8,重新编译内核即可。在内核顶层目录下:

# make clean;make;

/*

注意:

1,其中make clean 必须执行,因为logo_linux_clut224.ppm的内容被替换了。

2,内核的makefile会自动把一张 logo_linux_clut224.ppm图片编译生成一个 logo_linux_clut224.c文件

3,另外 kernel/drivers/video/logo目录下的makefile,logo.c,不需要修改。

*/

9,启动开发板,既可看见效果

# ./mkimage.sh

# tftp 32000000 uImage

# bootm

linux开机logo制作

分类: Linux开发技术和工具 2011-07-20 20:25 1311人阅读 评论(0) 收藏 举报

linuxubuntu图形工具平台

kernel:2.6.27

1、制作logo的方法:

首先选择一个自己喜欢的图片,然后通过GIMP软件将该图片保存为.png格式,

变换方式这个就不说了(very easy),比如保存为linuxlogo.png.

然后将该图片传入到装有Linux PC比如(ubuntu),按照以下顺序你就可以制作一个你喜欢logo前提你必须安装以下的工具(pngtopnm,pnmquant,pnmtoplainpnm)

$pngtopnm linuxlogo.png > linuxlogo.pnm

$pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm

$pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm

或者

$bmptoppm pic.bmp > temp1.ppm //生成ppm

$ppmquant 224 temp1.ppm > temp2.ppm  //转换成224颜色

$pnmnoraw temp2.ppm > logo.ppm   //转换成ascii格式

或者使用gimp软件

1、打开图片,在image/mode/indexed..中修改最大颜色数为224

2、保存为ppm格式,选择asiic存放格式

3、代替logo目录下相应图形即可

这样您制作的logo就已经成功了,将linuxlogo224.ppm

拷贝到/drivers/video/logo文件夹中的根据你的平台具体使用的哪个logo进行命名,

比如logo_linux_clut224.ppm,友情提醒将原有的logo保存。

其中在./drivers/video/logo/下有XXX_XXX_XXX.c和XXX_XXX_XXX.o文件是在进行make编译之后生成的,可以将制作好的.ppm文件拷贝进去替换原来的logo文件之后,使用make cleanSUB_DIR=./drivers/video/logo/来清除logo目录下的.c和.o文件。

这样你的logo就完全制作好了,但是有这一点还是不够的,你必须在内核中选择logo,接下来我们来看如何配置内核

2、配置logo选项

在内核路径下执行make menuconfig

开发板上开启logo显示的选项

a、选择虚拟控制台显示驱动

Device Drivers --->Graphicssupport --->下有

选项Console display driver support---> Framebuffer console support

选项 Bootup logo ---> Standart 224-color linux logo

三、修改由Android系统显示的静态开机画面

1. 制作要显示的图片

使用PS制作一张和当前lcd分辨率相同的图片,保存时选“存储为 Web 所用格式”,然后在弹开的窗口上,“预设”项选择“PNG-24”,保存为android_logo.png。

2. 将图片转换为raw格式

使用linux下的ImageMagick自带的convert命令,进行raw格式转换,命令为:

convert -depth 8 android_logo.png rgb:android_logo.raw

如果当前系统没有安装该工具,可以执行下面的命令安装:

sudo apt-get install imagemagick

3. 将raw格式转化为rle文件

需要用到android编译后的rgb2565工具,该工具在android/out/host/linux-x86/bin目录下(android为当前源码所在目录),转换命令如下:

rgb2565 -rle < android_logo.raw > initlogo.rle

至此,需要显示的图像已经做好了,即initlogo.rle。

4.将initlogo.rle拷贝到文件系统中

将initlogo.rle拷贝到out\target\product\pantherboard\root下,并替换同名文件。然后重新制作文件系统映像并烧写即可。

5.特别说明

该图片是在system/core/init/init.c文件中显示的,具体函数调用过程如下:

console_init_action();

-> load_565rle_image(INIT_IMAGE_FILE) ;

-> unlink(fn);

函数中的宏在对应的头文件android/system/core/init/init.h中定义:

#define INIT_IMAGE_FILE "/initlogo.rle"

对于可读写型的文件系统而言,当第一次开机并显示logo后,上述unlink(fn)函数会将该logo删除,第二次开机时就不能再显示这一logo了。解决办法有两个,一是注释掉unlink(fn)函数,但是尽量不要修改源码。二是在out\target\product\xxxx\root目录下,拷贝initlogo.rle的副本,并命名为initlogo.rle.bak,直接用initlogo.rle.bak文件替换initlogo.rle也可以,不过原因还不清楚。

四、修改由Android显示的“android”文字开机动画

用winRAR 打开android\out\target\product\xxxx\system\framework目录下的framework-res.apk文件,用预显示的图片替换assets\images下相应的图片即可。

按上述方法能够改变开机logo,但是由于修改的是out目录下生成的文件,改动对android源码并没有影响,因此,若清除编译的目标文件并重新编译时,修改过的logo又被源码中的固有logo覆盖了。所以要修改源码中与logo有关的部分。具体做法是,修改/frameworks/base/core/res/assets/images/目录下的png图片,修改后再重新编译就依然是我们修改后的logo了。

与这一logo显示相关的源码在/frameworks/base/cmds/bootanimation/bootanimation.cp文件中,具体函数为

bool BootAnimation::android()。

阅读(410) | 评论(0) | 转发(0) |

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值