我正在端口2的第5位进行检测。当我在BIT5处应用3.3V时,它会在读数变量中显示我(低=0,高=1)。
但程序未进入中断服务例程。
我是否为Port2编写了正确的ISR?
请建议我如何解决?
#include <MSP4S.h>
Int Reading;
内部主(无效)
{
WDTCTL = WDTPW | WDTHOLD;//停止看门狗计时器
//禁用GPIO开机默认高阻抗模式
//以激活先前配置的端口设置
PM5CTL0 &=~LOCKLPM2;
P2DIR &=~BIT5;
P2REN &=~BIT5;
P2IES &=~BIT5;// WFP 1.5 LO/High EDGE
P2IE |= BIT5;
//P2IFG &=~BIT5;
__bis_sr_register (GIE);
同时(1)
{
读数=(P2IN和BIT5);
}
}
//端口2中断服务例程
#pragma vector=port2_vector
__interrupt void Port_2 (void)
{
P1OUT |= BIT0;
P2IFG &=~BIT5;//透明1.3 IFG
__BIC_SR_REGISTER_ON_EXIT (LPM3_bits);//退出LPM3
}