总结wince在“OEMInit Done”附近起不来的情况

来源:互联网 发布:致远网络 编辑:程序博客网 时间:2024/04/29 23:46

 在“OEMInit Done”附近起不来的,比如

... ... ...

SDMMC config Init Done

OEMInit Done...

这种情况我自己碰到的基本有三种情况:


1.内存中残留有信息。
解决方法:修改内核文件cfw.c,在OEMInit里面清理内存。NKForceCleanBoot();

还有别的解决办法也可以达到同样的效果,不过不在我的能力范围内。


2.在设置系统时间后,对于Hive注册表会将信息写入硬盘中,没有分区的系统就会起不来。
解决方法:先用一个非Hive注册表的wince系统进入给硬盘分一下区就可以了。

3.RTC错误

RTC里面如果自己初始化了一个时间,注意设置要正确。基本上这个能错的就是范围,还有就是星期几(wDayOfWeek)设置错误,特别要注意wDayOfWeek的值。

过了这一步,后面遇到的基本是驱动问题。



OEMInit Done... 
我就是出现了这个问题,在你这里找到了答案。按照“修改内核文件cfw.c,在OEMInit里面清理内存。NKForceCleanBoot();”方法,解决了问题。

2.在设置系统时间后,对于Hive注册表会将信息写入硬盘中,没有分区的系统就会起不来。解决方法:先用一个非Hive注册表的wince系统进入给硬盘分一下区就可以了。这个方法怎么实现...请大侠们赐教...我在修改了注册表保存之后..系统停在了OEMInit Done...Sp=ffffc7cc?另外Sp=ffffc7cc启动不了是非常多的原因造成?

比如有软件装的有问题,就像一个工程在另台电脑编译烧写就可以;

还有组件选的有问题,RTC错误,分区错误,SDRAM初始化问题,在数据中止或未定义指令时,反正错误很奇葩!有时要多编译几次,或重建个工程,或者就在你修改的地方那边出错啦。原因多多。。。求路过的多多帮助Sp=ffffc7cc错误?