This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] MSP430FR5994:跟踪未处理的中断的简单方法?

Guru**** 2587365 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/623384/msp430fr5994-easy-way-to-track-down-un-handled-interrupt

器件型号:MSP430FR5994

是否有一种通过调试器捕获未处理的中断的简单方法。  我看不到手动查找、我认为有调试设置可以让这变得更轻松?

谢谢你

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    //FFFE - FFB4
    #pragma vector = RESET_Vector
    _中断 void FFFE_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = SYSNMI_vector
    __interrupt void FFFC_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = UNMI_vector
    __interrupt void FFFA_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = COMP_E_vector
    __interrupt void FFF8_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = TIMER0_B0_vector
    __interrupt void FFF6_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = TIMER0_B1_vector
    __interrupt void FFF4_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = WDT_vector
    __interrupt void FFF2_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = EUSCI_A0_vector
    __interrupt void FFF0_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = EUSCI_B0_vector
    __interrupt void FFEE_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = ADC12_B_vector
    __interrupt void FFEC_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = TIMER0_A0_vector
    __interrupt void FFEA_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = TIMER0_A1_vector
    __interrupt void FFE8_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = EUSCI_A1_vector
    __interrupt void FFE6_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = dma_vector
    __interrupt void FFE4_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    /*#pragma vector = Timer1_A0_vector
    __interrupt void FFE2_ISR (void)
    {
    __no_operation();
    对于(;;);
    }*/
    
    #pragma vector = Timer1_A1_vector
    __interrupt void FFE0_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    //D
    #pragma vector = Port1_vector
    __interrupt void FFDE_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    /*#pragma vector = TIMER2_A0_vector
    __interrupt void FFDC_ISR (void)
    {
    __no_operation();
    对于(;;);
    }*/
    
    #pragma vector = TIMER2_A1_vector
    __interrupt void FFDA_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = port2_vector
    __interrupt void FFD8_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = TIMER3_A0_vector
    __interrupt void FFD6_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = TIMER3_A1_vector
    __interrupt void FFD4_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = PORT3_vector
    __interrupt void FFD2_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = Port4_vector
    __interrupt void FFD0_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    //C
    #pragma vector = RTC_C_vector
    __interrupt void FFCE_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = AES256_vector
    __interrupt void FFCC_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = TIMER4_A0_vector
    __interrupt void FFCA_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = TIMER4_A1_vector
    __interrupt void FFC8_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = PORT5_vector
    __interrupt void FFC6_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = PORT6_vector
    __interrupt void FFC4_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = EUSCI_A2_vector
    __interrupt void FFC2_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    #pragma vector = EUSCI_A3_vector
    __interrupt void FFC0_ISR (void)
    {
    UCA3IFG = 0x00;
    //__no_operation();
    // for (;;);//永久旋转*
    }
    
    //b
    /*#pragma vector = EUSCI_B1_vector
    _中断 void FFBE_ISR (void)
    {
    __no_operation();
    对于(;;);
    }*/
    
    #pragma vector = EUSCI_B2_vector
    __interrupt void ffbC_ISR (void)
    {
    __no_operation();
    对于(;);//
    *永久旋转*/}
    
    /*#pragma vector = EUSCI_B3_vector
    __interrupt void ffbA_ISR (void)
    {
    __no_operation();
    对于(;;);
    }*/
    
    #pragma vector = PORT7_vector
    __interrupt void ffb8_ISR (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = port8_vector
    __interrupt void ffb6_isr (void)
    {
    __no_operation();
    对于(;);//*永久旋转*/
    }
    
    #pragma vector = LEA_vector
    __interrupt void ffb4_ISR (void)
    {
    __no_operation();
    对于(;;);/*永久旋转*/
    }
    
    

    对于后续人员、这就是我用来定义所有中断的内容

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您启用了哪些中断? 只有当在 GIE 和相应的 IE 位都被置位时 IFG 被提出时、ISR 没有被进入才会引起问题。 如果 GIE 和 IE 在 IFG 被置位时打开、则进入 ISR_TRAP ()。 您是否能够将代码缩减为演示问题的小示例?

    e2e.ti.com/.../251646
    e2e.ti.com/.../447427
    e2e.ti.com/.../504083

    此致、
    Ryan