涡轮流量计使用MSP430单片机的探讨 六十一
这是因为如果一个允许的中断唤醒CPU后,就会进入中断服务程序,开始以下处理:SR 和PC 保存入堆栈,保存了中断事件发生时的现场而后 SR 中的工作模式控制位CPUOff, OscOff, SCGO, SCG1 自动被复位从中断返回后,PC 指向下一条指令。这时候保存的SR 将被恢复,系统又将处于低功耗模式,禁止了CPU 的活动,PC 所指的指令无法执行。为了使程序从SR 中的CPUOff 或OscOff 置位
的指令之后的地址继续执行,中断服务程序必须将保存在堆栈中CPUOff,OscOff, SCGO,SCG1 位清除。这样,当执行RETI 指令后,SR 从堆栈推出,CPU 就又进入了活动模式。
主程序执行到低功耗模式0 处,停止操作。L1,L2 语句不执行。之后中断事件保存PC(L1指令地址)和SR(低功耗模式0),中断唤醒CPU,执行中断处理子程序,由于在中断处理子程序中将堆栈的SR 设置为活动模式,所以中断返回指令RETI 执行后,CPU 处于活动状态,可以从PC 指向的L1 指令处开始继续执行,
除此之外,中断服务程序还负责判断中断源,即是时钟唤醒还是有按键按下,并作相应的处理。
详情请浏览公司网站的产品中心 http://www.dlysys.com/ 流量计