请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP430G2553 您好!
我使用的是 MSP430G2553、特别是 MSP430G2253IPW28 - TSSOP28引脚封装。
我所面临的问题是、一个连接到引脚 P2.3的按钮。
该引脚上没有外部上拉电阻、仅在配置时启用内部上拉电阻。
程序配置了 port2_vector。
但没有中断中断中断点命中。
在高电平有效配置中、引脚 P1.0上连接了一个 LED、用于指示中断的发生。
下面是我尝试执行的主代码段:
// P1.0 LED 高电平有效/低电平 有效//带有#include 上拉的 P2.3按钮输入 int main (void) { WDTCTL = WDTPW + WDTHOLD; //停止看门狗定时器 BCSCTL1 = CALBC1_1MHz; 针对 O. DCOCTL = CALDCO_1MHz 的//设置范围; //设置 DCO 阶跃调制1MHz P1DIR = 0x01; // P1.0输出、否则输入 P1OUT = 0x0; // P1.0 LED 关闭 P2DIR &=~BIT3; // P2.3输入 P2REN |= BIT3; // P2.3上拉 P2SEL &=~BIT3; P2SEL2&=~BIT3; P2OUT |= BIT3; // P2.3设置 __disable_interrupt (); P2IES |= BIT3; // P2.3高/低边沿 P2IFG &=~BIT3; // P2.3 IFG 清除 P2IE |= BIT3; // P2.3中断被启用 while (1) //_bis_SR_register (LPM4_BITS + GIE); //输入 LPM4、带中断 _bis_SR_register (GIE); } //端口2中断服务例程 #if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__) #pragma vector=port2_vector __interrupt void Port_2 (void) #Elif defined (__GNU__) ___attribute COMPIAR (void Port2_vector )(void)(void Port2_vector 2)(void!)(void Port 2 (void)(void)(void!)(void! #endif { P1OUT ^= 0x01; // P1.0 = TOGGLE P2IFG &=~BIT3; // P2.3 IFG 清零 }
我想知道 P2.3的初始化或配置是否有错误。
此致、
AB