问题

项目中的显示模块的BSP基本能够正常工作之后,需要将Linux的启动图片替换成自己公司的Logo图片。
预期很快就能移植成功的,可是结果还是花了不少时间。网上其人人可能也会遇到类似问题,因此在此记录,方便自己和他人改动图片时查阅。
调试时条件:
1,板子启动时已经正常显示小企鹅图片;
2,Linux正常启动后,通过dd命令能够显示图片到LCD上,即LCD的驱动已经工作正常。

操作步骤

1,查阅Linux Logo替换解决办法,主要参考这两篇文章。
http://www.armadeus.org/wiki/index.php?title=Linux_Boot_Logo
http://www.arm9board.net/wiki/index.php?title=Create_your_own_boot_logo

2,使用图片编辑器(paint.net),打开自己公司的logo图片,并根据LCD大小裁剪图片为800x600像素。保存为PNG文件,然后使用命令:

ppmquant 224 logo.tmp > logo_224.tmp
pnmnoraw logo_224.tmp > logo_linux_clut224.ppm
Copy logo_linux_clut224.ppm to Linux drivers/video/logo
rm  drivers/video/logo/logo_linux_clut224.c
rm  drivers/video/logo/logo_linux_clut224.o

拷贝之前,先备份文件logo_linux_clut224.ppm。
重新编译内核,在输出的编译信息中有:

 LOGO    drivers/video/logo/logo_linux_clut224.cCC      drivers/video/logo/logo_linux_clut224.o

证明自己的ppm文件已经是编译进入了内核。

拷贝内核到SD卡并上电后,发现LCD上无任何图片的输出,只有一个光标在LCD的左侧闪烁。

因为小企鹅能够正常显示,所以初步猜测是自己的图片制作的不对。
然后使用另外一组命令制作图片:

pngtopnm logo.png | ppmquant -fs223| pnmtoplainpnm > logo_linux_clut224.ppm
Copy logo_linux_clut224.ppm to Linux drivers/video/logo
rm  drivers/video/logo/logo_linux_clut224.c
rm  drivers/video/logo/logo_linux_clut22.o

(本人此时使用图片工具对图片进行了一些参数调整,记不起具体步骤和参数)。
这次,发现LCD上出现了自己的图片,不过颜色不对,像素点错位。
(下次还原这个图片,然后附上LCD的图片)。

3,和同事讨论后,可能的问题原因:
(1)图片制作依然不对;
(2)怀疑Linux显示Logo时调用的初始化函数和LCD driver的初始化函数不一样?

第一个原因很容易解决,我们可以使用图片工具直接打开ppm文件查看。
在linux下安装GIMP后,打开logo_linux_clut224.ppm,
(附图)
因此发现原因还是由于图片制作不对。

4,解决。
(1),为了清晰对比,本人首先在GIMP中打开了小企鹅的ppm,并获得了图片信息:
像素:80x80 pix;
分辨率: 72x72 ppi
然后本人重新制作了一个像素:80x80 pix,分辨率: 72x72 ppi的小图片,保存为ppm格式,直接覆盖文件logo_linux_clut224.ppm。
这次LCD正常显示图片。
(2),在GIMP中打开公司Logo图片,直接保存为ppm文件格式,重复上述步骤,编译时发现:

 LOGO    drivers/video/logo/logo_linux_clut224.c
drivers/video/logo/logo_linux_clut224.ppm: Binary PNM is not supported
Use pnmnoraw(1) to convert it to ASCII PNM
make[3]: *** [drivers/video/logo/logo_linux_clut224.c] Error 1

直接在命令行中操作:

 ppmquant  224 logo.ppm > linuxlogo.ppm

再次使用GIMP打开,保存为ascii格式的ppm文件。
重命名为logo_linux_clut224.ppm。
终于, 公司logo在LCD上正常显示出来。

结论

1.使用命令行进行boot logo图片的转换,有可能图片转换不正确。
因此需要使用工具如GMIP来打开查看具体的文件效果。
2,直接使用GMIP来编辑和保存图片能够保证图片效果;
3,可以对比小企鹅图片来制作自己的logo图片。

