msp430关于中断嵌套的问题 没人给答案重新发帖!!!!!
下面这个程序,我在RTC中断里面,处理一个程序 INPUT_FP_CHCK();,因为 INPUT_FP_CHCK();这个程序里面涉及到串口的收发(向模块发送命令,并接收模块返回的信息),所以我在RTC中断里面把串口中断打开:UCA1IE |= UCRXIE+UCTXIE; 但是即使这样,依然无法收到数据返回(可能无法发送出)。请问是什么原因?
int munit;
#pragma vector=RTC_VECTOR
__interrupt void RTC_ISR(void)
{
RTCCTL01 &=~(RTCRDYIFG + RTCTEVIFG);
UCA1IE |= UCRXIE+UCTXIE;
INPUT_FP_CHCK();
munit=1;处理提问
如果已有满意回答请及时采纳并感谢回答者。还可以对提问内容进行补充,或提高悬赏分吸引更多回答者:
选择满意回答补充问题提高悬赏转发问题提高悬赏:提高悬赏以提高问题的关注度
当您单次追加悬赏不低于20分时,该问题将重新出现在所属分类的问题列表上方,提高被回答者看到的几率。悬赏分最高上限为200。
追加悬赏5101520304050分
确定取消
请点击下面回答中的"选为满意回答"按钮,确定满意回答。谢谢!
回答 共1条 检举 | 2012-2-13 18:12 ctopggy | 二级
优先级处理好没? 追问这个优先级,因为我在中断里面开了串口的中断,所以串口的中断可以嵌入到 RTC中断里面去,所以应该不是这个问题吧 回答如果没记错,在高优先级的中断程序里,是不会处理比它低优先级的程序。
如果你中断优先级处理好,但依然无法收到数据返回的话,也可能是INPUT_FP_CHCK()本身的问题啦。 赞同0| 评论 选为满意回答 继续追问
[解决办法]
虽然LZ会觉得是废话,但是,还是得说:
中断不适宜这样,中断只该做自己的事,管太多的闲事纠结就会越多
至于响应优先级什么的,还是留给main来搞吧
[解决办法]
需要用串口调试助手看看是到底没发出去还是没收到