社区
嵌入开发(WinCE)
帖子详情
关于WINCE6。0开机LOGO加进度条的问题。
shuilingshenjun
2009-11-02 09:29:57
请问6。0下,开机LOGO上如何加进度条,是在BOOT上加,还是在OAL上加,我的那张初始LOGO是在OAL上加的。。
...全文
471
22
打赏
收藏
关于WINCE6。0开机LOGO加进度条的问题。
请问6。0下,开机LOGO上如何加进度条,是在BOOT上加,还是在OAL上加,我的那张初始LOGO是在OAL上加的。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
22 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
guopeixin
2009-11-12
打赏
举报
回复
[Quote=引用 20 楼 veabol 的回复:]
引用 19 楼 reallyu 的回复:
这个我做过,在每个驱动中都刷新LCD,效果是实现了,但是我觉得方法比较SB
不知道在OAL层启动一个线程来刷新LCD,在Display驱动中关闭这个线程,这种方法可行不,不过这个难以做到滚动条走完启动,只能像XP启动那样,一个滚动条来回跑.
是啊,我也想知道在OAL层是否会有这样的方法,不过在OAL层用线程是否会有问题呢?没有看到OAL层使用线程的例子,并且启动阶段进行线程切换是否会有问题?其实如果在启动过程中能总是与OAL进行同样的函数交互就最好了。
[/Quote]
呵呵,要是有这个方法就好了
OneOnce
2009-11-12
打赏
举报
回复
如果我没记错友坚做过
博说医械研发
2009-11-10
打赏
举报
回复
[Quote=引用 19 楼 reallyu 的回复:]
这个我做过,在每个驱动中都刷新LCD,效果是实现了,但是我觉得方法比较SB
不知道在OAL层启动一个线程来刷新LCD,在Display驱动中关闭这个线程,这种方法可行不,不过这个难以做到滚动条走完启动,只能像XP启动那样,一个滚动条来回跑.
[/Quote]
是啊,我也想知道在OAL层是否会有这样的方法,不过在OAL层用线程是否会有问题呢?没有看到OAL层使用线程的例子,并且启动阶段进行线程切换是否会有问题?其实如果在启动过程中能总是与OAL进行同样的函数交互就最好了。
Reallyu
2009-11-10
打赏
举报
回复
这个我做过,在每个驱动中都刷新LCD,效果是实现了,但是我觉得方法比较SB
不知道在OAL层启动一个线程来刷新LCD,在Display驱动中关闭这个线程,这种方法可行不,不过这个难以做到滚动条走完启动,只能像XP启动那样,一个滚动条来回跑.
leemuxiang
2009-11-04
打赏
举报
回复
看一下QQ号为4176 4381的空间,里面有相关方面的建议,或许对你有用
feishanm
2009-11-03
打赏
举报
回复
EBOOT中加吧。NBOOT只有4K呀。
sunrain_hjb
2009-11-03
打赏
举报
回复
[Quote=引用 14 楼 veabol 的回复:]
引用 13 楼 sunrain_hjb 的回复:
引用 8 楼 black_potato 的回复:
根据我的平台讲一下我的理解哈:
WinCE一个典型的启动过程:从Nand启动,bootloader和内核都保存在Nand里。
启动时,主要有两个步骤:一是bootloader初始化板子并把内核从nand拷到内存里面,二是跳到内存里面运行内核加载各个接口的驱动。
对于第一个步骤,占用的时间比第二个长得多,估计要7-10这样,第二个步骤估计也就1-3秒这样,所以我的做法是在bootloader里面添加开机的logo,只在第一个步骤的时候进行动态显示(用进度条的移动来表示),第二个步骤的时候就不再进行动态地显示了。
在内核从nand拷到内存的时候,有个专门的函数,比如说FMD_ReadSector(dwSectorAddr, pbBuffer, NULL, 1),你可以根据其中的dwSectorAddr这个参数来设置进度条的动态显示了:比如说你的SectorAddr总共为100,先LCD的中间画一个小长方形的白矩形条,开始的时候在矩形条的左边画一个小红块,然后当dwSectorAddr每增加10的时候你就在将小红块向右移整个矩形条的10%和位移。当内核从nand拷到内存完毕,你的小红块也就移到了最右边了。
就是这个思路,启动OS时的停滞是难免的。
如果是在从NAND拷贝到RAM里边加动态显示根本就没有必要,看下打印信息,这个读的过程基本上可以说是瞬间过去的,加了动态也没意义
[/Quote]
这个要看平台的,有些读取NK时间会比较长,如果时间很短,那确实没有必要加进度条了,显示一个LOGO足矣。
博说医械研发
2009-11-03
打赏
举报
回复
[Quote=引用 9 楼 harktrip 的回复:]
为何要进度条?
开机4~5秒就看到桌面了,进度条多余的,开机logo放个倒是真的
[/Quote]
你们的BOOTLOADER是自己重新写的吧?
并且驱动少,或者是驱动是在WINCE界面出现后由其它AP再进行加载?
如果是后者的话生产后供其它公司使用开发AP就不是很方便了。
博说医械研发
2009-11-03
打赏
举报
回复
不同的BSP出来的效果不一样,我们的BSP bootloader的时间比WINCE的启动时间短,因为我们驱动比较多,并且FLASH的盘符是三个,每个盘符大概要占去一秒钟的时间。
harktrip
2009-11-03
打赏
举报
回复
为何要进度条?
开机4~5秒就看到桌面了,进度条多余的,开机logo放个倒是真的
-小仙-
2009-11-03
打赏
举报
回复
这么都喜洋洋
black_potato
2009-11-03
打赏
举报
回复
根据我的平台讲一下我的理解哈:
WinCE一个典型的启动过程:从Nand启动,bootloader和内核都保存在Nand里。
启动时,主要有两个步骤:一是bootloader初始化板子并把内核从nand拷到内存里面,二是跳到内存里面运行内核加载各个接口的驱动。
对于第一个步骤,占用的时间比第二个长得多,估计要7-10这样,第二个步骤估计也就1-3秒这样,所以我的做法是在bootloader里面添加开机的logo,只在第一个步骤的时候进行动态显示(用进度条的移动来表示),第二个步骤的时候就不再进行动态地显示了。
在内核从nand拷到内存的时候,有个专门的函数,比如说FMD_ReadSector(dwSectorAddr, pbBuffer, NULL, 1),你可以根据其中的dwSectorAddr这个参数来设置进度条的动态显示了:比如说你的SectorAddr总共为100,先LCD的中间画一个小长方形的白矩形条,开始的时候在矩形条的左边画一个小红块,然后当dwSectorAddr每增加10的时候你就在将小红块向右移整个矩形条的10%和位移。当内核从nand拷到内存完毕,你的小红块也就移到了最右边了。
博说医械研发
2009-11-03
打赏
举报
回复
如果是EBOOT的动态效果的话就在每个函数调用的时候刷新一下进度条吧,但是在开始launch OS之后还有很长的时间不能更新进度条,这就是我为什么说是否需要在驱动里再刷新进度条的原因。
xilidecai
2009-11-03
打赏
举报
回复
可以放到内核目录下,也可以做到NBOOT里面,Nboot 并不具备烧写功能,它只能读取已经烧写处理好的文件:开机画面(BootLogo)和WinCE 内核。是用来启动WINCE内核的。
九个太阳2023
2009-11-03
打赏
举报
回复
[Quote=引用 4 楼 sunrain_hjb 的回复:]
在BOOT里加就可以了,没有必要在OAL和驱动里做。
[/Quote]
那个动态效果怎么做呢?
sunrain_hjb
2009-11-03
打赏
举报
回复
在BOOT里加就可以了,没有必要在OAL和驱动里做。
guopeixin
2009-11-03
打赏
举报
回复
这个东西好,我喜欢,回头也尝试一下
shuilingshenjun
2009-11-03
打赏
举报
回复
我也加了,但是没有显示在LCD上。
我在EBOOT里的main.c 里加画像素的函数。在bootpart.cpp的BP_ReadData,里加了画进度条的函数,。这样始终不行,都不知道是在哪里出了问题,也不知道应该怎么去调试。
博说医械研发
2009-11-03
打赏
举报
回复
[Quote=引用 13 楼 sunrain_hjb 的回复:]
引用 8 楼 black_potato 的回复:
根据我的平台讲一下我的理解哈:
WinCE一个典型的启动过程:从Nand启动,bootloader和内核都保存在Nand里。
启动时,主要有两个步骤:一是bootloader初始化板子并把内核从nand拷到内存里面,二是跳到内存里面运行内核加载各个接口的驱动。
对于第一个步骤,占用的时间比第二个长得多,估计要7-10这样,第二个步骤估计也就1-3秒这样,所以我的做法是在bootloader里面添加开机的logo,只在第一个步骤的时候进行动态显示(用进度条的移动来表示),第二个步骤的时候就不再进行动态地显示了。
在内核从nand拷到内存的时候,有个专门的函数,比如说FMD_ReadSector(dwSectorAddr, pbBuffer, NULL, 1),你可以根据其中的dwSectorAddr这个参数来设置进度条的动态显示了:比如说你的SectorAddr总共为100,先LCD的中间画一个小长方形的白矩形条,开始的时候在矩形条的左边画一个小红块,然后当dwSectorAddr每增加10的时候你就在将小红块向右移整个矩形条的10%和位移。当内核从nand拷到内存完毕,你的小红块也就移到了最右边了。
就是这个思路,启动OS时的停滞是难免的。
[/Quote]
如果是在从NAND拷贝到RAM里边加动态显示根本就没有必要,看下打印信息,这个读的过程基本上可以说是瞬间过去的,加了动态也没意义
sunrain_hjb
2009-11-03
打赏
举报
回复
[Quote=引用 8 楼 black_potato 的回复:]
根据我的平台讲一下我的理解哈:
WinCE一个典型的启动过程:从Nand启动,bootloader和内核都保存在Nand里。
启动时,主要有两个步骤:一是bootloader初始化板子并把内核从nand拷到内存里面,二是跳到内存里面运行内核加载各个接口的驱动。
对于第一个步骤,占用的时间比第二个长得多,估计要7-10这样,第二个步骤估计也就1-3秒这样,所以我的做法是在bootloader里面添加开机的logo,只在第一个步骤的时候进行动态显示(用进度条的移动来表示),第二个步骤的时候就不再进行动态地显示了。
在内核从nand拷到内存的时候,有个专门的函数,比如说FMD_ReadSector(dwSectorAddr, pbBuffer, NULL, 1),你可以根据其中的dwSectorAddr这个参数来设置进度条的动态显示了:比如说你的SectorAddr总共为100,先LCD的中间画一个小长方形的白矩形条,开始的时候在矩形条的左边画一个小红块,然后当dwSectorAddr每增加10的时候你就在将小红块向右移整个矩形条的10%和位移。当内核从nand拷到内存完毕,你的小红块也就移到了最右边了。
[/Quote]
就是这个思路,启动OS时的停滞是难免的。
加载更多回复(2)
wince
5.0 eboot
开机
log
o和
进度条
刚刚开始学习
wince
,用的是EVC4.0+PB5.0+三星2440的开发板。首先是更改eboot和内核的启动画面,弄了几天
开机
画面一直是黑的,后来终于发现屏幕没有点亮,要先点亮屏幕并且图片的数据要为十六位才行。点亮屏幕的设置...
WinCE
增
加
开机
Log
o及滚动条
目前手头的项目需要增
加
一个
开机
LOG
O和滚动条,要求滚动条可以真实反映系统镜像
加
载的情况。
Wince
启动过程分为三个部分,Steploader, Eboot, NK,如果制作
开机
界面的话,主要是在Eboot以及NK...
~处子~ EP9315
wince
的startup.s配置
俺在进行为EP9315的
wince
系统添
加
开机
启动图片的工作时,对其中KERNEL/HAL/COMMON/STARTUP.S添
加
自己的代码,编译后烧进flash再启动,发现图片没有显示,系统启动时间却大为提高了。 究其原因,主要是由于startUP.S...
转帖:
WinCE
增
加
开机
Log
o及滚动条
目前手头的项目需要增
加
一个
开机
LOG
O和滚动条,要求滚动条可以真实反映系统镜像
加
载的情况。
Wince
启动过程分为三个部分,Steploader, Eboot, NK,如果制作
开机
界面的话,主要是在Eboot以及NK部分。对于Eboot,...
WinCE
启动界面的定制
如果BOOT从Flash
加
载NK到内存的时间较长,通常也会
加
一个
进度条
显示。如果从NK
加
载完成到进入CE桌面的时间也很长,那
加
一个
开机
动画也是不错的。 首先在backlight驱动中添
加
相关代码,实现动画效果,代码如下。 ...
嵌入开发(WinCE)
19,502
社区成员
41,568
社区内容
发帖
与我相关
我的任务
嵌入开发(WinCE)
硬件/嵌入开发 嵌入开发(WinCE)
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章