本来以为系统时间设置很简单,只要修改下RTC会记得你设置的时间,但是经过测试发现情况不是这样的。于是研究了bsp启动时系统时间的设置的流程。我一直认为在OAL层加入OEMSetRealTime()函数即可,但是测试了好几次不行,于是动了真格,呵呵之前一直以为这个功能很简单。在OEMInit加入相应的调试信息后,发现在我OEMSetRealTime之后,wince调用了一个函数OALIoCtlHalInitRTC()这个函数太关键了。于是看了这个函数介绍英文,看的够呛,不过意思都懂了,This function is called by WinCE OS to initialize the time after boot.
// Input buffer contains SYSTEMTIME structure with default time value.