16729|91

88

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

wince5.0 开机logo解决方案 [复制链接]

想开发自己的开机logo,知道世面上好多厂家已经实现。有那些实现方式那?请大家支持!
此帖出自WindowsCE论坛

最新回复

我觉得大家的回答都不怎么详细,希望那位高手能脱离平台把所有的实现开机LOGO的方法进行一下总结叙述,而不是回答几句没头没尾的话!  详情 回复 发表于 2010-4-7 15:14
点赞 关注
 

回复
举报

69

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
把 Logo 添加到启动代码 在 Windows CE BSP  ..\Src\Kernel\Oal\Init.c 中注释掉对 LCD 控制器初始化的函数 然后在 ..\Src|Drivers\Display 的 S3C2440disp.cpp 文件中删除对显存缓冲区中清零的操作。
谁还有比我好的方法,说出来交流交流。
楼上的 记得给分哈
此帖出自WindowsCE论坛
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
在BIOS中修改即可,像优龙的BIOS就是这么干的,wince下的EBOOT既不好用,又难开发。还是ADS的BIOS好点
此帖出自WindowsCE论坛
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

4
 
1、使用BMP2C软件,对*.bmp格式256色图片文件进行转换,生成一个图片数组文件,命名为samsung.c。
2、替换到C:\WINCE500\PLATFORM\smdk2440\kernel\hal\samsung.c文件中。(盘符可能不同)
3、生成当前的PROJECT.
此帖出自WindowsCE论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

5
 
引用 3 楼 qinqin_pg 的回复:
1、使用BMP2C软件,对*.bmp格式256色图片文件进行转换,生成一个图片数组文件,命名为samsung.c。
2、替换到C:\WINCE500\PLATFORM\smdk2440\kernel\hal\samsung.c文件中。(盘符可能不同)
3、生成当前的PROJECT.


-----不错,不过C:\WINCE500\PLATFORM\smdk2440\kernel\hal\samsung.c不一定在这里,因为你的BSP是从4.2改到5.0的
此帖出自WindowsCE论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

6
 
把 Logo 添加到启动代码 在 Windows CE BSP  ..\Src\Kernel\Oal\Init.c

在哪???
此帖出自WindowsCE论坛
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

7
 
我用的是wince 5.0 + ep9315 有用过这个的吗?
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

8
 
我用的是3楼的做法,BSP是5.0的也有相应的文件事替换
此帖出自WindowsCE论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

9
 
Ep9315  是不是大家几乎都没用过?
此帖出自WindowsCE论坛
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

10
 
我感觉方法应该跟2410的类同,我没有做过.

但是我在一家公司产品上看过.

是通过修改eboot方式实现的.
此帖出自WindowsCE论坛
 
 
 

回复

88

帖子

0

TA的资源

一粒金砂(初级)

11
 
http://blog.eeworld.net/dthxman/archive/2007/12/14/1934553.aspx
此帖出自WindowsCE论坛
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

12
 
借用地盘一下,我是在nand上开辟一块区域用于存放logo,在eboot中的oemplatforminit()中先把logo读到ram中,然后显示logo,结果在nk加载完后就消失了,又不想在oal的oeminit()中实现,请问这个问题怎么解决?5.0的ce平台,谢谢。。。
此帖出自WindowsCE论坛
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

13
 
引用 1 楼 xajhuang 的回复:
把 Logo 添加到启动代码 在 Windows CE BSP  ..\Src\Kernel\Oal\Init.c 中注释掉对 LCD 控制器初始化的函数 然后在 ..\Src|Drivers\Display 的 S3C2440disp.cpp 文件中删除对显存缓冲区中清零的操作。
谁还有比我好的方法,说出来交流交流。
楼上的 记得给分哈


这个办法对头,我就是这样用的
此帖出自WindowsCE论坛
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

14
 
EP9315很常用,但是厂家没有提供开机logo 的设置
此帖出自WindowsCE论坛
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

15
 
Toradex 公司的 colibri PXA270 300 310 320采用的是eboot加载一个特殊的图形文件,这个文件是使用一个专用工具和256色的图片文件生成。这个文件可以在开机以后使用Splashscrean程序很方便的替换。

Colibri PXA270 300 310 320 bootloader (eboot)介绍

