下溢中断
时间:10-02
整理:3721RD
点击:
(2407)
定时器工作于连续增减模式,下溢中断却进不去?
搜索到以前的帖子
说,在连续增减模式不能发生下溢中断,这个说法得到证实了吗?
我变的小程序如下:
start: SETC INTM ;关总中断
CLRC CNF ;B0为数据存储区
CLRC SXM
CLRC OVM
LDP #0E0H
SPLK #604H,SCSR1 ;时钟1倍频,CLOCKOUT输出CPU时钟
SPLK #0E8H,WDCR ;不使能WDT
LDP #0E1H
SPLK #00FEH,MCRA ;使能PWM1~6引脚
LDP #0
SPLK #0FFH,IFR ;清系统中断标志
SPLK #02H,IMR ;开放INT2中断
LDP #DP_EVA ;指向74007480h区
SPLK #0FFFFH,EVAIFRA;清事件模块A所有中断标志
SPLK #0200H,EVAIMRA ;开T1下溢中断
SPLK #556,T1PR
SPLK #0000H,T1CNT ;计数器清零
SPLK #0842H,T1CON ;时钟预分频系数为1,连续增减计数方式式
CLRC INTM
cycle: NOP
B cycle ;循环等待中断
GISR2:
LDP #0E0H
LACC PIVR,1
ADD #PVECTORS
BACC
T1UFINT_ISR:
LDP #232
SPLK #0FFFFH,EVAIFRA ;清中断标志
GISR2_RET:
CLRC INTM
PHANTOM: RET ; 假中断
.END
定时器工作于连续增减模式,下溢中断却进不去?
搜索到以前的帖子
说,在连续增减模式不能发生下溢中断,这个说法得到证实了吗?
我变的小程序如下:
start: SETC INTM ;关总中断
CLRC CNF ;B0为数据存储区
CLRC SXM
CLRC OVM
LDP #0E0H
SPLK #604H,SCSR1 ;时钟1倍频,CLOCKOUT输出CPU时钟
SPLK #0E8H,WDCR ;不使能WDT
LDP #0E1H
SPLK #00FEH,MCRA ;使能PWM1~6引脚
LDP #0
SPLK #0FFH,IFR ;清系统中断标志
SPLK #02H,IMR ;开放INT2中断
LDP #DP_EVA ;指向74007480h区
SPLK #0FFFFH,EVAIFRA;清事件模块A所有中断标志
SPLK #0200H,EVAIMRA ;开T1下溢中断
SPLK #556,T1PR
SPLK #0000H,T1CNT ;计数器清零
SPLK #0842H,T1CON ;时钟预分频系数为1,连续增减计数方式式
CLRC INTM
cycle: NOP
B cycle ;循环等待中断
GISR2:
LDP #0E0H
LACC PIVR,1
ADD #PVECTORS
BACC
T1UFINT_ISR:
LDP #232
SPLK #0FFFFH,EVAIFRA ;清中断标志
GISR2_RET:
CLRC INTM
PHANTOM: RET ; 假中断
.END
连续增减模式可以进下溢中断。
你怎么知道没进中断?
在中断服务程序内设置断点啊?
程序没有进入到那
始终循环
你没有保护和恢复现场,而且在
PHANTOM中应该有一句
CLRC INTM
我上面的小程序中是有这句的。
CLRC INTM
我编的程序里是有保护现场的
对ST0,ST1,ACC,PREG,TREG的内容
进行保护,但进不了下溢中断,
于是变了这个小程序测试一下,对于这个程序在上电复位后
是可以进中断的,但当我在load入之前的那个大程序后,不能进中断
这时在load入这个小程序后也进不了中断了,又得复位板子才行,
不知道我说明白没有?
你这种情况比较怪,我也无能为力了。