您的位置 首页 编程

MSP430G2553测验程序(状态机检测按键)

原始状态P16亮,P10暗,利用状态机进行按键检测,按下并释放的瞬间P10翻转,P16翻转MSP430G2xx3—————–

//原始状况P1.6亮,P1.0暗,使用状况机进行按键检测,按下并开释的瞬间P1.0翻转,P1.6翻转
//
// MSP430G2xx3
// —————–
// /|| XIN|-
// | | |
// –|RST XOUT|-
// P1.3|KEY P1.6|–>LED
// | P1.0|–>LED
// 作者http://jiwm.blog.163.com
// Built with IAR Embedded Workbench Version: 5.40
/
// Timer A0 interrupt service routine
#pragma vector=TIMER0_A0_VECTOR
__interrupt void Timer_A (void)
{ TACCTL0&=~ CCIE; //关中止
static unsigned char KEY_State=0; //按键的状况变量
switch(KEY_State) //处理按键状况
{case NOKEY: //未按键时进行按键处理
if ((P1IN&BIT3)==0)
{KEY_State=PUSH_KEY; //按下按键后,进入短按状况
}
break;
case PUSH_KEY: //短按状况时进行按键处理
if((P1IN&BIT3)!=0) //开释按键,认为是一次短按,加以处理
{KEY=1; //按键赋值
KEY_State=NOKEY; //回到未按状况
}
break;
}
TACCTL0|= CCIE; //开中止
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/biancheng/256287.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部