Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1254186
  • 博文数量: 479
  • 博客积分: 12240
  • 博客等级: 上将
  • 技术积分: 4999
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-24 17:12
文章分类

全部博文(479)

文章存档

2014年(1)

2013年(1)

2012年(1)

2011年(95)

2010年(177)

2009年(167)

2008年(16)

2007年(21)

分类: 嵌入式

2009-10-14 21:25:46

U-Boot中的Splash Screen

U-Boot配置

    在U-Boot中使用Splash Screen,可以实现U-Boot启动后,在LCD上显示自定义图片,起到友好的界面显示作用。使用Splash Screen需要在配置文件中使能BMP图片功能和SPLASH功能:
#define CONFIG_CMD_BMP
#define CONFIG_SPLASH_SCREEN
 

实例

    并且要定义splashimage变量以及在splash变量所定义的地址存放bmp图片。以2MB的SST30VF1601为例,工32个扇区,规划如下:
 

 项目    

 地址范围

扇区 

大小 

 说明

U-Boot 

0x0000 0000 ~ 0x0010 0000 

0~15 

1M 

 

 参数

0x0010 0000 ~ 0x0018 0000 

16~23 

512K 

 

splashimage 

0x0018 0000 ~ 0x0020 0000 

24~31 

512K 

 

 

操作    

现在要实现splash screen,需要进行操作,先下载一个图片到内存中,然后擦除FLASH的splashimage区域,接着将图片写入splashimage区域,最后设置并保存splashimage环境变量即可。
    U-Boot> tftp a0008000 logo.bmp                   ;下载文件到内存
    U-Boot> erase 1:23-31                                 ;擦除Flash的splashimage区域
    U-Boot> cp.b a0008000 00180000 $filesize    ;将logo写到Flash的splashimage区域
    U-Boot> setenv splashimage 00180000         ;设置splashimage环境变量
    U-Boot> saveenv                                         ;保存环境变量
 
    u-boot启动后,输入bmp d $splashimage即可在LCD上显示logo图片。为了实现开机就显示logo,可以修改common/lcd.c文件,在其中加入实现 bmp d $splashimage的代码即可。
阅读(4950) | 评论(1) | 转发(1) |
给主人留下些什么吧!~~

fzp52060182009-10-28 13:44:51

我按照你的步骤做了,生成的uboot中没有bmp这个命令,请帮忙解答下。