FreescaleMC9S08SG4学习笔记--复位保持RAM数据.docVIP

  • 6
  • 0
  • 约1.24千字
  • 约 2页
  • 2017-06-07 发布于重庆
  • 举报

FreescaleMC9S08SG4学习笔记--复位保持RAM数据.doc

FreescaleMC9S08SG4学习笔记--复位保持RAM数据

Freescale MC9S08SG4单片机学习笔记 --复位保持RAM数据 --skyline 2012/03/15 由于本人正在努力学习中,如有错误,望指正之,万分感激。Email:pjz47@126.com 单片机在各种应用场合中,难免会因为各种问题导致复位,比如说处理某个过程较久导致看门狗复位,不可避免的程序BUG,或者硬件错误导致复位等等。本人在某应用中,即使各种问题的复位(非掉电类型的复位,也就是单片机是保持带电状态),也需要尽可能地恢复原来的运行状态,让用户不会发觉系统曾经出现复位。以下为本人总结的方法: 飞思卡尔的CodeWarrior工程中,有个.prm文件,文件指示编译器有关RAM、ROM等的地址范围。 打开此文件,在MC9S08SG4单片机中,可以见到原来的RAM范围为0x0100~0x017F,我的此应用中吧RAM中的一小段数据划归为PRAM,用来存放要保护的数据。如下图红框中的地址范围,0x0160~0x017F。相应的,原来的RAM要减少到0x0100~0x015F。然后原来的类型为READ_WRITE,这种类型在单片机复位后一般会自动清零。而我们要保存数据的话,一旦清零后,数据便丢失。我们要把类型设定为NO_INIT,这样,这些数据便不会自动初始化。在下面的一段中,我们加入了PROTECTED_RAM INTO PRAM的语句,指示编译器如果遇到

文档评论(0)

1亿VIP精品文档

相关文档