ARM开发板 嵌入式Linux 修改开机启动LOGO

简介:

 1.嵌入式 Linux LOGO显示原理

 

嵌入式Linux是直接在FrameBuffer的基础上。直接显示一个ppm格式的图象。它 kernel/drivers/video/fbcon.c中的fbcon_show_logo()完成,最大颜色支持224色而不常见的255色。

  默认的logo文件是 drivers/video/logo/logo_linux_clut224.ppm.

 

2.制作流程

   因为LINUX LOGO格式需要ppm格式来显示。这种格式是一种用ASCII来描述图像数据一种格式。一般只有少数软件能识这种这种格式。因此假设你有一张做好的LOGO图片(JPG或PNG格式,最好是后者),接下来有两种方法来制作LOGO PPM格式. 首先你要保证你的LOGO的尺寸不能超过你的屏幕尺寸,第一次制作可以选小一点。象缺省的LOGO只有80*80.在各种情况能显示。

 

2.1使用netpbm包来进行转换

   RHEL5已经安装这几种工具。它自带了 netpbm-10.35-6.fc6 假设你的是png数据分别按如下步骤

pngtopnm huisen-logo-linux.png > huisen-logo-linux.pnm         #转换png成pnm格式

pnmquant 224 huisen-logo-linux.pnm > huisen-logo-linux224.pnm       #转换像素数为224

pnmtoplainpnm huisen-logo-linux224.pnm > logo_linux_clut224.ppm    #转换二进制的pnm格式为文本的ppm格式.

cp  logo_m32r_clut224.ppm linux-2.6.28.6/drivers/video/logo/logo_linux_clut224.ppm

rm -f linux-2.6.28.6/drivers/video/logo/logo_linux_clut224.c

  2.2 使用RHEL的GIMP软件来编辑.

     RHEL自带了GIMP .如果没有安装,可以从光盘选择如下三个包安装,个人推荐用这个模式,不太容易失败。

 

 

 

 

首先用gimp打开一个png文件,首先打开主菜单 图像-->模式-->索引.

设定颜色为224色

然后另存为ppm格式

 

另存选择为ASCII格式

 

将ppm取名为 logo_linux_clut224.ppm 拷入指定目录。最后实测画面如下。最后成功,理论是可以全屏显示,在2.6.30下实现过。



     本文转自 驿落黄昏 51CTO博客,原文链接:http://blog.51cto.com/yiluohuanghun/1118598,如需转载请自行联系原作者




相关文章
|
4天前
|
Ubuntu Linux 开发者
Ubuntu20.04搭建嵌入式linux网络加载内核、设备树和根文件系统
使用上述U-Boot命令配置并启动嵌入式设备。如果配置正确,设备将通过TFTP加载内核和设备树,并通过NFS挂载根文件系统。
32 15
|
5月前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
1028 3
|
18天前
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
84 13
|
7月前
|
网络协议 算法 Linux
【嵌入式软件工程师面经】Linux网络编程Socket
【嵌入式软件工程师面经】Linux网络编程Socket
208 1
|
3月前
|
数据处理
基于ARM的嵌入式原理与应用:ALU的功能与特点
基于ARM的嵌入式原理与应用:ALU的功能与特点
238 0
|
4月前
|
Linux
linux 显示logo的过程
linux 显示logo的过程
|
5月前
|
NoSQL Linux C语言
嵌入式GDB调试Linux C程序或交叉编译(开发板)
【8月更文挑战第24天】本文档介绍了如何在嵌入式环境下使用GDB调试Linux C程序及进行交叉编译。调试步骤包括:编译程序时加入`-g`选项以生成调试信息;启动GDB并加载程序;设置断点;运行程序至断点;单步执行代码;查看变量值;继续执行或退出GDB。对于交叉编译,需安装对应架构的交叉编译工具链,配置编译环境,使用工具链编译程序,并将程序传输到开发板进行调试。过程中可能遇到工具链不匹配等问题,需针对性解决。
173 3
|
5月前
|
Linux 网络安全 开发工具
内核实验(二):自定义一个迷你Linux ARM系统,基于Kernel v5.15.102, Busybox,Qemu
本文介绍了如何基于Linux Kernel 5.15.102版本和BusyBox创建一个自定义的迷你Linux ARM系统,并使用QEMU进行启动和调试,包括内核和BusyBox的编译配置、根文件系统的制作以及运行QEMU时的命令和参数设置。
435 0
内核实验(二):自定义一个迷你Linux ARM系统,基于Kernel v5.15.102, Busybox,Qemu
|
5月前
|
编解码 安全 Linux
基于arm64架构国产操作系统|Linux下的RTMP|RTSP低延时直播播放器开发探究
这段内容讲述了国产操作系统背景下,大牛直播SDK针对国产操作系统与Linux平台发布的RTMP/RTSP直播播放SDK。此SDK支持arm64架构,基于X协议输出视频,采用PulseAudio和Alsa Lib处理音频,具备实时静音、快照、缓冲时间设定等功能,并支持H.265编码格式。此外,提供了示例代码展示如何实现多实例播放器的创建与管理,包括窗口布局调整、事件监听、视频分辨率变化和实时快照回调等关键功能。这一技术实现有助于提高直播服务的稳定性和响应速度,适应国产操作系统在各行业中的应用需求。
152 3
|
7月前
|
存储 Ubuntu 编译器
合肥中科深谷嵌入式项目实战——基于ARM语音识别的智能家居系统(三)
合肥中科深谷嵌入式项目实战——基于ARM语音识别的智能家居系统(三)
合肥中科深谷嵌入式项目实战——基于ARM语音识别的智能家居系统(三)