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.

MSP-FET430UIF仿真器支持MSP430FR6972芯片吗?

Other Parts Discussed in Thread: MSP430F425, MSP430FR6972, MSP-FET, MSP430TCH5E, MSP430F423

TI 工程师好,我用MSP430FR6972开发调试时总是在调用子程序时会跳入reset位置即复位,不知道是不是仿真器不支持FR6972芯片?这个程序时用MSP430F425移植过来的。用早期的IAR4.0版本和F425调试就没问题,现在移植到FR6972调试时开中断(EINT)就总是自动复位).请指点,查了下FR6972的仿真器是MSP-FET,不知是否我用MSP-FET430UIF不支持FR6972芯片引起出现的问题?谢谢

  • MSP-FET430UIF Supports all programmable MSP430 and CC430 devices (F1xx, F2xx,  F4xx, F5xx, F6xx, G2xx, L092, FR57xx, FR59xx, MSP430TCH5E)

  • 具体信息可以参考 http://www.ti.com.cn/cn/lit/ug/slau278v/slau278v.pdf

  • Susan, 谢谢你的回复,现在有个问题是总是在TIMEB中断里循环,跳不出来,从RETI直接跳到入口处TIMER0_B0_Interrupt:我用的XP系统,这个程序是从MSP430F423移植过来的,用IAR 4.0版本就没问题,移植到FR6972芯片 IAR630版本(TI官网下载的免费8K)就有这个问题。

    ;--------------------------------------------- 
    TIMER0_B0_Interrupt:
                BIT.B       #Sleep_First,&ACTIVE_Flag
                JNZ         BasicTimerInterruptReturn          
                INC.B       &PRESS_COUNTER           ;KEY
                INC.B       &TIME_COUNTER0           
                INC.B       TIME_COUNTER2
                INC.B       TIME_COUNTER3
                INC.B       &MotorRunTime
                INC.B       &RESET_PressTime
                INC.B       &AUTO_PressTime
                INC.B       &Key10_PressTime
                INC.B       &Key1_PressTime
                INC.B       &Key01_PressTime
                INC.B       Time_Clear_Count
                INC.W       wSleep_Timer1
                JMP         BasicTimerInterruptReturn
    SleepTimerInterrupt:
                BIT.B       #Sleep_Second,&ACTIVE_Flag
                JNZ         BasicTimerInterruptReturn
                INC.W     sSleep_Timer1
                CMP.W       #089H,&sSleep_Timer1
                JL          BasicTimerInterruptReturn
                BIS.B       #Sleep_Second,&ACTIVE_Flag
    BasicTimerInterruptReturn: 
                RETI
    ;******************************************************************************
    ; Interrupt Vector Table
    ;******************************************************************************

  • 哪位工程师能否帮我解决这个问题?我用TI的DEMO例子来测试也是一样总是在中断程序里循环,跳不出中断程序, DEMO例子如下:


    #include "msp430fr6972.h"
    ;-------------------------------------------------------------------------------
                RSEG    CSTACK                  ; Define stack segment
    ;-------------------------------------------------------------------------------
                RSEG    CODE
    ;-------------------------------------------------------------------------------
    RESET       mov.w   #SFE(CSTACK),SP         ; Initialize stackpointer
    StopWDT     mov.w   #WDTPW+WDTHOLD,&WDTCTL  ; Stop WDT
    SetupGPIO   bis.b   #BIT0,&P1DIR
                bis.b   #BIT0,&P1OUT
    UnlockGPIO  bic.w   #LOCKLPM5,&PM5CTL0      ; Disable the GPIO power-on default
                                                ; high-impedance mode to activate
                                                ; previously configured port settings
                mov.w   #CCIE,&TB0CCTL0         ; TBCCR0 interrupt enabled
                mov.w   #50000,&TB0CCR0
                mov.w   #TBSSEL__SMCLK+MC__UP,&TB0CTL ; SMCLK, UP mode
                NOP
                EINT
               
    //            bis.w   #LPM0+GIE,SR            ; Enter LPM0 w/ interrupt
                nop
    MAIN:
                CALL        #DELAY_100mS
                JMP         MAIN
    ;--------------------------------------------------           
    DELAY_100mS:
                MOV       #0100H,R6
    DELAY_100mSLoop:           
                DEC       R6
                JNZ       DELAY_100mSLoop
                RET           
    ;------------------------------------------------------------------------------
    TIMER0_B0_ISR;    Timer0_B7 CC0 Interrupt Service Routine
    ;------------------------------------------------------------------------------
                xor.b   #BIT0,&P1OUT
                reti
    ;-------------------------------------------------------------------------------
                COMMON  INTVEC                  ; Interrupt Vectors
    ;-------------------------------------------------------------------------------
                ORG     RESET_VECTOR            ; Reset Vector
                DW      RESET
                ORG     TIMER0_B0_VECTOR        ; Timer0_B7 CC0 Interrupt Vector
                DW      TIMER0_B0_ISR
                END

    程序运行后,单步运行时程序一直在TIMER0_B0_ISR:
                xor.b   #BIT0,&P1OUT
                reti

    这里循环跳不出这中断TIMER0_B0_ISR程序,仿真器不论是MSP_FET还是MSP-FET430UIF,系统不论是XP32还是WIN7 32都会这样,哪位工程师能否指教下这是什么原因?