我可以在另一个中断向量中调用中断向量吗?在另一个中断向量中调用中断向量
例如,当我在做ep4inout中断向量的程序:
void ep4inout interrupt 0
{
.
.
.
Timer1 = 1; //call interrupt for timer 1
.
.
.
}
编辑
我的代码看起来大致是这样的。 Timer1 = 1表示设置了定时器1的中断请求。我在定时器1 ISR中的程序不起作用。在FX2LP手册中,定时器1的优先级高于端点缓冲区。我尝试将定时器1的优先级设置为高,并将端点4设置为低。仍然是同样的结果。 Im使用Keil uVision2作为我的IDE,而我的微控制器是赛普拉斯FX2LP(附加8051 - USB控制器)。
void ISR_Ep4inout(void) interrupt 0
{
.
.
.
Timer1Enable = 1;
Timer1 = 1; //call interrupt for timer 1
.
.
.
}
void TMR1_Vect(void) interrupt 2 //timer 1 interrupt
{
.
.
.
}
void TMR1_Vect interrupt 0 //timer 1 interrupt
{
.
.
.
}
非常感谢您的回复。我使用Keil uVision 2和我的微控制器是赛普拉斯FX2LP。经过测试后,定时器1的ISR不会中断,我的程序根本不工作。定时器1表示定时器1的中断已被调用。顺便说一下,端点4的优先级是什么? – 2011-12-21 05:32:52
@FranzMationg如果您编辑您的原始问题并在此添加此信息会更好。该网站旨在为您提供有用的信息,但对所有具有相同或类似问题的人都有用。此外,对于那些不太熟悉赛普拉斯USB控制器系列的人来说,说明该处理器是一个增强型8051实现会很有帮助。 – 2011-12-21 10:52:56