用于colibri PXA270 300 310 320的 bootloader(eboot)功能比较完善,可以访问到芯片的主要硬件资源,
例如,GPIO的初始化设置、MAC设置、IP设置、启动选项、串口、FLASH空间的分配、CPU的频率设置、debug
信息输出、启动画面和版本信息设置等,当然最基本的内核下载和文件维护功能也在其中,为客户订制系统,
主要指WINCE提供了很大的灵活性。


Toradex Windows CE Bootloader 3.2 for Colibri Built Jul 23 2008

Press [SPACE] to enter Bootloader Menu



BootLoader Configuration:

C) Clear Flash Registry
X) Enter CommandPrompt Mode
D) Download image to RAM now
F) Download image to FLASH now
L) Launch existing flash resident image now


替换开机画面的设置如下:
>setconfig ss
ss.fileaddr:    0x00000000      (FlashAddress with SplashScreen Data)
ss.filesize:    0               (Size of SplashScreen Data)
ss.enable:      1               (Enable SplashScreen)
ss.res: 0x00000000      (Reserved Flags)
ss.width:       640             (Display Width)
ss.height:      480             (Display Height)
ss.bpp: 8               (BitsPerPixel)
ss.ldds:        18              (LCD Lines Used)
ss.type:        1               (Display Type (0=Passive, 1=Active))
ss.color:       1               (0=Mono, 1=Color)
ss.dual:        0               (0=SinglePanel, 1=DualPanel)
ss.overlay:     0               (Overlay Enable)
ss.dpc: 0               (Double Pixel Clock)
ss.pcp: 0               (Pixel Clock Polarity)
ss.oep: 0               (Output Enable Polarity)
ss.hsp: 0               (Horizontal Sync Polarity)
ss.vsp: 1               (Vertical Sync Polarity)
ss.bs:  5               (LCD Buffer Strength)
ss.pclk:        25000000                (PixelClock (in Hz))
ss.hsw: 64              (Horizontal Sync Width)
ss.vsw: 2               (Vertical Sync Width)
ss.blw: 48              (Begin of Line Width)
ss.elw: 48              (End of Line Width)
ss.bfw: 37              (Begin of Frame Width)
ss.efw: 17              (End of Frame Width)
ss.acb: 256             (AC Bias Frequency)
ss.disp_gpio:   81              (Display On/Off Gpio)
ss.bl_gpio:     81              (BackLight On/Off Gpio)
ss.dispondelay: 0               (Display On Delay (ms))
ss.disp_pol:    1               (Display On/Off polarity)
ss.bl_pol:      1               (BackLight On/Off polarity)
ss.pcddiv:      1               (Enable Pixel Clock PreDivider)
此帖出自WindowsCE论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

16
 
引用 11 楼 songlin987 的回复:
借用地盘一下,我是在nand上开辟一块区域用于存放logo,在eboot中的oemplatforminit()中先把logo读到ram中,然后显示logo,结果在nk加载完后就消失了,又不想在oal的oeminit()中实现,请问这个问题怎么解决?5.0的ce平台,谢谢。。。

可能是因为显示驱动初始化LCD控制器时把frame buffer清掉了。
此帖出自WindowsCE论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

17
 
看看lcd初始化显示函数里面用的是哪个数组,找到数组所在的文件就行。cfw.c 中可以找到你要的东西
数组的生成可以在eeworld下载我上传的一个小工具。
不过这个是系统初始化后才看得到的。
还有一个在boot启动时显示的。如果想好一点可以考虑弄成动态的,看起来比较淫荡。
此帖出自WindowsCE论坛
 
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

18
 
我做过开机动画
就是在explorer.cpp的WinMain()里调用播放动画函数

进来一看原来还有这么多换logo的方法
此帖出自WindowsCE论坛
 
 
 

回复

85

帖子

0

TA的资源

一粒金砂(初级)

19
 
我觉得如果不在bootloader显示那会搞得很郁闷。开机不能立即显示不爽。
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

20
 
在Bootloader里和Oeminit里都实现过,没有什么太大差别,都是初始化一下LCD Controller,然后把图片的数据填到相应的Framebuffer里去而已
在Bootloader里做一般会把图片烧到Flash的特定位置,以免Bootloader太大,做在Image里一般就直接编译进去了
此帖出自WindowsCE论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表