Hi All,
使用MSP-EXP430F5438應用模組,使用的MCU為M430F5438A,compiler軟體CCS,使用範例驗證MSP與App1_MSPBoot_F5529_I2C,
MCU CMD檔&Driver設定我有針對我要使用的MCU修改過設定。
我現在遇到的問題是 App1_MSPBoot_F5529_I2C範例內Time Interrupt service routine,一旦程式進入中斷程序,
程式似乎就沒有返回main,中斷程序會重複中斷。
在麻煩各位指導問題,謝謝。
以下是我程式:
//—————————————————————————————
void main( void )
{
// Stop watchdog timer to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
// Toggle LED1 in P1.1
P1DIR |= BIT1 | BIT0;
P1OUT |= BIT1 | BIT0;
__delay_cycles(500000);
P1OUT &= ~(BIT1 | BIT0);
__delay_cycles(500000);
P1OUT |= BIT1 | BIT0;
__delay_cycles(500000);
P1OUT &= ~(BIT1 | BIT0);
__delay_cycles(500000);
// Start P2.1 (S2 button) as interrupt with pull-up
P2OUT |= BIT6;
P2REN |= BIT6;
P2IES |= BIT6;
P2IE |= BIT6;
// Start Timer interrupt
TA0CCTL0 = CCIE; // CCR0 interrupt enabled
TA0CCR0 = 0xCFFF;
TA0CTL = TASSEL_1 + MC_1; // ACLK, upmode
__bis_SR_register(LPM3_bits + GIE);
while (1) //程式無法進入此迴圈,所以BIT0燈號沒有閃爍。
{
P1OUT ^= BIT0;
__delay_cycles(500000);
}
}
//—————————————————————————————
__interrupt void Timer_A (void)
{
P1OUT ^= BIT1; // Toggle P1.0 //可以反覆中斷,BIT1燈號會閃爍。
TA0CCTL0 &= ~CCIFG;
}
//—————————————————————————————
//中斷向量配置
const uint16_t ProxyVectorTable[] =
{
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(0) RTC_A
0x4030, (uint16_t)P2_Isr, // APP_PROXY_VECTOR(1) PORT2
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(2) USCI_B3
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(3) USCI_A3
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(4) USCI_B1
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(5) USCI_A1
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(6) PORT1
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(7) TIMER1_A1
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(8) TIMER1_A0
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(9) DMA
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(10) USCI_B2
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(11) USCI_A2
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(12) TIMER0_A1
0x4030, (uint16_t)Timer_A, // APP_PROXY_VECTOR(13) TIMER0_A0
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(14) ADC12_A
0x4030, (uint16_t)USCI_B0_ISR, // APP_PROXY_VECTOR(15) USCI_B0
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(16) USCI_A0
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(17) WDT
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(18) TB1
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(19) TB0
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(20) UNMI
0x4030, (uint16_t)Dummy_Isr, // APP_PROXY_VECTOR(21) SYSNMI
};
在麻煩各位指導問題,謝謝。
Susan Yang:
很抱歉,我对您的问题有些不太理解
“使用MSP-EXP430F5438應用模組,使用的MCU為M430F5438A,compiler軟體CCS,使用範例驗證MSP與App1_MSPBoot_F5529_I2C,”
您的主要目的是什么呢?
灰小子:
建议直接使用msp430f5438的例程
www.ti.com/…/slac166
Simon Simon:
回复 Susan Yang:
您好,不好意思,我有找到問題點了。謝謝。
另外請教一下,由於我這份專案,含有MSP與MAIN CODE memory,MAIN CODE使用sample code App1_MSPBoot_F5529_I2C,為什麼我沒有辦法run debug mode?
CCS compiler軟體哪裡可以設定run main start address?