本人刚接触dsp 正在自学,希望高手们能指导下
在例程中CPU定时器1中断为什么要加EDIS 而CPU定时器2中断中要加 EALLOW跟EDIS
interrupt void cpu_timer1_isr(void)
{
CpuTimer1.InterruptCount++;
// The CPU acknowledges the interrupt.
EDIS;
}
interrupt void cpu_timer2_isr(void)
{ EALLOW;
CpuTimer2.InterruptCount++;
// The CPU acknowledges the interrupt.
EDIS;
}
还有 我想在实现每隔一段时间通过I2C对三个器件进行一次数据采集,将I2C有关的程序放在定时器中断中,那么能不能触发I2C中断。
Joey Mao:
DSP中有一些配置寄存器是受保护的,无法直接操作。在对这些寄存器进行修改之前,需要先去掉保护功能。而保护状态是由状态寄存器中EALLOW标志来指示的。汇编指令“EALLOW”就是将该标志位置位,允许对受保护的寄存器操作。EALLOW(Edit allow)一般和EDIS(Edit disable)配套使用,在对受保护的寄存器操作之后,用EDIS恢复寄存器的被保护状态
本人刚接触dsp 正在自学,希望高手们能指导下
在例程中CPU定时器1中断为什么要加EDIS 而CPU定时器2中断中要加 EALLOW跟EDIS
interrupt void cpu_timer1_isr(void)
{
CpuTimer1.InterruptCount++;
// The CPU acknowledges the interrupt.
EDIS;
}
interrupt void cpu_timer2_isr(void)
{ EALLOW;
CpuTimer2.InterruptCount++;
// The CPU acknowledges the interrupt.
EDIS;
}
还有 我想在实现每隔一段时间通过I2C对三个器件进行一次数据采集,将I2C有关的程序放在定时器中断中,那么能不能触发I2C中断。
guijie ma:
回复 Joey Mao:
在例程中CPU定时器1中断程序中没有用到EALLOW和EDIS,定时器1和2中断程序中为什么要加上?这样做有什么特殊作用吗?
F28069 是否支持中断的嵌套?
谢谢!
本人刚接触dsp 正在自学,希望高手们能指导下
在例程中CPU定时器1中断为什么要加EDIS 而CPU定时器2中断中要加 EALLOW跟EDIS
interrupt void cpu_timer1_isr(void)
{
CpuTimer1.InterruptCount++;
// The CPU acknowledges the interrupt.
EDIS;
}
interrupt void cpu_timer2_isr(void)
{ EALLOW;
CpuTimer2.InterruptCount++;
// The CPU acknowledges the interrupt.
EDIS;
}
还有 我想在实现每隔一段时间通过I2C对三个器件进行一次数据采集,将I2C有关的程序放在定时器中断中,那么能不能触发I2C中断。
Joey Mao:
回复 guijie ma:
它的作用就是我上面说的,没有其他别的作用了,这里定时器中断中只进行计数累加是可以不加这两句的