wince5.0系统开机logo的更换

来源:互联网 发布:软件论坛网 编辑:程序博客网 时间:2024/06/05 08:26

网上关于这方面的资料很多,但这几天我按照网上的尝试了很多次都没有成功,最后自己慢慢摸索最终还是弄出来了,现在记下来为以后遇到类似的事情作参考。

1.在网上下载了一个图形转换工具bmp2c.exe,把320*240的BMP图片转换成C文件的.h文件 命名为 bitmap.h,其实里面就是一个大数组。

2.把这文件拷贝到你PB安装目录的一个文件夹下,我的拷贝在:C:\WINCE500\PLATFORM\mini2440\Src\Kernel\Oal

3.再修改相同目录下的init.c文件,首先在文件开头包含第二步考进去的那个文件,我的是bitmap.h 所以就是 #include "bitmap.h"。然后再修改这文件里面 static void InitDisplay(DWORD LcdType) 函数。这函数里面有关于开机显示图片的代码。

 memset((void *)IMAGE_FRAMEBUFFER_UA_BASE, 0, XSize*YSize*2);//0  XSize   YSize
{
unsigned PicWidth   = StartLogoData[0];
unsigned PicHeight  = StartLogoData[1];
unsigned CopyWidth  = PicWidth  <= LCD_WIDTH  ? PicWidth  : LCD_WIDTH ;
unsigned CopyHeight = PicHeight <= LCD_HEIGHT ? PicHeight : LCD_HEIGHT;


unsigned V;
//const unsigned short *PicPtr = StartLogoData + 2;
const unsigned short *PicPtr = ScreenBitmap;                     //我修改的地方  ScreenBitmap 就是那数组的 名称
unsigned short *LCDPtr = (unsigned short *)IMAGE_FRAMEBUFFER_UA_BASE; 
for (V = 0; V < CopyHeight; V++) {
memcpy(LCDPtr, PicPtr, CopyWidth * 2);   //其实其关键作用的是这语句
LCDPtr += LCD_WIDTH;
PicPtr += PicWidth;
}
}

然后保存一下 在sysgen 就可以了。再烧写到板子。开机显示就是我设置的图片。  

原创粉丝点击