一、Logo 更新有两种方法

1、通过数组更新:

Splash.c(c:\wince600\platform\nano\src\oal\oallib)

中包含头文件,得到 LogoBitmap,以下进行开机 Logo

void OALBspDrawSplashScreen()

{

if ((v_pDriverGlobals->g_TOC.logo.dwBpp == DISPLAY_DEPTH) &&

(v_pDriverGlobals->g_TOC.logo.dwWidth == DISPLAY_WIDTH) &&

(v_pDriverGlobals->g_TOC.logo.dwHeight == DISPLAY_HEIGHT) &&

(v_pDriverGlobals->g_TOC.logo.dwSupported) &&

(v_pDriverGlobals->g_TOC.logo.dwValid))

{

//Load custmized LOGO

DrvLibLcdSplashScreen(LCD_FRAME_BUF_VIRT_ADDR, LCD_FRAME_BUF_VIRT_ADDR);

return;

}

RETAILMSG(1, (_T("show oldlogo!DISPLAY_DEPTH=%d,v_pDriverGlobals->g_TOC.logo.dwBpp=%d\r\n"),DISPLAY_DEPTH, v_pDriverGlobals->g_TOC.logo.dwBpp));

DrvLibLcdSplashScreen(LCD_FRAME_BUF_VIRT_ADDR,(unsigned char*) LogoBitmap);

}

注意:用数组显示的方法时,确保执行DrvLibLcdSplashScreen 的第二个参数为 LogoBitmap,不要显示到LCD_FRAME_BUF_VIRT_ADDR 区域(SD 升级预留)

Bmpinfo.exe 可以把24位位图文件数据提取,转换成头文件,也可以用ShowDIB.exe 工具

注意:需要把生成的头文件放在 splash.c 所在的目录下,并且在 splash.c 中把头文件包含进去。

2、Eboot中SD升级

1)首先,需要准备一张 FAT 分区格式的 SD 卡;

2)需要用软件 ShowDIB.exe 把一个位图文件转换成 RAW 文件,具体操作参考 ShowDIB.exe 工具简介;

3)把生成的 RAW 文件存到 SD 卡的根目录下,并且以 startup.raw 命名;

4)把 SD 卡插入设备,复位设备,进入 EBOOT,出现如下选项:

………………

A) UPDATE image from SD/MMC card

B)UPDATE logo from SD/MMC card

D) DOWNLOAD image now

………………

选择 B,出现如下菜单选项:

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

! Now we try to update logo fromSD card. Please ensure

! Your raw data in SD card rootdirectory.

! Note here you must placestartup.raw file

! in SD card. Here you have threechoices:

! 1 ----- Download now

! 2 ----- Erase Updated logo

! 9 ----- Give up download image

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

输入 1 就会马上从 SD 卡下载startup.raw,下载成功则 SD 卡升级成功。

注意:如果按照以上步骤不能成功,则可能需要重新烧录 NBOOT、EBOOT 以及 Download NK,之后再按以上步骤来完成。

二、ShowDIB.exe 工具简介

ShowDIB.exe 工具 可以处理32/24/16 位位图,把数据转换成头文件或者raw 文件

使用方法如下:

1. 打开ShowDIB.exe

2. Open 位图

2011-08-05 —— 杂记 —— logo 更新总结

3.点击菜单或工具栏,进行头文件或者 Raw 格式文件转换,生成相应文件

2011-08-05 —— 杂记 —— logo 更新总结

相关文章: