掉电通知保存数据使用说明_第1页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、微嵌单板电脑掉电通知应用程序(掉电保存数据)使用说明功能介绍:在实际应用中遇到突然掉电的情况,我们需要用户程序即时保存掉电前的数据或者程序状态;便于下次上电的时候,程序可以马上从上次掉电的工作状态中恢复过来,避免用户重复设置或者重新工作。常见的应用有:数控设备,轨迹记录仪等。适用条件:广州市微嵌计算机科技有限公司出产的WinCE单板电脑。主控芯片使用S3C2416 (400MHz主频),并且加装“掉电通电模块”的。特别注意,该模块需要选配,与CAN接口不能同时使用!使用说明:本公司提供一个动态库“PwLostSave.dll”,用户只需要在应用程序中使用该库的两个函数即可。“PwLostSav

2、e.dll”的函数定义在“PwLostSave.h”头文件中。提供了两个函数:BOOL InitPowLostSave(void (*lpfnNotify)(void), DWORD dwpriority);功能说明:注册和初始化掉电通知功能,该函数只能执行一次。输入参数:lpfnNotify,为用户编写的函数(回调函数),系统掉电的时候会执行这一函数;输入参数:dwpriority,设置该函数的(所在线程)优先级,范围建议(100250)间,如130。优先级高的时候,可以在掉电的时候快速中断当前程序的执行,快速保存数据,但是不能高于WinCE看门狗线程100。返回参数:注册成功or失败。BO

3、OL CheckPowerOn(DWORD dwChkTimes);功能说明:用于检测外部电源是否重新供电。一般用于 用户编写的函数lpfnNotify(回调函数)中。输入参数:检测次数,dwChkTimes次检测结果都为Power On的时候,函数才返回TRUE。建议值3;返回参数:TRUE:系统已经上电了。FALSE:系统还在掉电状态中。使用示例:编写用户的掉电保存函数。void MySave (void) if (bIsUseSave) /用户某时刻不保存掉电数据,直接在这里跳过! /在这里添加用户代码 while (CheckPowerOn(3) = FALSE); RE_BOOT()

4、; 注册掉电通知。BOOL CTestPowLostSaveDlg:OnInitDialog() InitPowLostSave(MySave, 130); / 系统掉电时候自动执行MySave2、常用方法。在MySave函数中保存相关数据、步骤到residentflash中(以文件的形式保存)。下次上电的时候读取该文件,提示用户是否恢复上次保存的状态。选择“是”时,计算上次的状态和执行步骤。一般执行步骤要回退1到2步。注意:在以文件方式保存数据时候。如果写入的文件过大,写入到一半的过程中,系统就消耗全部存能,停止执行。下次启动后,该文件就会不存在(Flash掉电保护原因)。如果分几个文件写入

5、,则写入完毕的文件就不会掉失。注意事项:系统掉电的时候要考虑多种情况:刚上电就掉电了。可能出现问题:掉电处理函数可执行时间过短,由于大电容还在充电当中,能量没到最大值。解决:一般上电12分钟后,即可充电完毕,这一情况基本可以忽略不理,或者用户程序在开机2分钟后才工作。掉电一下子又重新上电了。可能出现问题:WinCE程序还在运行中(设备不重启),但是由于外围设备短暂掉电,极有可能出现不正常或不稳定状态。解决:在掉电处理函数中,让设备重新启动。重启前加入“while (CheckPowerOn(3) = FALSE); ”目的是,在检测到外部供电的情况下才可以重启。如果设备并非短暂掉电,最终会在检测函数中消耗掉所有内部储能。掉电处理函数不够时间处理。用户可以优化这一函数,尽量避免大量的DDR内存操作(操作DDR比较耗电)。让最重要的任务先执行,通过算法优化执行时间。演示例程:将和(这个必须的)一起放到WinCE里面(同一目录)。运行Tes

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论