Linux Boot logo 图片的修改相关推荐

  1. 玩转mini2440开发板之【制作和修改linux启动logo图片】

    今天玩一玩linux启动logo图片的修改和制作. 对于我手头的mini2440开发板,其实厂家友善之臂原本是有配一个转换工具的,用起来会比较简单.但是,它那个工具仅针对32位的Fedora 9系统开 ...

  2. linux内核动态logo图片,LINUX内核logo图片(内核启动背景)修改

    http://netpbm.sourceforge.net/doc/ 系统环境:ubuntu 10.04 +x86 $ sudo apt-get install netpbm $ pngtopnm l ...

  3. Linux 开机 logo 修改

    转载地址:https://www.cnblogs.com/pied/p/5142249.html 从内核被解压到文件系统被挂载,我们看到的经典画面是一个小企鹅.如果嫌小企鹅枯燥,我们可以把它换掉. 1 ...

  4. 修改Linux内核启动图片

    原文: http://www.linuxde.net/2013/06/13936.html 保存一下,去试试. 本文讲的是修改Linux内核启动的图片,而不是uboot,这两者是不一样的哦. uboo ...

  5. Linux内核启动去掉企鹅,修改linux内核kernel开机logo(小企鹅)

    修改linux内核kernel的开机图片(原为小企鹅图片). 转载请注明出处:http://blog.csdn.net/wang_zheng_kai 导航制导与控制实验室 2014年12月10日 本文 ...

  6. 修改linux开机logo

    修改linux开机logo 2014年12月03日 14:46:16 zhuangtim1987 阅读数:1257更多 个人分类: Linux Driver 编者:linux的开机默认logo是一只可 ...

  7. 制作Linux嵌入式系统开机LOGO(图片)

    内核:linux-2.6.22.6 ubuntu:Ubuntu 9.10 开发板: JZ2440(方法通用,不局限于JZ2440) 目的: JZ2440开机logo默认是一只可爱的小企鹅.我们把它替换 ...

  8. 修改 linux启动logo

    修改目标:用自定义的ppm图片替代 /drivers/video/logo/logo_linux_clut224.ppm 同时删除 logo_linux_clut224.c logo_linux_cl ...

  9. linux启动logo修改 bootlogo

    改目标:用自定义的ppm图片替代/drivers/video/logo/logo_linux_clut224.ppm 同时删除 logo_linux_clut224.c logo_linux_clut ...

最新文章

  1. oracle-rman-list命令收集
  2. hdu 3585(二分+最大团)
  3. Django02: pycharm上配置django
  4. JS正则表达式大全【转】
  5. scriptol图像处理算法
  6. 根据压缩后的行列数和sourcemap反向定位源码
  7. python标准库math用法精要
  8. 大型云原生项目在数字化企业落地过程解密 1
  9. 电信用户流失预测Telco customer churn—(基于逻辑回归)
  10. effective C++ 条款 48:认识template元编程
  11. BUAA北京地铁乘坐线路查询
  12. BigDecimal加减乘除计算
  13. 超级账本基金会执行董事Daniela Barbosa:开源区块链已成主流
  14. pdfkit批量转换html文件为pdf
  15. ElasticSearch java API - 聚合查询-聚合多字段聚合demo
  16. 《数字图像处理》-(8)形态学图像处理详细
  17. Python爬虫 - 人人贷散标
  18. python做疫情数据分析的框架_Python制作新冠疫情世界地图
  19. 九宫格数独c语言编程,求用C语言编一个解九宫格数独的程序
  20. php u003d 转码,php汉字转码示例

热门文章

  1. Eclipse 配置主题及处理四周白色框问题
  2. 贪心算法和01背包算法
  3. Docker容器部署
  4. 学习笔记-操作系统发展史
  5. work02_vue页面打印水印
  6. 微信公众号二维码 链接
  7. 盲人怎么用计算机,盲人考试启用计算机答卷 他们是这样做到的…
  8. 爱因斯坦谜题 谁养鱼 C 版
  9. 文献翻译 载重汽车变速箱
  10. Jetson Xavier NX 安装pip3