MSP430 中断
Posted 青柠一笑
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MSP430 中断相关的知识,希望对你有一定的参考价值。
上次实验中我们通过读取引脚的状态实现了按键的功能,今天我们用按键触发中断,来实现上次的实验功能。直接上干货代码。
现在用中断按键代码如下,
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
P4DIR|=BIT7; // 设置p4.7为输出
P4OUT&=~BIT7; //设置p4.7为低电平
P2IE |= BIT1; //设置p2.1可以中断
P2IES |= BIT1; //设置p2.1为下降沿中断
P2IFG &= ~BIT1;//设置p2.1为0 无中断请求
//Notice!!!!
P2REN |= BIT1; //设置p2.1为上下拉电阻使能
P2OUT |= BIT1; //设置上拉
_EINT();//打开系统总终端
}
//以下为中断服务函数
#pragma vector=PORT2_VECTOR
__interrupt void Port_2(void)
{
if(P2IFG&BIT1) //判断是否是BIT按下
{
Delay(50);//延时消抖
if(P2IFG&BIT1)//咋此判断是否是BIT按下
{
while((P2IN&BIT1)==0);//松手检测
P2IFG &= ~BIT1; //清除中断标志位
P4OUT^=BIT7; //p4.7引脚输出反转
}
}
}
今天的内容很简单,代码注释很清楚。有问题大家可以在评论区讨论。
以上是关于MSP430 中断的主要内容,如果未能解决你的问题,请参考以下文章