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.

[参考译文] MSP430FR2433:端口2中断未触发、默认为 ISR 陷阱

Guru**** 2563960 points
Other Parts Discussed in Thread: MSP430FR2433

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/692426/msp430fr2433-port-2-interrupt-not-triggering-and-defaulting-to-isr-trap

器件型号:MSP430FR2433

我的代码有问题。  我想、当我按下 msp430fr2433启动板上的按钮时、它被配置为右键进入中断

我进行了一些调试 、 当我按下按钮时 IFG 标志会触发、此时会发生从高电平到低电平的转换。 但出于某种原因、不会进入 pragma 矢量中断。  

当我暂停程序时、它停留在 ISR 陷阱 代码上。

有什么想法吗?

#include 


int main (void)
{
PM5CTL0 &=~LOCKLPM5;
WDTCTL = WDTPW | WDTHOLD;//停止看门狗计时器

/sClock 使能寄存器
_bis_SR_register (SCG0); //禁用 FLL
CSCTL3 |= SELREF_REFOCLK; //将 REFO 设置为 FLL 基准源
CSCTL0 = 0; //清除 DCO 和 MOD 寄存器
CSCTL1 &=~(DCORSEL_7); //首先清除 DCO 频率选择位
CSCTL1 |= DCORSEL_3; //设置 DCO = 8MHz
CSCTL2 = FLLD_0 + 243; // DCODIV = 8MHz
_DELAY_CYCLES (3);
_BIC_SR_register (SCG0); //启用 FLL
while (CSCTL7 &(FLLUNLOCK0 | FLLUNLOCK1));//轮询直到 FLL 被锁定

CSCTL4 = SELMS_DCOCLKDIV | SELA_REFOCLK;//将默认 REFO (~32768Hz)设置为 ACLK 源、ACLK = 32768Hz
//默认 DCODIV 作为 MCLK 和 SMCLK 源

//时钟结束配置

//计时器配置
// TA0CTL=tassel_SMCLK | MC__Continuous | TACLR;
//计时器开始计数

//__delay_cycles (20);



//配置 LED 输出
P1DIR |= BIT0;//板载 LED P1.0
P1DIR |= BIT1;//板载 LED P1.1红色实际上是绿色
P1OUT &=~BIT1;//清除 LED 1.
P1OUT &=~BIT0;//清除 LED 0

//将按钮配置为输入

P2DIR &=~ BIT3;//将引脚2.3设置为输入
P2REN |= BIT3;//启用上拉/下拉电阻器
P2OUT |= BIT3;//将电阻设置为上拉电阻

//将按钮配置为具有中断的输入
P2DIR &=~ BIT7;//将引脚2.7设置为输入
P2REN |= BIT7;//启用上拉/下拉电阻器
P2OUT |= BIT7;//将电阻设置为上拉电阻
P2IES |= BIT7;// P2.7高/低边沿
P2IFG &=~BIT4;// P2.7 IFG 被清零
P2IE |= BIT7;// P2.7中断被启用


while (1)
{

_bis_SR_register (LPM3_bits | GIE);//输入 LPM3、带中断
__no_operation(); //用于调试

}

}


//端口2中断服务例程

#pragma vector=port2_vector
__interrupt void Port_2 (void)

{
P2IFG &=~BIT7; //清除 P2.7 IFG
P1OUT ^= BIT1;//设置 LED 1.
_BIC_SR_REGISTER_ON_EXIT (LPM3_BITS);
}


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

    代码看起来不错。 我在 FR2433 Launchpad 上运行代码、它按预期工作。
    您使用的是什么 IDE? 请试用最新的 CCS v8。

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

    我会并通知您

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    下载的 CC8工作正常、现在无法正常工作。 我如何判断问题是由 Code Composer 造成的、而不是我的代码引起的?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Jorge、

    我将向 CCS 团队报告您的问题。
    另一个 IDE 选择是 IAR。 www.iar.com/.../

    此致、